xref: /aosp_15_r20/external/flatbuffers/CMake/PackageDebian.cmake (revision 890232f25432b36107d06881e0a25aaa6b473652)
1*890232f2SAndroid Build Coastguard Worker# ------------------- Debianization ---------------------
2*890232f2SAndroid Build Coastguard Workerif (UNIX)
3*890232f2SAndroid Build Coastguard Worker
4*890232f2SAndroid Build Coastguard Worker    # Set build environment
5*890232f2SAndroid Build Coastguard Worker    SET(CPACK_GENERATOR "TGZ;DEB")
6*890232f2SAndroid Build Coastguard Worker    SET(CPACK_SOURCE_TGZ "ON")
7*890232f2SAndroid Build Coastguard Worker
8*890232f2SAndroid Build Coastguard Worker    # Common package information
9*890232f2SAndroid Build Coastguard Worker    SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY
10*890232f2SAndroid Build Coastguard Worker        "FlatBuffers is an efficient cross platform serialization library for C++, with support for Java, C# and Go. It was created at Google specifically for game development and other performance-critical applications.")
11*890232f2SAndroid Build Coastguard Worker    SET(CPACK_DEBIAN_PACKAGE_HOMEPAGE "https://github.com/google/flatbuffers")
12*890232f2SAndroid Build Coastguard Worker    SET(CPACK_DEBIAN_PACKAGE_MAINTAINER "Vitaly Isaev <[email protected]>")
13*890232f2SAndroid Build Coastguard Worker
14*890232f2SAndroid Build Coastguard Worker    SET(CPACK_PACKAGE_VERSION_MAJOR ${VERSION_MAJOR})
15*890232f2SAndroid Build Coastguard Worker    SET(CPACK_PACKAGE_VERSION_MINOR ${VERSION_MINOR})
16*890232f2SAndroid Build Coastguard Worker    SET(CPACK_PACKAGE_VERSION_PATCH ${VERSION_PATCH})
17*890232f2SAndroid Build Coastguard Worker    SET(CPACK_PACKAGE_VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}-${VERSION_COMMIT}")
18*890232f2SAndroid Build Coastguard Worker    SET(CPACK_DEBIAN_PACKAGE_VERSION "${CPACK_PACKAGE_VERSION}")
19*890232f2SAndroid Build Coastguard Worker
20*890232f2SAndroid Build Coastguard Worker    # Derive architecture
21*890232f2SAndroid Build Coastguard Worker    IF(NOT CPACK_DEBIAN_PACKAGE_ARCHITECTURE)
22*890232f2SAndroid Build Coastguard Worker      FIND_PROGRAM(DPKG_CMD dpkg)
23*890232f2SAndroid Build Coastguard Worker      IF(NOT DPKG_CMD)
24*890232f2SAndroid Build Coastguard Worker        MESSAGE(STATUS "Can not find dpkg in your path, default to i386.")
25*890232f2SAndroid Build Coastguard Worker        SET(CPACK_DEBIAN_PACKAGE_ARCHITECTURE i386)
26*890232f2SAndroid Build Coastguard Worker      ENDIF(NOT DPKG_CMD)
27*890232f2SAndroid Build Coastguard Worker      EXECUTE_PROCESS(COMMAND "${DPKG_CMD}" --print-architecture
28*890232f2SAndroid Build Coastguard Worker        OUTPUT_VARIABLE CPACK_DEBIAN_PACKAGE_ARCHITECTURE
29*890232f2SAndroid Build Coastguard Worker        OUTPUT_STRIP_TRAILING_WHITESPACE
30*890232f2SAndroid Build Coastguard Worker        )
31*890232f2SAndroid Build Coastguard Worker    ENDIF(NOT CPACK_DEBIAN_PACKAGE_ARCHITECTURE)
32*890232f2SAndroid Build Coastguard Worker
33*890232f2SAndroid Build Coastguard Worker    # Package name
34*890232f2SAndroid Build Coastguard Worker    SET(CPACK_DEBIAN_PACKAGE_NAME "flatbuffers")
35*890232f2SAndroid Build Coastguard Worker    SET(CPACK_RESOURCE_FILE_LICENSE ${CMAKE_SOURCE_DIR}/LICENSE.txt)
36*890232f2SAndroid Build Coastguard Worker    SET(CPACK_PACKAGE_FILE_NAME
37*890232f2SAndroid Build Coastguard Worker        "${CPACK_DEBIAN_PACKAGE_NAME}_${CPACK_DEBIAN_PACKAGE_VERSION}_${CPACK_DEBIAN_PACKAGE_ARCHITECTURE}")
38*890232f2SAndroid Build Coastguard Worker
39*890232f2SAndroid Build Coastguard Workerendif(UNIX)
40