$NetBSD: patch-CMakeLists.txt,v 1.2 2025/04/13 16:07:15 jmcneill Exp $ Allow pkgsrc to override INSTALL_MAN_DIR. --- CMakeLists.txt.orig 2023-10-28 15:03:04.000000000 +0000 +++ CMakeLists.txt @@ -16,6 +16,8 @@ option(FORCE_SSE41 "Compile with SSE4.1 option(OPTIONAL_TEST "Compile optional test (might be broken)" OFF) # UNITTEST option must be after CMAKE_BUILT_TYPE +option(PKGSRC "Build for pkgsrc" OFF) + # where cmake find custom modules list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/modules) @@ -41,6 +43,9 @@ if(NOT (WIN32 OR CYGWIN)) set(APPLICATION_DESKTOP_EXEC "xterm -e ${CMAKE_PROJECT_NAME}") endif() endif() +if(PKGSRC) + add_definitions("-DINSTALL_PREFIX=\"${INSTALL_PREFIX}\"") +endif() find_package(Git) if(GIT_FOUND AND EXISTS "${CMAKE_SOURCE_DIR}/.git/") @@ -177,6 +182,13 @@ elseif (WIN32) set(CUSTOM_SHELL_BIN "") endif() endif() +elseif (PKGSRC) + configure_file("${CMAKE_SOURCE_DIR}/cmake/cpack/${CMAKE_PROJECT_NAME}.desktop.in" + "${CMAKE_BINARY_DIR}/${CMAKE_PROJECT_NAME}.desktop" @ONLY) +endif() + +if(${CMAKE_SYSTEM_NAME} STREQUAL "NetBSD") + set(NETBSD TRUE) endif() if (C_CLANG OR C_GCC) @@ -254,7 +266,7 @@ else() set(INSTALL_DOC_DIR "share/doc/${CMAKE_PROJECT_NAME}") set(INSTALL_CONF_DIR "${INSTALL_DOC_DIR}/conf") set(INSTALL_SCRIPTS_DIR "${INSTALL_DOC_DIR}/scripts") - if(FREEBSD) + if(FREEBSD OR PKGSRC) set(INSTALL_MAN_DIR "man/man1") else() set(INSTALL_MAN_DIR "share/man/man1") @@ -361,6 +373,10 @@ else() set(SNDIO_LIBRARIES "") endif() +if(NETBSD) + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DUSE_CM108") +endif() + # manage and fetch new data add_subdirectory(data) @@ -395,7 +411,7 @@ add_subdirectory(doc) add_subdirectory(man) # install desktop link -if (LINUX OR FREEBSD) +if (LINUX OR FREEBSD OR PKGSRC) install(FILES ${CMAKE_BINARY_DIR}/${CMAKE_PROJECT_NAME}.desktop DESTINATION share/applications) install(FILES ${CMAKE_SOURCE_DIR}/cmake/cpack/${CMAKE_PROJECT_NAME}_icon.png DESTINATION share/pixmaps) endif()