2 # common package information
3 set(CPACK_PACKAGE_NAME "${PACKAGE_NAME}")
4 set(CPACK_PACKAGE_VENDOR "Facebook")
5 set(CPACK_PACKAGE_VERSION "${PACKAGE_VERSION}")
6 set(CPACK_PACKAGE_DESCRIPTION_SUMMARY
7 "Virtual Machine, Runtime, and JIT for PHP")
8 set(CPACK_DEBIAN_PACKAGE_DESCRIPTION "${CPACK_PACKAGE_DESCRIPTION_SUMMARY}")
9 #set(CPACK_RESOURCE_FILE_WELCOME "${CMAKE_CURRENT_LIST_DIR}/README.md")
10 #set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_LIST_DIR}/LICENSE")
11 set(CPACK_RESOURCE_FILE_README "${CMAKE_CURRENT_LIST_DIR}/README.md")
12 set(CPACK_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
13 set(CPACK_PACKAGE_CONTACT "Paul Tarjan <pt@fb.com>")
14 set(CPACK_OUTPUT_FILE_PREFIX packages)
15 set(CPACK_PACKAGE_RELOCATABLE true)
16 set(CPACK_MONOLITHIC_INSTALL true)
18 # Prefix Debug/Nightly release
19 set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}")
21 set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_FILE_NAME}-nightly")
22 #execute_process(COMMAND "date +%Y.%m.%d" OUTPUT_VARIABLE NIGHTLY_DATE)
24 if(CMAKE_BUILD_TYPE MATCHES "Debug")
25 set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_FILE_NAME}-dbg")
28 # default package generators
30 set(PACKAGE_GENERATOR "PackageMaker")
31 set(PACKAGE_SOURCE_GENERATOR "TGZ;ZIP")
33 set(PACKAGE_GENERATOR "DEB;RPM")
34 set(PACKAGE_SOURCE_GENERATOR "TGZ;ZIP")
36 set(PACKAGE_GENERATOR "ZIP")
37 set(PACKAGE_SOURCE_GENERATOR "ZIP")
41 if(CPACK_GENERATOR MATCHES "PackageMaker|DragNDrop")
42 set(CPACK_PACKAGE_FILE_NAME
43 "${CPACK_PACKAGE_FILE_NAME}-${CPACK_PACKAGE_VERSION}")
44 set(CPACK_PACKAGING_INSTALL_PREFIX /usr/local)
46 elseif(CPACK_GENERATOR MATCHES "DEB")
47 # https://github.com/hhvm/packaging/tree/master/hhvm/deb
48 set(CPACK_DEBIAN_PACKAGE_DEPENDS "binutils, libboost-filesystem1.54.0,"
49 "libboost-program-options1.54.0, libboost-regex1.54.0,"
50 "libboost-system1.54.0, libboost-thread1.54.0, libbz2-1.0,"
51 "libc-client2007e, libc6, libcap2, libcomerr2, libcurl3 (>= 7.26.0),"
52 "libedit2, libelf1, libevent-2.0-5, libexpat1, libfontconfig1, "
53 "libfreetype6, libgcc1, libgcrypt11, libgd2-xpm-dev, libgnutls26, "
54 "libgoogle-glog0, libgpg-error0, libgssapi-krb5-2, libicu52, libidn11, "
55 "libjemalloc1 (>= 3.0.0), libjpeg8, libk5crypto3, libkeyutils1, "
56 "libkrb5-3, libkrb5support0, libldap-2.4-2, libmagickwand5, libmcrypt4, "
57 "libmemcached11, libmysqlclient18, libonig2, libp11-kit0, libpam0g, "
58 "libpcre3, libpng12-0, libvpx-dev, libvpx1, libsasl2-2, libsqlite3-0, libssl1.0.0, "
59 "libstdc++6, libtasn1-6, libtbb2, libtinfo5, libunwind8, libx11-6, "
60 "libxau6, libxcb1, libxdmcp6, libxml2, libxpm4, libxslt1.1, zlib1g")
61 set(CPACK_DEBIAN_PACKAGE_SECTION "web")
62 set(CPACK_DEBIAN_PACKAGE_PRIORITY "optional")
63 set(CPACK_DEBIAN_PACKAGE_HOMEPAGE "http://hhvm.com")
64 set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "amd64")
65 set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_FILE_NAME}"
66 "-${CPACK_PACKAGE_VERSION}"
67 "-${CPACK_DEBIAN_PACKAGE_ARCHITECTURE}")
69 elseif(CPACK_GENERATOR MATCHES "RPM")
70 # https://github.com/pld-linux/hhvm
71 # https://github.com/hhvm/packaging/tree/master/hhvm/rpm/fedora20/rpmbuild/
72 set(CPACK_RPM_PACKAGE_REQUIRES "a52dec-libs-devel, apr-devel, autoconf, "
73 "binutils-devel, boost-devel >= 1.50, cmake >= 2.8.7, "
74 "curl-devel >= 7.29.0, elfutils-devel, expat-devel, "
75 "gcc >= 6:4.6.0, gd-devel, glog-devel >= 0.3.2, ImageMagick-devel, "
76 "imap-devel >= 1:2007, jemalloc-devel >= 3.0.0, libcap-devel, "
77 "libdwarf-devel >= 20130729, libicu-devel >= 4.2, libmbfl-devel, "
78 "libmcrypt-devel, libmemcached-devel >= 1.0.4, libxml2-devel, "
79 "libstdc++-devel >= 6:4.3, libunwind-devel, libxslt-devel, "
80 "mysql-devel, ocaml-findlib, oniguruma-devel, openssl-devel, "
81 "pcre-devel, readline-devel, rpmbuild(macros) >= 1.675, "
82 "tbb-devel >= 4.0.6000, zlib-devel")
83 set(CPACK_RPM_PACKAGE_GROUP "Development/Languages")
84 set(CPACK_RPM_PACKAGE_LICENSE "PHP 3.01 and BSD")
85 set(CPACK_RPM_PACKAGE_URL "http://hhvm.com")
86 set(CPACK_RPM_PACKAGE_ARCHITECTURE "x86_64")
87 set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_FILE_NAME}"
88 "-${CPACK_PACKAGE_VERSION}"
89 "-${CPACK_RPM_PACKAGE_ARCHITECTURE}")