From dde4e6b8875773c88ce0810ac29f205cfe97e312 Mon Sep 17 00:00:00 2001 From: CapRat Date: Fri, 13 Dec 2019 11:11:29 +0100 Subject: [PATCH] Updated GitIgnore for ignoring QTCreator CMakeLists-Files and updated FindCairo and FindJack to relay on pkgconfig. Also changed fallback from Haiku to X11 --- .gitignore | 2 ++ cmake/FindCairo.cmake | 51 +++++++++++++++++++++++++++++++++---------- cmake/FindJack.cmake | 17 +++++---------- dgl/CMakeLists.txt | 27 +++++++++++++---------- 4 files changed, 63 insertions(+), 34 deletions(-) diff --git a/.gitignore b/.gitignore index 317c26b8..60551082 100644 --- a/.gitignore +++ b/.gitignore @@ -11,7 +11,9 @@ .kdev4/ .DS_Store +lib/ bin/ build/ docs/ utils/lv2_ttl_generator +CMakeLists.txt.user diff --git a/cmake/FindCairo.cmake b/cmake/FindCairo.cmake index bd7f9b56..dc2ef4cf 100644 --- a/cmake/FindCairo.cmake +++ b/cmake/FindCairo.cmake @@ -1,17 +1,47 @@ -find_path(CAIRO_INCLUDE_DIR cairo/cairo.h) +find_package(PkgConfig QUIET) -find_library(CAIRO_LIBRARY NAMES cairo) +if(PKG_CONFIG_FOUND) + pkg_check_modules(CAIRO_PKGCONF cairo) + pkg_check_modules(EXPAT_PKGCONF expat) + pkg_check_modules(FONT_CONFIG_PKGCONF fontconfig) + pkg_check_modules(PIXMAN_PKGCONF pixman) +endif(PKG_CONFIG_FOUND) -find_file(CAIRO_RUNTIME_LIBRARY NAMES cairo.dll) -find_file(EXPAT_RUNTIME_LIBRARY NAMES expat.dll) -find_file(FONTCONFIG_RUNTIME_LIBRARY NAMES fontconfig.dll) -find_file(PIXMAN_RUNTIME_LIBRARY NAMES pixman-1.dll) +# Include dir +find_path(CAIRO_INCLUDE_DIR + NAMES cairo/cairo.h + PATH_SUFFIXES include includes + PATHS ${CAIRO_PKGCONF_INCLUDEDIR} +) + +# Library +find_library(CAIRO_LIBRARY + NAMES cairo + PATH_SUFFIXES lib + PATHS ${CAIRO_PKGCONF_LIBDIR} +) +find_library(EXPAT_RUNTIME_LIBRARY + NAMES expat + PATH_SUFFIXES lib + PATHS ${EXPAT_PKGCONF_LIBDIR} +) +find_library(FONTCONFIG_RUNTIME_LIBRARY + NAMES fontconfig + PATH_SUFFIXES lib + PATHS ${FONT_CONFIG_PKGCONF_LIBDIR} +) +find_library(PIXMAN_RUNTIME_LIBRARY + NAMES pixman + PATH_SUFFIXES lib + PATHS ${PIXMAN_PKGCONF_LIBDIR} +) +#find_file(CAIRO_RUNTIME_LIBRARY NAMES cairo.dll) +#find_file(PIXMAN_RUNTIME_LIBRARY NAMES pixman-1.dll) include(FindPackageHandleStandardArgs) if (WIN32) find_package_handle_standard_args(CAIRO DEFAULT_MSG CAIRO_INCLUDE_DIR - CAIRO_LIBRARY CAIRO_RUNTIME_LIBRARY @@ -20,16 +50,15 @@ if (WIN32) PIXMAN_RUNTIME_LIBRARY ) else() + #TODO EXPAR AND FONTCONFIG Required? find_package_handle_standard_args(CAIRO DEFAULT_MSG CAIRO_INCLUDE_DIR - CAIRO_LIBRARY ) endif() mark_as_advanced( CAIRO_INCLUDE_DIR - CAIRO_LIBRARY CAIRO_RUNTIME_LIBRARY @@ -40,9 +69,7 @@ mark_as_advanced( set(CAIRO_INCLUDE_DIRS ${CAIRO_INCLUDE_DIR}) -set(CAIRO_LIBRARIES - ${CAIRO_LIBRARY} -) +set(CAIRO_LIBRARIES ${CAIRO_LIBRARY}) set(CAIRO_RUNTIME_LIBRARIES ${CAIRO_RUNTIME_LIBRARY} diff --git a/cmake/FindJack.cmake b/cmake/FindJack.cmake index 9b28b1fb..612cdb15 100644 --- a/cmake/FindJack.cmake +++ b/cmake/FindJack.cmake @@ -1,28 +1,21 @@ -# - Try to find JACK -# Once done, this will define -# -# JACK_FOUND - system has JACK -# JACK_INCLUDE_DIRS - the JACK include directories -# JACK_LIBRARIES - link these to use JACK - # Use pkg-config to get hints about paths find_package(PkgConfig QUIET) if(PKG_CONFIG_FOUND) - pkg_check_modules(JACK_PKGCONF jack) + pkg_check_modules(JACK_PKGCONF jack) endif(PKG_CONFIG_FOUND) # Include dir find_path(JACK_INCLUDE_DIR NAMES jack/jack.h PATH_SUFFIXES include includes - PATHS ${JACK_PKGCONF_INCLUDE_DIRS} + PATHS ${JACK_PKGCONF_INCLUDEDIR} ) # Library find_library(JACK_LIBRARY NAMES jack jack64 libjack libjack64 PATH_SUFFIXES lib - PATHS ${JACK_PKGCONF_LIBRARY_DIRS} + PATHS ${JACK_PKGCONF_LIBDIR} ) find_package(PackageHandleStandardArgs) @@ -33,4 +26,6 @@ if(JACK_FOUND) set(JACK_INCLUDE_DIRS ${JACK_INCLUDE_DIR}) endif(JACK_FOUND) -mark_as_advanced(JACK_LIBRARY JACK_LIBRARIES JACK_INCLUDE_DIR JACK_INCLUDE_DIRS) +mark_as_advanced(JACK_LIBRARY JACK_INCLUDE_DIR + #JACK_LIBRARIES JACK_INCLUDE_DIRS + ) diff --git a/dgl/CMakeLists.txt b/dgl/CMakeLists.txt index ce358b42..fd62cf39 100644 --- a/dgl/CMakeLists.txt +++ b/dgl/CMakeLists.txt @@ -17,19 +17,24 @@ set(DGL_COMMON_SRC src/WidgetPrivateData.cpp src/sofd/libsofd.c) -IF(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") -set(DGL_COMMON_SRC ${DGL_COMMON_SRC} src/pugl/pugl_x11.c) -set(DGL_COMPILE_DEFINITION ${DGL_COMPILE_DEFINITION} ) +IF(${CMAKE_SYSTEM_NAME} STREQUAL "Haiku") + set(DGL_COMMON_SRC ${DGL_COMMON_SRC} src/pugl/pugl_haiku.cpp) + set(DGL_COMPILE_DEFINITION ${DGL_COMPILE_DEFINITION} ) + set(DGL_LIBS ${DGL_LIBS}) ELSEIF(${CMAKE_SYSTEM_NAME} STREQUAL "Darwin") -set(DGL_COMMON_SRC ${DGL_COMMON_SRC} src/pugl/pugl_osx.m) -set(DGL_COMPILE_DEFINITION ${DGL_COMPILE_DEFINITION} ) + set(DGL_COMMON_SRC ${DGL_COMMON_SRC} src/pugl/pugl_osx.m) + set(DGL_COMPILE_DEFINITION ${DGL_COMPILE_DEFINITION} ) + set(DGL_LIBS ${DGL_LIBS}) ELSEIF(${CMAKE_SYSTEM_NAME} STREQUAL "Windows") -set(DGL_COMMON_SRC ${DGL_COMMON_SRC} src/pugl/pugl_win.cpp) -set(DGL_COMPILE_DEFINITION ${DGL_COMPILE_DEFINITION} ) -ELSE() -set(DGL_COMMON_SRC ${DGL_COMMON_SRC} src/pugl/pugl_haiku.cpp) -set(DGL_COMPILE_DEFINITION ${DGL_COMPILE_DEFINITION} ) -ENDIF(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") + set(DGL_COMMON_SRC ${DGL_COMMON_SRC} src/pugl/pugl_win.cpp) + set(DGL_COMPILE_DEFINITION ${DGL_COMPILE_DEFINITION} ) + set(DGL_LIBS ${DGL_LIBS}) +ELSE()# As Fallback use Linux-X11 + set(DGL_COMMON_SRC ${DGL_COMMON_SRC} src/pugl/pugl_x11.c) + set(DGL_COMPILE_DEFINITION ${DGL_COMPILE_DEFINITION} ) + set(DGL_LIBS ${DGL_LIBS}) +ENDIF(${CMAKE_SYSTEM_NAME} STREQUAL "Haiku") + #PID is not needed to define(as far as i think) maybe test it without. set(DGL_COMPILE_DEFINITION ${DGL_COMPILE_DEFINITION} DONT_SET_USING_DGL_NAMESPACE PIC ) #######OPENGL DGL############