X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=CMakeLists.txt;h=0cfa93258b2f1d353cc8315b308de1f87e8fa270;hb=3dc3ac3cfe10b7196a7977e9c041c29fa141c35e;hp=024be6a4a6b9ada8359bcbab735f3bca639f7993;hpb=f60495a029c54358f82956482fe203fe2b7b5b23;p=fms.git diff --git a/CMakeLists.txt b/CMakeLists.txt index 024be6a..0cfa932 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,5 +1,7 @@ PROJECT(fms) +OPTION(USE_BUNDLED_SQLITE "Use the bundled SQLite3 library" OFF) + SET(FMS_SRC src/base64.cpp src/board.cpp @@ -20,6 +22,9 @@ src/uuidgenerator.cpp src/db/sqlite3db.cpp src/db/sqlite3recordset.cpp src/db/sqlite3statement.cpp +src/freenet/boardlistinserter.cpp +src/freenet/boardlistrequester.cpp +src/freenet/boardlistxml.cpp src/freenet/fcpv2.cpp src/freenet/freenetmasterthread.cpp src/freenet/freenetssk.cpp @@ -52,12 +57,15 @@ src/http/identityexportxml.cpp src/http/ipagehandler.cpp src/http/pages/addpeerpage.cpp src/http/pages/announceidentitypage.cpp +src/http/pages/boardspage.cpp src/http/pages/controlboardpage.cpp src/http/pages/createidentitypage.cpp +src/http/pages/execquerypage.cpp src/http/pages/homepage.cpp src/http/pages/localidentitiespage.cpp src/http/pages/optionspage.cpp src/http/pages/peerdetailspage.cpp +src/http/pages/peermaintenancepage.cpp src/http/pages/peertrustpage.cpp src/http/pages/showcaptchapage.cpp src/nntp/nntpconnection.cpp @@ -91,16 +99,35 @@ ADD_DEFINITIONS(-DTIXML_USE_STL) ADD_EXECUTABLE(fms ${FMS_SRC} ${FMS_PLATFORM_SRC}) -# For SQLite3 and shttpd +# link dl - For SQLite3 and shttpd - not for FreeBSD IF(CMAKE_COMPILER_IS_GNUCC) - TARGET_LINK_LIBRARIES(fms dl) + IF(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD") + ELSE(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD") + TARGET_LINK_LIBRARIES(fms dl) + ENDIF(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD") ENDIF(CMAKE_COMPILER_IS_GNUCC) +# add -lcompat only for FreeBSD +IF(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD") + IF(CMAKE_COMPILER_IS_GNUCXX) + TARGET_LINK_LIBRARIES(fms compat) + ENDIF(CMAKE_COMPILER_IS_GNUCXX) +ENDIF(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD") + +# link ws2_32 for Windows IF(WIN32) TARGET_LINK_LIBRARIES(fms ws2_32) ENDIF(WIN32) -FIND_LIBRARY(SQLITE3_LIBRARY NAMES sqlite3 sqlite3_s) +# add -lxnet and -lsocket on solaris +IF(CMAKE_SYSTEM_NAME STREQUAL "SunOS") + TARGET_LINK_LIBRARIES(fms xnet) + TARGET_LINK_LIBRARIES(fms socket) +ENDIF(CMAKE_SYSTEM_NAME STREQUAL "SunOS") + +IF(NOT USE_BUNDLED_SQLITE) + FIND_LIBRARY(SQLITE3_LIBRARY NAMES sqlite3 sqlite3_s) +ENDIF(NOT USE_BUNDLED_SQLITE) FIND_LIBRARY(TINYXML_LIBRARY NAMES tinyxml tinyxml_s) FIND_LIBRARY(PTHREADS_LIBRARY NAMES pthread pthreads pthreadvc2) FIND_LIBRARY(SHTTPD_LIBRARY NAMES shttpd) @@ -108,7 +135,9 @@ FIND_LIBRARY(SHTTPD_LIBRARY NAMES shttpd) IF(SQLITE3_LIBRARY) TARGET_LINK_LIBRARIES(fms ${SQLITE3_LIBRARY}) ELSE(SQLITE3_LIBRARY) - MESSAGE(STATUS "Could not find system SQLite library. Will compile from included source.") + IF(NOT USE_BUNDLED_SQLITE) + MESSAGE(STATUS "Could not find system SQLite library. Will compile from included source.") + ENDIF(NOT USE_BUNDLED_SQLITE) ADD_LIBRARY(sqlite3 libs/sqlite3/sqlite3.c) TARGET_LINK_LIBRARIES(fms sqlite3) INCLUDE_DIRECTORIES(libs/sqlite3)