--- CMakeLists.txt.orig 2013-10-01 18:38:05.000000000 -0400 +++ CMakeLists.txt 2014-12-15 21:35:53.000000000 -0500 @@ -14,6 +14,7 @@ INCLUDE(CheckCCompilerFlag) INCLUDE(CheckCXXCompilerFlag) INCLUDE(CheckTypeSize) +INCLUDE(GNUInstallDirs) # Version set(SLIM_VERSION_MAJOR "1") @@ -23,14 +24,23 @@ set(CMAKE_INSTALL_PREFIX "/usr/local" CACHE PATH "Installation Directory") set(PKGDATADIR "${CMAKE_INSTALL_PREFIX}/share/slim") -set(SYSCONFDIR "/etc") -set(LIBDIR "/lib") -set(MANDIR "${CMAKE_INSTALL_PREFIX}/share/man") +if(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD" OR + ${CMAKE_SYSTEM_NAME} MATCHES "DragonFly" + ) + set(SYSCONFDIR "${CMAKE_INSTALL_FULL_SYSCONFDIR}") + set(LIBDIR "${CMAKE_INSTALL_FULL_LIBDIR}") + set(MANDIR "${CMAKE_INSTALL_PREFIX}/man") +else() + set(SYSCONFDIR "/etc") + set(LIBDIR "/lib") + set(MANDIR "${CMAKE_INSTALL_PREFIX}/share/man") +endif() set(SLIM_DEFINITIONS) if(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD" OR ${CMAKE_SYSTEM_NAME} MATCHES "NetBSD" OR - ${CMAKE_SYSTEM_NAME} MATCHES "OpenBSD" + ${CMAKE_SYSTEM_NAME} MATCHES "OpenBSD" OR + ${CMAKE_SYSTEM_NAME} MATCHES "DragonFly" ) set(SLIM_DEFINITIONS ${SLIM_DEFINITIONS} "-DNEEDS_BASENAME") else() @@ -70,8 +80,10 @@ ) if(USE_PAM) set(common_srcs ${common_srcs} PAM.cpp) - # for now, only build slimlock if we are using PAM. - set(BUILD_SLIMLOCK 1) + # for now, only build slimlock if we are using PAM. + if(BUILD_SLIMLOCK) + set(BUILD_SLIMLOCK 1) + endif(BUILD_SLIMLOCK) endif(USE_PAM) # Build common library @@ -120,7 +132,9 @@ message("\tPAM Found") set(SLIM_DEFINITIONS ${SLIM_DEFINITIONS} "-DUSE_PAM") target_link_libraries(${PROJECT_NAME} ${PAM_LIBRARY}) - target_link_libraries(slimlock ${PAM_LIBRARY}) + if(BUILD_SLIMLOCK) + target_link_libraries(slimlock ${PAM_LIBRARY}) + endif(BUILD_SLIMLOCK) include_directories(${PAM_INCLUDE_DIR}) else(PAM_FOUND) message("\tPAM Not Found") @@ -195,6 +209,7 @@ ${FREETYPE_LIBRARY} ${JPEG_LIBRARIES} ${PNG_LIBRARIES} + util libslim ) @@ -221,7 +236,9 @@ ####### install # slim install(TARGETS slim RUNTIME DESTINATION bin) -install(TARGETS slimlock RUNTIME DESTINATION bin) +if(BUILD_SLIMLOCK) + install(TARGETS slimlock RUNTIME DESTINATION bin) +endif(BUILD_SLIMLOCK) if (BUILD_SHARED_LIBS) set_target_properties(libslim PROPERTIES @@ -236,9 +253,11 @@ # man file install(FILES slim.1 DESTINATION ${MANDIR}/man1/) -install(FILES slimlock.1 DESTINATION ${MANDIR}/man1/) +if(BUILD_SLIMLOCK) + install(FILES slimlock.1 DESTINATION ${MANDIR}/man1/) +endif(BUILD_SLIMLOCK) # configure -install(FILES slim.conf DESTINATION ${SYSCONFDIR}) +install(FILES slim.conf.sample DESTINATION ${SYSCONFDIR}) # systemd service file if (${CMAKE_SYSTEM_NAME} MATCHES "Linux") install(FILES slim.service DESTINATION ${LIBDIR}/systemd/system)