summaryrefslogtreecommitdiffstats
path: root/subsurface-core/CMakeLists.txt
diff options
context:
space:
mode:
authorGravatar Tomaz Canabrava <tomaz.canabrava@intel.com>2015-09-02 20:52:34 -0300
committerGravatar Dirk Hohndel <dirk@hohndel.org>2015-10-30 10:36:48 -0700
commit4c0156e3d51b389db8eccc3fa3da4b8f248f9b13 (patch)
tree966868d29150fdba13a5a56fb4305bc432ec7a72 /subsurface-core/CMakeLists.txt
parenta0798214231c652ac6142228f5ddfc4b65c921f8 (diff)
downloadsubsurface-4c0156e3d51b389db8eccc3fa3da4b8f248f9b13.tar.gz
Move all core-functionality to subsurface-core
And adapt a new CMakeLists.txt file for it. On the way I've also found out that we where double-compilling a few files. I've also set the subsurface-core as a include_path but that was just to reduce the noise on this commit, since I plan to remove it from the include path to make it obligatory to specify something like include "subsurface-core/dive.h" for the header files. Since the app is growing quite a bit we ended up having a few different files with almost same name that did similar things, I want to kill that (for instance Dive.h, dive.h, PrintDive.h and such). Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'subsurface-core/CMakeLists.txt')
-rw-r--r--subsurface-core/CMakeLists.txt81
1 files changed, 81 insertions, 0 deletions
diff --git a/subsurface-core/CMakeLists.txt b/subsurface-core/CMakeLists.txt
new file mode 100644
index 000000000..e7f531527
--- /dev/null
+++ b/subsurface-core/CMakeLists.txt
@@ -0,0 +1,81 @@
+set(PLATFORM_SRC unknown_platform.c)
+if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
+ set(PLATFORM_SRC linux.c)
+elseif(ANDROID)
+ set(PLATFORM_SRC android.cpp)
+elseif(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
+ set(PLATFORM_SRC macos.c)
+elseif(CMAKE_SYSTEM_NAME STREQUAL "Windows")
+ set(PLATFORM_SRC windows.c)
+endif()
+
+if(FTDISUPPORT)
+ set(SERIAL_FTDI serial_ftdi.c)
+endif()
+
+if(BTSUPPORT)
+ add_definitions(-DBT_SUPPORT)
+ set(BT_SRC_FILES qt-ui/btdeviceselectiondialog.cpp)
+ set(BT_CORE_SRC_FILES qtserialbluetooth.cpp)
+endif()
+
+# compile the core library, in C.
+set(SUBSURFACE_CORE_LIB_SRCS
+ cochran.c
+ datatrak.c
+ deco.c
+ device.c
+ dive.c
+ divesite.c
+ divesite.cpp
+ divelist.c
+ equipment.c
+ file.c
+ git-access.c
+ libdivecomputer.c
+ liquivision.c
+ load-git.c
+ membuffer.c
+ ostctools.c
+ parse-xml.c
+ planner.c
+ profile.c
+ gaspressures.c
+ worldmap-save.c
+ save-git.c
+ save-xml.c
+ save-html.c
+ sha1.c
+ statistics.c
+ strtod.c
+ subsurfacestartup.c
+ time.c
+ uemis.c
+ uemis-downloader.c
+ version.c
+ # gettextfrommoc should be added because we are using it on the c-code.
+ gettextfromc.cpp
+ # dirk ported some core functionality to c++.
+ qthelper.cpp
+ divecomputer.cpp
+ exif.cpp
+ subsurfacesysinfo.cpp
+ devicedetails.cpp
+ configuredivecomputer.cpp
+ configuredivecomputerthreads.cpp
+ divesitehelpers.cpp
+ taxonomy.c
+ checkcloudconnection.cpp
+ windowtitleupdate.cpp
+ divelogexportlogic.cpp
+ qt-init.cpp
+ qtserialbluetooth.cpp
+ ${SERIAL_FTDI}
+ ${PLATFORM_SRC}
+ ${BT_CORE_SRC_FILES}
+)
+source_group("Subsurface Core" FILES ${SUBSURFACE_CORE_LIB_SRCS})
+
+add_library(subsurface_corelib STATIC ${SUBSURFACE_CORE_LIB_SRCS} )
+target_link_libraries(subsurface_corelib ${QT_LIBRARIES})
+