mirror of
https://github.com/arcan1s/reportabug.git
synced 2025-04-24 15:27:18 +00:00
add BUILD_AS_LIBRARY cmake flag
This commit is contained in:
parent
5c75a733aa
commit
7bdf7c6584
@ -8,22 +8,23 @@ cmake_policy (SET CMP0015 NEW)
|
|||||||
project (reportabug)
|
project (reportabug)
|
||||||
|
|
||||||
set (SUBPROJECT reportabug)
|
set (SUBPROJECT reportabug)
|
||||||
set (PROJECT_AUTHOR "Evgeniy Alekseev")
|
set (SUBPROJECT_AUTHOR "Evgeniy Alekseev")
|
||||||
set (PROJECT_CONTACT "esalexeev@gmail.com")
|
set (SUBPROJECT_CONTACT "esalexeev@gmail.com")
|
||||||
set (PROJECT_LICENSE "GPLv3")
|
set (SUBPROJECT_LICENSE "LGPLv3")
|
||||||
set (PROJECT_VERSION_MAJOR 1)
|
set (SUBPROJECT_VERSION_MAJOR 1)
|
||||||
set (PROJECT_VERSION_MINOR 0)
|
set (SUBPROJECT_VERSION_MINOR 0)
|
||||||
set (PROJECT_VERSION_PATCH 0)
|
set (SUBPROJECT_VERSION_PATCH 0)
|
||||||
set (PROJECT_VERSION ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH})
|
set (SUBPROJECT_VERSION ${SUBPROJECT_VERSION_MAJOR}.${SUBPROJECT_VERSION_MINOR}.${SUBPROJECT_VERSION_PATCH})
|
||||||
string (TIMESTAMP CURRENT_DATE "%Y-%m-%d %H:%M" UTC)
|
string (TIMESTAMP CURRENT_DATE "%Y-%m-%d %H:%M" UTC)
|
||||||
string (TIMESTAMP CURRENT_YEAR "%Y")
|
string (TIMESTAMP CURRENT_YEAR "%Y")
|
||||||
|
|
||||||
message (STATUS "Subproject: ${SUBPROJECT}")
|
message (STATUS "Subproject: ${SUBPROJECT}")
|
||||||
message (STATUS "Version: ${PROJECT_VERSION}")
|
message (STATUS "Version: ${SUBPROJECT_VERSION}")
|
||||||
message (STATUS "Build date: ${CURRENT_DATE}")
|
message (STATUS "Build date: ${CURRENT_DATE}")
|
||||||
|
|
||||||
# install options
|
# install options
|
||||||
option (USE_QT5 "Use Qt5 instead of Qt4" ON)
|
option (USE_QT5 "Use Qt5 instead of Qt4" ON)
|
||||||
|
option (BUILD_AS_LIBRARY "Build the application as a shared library" ON)
|
||||||
|
|
||||||
# flags
|
# flags
|
||||||
if (CMAKE_COMPILER_IS_GNUCXX)
|
if (CMAKE_COMPILER_IS_GNUCXX)
|
||||||
@ -50,4 +51,6 @@ set (HEADERS "")
|
|||||||
|
|
||||||
add_subdirectory (${SUBPROJECT_SOURCE_DIR})
|
add_subdirectory (${SUBPROJECT_SOURCE_DIR})
|
||||||
|
|
||||||
install (FILES ${SUBPROJECT}.desktop DESTINATION share/applications/)
|
if (NOT BUILD_AS_LIBRARY)
|
||||||
|
install (FILES ${SUBPROJECT}.desktop DESTINATION share/applications/)
|
||||||
|
endif ()
|
||||||
|
@ -29,7 +29,11 @@ if (USE_QT5)
|
|||||||
include_directories (${Qt5Core_INCLUDE_DIRS} ${Qt5Network_INCLUDE_DIRS}
|
include_directories (${Qt5Core_INCLUDE_DIRS} ${Qt5Network_INCLUDE_DIRS}
|
||||||
${Qt5WebKit_INCLUDE_DIRS} ${Qt5WebKitWidgets_INCLUDE_DIRS}
|
${Qt5WebKit_INCLUDE_DIRS} ${Qt5WebKitWidgets_INCLUDE_DIRS}
|
||||||
${Qt5Widgets_INCLUDE_DIRS})
|
${Qt5Widgets_INCLUDE_DIRS})
|
||||||
add_executable (${SUBPROJECT} ${UI_HEADERS} ${HEADERS} ${SOURCES} ${MOC_SOURCES})
|
if (BUILD_AS_LIBRARY)
|
||||||
|
add_library (${SUBPROJECT} SHARED ${SOURCES} ${HEADERS} ${MOC_SOURCES})
|
||||||
|
else ()
|
||||||
|
add_executable (${SUBPROJECT} ${UI_HEADERS} ${HEADERS} ${SOURCES} ${MOC_SOURCES})
|
||||||
|
endif ()
|
||||||
target_link_libraries (${SUBPROJECT} ${Qt5Core_LIBRARIES} ${Qt5Network_LIBRARIES}
|
target_link_libraries (${SUBPROJECT} ${Qt5Core_LIBRARIES} ${Qt5Network_LIBRARIES}
|
||||||
${Qt5WebKit_LIBRARIES} ${Qt5WebKitWidgets_LIBRARIES}
|
${Qt5WebKit_LIBRARIES} ${Qt5WebKitWidgets_LIBRARIES}
|
||||||
${Qt5Widgets_LIBRARIES})
|
${Qt5Widgets_LIBRARIES})
|
||||||
@ -43,10 +47,18 @@ else ()
|
|||||||
source_group ("Source Files" FILES ${SOURCES})
|
source_group ("Source Files" FILES ${SOURCES})
|
||||||
source_group ("Generated Files" FILES ${MOC_SOURCES})
|
source_group ("Generated Files" FILES ${MOC_SOURCES})
|
||||||
|
|
||||||
add_executable (${SUBPROJECT} ${UI_HEADERS} ${HEADERS} ${SOURCES} ${MOC_SOURCES})
|
if (BUILD_AS_LIBRARY)
|
||||||
target_link_libraries (${SUBPROJECT} ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY}
|
add_library (${SUBPROJECT} SHARED ${SOURCES} ${HEADERS} ${MOC_SOURCES})
|
||||||
|
else ()
|
||||||
|
add_executable (${SUBPROJECT} ${UI_HEADERS} ${HEADERS} ${SOURCES} ${MOC_SOURCES})
|
||||||
|
endif ()
|
||||||
|
target_link_libraries (${SUBPROJECT} ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY}
|
||||||
${QT_QTNETWORK_LIBRARY} ${QT_QTWEBKIT_LIBRARY})
|
${QT_QTNETWORK_LIBRARY} ${QT_QTWEBKIT_LIBRARY})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# install properties
|
# install properties
|
||||||
install (TARGETS ${SUBPROJECT} DESTINATION bin)
|
if (BUILD_AS_LIBRARY)
|
||||||
|
install (TARGETS ${SUBPROJECT} DESTINATION lib)
|
||||||
|
else ()
|
||||||
|
install (TARGETS ${SUBPROJECT} DESTINATION bin)
|
||||||
|
endif ()
|
||||||
|
@ -2,10 +2,10 @@
|
|||||||
#define VERSION_H
|
#define VERSION_H
|
||||||
|
|
||||||
#define NAME "Report a Bug"
|
#define NAME "Report a Bug"
|
||||||
#define VERSION "@PROJECT_VERSION@"
|
#define VERSION "@SUBPROJECT_VERSION@"
|
||||||
#define AUTHOR "@PROJECT_AUTHOR@"
|
#define AUTHOR "@SUBPROJECT_AUTHOR@"
|
||||||
#define EMAIL "@PROJECT_CONTACT@"
|
#define EMAIL "@SUBPROJECT_CONTACT@"
|
||||||
#define LICENSE "@PROJECT_LICENSE@"
|
#define LICENSE "@SUBPROJECT_LICENSE@"
|
||||||
|
|
||||||
#define HOMEPAGE "https://github.com/arcan1s/reportabug"
|
#define HOMEPAGE "https://github.com/arcan1s/reportabug"
|
||||||
#define REPOSITORY "https://github.com/arcan1s/reportabug"
|
#define REPOSITORY "https://github.com/arcan1s/reportabug"
|
||||||
@ -16,6 +16,7 @@
|
|||||||
|
|
||||||
#define CMAKE_BUILD_TYPE "@CMAKE_BUILD_TYPE@"
|
#define CMAKE_BUILD_TYPE "@CMAKE_BUILD_TYPE@"
|
||||||
#define CMAKE_INSTALL_PREFIX "@CMAKE_INSTALL_PREFIX@"
|
#define CMAKE_INSTALL_PREFIX "@CMAKE_INSTALL_PREFIX@"
|
||||||
#define PROJECT_USE_QT5 "@USE_QT5@"
|
#define SUBPROJECT_USE_QT5 "@USE_QT5@"
|
||||||
|
#define SUBPROJECT_LIBRARY "@BUILD_AS_LIBRARY@"
|
||||||
|
|
||||||
#endif /* VERSION_H */
|
#endif /* VERSION_H */
|
||||||
|
Loading…
Reference in New Issue
Block a user