[OpenWrt-Devel] [PATCH 1/2] Add pkg-config for libnl (3.2) and json-c (0.12) in CMakeLists.txt
Simon Hoinkis
simon.hoinkis at codethink.co.uk
Fri Mar 6 05:41:22 EST 2015
---
CMakeLists.txt | 17 +++++++++--------
handler.h | 2 +-
2 files changed, 10 insertions(+), 9 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index e648b03..8075b25 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -5,6 +5,13 @@ ADD_DEFINITIONS(-Os -Wall -Werror --std=gnu99 -Wmissing-declarations)
SET(CMAKE_SHARED_LIBRARY_LINK_C_FLAGS "")
+INCLUDE(FindPkgConfig)
+PKG_CHECK_MODULES(JSONC json-c)
+INCLUDE_DIRECTORIES(${JSONC_INCLUDE_DIRS})
+
+PKG_SEARCH_MODULE(LIBNL libnl-3.0 libnl-3 libnl nl-3 nl)
+INCLUDE_DIRECTORIES(${LIBNL_INCLUDE_DIRS})
+
IF(APPLE)
INCLUDE_DIRECTORIES(/opt/local/include)
LINK_DIRECTORIES(/opt/local/lib)
@@ -17,19 +24,13 @@ SET(SOURCES
config.c device.c bridge.c vlan.c alias.c
macvlan.c ubus.c vlandev.c wireless.c)
-
-find_library(json NAMES json-c json)
+find_library(json NAMES json-c)
SET(LIBS
ubox ubus uci ${json} blobmsg_json)
-IF (NOT DEFINED LIBNL_LIBS)
- FIND_LIBRARY(libnl NAMES libnl-3 libnl nl-3 nl)
- SET(LIBNL_LIBS ${libnl})
-ENDIF()
IF("${CMAKE_SYSTEM_NAME}" MATCHES "Linux" AND NOT DUMMY_MODE)
SET(SOURCES ${SOURCES} system-linux.c)
- SET(LIBS ${LIBS} ${LIBNL_LIBS})
ELSE()
ADD_DEFINITIONS(-DDUMMY_MODE=1)
SET(SOURCES ${SOURCES} system-dummy.c)
@@ -45,7 +46,7 @@ ENDIF()
ADD_EXECUTABLE(netifd ${SOURCES})
-TARGET_LINK_LIBRARIES(netifd ${LIBS})
+TARGET_LINK_LIBRARIES(netifd ${LIBS} ${LIBNL_LIBRARIES})
INSTALL(TARGETS netifd
RUNTIME DESTINATION sbin
diff --git a/handler.h b/handler.h
index e96c05a..e3e2af5 100644
--- a/handler.h
+++ b/handler.h
@@ -15,7 +15,7 @@
#define __NETIFD_HANDLER_H
#include <libubox/blobmsg_json.h>
-#include <json/json.h>
+#include <json-c/json.h>
#include "config.h"
typedef void (*script_dump_cb)(const char *script, const char *name, json_object *obj);
--
1.8.4
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
More information about the openwrt-devel
mailing list