diff options
author | Eugen Wissner <belka@caraus.de> | 2021-05-03 22:21:41 +0200 |
---|---|---|
committer | Robby Workman <rworkman@slackbuilds.org> | 2021-05-04 19:28:42 -0500 |
commit | c1704fe2c87a70f3e565ef9f4dd223665fe77606 (patch) | |
tree | 22d7b11903a6433587f0636ea77c2dd17e80d4fc | |
parent | 1d9ced8bab7abfec86c764eb774cfcfb1d2c90c5 (diff) |
development/hhvm: Updated for version 4.104.1
-rw-r--r-- | development/hhvm/0001-Link-static-libiberty.patch | 49 | ||||
-rw-r--r-- | development/hhvm/hhvm.SlackBuild | 81 | ||||
-rw-r--r-- | development/hhvm/hhvm.info | 30 |
3 files changed, 92 insertions, 68 deletions
diff --git a/development/hhvm/0001-Link-static-libiberty.patch b/development/hhvm/0001-Link-static-libiberty.patch index 6ec6406fce664..1f35da35d7c99 100644 --- a/development/hhvm/0001-Link-static-libiberty.patch +++ b/development/hhvm/0001-Link-static-libiberty.patch @@ -1,25 +1,24 @@ -From 58528a9e983ae8ba53e4e5c10f0565ac0b12c2b3 Mon Sep 17 00:00:00 2001 -From: Eugen Wissner <belka@caraus.de> -Date: Sun, 25 Oct 2020 10:18:08 +0100 -Subject: [PATCH] Link static libiberty - ---- - hphp/hhvm/CMakeLists.txt | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/hphp/hhvm/CMakeLists.txt b/hphp/hhvm/CMakeLists.txt -index f70bd1f542..ab41ec1e5d 100644 ---- a/hphp/hhvm/CMakeLists.txt -+++ b/hphp/hhvm/CMakeLists.txt -@@ -28,7 +28,7 @@ endif() - - get_object_libraries_objects(additionalObjects ${HHVM_WHOLE_ARCHIVE_LIBRARIES}) - add_executable(hhvm ${CXX_SOURCES} ${additionalObjects}) --target_link_libraries(hhvm ${HHVM_LINK_LIBRARIES} ${EZC_LINK_LIBRARIES} ${HRE_LINK_LIBRARIES}) -+target_link_libraries(hhvm /usr/lib64/libiberty.a ${HHVM_LINK_LIBRARIES} ${EZC_LINK_LIBRARIES} ${HRE_LINK_LIBRARIES}) - link_object_libraries(hhvm ${HHVM_WHOLE_ARCHIVE_LIBRARIES}) - if (GOLD_FOUND AND ENABLE_LD_GOLD) - if (CMAKE_CONFIGURATION_TYPES) --- -2.17.5 - +libiberty is part of GCC and is provided only statically on Slackware. We +patch CMake to use it. +Patches CMake to avoid downloading during the build since we use prefetched +sources. +--- a/third-party/folly/CMakeLists.txt 2021-04-22 08:09:46.000000000 +0200 ++++ b/third-party/folly/CMakeLists.txt 2021-05-03 07:43:23.777873092 +0200 +@@ -298,3 +298,6 @@ + # Just assume we have sched.h + target_compile_definitions(folly PUBLIC "FOLLY_HAVE_SCHED_H=1") + endif() ++ ++target_link_libraries(folly /usr/lib64/libiberty.a) ++target_include_directories(folly PUBLIC /usr/include/libiberty) +--- a/third-party/brotli/CMakeLists.txt 2021-04-22 08:09:46.000000000 +0200 ++++ b/third-party/brotli/CMakeLists.txt 2021-05-03 06:21:46.202704488 +0200 +@@ -6,8 +6,6 @@ + # version. + ExternalProject_Add( + bundled_brotli +- GIT_REPOSITORY https://github.com/google/brotli +- GIT_TAG 4b5771bee7995d3d606221caa455c044d80434df + CMAKE_ARGS + -DCMAKE_INSTALL_PREFIX=<INSTALL_DIR> + -DCMAKE_INSTALL_INCLUDEDIR=include diff --git a/development/hhvm/hhvm.SlackBuild b/development/hhvm/hhvm.SlackBuild index 0585b2097b37b..f4486a1bd762e 100644 --- a/development/hhvm/hhvm.SlackBuild +++ b/development/hhvm/hhvm.SlackBuild @@ -2,7 +2,7 @@ # Slackware build script for HHVM -# Copyright 2015-2020 Eugene Wissner, Dachau, Germany +# Copyright 2015-2021 Eugene Wissner, Dachau, Germany # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -23,12 +23,12 @@ # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. PRGNAM=hhvm -VERSION=${VERSION:-4.56.1} +VERSION=${VERSION:-4.104.1} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} -OPAM_STAMP="6ef290f5" -CARGO_STAMP="1ecc6299db9ec823" +OPAM_STAMP="221708b" +CARGO_BUILD="1" if [ -z "$ARCH" ]; then case "$( uname -m )" in @@ -60,45 +60,68 @@ rm -rf $PRGNAM-$VERSION tar Jxvf $CWD/$PRGNAM-$VERSION.tar.xz cd $PRGNAM-$VERSION -mkdir -p hphp/hack/_build/opam hphp/hack/facebook +mkdir -p hphp/hack/facebook third-party/brotli/bundled_brotli-prefix/src + +mkdir -p hphp/hack/_build/opam tar Jxvf $CWD/hack-switch-$OPAM_STAMP.tar.xz -C hphp/hack/_build/opam -tar Jxvf $CWD/cargo-home-$CARGO_STAMP.tar.xz -C hphp/hack +# hhvm prepares an opam switch (an isolated envrionment with a specific OCaml +# compiler version) during the build, it downloads and builds all dependencies. +# To avoid doing this at runtime, I provide a prebuilt switch. Unfortunately +# it contains references to absolute paths it has been built in. Therefore if +# the user doesn't build in the standard directory, we put a link there, so +# that opam can find binaries. +if [ "$TMP" != '/tmp/SBo' ] +then + rm -rf /tmp/SBo/hhvm-$VERSION/hphp/hack/_build/opam + mkdir -p /tmp/SBo/hhvm-$VERSION/hphp/hack/_build/opam + ln -s $TMP/$PRGNAM-$VERSION/hphp/hack/_build/opam/hack-switch \ + /tmp/SBo/hhvm-$VERSION/hphp/hack/_build/opam/hack-switch +fi -chown -R root:root . -find -L . \ - \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \ - -o -perm 511 \) -exec chmod 755 {} \; -o \ - \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ - -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; +tar Jxvf $CWD/cargo-home-$CARGO_BUILD.tar.xz -C hphp/hack +tar Jxvf $CWD/brotli-4b5771be.tar.xz -C third-party/brotli/bundled_brotli-prefix/src -cp $CWD/opam-full-2.0.3.tar.gz third-party/ocaml/ +install -m 0755 -D $CWD/opam-2.0.7-x86_64-linux \ + third-party/opam/opamDownload-prefix/src/opam-2.0.7-x86_64-linux install -m 0644 -D $CWD/rust-1.43.0-x86_64-unknown-linux-gnu.tar.gz \ - third-party/rustc/rust-prefix/src/rust-1.43.0-x86_64-unknown-linux-gnu.tar.gz + third-party/rustc/bundled_rust-prefix/src/rust-1.43.0-x86_64-unknown-linux-gnu.tar.gz install -m 0644 -D $CWD/fmt-6.1.2.zip third-party/fmt/fmt-prefix/src/fmt-6.1.2.zip -install -m 0644 -D $CWD/libzip-1.6.1.tar.gz third-party/libzip/libzipBuild-prefix/src/libzip-1.6.1.tar.gz +install -m 0644 -D $CWD/fb-prod8-202010.tar.gz \ + third-party/fb-mysql/bundled_fbmysqlclient-prefix/src/fb-prod8-202010.tar.gz +# The working directory is hphp/hack. cat << EOF > hphp/hack/facebook/fetch_opam2_repo_hack.sh #!/bin/sh -echo $CWD/index-$OPAM_STAMP +cp $CWD/index-$OPAM_STAMP.tar.gz facebook/ +echo facebook/index-$OPAM_STAMP EOF chmod 0755 hphp/hack/facebook/fetch_opam2_repo_hack.sh -patch -p1 -i $CWD/0001-Link-static-libiberty.patch +patch -p1 --verbose -i $CWD/0001-Link-static-libiberty.patch + +chown -R root:root . +find -L . \ + \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \ + -o -perm 511 \) -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ + -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; export CMAKE_PREFIX_PATH=`pwd` cmake \ - -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ - -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS -lncursesw -I/usr/kerberos/include -I/usr/include/libiberty" \ - -DCMAKE_CXX_STANDARD=14 \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_INSTALL_LIBDIR=lib${LIBDIRSUFFIX} \ - -DENABLE_MCROUTER=false \ - -DNON_DISTRIBUTABLE_BUILD=true \ - -DENABLE_LD_GOLD=true \ - -DUSE_JEMALLOC=false \ - -DMYSQL_UNIX_SOCK_ADDR=/var/run/mysqld/mysqld.sock \ - -DCMAKE_BUILD_TYPE=Release . -make + -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_CXX_STANDARD=17 \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib${LIBDIRSUFFIX} \ + -DENABLE_MCROUTER=false \ + -DENABLE_EXTENSION_IMAGICK=false \ + -DNON_DISTRIBUTABLE_BUILD=true \ + -DENABLE_LD_GOLD=true \ + -DUSE_JEMALLOC=true \ + -DFORCE_BUNDLED_LZ4=OFF \ + -DMYSQL_UNIX_SOCK_ADDR=/var/run/mysqld/mysqld.sock \ + -DCMAKE_BUILD_TYPE=Release . +make || make -j1 make install DESTDIR=$PKG find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \ diff --git a/development/hhvm/hhvm.info b/development/hhvm/hhvm.info index 372b68d4c5620..229a8e4000944 100644 --- a/development/hhvm/hhvm.info +++ b/development/hhvm/hhvm.info @@ -1,24 +1,26 @@ PRGNAM="hhvm" -VERSION="4.56.1" +VERSION="4.104.1" HOMEPAGE="https://hhvm.com/" DOWNLOAD="UNSUPPORTED" MD5SUM="" -DOWNLOAD_x86_64="https://download.dlackware.com/hosted-sources/hhvm/hhvm-4.56.1.tar.xz \ +DOWNLOAD_x86_64="https://download.dlackware.com/hosted-sources/hhvm/hhvm-4.104.1.tar.xz \ https://static.rust-lang.org/dist/rust-1.43.0-x86_64-unknown-linux-gnu.tar.gz \ - https://download.dlackware.com/hosted-sources/hhvm/opam-full-2.0.3.tar.gz \ - https://download.dlackware.com/hosted-sources/hhvm/libzip-1.6.1.tar.gz \ + https://download.dlackware.com/hosted-sources/hhvm/opam-2.0.7-x86_64-linux \ + https://download.dlackware.com/hosted-sources/hhvm/brotli-4b5771be.tar.xz \ https://download.dlackware.com/hosted-sources/hhvm/fmt-6.1.2.zip \ - https://download.dlackware.com/hosted-sources/hhvm/cargo-home-1ecc6299db9ec823.tar.xz \ - https://download.dlackware.com/hosted-sources/hhvm/index-6ef290f5.tar.gz \ - https://download.dlackware.com/hosted-sources/hhvm/hack-switch-6ef290f5.tar.xz" -MD5SUM_x86_64="edc4cf258e49b2311418f3cc651e6782 \ + https://download.dlackware.com/hosted-sources/hhvm/cargo-home-1.tar.xz \ + https://download.dlackware.com/hosted-sources/hhvm/index-221708b.tar.gz \ + https://download.dlackware.com/hosted-sources/hhvm/hack-switch-221708b.tar.xz \ + https://download.dlackware.com/hosted-sources/hhvm/fb-prod8-202010.tar.gz" +MD5SUM_x86_64="0bddb92bbf45f8a7d2ef84256293ef63 \ c1cb2b3d0c9edb4b61b01ba6b090d01b \ - d685758ad289672ee43caa4baa20b849 \ - 43883accb207d977462aed9fed40b30b \ + b4398cb8403252321510fadd87a4a265 \ + 7553d4e66d8d5d78af3e53b1083f17b4 \ 5ec643b082a34254ad07136e7cbd4220 \ - 990b311a2863c88e372051291a9f7f02 \ - 1f67209970361d31d2b60812af78b540 \ - ddff31c5f0baa6b0ebc3b04e67d04306" -REQUIRES="tbb glog libdwarf libmemcached" + 38b0384806e3415c0a7c42e4a0facf5b \ + c1c35bc5a0198f25be9c13cb88c7df2f \ + 95ef57a2272d3405257dff3395220847 \ + f5f484685fe2a7cdaa1d3f3c107bb23b" +REQUIRES="tbb glog libdwarf libmemcached double-conversion" MAINTAINER="Eugene Wissner" EMAIL="belka@caraus.de" |