summaryrefslogtreecommitdiffstats
path: root/CMakeScripts
diff options
context:
space:
mode:
authorTomasz Boczkowski <penginsbacon@gmail.com>2015-05-02 09:43:24 +0000
committerTomasz Boczkowski <penginsbacon@gmail.com>2015-05-02 09:43:24 +0000
commit4ae263b8d394775ff631efaacc835346af1ffdae (patch)
tree8c54527cb2698ade852a3286e84692fc29b74ad8 /CMakeScripts
parentmerged gtk3 compile fix (diff)
parentsp-text: Whitespace cleanup (diff)
downloadinkscape-4ae263b8d394775ff631efaacc835346af1ffdae.tar.gz
inkscape-4ae263b8d394775ff631efaacc835346af1ffdae.zip
merge with trunk
(bzr r14059.1.12)
Diffstat (limited to 'CMakeScripts')
-rw-r--r--CMakeScripts/DefineDependsandFlags.cmake50
-rw-r--r--CMakeScripts/HelperFunctions.cmake19
-rw-r--r--CMakeScripts/Modules/FindLibWPG.cmake12
3 files changed, 68 insertions, 13 deletions
diff --git a/CMakeScripts/DefineDependsandFlags.cmake b/CMakeScripts/DefineDependsandFlags.cmake
index 12f0b5240..321f0982c 100644
--- a/CMakeScripts/DefineDependsandFlags.cmake
+++ b/CMakeScripts/DefineDependsandFlags.cmake
@@ -3,8 +3,7 @@ set(INKSCAPE_LIBS "")
set(INKSCAPE_INCS "")
set(INKSCAPE_INCS_SYS "")
-list(APPEND INKSCAPE_INCS
- ${PROJECT_SOURCE_DIR}
+list(APPEND INKSCAPE_INCS ${PROJECT_SOURCE_DIR}
${PROJECT_SOURCE_DIR}/src
# generated includes
@@ -25,6 +24,31 @@ if (WIN32)
list(APPEND INKSCAPE_LIBS "-lpangoft2-1.0.dll") # FIXME
list(APPEND INKSCAPE_LIBS "-lpangowin32-1.0.dll") # FIXME
list(APPEND INKSCAPE_LIBS "-lgthread-2.0.dll") # FIXME
+elseif(APPLE)
+ if(DEFINED ENV{CMAKE_PREFIX_PATH})
+ # Adding the library search path explicitly seems not required
+ # if MacPorts is installed in default prefix ('/opt/local') -
+ # Cmake then can rely on the hard-coded paths in its modules.
+ # Only prepend search path if $CMAKE_PREFIX_PATH is defined:
+ list(APPEND INKSCAPE_LIBS "-L$ENV{CMAKE_PREFIX_PATH}/lib") # FIXME
+ # TODO: verify whether linking the next two libs explicitly is always
+ # required, or only if MacPorts is installed in custom prefix:
+ list(APPEND INKSCAPE_LIBS "-liconv") # FIXME
+ list(APPEND INKSCAPE_LIBS "-lintl") # FIXME
+ endif()
+ list(APPEND INKSCAPE_LIBS "-lpangocairo-1.0") # FIXME
+ list(APPEND INKSCAPE_LIBS "-lpangoft2-1.0") # FIXME
+ list(APPEND INKSCAPE_LIBS "-lfontconfig") # FIXME
+ # GTK+ backend
+ if(${GTK+_2.0_TARGET} MATCHES "x11")
+ # only link X11 if using X11 backend of GTK2
+ list(APPEND INKSCAPE_LIBS "-lX11") # FIXME
+ elseif(${GTK+_2.0_TARGET} MATCHES "quartz")
+ # TODO: gtk-mac-integration (currently only useful for osxmenu branch)
+ # 1) add configure option (ON/OFF) for gtk-mac-integration
+ # 2) add checks (GTK+ backend must be "quartz")
+ # 3) link relevant lib(s)
+ endif()
else()
list(APPEND INKSCAPE_LIBS "-ldl") # FIXME
list(APPEND INKSCAPE_LIBS "-lpangocairo-1.0") # FIXME
@@ -33,6 +57,10 @@ else()
list(APPEND INKSCAPE_LIBS "-lX11") # FIXME
endif()
+if(NOT APPLE)
+ # FIXME: should depend on availability of OpenMP support (see below) (?)
+ list(APPEND INKSCAPE_LIBS "-lgomp") # FIXME
+endif()
list(APPEND INKSCAPE_LIBS "-lgslcblas") # FIXME
if(WITH_GNOME_VFS)
@@ -117,8 +145,8 @@ add_definitions(${POPPLER_DEFINITIONS})
if(WITH_LIBWPG)
find_package(LibWPG)
if(LIBWPG_FOUND)
- set(WITH_LIBWPG01 ${LIBWPG01_FOUND})
- set(WITH_LIBWPG02 ${LIBWPG02_FOUND})
+ set(WITH_LIBWPG-0.1 ${LIBWPG-0.1_FOUND})
+ set(WITH_LIBWPG-0.2 ${LIBWPG-0.2_FOUND})
list(APPEND INKSCAPE_INCS_SYS ${LIBWPG_INCLUDE_DIRS})
list(APPEND INKSCAPE_LIBS ${LIBWPG_LIBRARIES})
add_definitions(${LIBWPG_DEFINITIONS})
@@ -127,6 +155,14 @@ if(WITH_LIBWPG)
endif()
endif()
+FIND_PACKAGE(JPEG REQUIRED)
+#IF(JPEG_FOUND)
+ #INCLUDE_DIRECTORIES(${JPEG_INCLUDE_DIR})
+ #TARGET_LINK_LIBRARIES(mpo ${JPEG_LIBRARIES})
+#ENDIF()
+list(APPEND INKSCAPE_INCS_SYS ${JPEG_INCLUDE_DIR})
+list(APPEND INKSCAPE_LIBS ${JPEG_LIBRARIES})
+
find_package(PNG REQUIRED)
list(APPEND INKSCAPE_INCS_SYS ${PNG_PNG_INCLUDE_DIR})
list(APPEND INKSCAPE_LIBS ${PNG_LIBRARY})
@@ -227,9 +263,9 @@ if(WITH_GTKSPELL)
set(WITH_GTKSPELL ${GTKSPELL_FOUND})
endif()
-find_package(OpenSSL)
-list(APPEND INKSCAPE_INCS_SYS ${OPENSSL_INCLUDE_DIR})
-list(APPEND INKSCAPE_LIBS ${OPENSSL_LIBRARIES})
+#find_package(OpenSSL)
+#list(APPEND INKSCAPE_INCS_SYS ${OPENSSL_INCLUDE_DIR})
+#list(APPEND INKSCAPE_LIBS ${OPENSSL_LIBRARIES})
find_package(LibXslt REQUIRED)
list(APPEND INKSCAPE_INCS_SYS ${LIBXSLT_INCLUDE_DIR})
diff --git a/CMakeScripts/HelperFunctions.cmake b/CMakeScripts/HelperFunctions.cmake
new file mode 100644
index 000000000..0e6fff51a
--- /dev/null
+++ b/CMakeScripts/HelperFunctions.cmake
@@ -0,0 +1,19 @@
+# pkg_check_variable() - a function to retrieve pkg-config variables in CMake
+#
+# source: http://bloerg.net/2015/03/06/pkg-config-variables-in-cmake.html
+
+find_package(PkgConfig REQUIRED)
+
+function(pkg_check_variable _pkg _name)
+ string(TOUPPER ${_pkg} _pkg_upper)
+ string(TOUPPER ${_name} _name_upper)
+ string(REPLACE "-" "_" _pkg_upper ${_pkg_upper})
+ string(REPLACE "-" "_" _name_upper ${_name_upper})
+ set(_output_name "${_pkg_upper}_${_name_upper}")
+
+ execute_process(COMMAND ${PKG_CONFIG_EXECUTABLE} --variable=${_name} ${_pkg}
+ OUTPUT_VARIABLE _pkg_result
+ OUTPUT_STRIP_TRAILING_WHITESPACE)
+
+ set("${_output_name}" "${_pkg_result}" CACHE STRING "pkg-config variable ${_name} of ${_pkg}")
+endfunction()
diff --git a/CMakeScripts/Modules/FindLibWPG.cmake b/CMakeScripts/Modules/FindLibWPG.cmake
index 4f173da2d..136267070 100644
--- a/CMakeScripts/Modules/FindLibWPG.cmake
+++ b/CMakeScripts/Modules/FindLibWPG.cmake
@@ -38,17 +38,17 @@ else (LIBWPG_LIBRARIES AND LIBWPG_INCLUDE_DIRS)
INKSCAPE_PKG_CONFIG_FIND(LIBWPG-0.2 libwpg-0.2 0 libwpg/libwpg.h libwpg-0.2 wpg-0.2)
INKSCAPE_PKG_CONFIG_FIND(LIBWPD-0.9 libwpd-0.9 0 libwpd/libwpd.h libwpd-0.9 wpd-0.9)
INKSCAPE_PKG_CONFIG_FIND(LIBWPD-STREAM-0.9 libwpd-stream-0.9 0 libwpd/libwpd.h libwpd-0.9 wpd-stream-0.9)
- if (LIBWPG02_FOUND)
- list(APPEND LIBWPG_INCLUDE_DIRS ${LIBWPG02_INCLUDE_DIRS})
- list(APPEND LIBWPG_LIBRARIES ${LIBWPG02_LIBRARIES})
+ if (LIBWPG-0.2_FOUND AND LIBWPD-STREAM-0.9_FOUND AND LIBWPD-0.9_FOUND)
+ list(APPEND LIBWPG_INCLUDE_DIRS ${LIBWPG-0.2_INCLUDE_DIRS})
+ list(APPEND LIBWPG_LIBRARIES ${LIBWPG-0.2_LIBRARIES})
list(APPEND LIBWPG_INCLUDE_DIRS ${LIBWPD-0.9_INCLUDE_DIRS})
list(APPEND LIBWPG_LIBRARIES ${LIBWPD-0.9_LIBRARIES})
list(APPEND LIBWPG_INCLUDE_DIRS ${LIBWPD-STREAM-0.9_INCLUDE_DIRS})
list(APPEND LIBWPG_LIBRARIES ${LIBWPD-STREAM-0.9_LIBRARIES})
set(LIBWPG02_FOUND TRUE)
- endif (LIBWPG02_FOUND)
- if (LIBWPG01_FOUND OR LIBWPG_02_FOUND)
+ endif (LIBWPG-0.2_FOUND AND LIBWPD-STREAM-0.9_FOUND AND LIBWPD-0.9_FOUND)
+ if (LIBWPG-0.1_FOUND OR LIBWPG-0.2_FOUND)
set(LIBWPG_FOUND TRUE)
- endif (LIBWPG01_FOUND OR LIBWPG_02_FOUND)
+ endif (LIBWPG-0.1_FOUND OR LIBWPG-0.2_FOUND)
endif (PKG_CONFIG_FOUND)
endif (LIBWPG_LIBRARIES AND LIBWPG_INCLUDE_DIRS)