Browse Source

CMakeLists: don't enable libubox md5 implementation by default

Simplify odhcp6c standalone compilation by selecting local md5
implementation by default

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
Hans Dedecker 7 years ago
parent
commit
7e0d8b8e9f
3 changed files with 12 additions and 8 deletions
  1. 10 6
      CMakeLists.txt
  2. 1 1
      README
  3. 1 1
      src/dhcpv6.c

+ 10 - 6
CMakeLists.txt

@@ -5,7 +5,6 @@ cmake_policy(SET CMP0015 NEW)
 project(odhcp6c C)
 set(CMAKE_SHARED_LIBRARY_LINK_C_FLAGS "")
 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -std=c99")
-set(LIBUBOX 1 CACHE BOOL "Link with libubox")
 add_definitions(-D_GNU_SOURCE -Wall -Werror -Wextra -pedantic)
 
 if(${EXT_PREFIX_CLASS})
@@ -17,15 +16,20 @@ if(${EXT_CER_ID})
 endif(${EXT_CER_ID})
 
 set(SOURCES src/odhcp6c.c src/dhcpv6.c src/ra.c src/script.c)
-if(LIBUBOX EQUAL 0)
-	set(SOURCES ${SOURCES} src/md5.c)
-endif()
-add_executable(odhcp6c ${SOURCES})
 
 set(LIBRARIES resolv)
-if(LIBUBOX EQUAL 1)
+
+if(USE_LIBUBOX)
+	add_definitions(-DUSE_LIBUBOX)
 	set(LIBRARIES ${LIBRARIES} ubox)
+	FIND_PATH(ubox_include_dir libubox/md5.h)
+	INCLUDE_DIRECTORIES(${ubox_include_dir})
+else()
+	set(SOURCES ${SOURCES} src/md5.c)
 endif()
+
+add_executable(odhcp6c ${SOURCES})
+
 target_link_libraries(odhcp6c ${LIBRARIES})
 
 # Installation

+ 1 - 1
README

@@ -39,7 +39,7 @@ especially routers. It compiles to only about 35 KB (-Os -s).
 ** Compiling **
 
 odhcp6c uses cmake:
-* To prepare a Makefile use:  "cmake -DLIBUBOX=0 ."
+* To prepare a Makefile use:  "cmake ."
 * To build / install use: "make" / "make install" afterwards.
 * To build DEB or RPM packages use: "make package" afterwards.
 

+ 1 - 1
src/dhcpv6.c

@@ -36,7 +36,7 @@
 #include <net/ethernet.h>
 
 #include "odhcp6c.h"
-#ifdef LIBUBOX
+#ifdef USE_LIBUBOX
 #include <libubox/md5.h>
 #else
 #include "md5.h"