Code

Cmake: restructure build files to be more like current build system. Should reduce...
[inkscape.git] / src / CMakeLists.txt
index a6a1e2a74a014fa2da259d77a2cc75172299aa3f..062d4b6b1b5e96e052eab14094320c44e51b148e 100644 (file)
@@ -6,6 +6,7 @@ IF(WIN32)
 ELSEIF(WIN32)\r
     SET(ONLY_WIN)\r
 ENDIF(WIN32)\r
+\r
 SET(SP_SRC\r
 sp-anchor.cpp\r
 sp-animation.cpp\r
@@ -15,26 +16,6 @@ sp-conn-end-pair.cpp
 sp-cursor.cpp\r
 sp-defs.cpp\r
 sp-ellipse.cpp\r
-# sp-feblend.cpp\r
-# sp-fecolormatrix.cpp\r
-# sp-fecomponenttransfer.cpp\r
-# sp-fecomponenttransfer-funcnode.cpp\r
-# sp-fecomposite.cpp\r
-# sp-feconvolvematrix.cpp\r
-# sp-fediffuselighting.cpp\r
-# sp-fedisplacementmap.cpp\r
-# sp-fedistantlight.cpp\r
-# sp-feflood.cpp\r
-# sp-feimage.cpp\r
-# sp-femerge.cpp\r
-# sp-femergenode.cpp\r
-# sp-femorphology.cpp\r
-# sp-feoffset.cpp\r
-# sp-fepointlight.cpp\r
-# sp-fespecularlighting.cpp\r
-# sp-fespotlight.cpp\r
-# sp-fetile.cpp\r
-# sp-feturbulence.cpp\r
 sp-filter.cpp\r
 sp-filter-primitive.cpp\r
 sp-filter-reference.cpp\r
@@ -220,8 +201,8 @@ version.cpp
 zoom-context.cpp\r
 ${ONLY_WIN}\r
 )\r
-# All folder with CMakeLists.txt files (excluding internal libraries)\r
-SET(srcfolders\r
+# All folders for internal inkscape\r
+SET(internalfolders\r
 algorithms\r
 api\r
 application\r
@@ -230,56 +211,28 @@ debug
 dialogs\r
 display\r
 dom\r
-dom/io\r
-dom/odf\r
-dom/util\r
-#dom/work\r
 extension\r
-#extension/dxf2svg\r
-extension/implementation\r
-extension/internal\r
-extension/internal/bitmap\r
-extension/internal/filter\r
-extension/internal/pdfinput\r
-extension/param\r
-extension/script\r
+filters\r
 graphlayout\r
 helper\r
 inkjar\r
 io\r
 jabber_whiteboard\r
-jabber_whiteboard/dialog\r
 live_effects\r
-live_effects/parameter\r
 pedro\r
 removeoverlap\r
 svg\r
 trace\r
-trace/potrace\r
 traits\r
-ui/cache\r
 ui\r
-ui/dialog\r
-ui/view\r
-ui/widget\r
-#utest\r
 util\r
 widgets\r
 xml\r
 )\r
 \r
-# 1) include each list file\r
-# 2) grab the variable inside \r
-# 3) prepend the full relative path to each file in list\r
-# 4) append the list to INKSCAPE_SRC\r
-FOREACH(dirlist ${srcfolders})\r
-  SET(_temp_dirlist "${dirlist}")\r
-  MESSAGE(STATUS "Processing ${CMAKE_CURRENT_SOURCE_DIR}/${dirlist}/CMakeLists.txt")\r
-  INCLUDE(${CMAKE_CURRENT_SOURCE_DIR}/${dirlist}/CMakeLists.txt)\r
-  SANITIZE_PATH(dirlist)\r
-  PREPEND(${dirlist}_SRC "${_temp_dirlist}/")\r
-  SET(INKSCAPE_SRC ${INKSCAPE_SRC} ${${dirlist}_SRC})\r
-ENDFOREACH(dirlist)\r
+FOREACH(srclistsrc ${internalfolders})\r
+  ADD_SUBDIRECTORY(${srclistsrc})\r
+ENDFOREACH(srclistsrc)\r
 \r
 SET(INKSCAPE_SRC ${INKSCAPE_SRC} ${GlibOutput})\r
 # All directories containing lists files that describe building internal libraries\r
@@ -307,12 +260,12 @@ TARGET_LINK_LIBRARIES(sp
 # make executable for INKSCAPE\r
 ADD_EXECUTABLE(inkscape ${INKSCAPE_SRC})\r
 TARGET_LINK_LIBRARIES(inkscape\r
-        2geom avoid cola croco gdl nr nrtype vpsc livarot sp\r
+        2geom avoid cola croco gdl nr nrtype vpsc livarot sp ${internalfolders}\r
 )\r
 \r
 # make executable for INKVIEW\r
 #ADD_EXECUTABLE(inkview inkview.cpp)\r
 #TARGET_LINK_LIBRARIES(inkview\r
-#      "${INKSCAPE_LINK_FLAGS}" 2geom avoid cola croco gdl nr nrtype vpsc livarot sp\r
+#      "${INKSCAPE_LINK_FLAGS}" 2geom avoid cola croco gdl nr nrtype vpsc livarot sp ${internalfolders}\r
 #)\r
 \r