Index: head/www/mod_pagespeed/Makefile =================================================================== --- head/www/mod_pagespeed/Makefile (revision 455523) +++ head/www/mod_pagespeed/Makefile (revision 455524) @@ -1,201 +1,198 @@ # $FreeBSD$ PORTNAME= mod_pagespeed PORTVERSION= 1.12.34.2 -PORTREVISION= 2 +PORTREVISION= 3 PORTEPOCH= 1 CATEGORIES= www devel MASTER_SITES= LOCAL/mmokhi:boringssl,chromium_base,chromium_build,googleurl,gflags_arch,gflags_src,libjpeg_turbo_src,yasm_patched,libwebp,modpb64 \ https://dl.google.com/closure-compiler/:closurezip DISTFILES= ${NON_GH_DISTS} MAINTAINER= mmokhi@FreeBSD.org COMMENT= Apache module for rewriting web pages to reduce latency LICENSE= APACHE20 -BROKEN_SSL= base -BROKEN_SSL_REASON_base= needs openssl.pc - BUILD_DEPENDS= bash:shells/bash \ curl:ftp/curl \ closure-compiler:www/closure-compiler \ greadlink:sysutils/coreutils \ gsed:textproc/gsed \ gyp:devel/py-gyp \ flock:sysutils/flock \ ${LOCALBASE}/include/apr-1/apr_pools.h:devel/apr1 LIB_DEPENDS= libpng.so:graphics/png \ libprotobuf.so:devel/protobuf \ libgrpc.so:devel/grpc \ libapr-1.so:devel/apr1 \ libaprutil-1.so:devel/apr1 \ libexpat.so:textproc/expat2 \ libicutu.so:devel/icu \ libopencv_legacy.so:graphics/opencv -USES= compiler:c++14-lang jpeg gmake localbase pkgconfig \ +USES= compiler:c++14-lang gperf jpeg gmake localbase pkgconfig \ python shebangfix ssl tar:xz USE_APACHE= 22 SHEBANG_GLOB= *.gyp *.gypi *.py *.sh SHEBANG_FILES= build/fix_proto_and_invoke_protoc WRKSRC= ${WRKSRC_maindist} DOCSDIR= ${PREFIX}/share/doc/apache${APACHE_VERSION} CACHEDIR= /var/cache/mod_pagespeed LOGSDIR= /var/log/pagespeed CFLAGS+= -I${LOCALBASE}/include -I${LOCALBASE}/include/apr-1 -I${WRKSRC} \ -Wno-error -Wno-deprecated-register -Wno-char-subscripts \ -frtti -fexceptions -fPIC BUILDTYPE= Release MAKE_ENV+= BUILDTYPE=${BUILDTYPE} CLR_VERSION= 20161024 GYP_DEFINES+= os_posix=1 \ use_system_libs=1 \ use_system_protobuf=1 \ use_system_openssl=1 \ use_system_apache_dev=1 \ use_system_libjpeg=1 \ use_system_libpng=1 \ use_system_zlib=1 \ use_system_icu=1 \ use_system_yasm=1 \ use_system_libxml=1 \ use_system_sqlite=1 \ use_system_opencv=1 \ use_system_fontconfig=1 \ target_arch=${ARCH} \ system_include_path_apr=${LOCALBASE}/include/apr-1 \ system_include_path_aprutil=${LOCALBASE}/include/apr-1 \ system_include_path_httpd=${LOCALBASE}/include/apache22 \ system_include_path_execinfo=${LOCALBASE}/include \ system_include_path_icu=${LOCALBASE}/include \ include_dirs=${LOCALBASE}/include \ python_ver=${PYTHON_VER} \ fastbuild=2 NON_GH_DISTS= version_for_cocoapods_6.0-46-g07e78061.tar.gz:boringssl \ ccf3c2f32.tar.gz:chromium_base \ 06b7bd9c.tar.gz:chromium_build \ 405b6e1.tar.gz:googleurl \ gflags-master.tar.gz:gflags_arch \ src-master.tar.gz:gflags_src \ 7260e4d.tar.gz:libjpeg_turbo_src \ 7da28c6.tar.gz:yasm_patched \ v0.5.1.tar.gz:libwebp \ aae6075.tar.gz:modpb64 \ compiler-${CLR_VERSION}.zip:closurezip WRKSRC_boringssl= ${WRKSRC}/third_party/boringssl/src WRKSRC_chromium_base= ${WRKSRC}/third_party/chromium/src/base WRKSRC_chromium_build= ${WRKSRC}/third_party/chromium/src/build WRKSRC_googleurl= ${WRKSRC}/third_party/chromium/src/googleurl WRKSRC_gflags_arch= ${WRKSRC}/third_party/gflags/arch WRKSRC_gflags_src= ${WRKSRC}/third_party/gflags/src WRKSRC_libjpeg_turbo_src= ${WRKSRC}/third_party/libjpeg_turbo/src WRKSRC_yasm_patched= ${WRKSRC}/third_party/libjpeg_turbo/yasm/source/patched-yasm WRKSRC_libwebp= ${WRKSRC}/third_party/libwebp WRKSRC_modpb64= ${WRKSRC}/third_party/modp_b64 WRKSRC_closurezip= ${WRKSRC}/tools/closure .for _group in ${_GITHUB_GROUPS:NDEFAULT} EXTRACT_ONLY:= ${EXTRACT_ONLY} ${DISTFILE_${_group}}:${_group} .endfor #grpc changed from objective-c-v1.0.0-pre1-254-g2a69139aa7 to v1.6.0 USE_GITHUB= nodefault GH_ACCOUNT= pagespeed GH_TUPLE= pagespeed:mod_pagespeed:a5cfe15:maindist \ google:googlemock:release-1.7.0:gmock/testing/gmock \ google:googletest:release-1.7.0:gtest/testing/gtest \ apache:apr:1.5.1:apr/third_party/apr/src \ apache:apr-util:1.5.4:aprutil/third_party/aprutil/src \ google:brotli:v0.4.0-89-g882f418:brotli/third_party/brotli/src \ google:closure-library:v20161024:closurelib/third_party/closure_library \ pagespeed:domain-registry-provider:e9b72ea:domain_registry_provider/third_party/domain_registry_provider \ pagespeed:giflib:99deb45:giflib/third_party/giflib \ google:sparsehash:sparsehash-1.7:sparsehash/third_party/google-sparsehash/src \ grpc:grpc:objective-c-v1.0.0-pre1-254-g2a69139aa7:grpc/third_party/grpc/src \ redis:hiredis:v0.13.3:hiredis/third_party/hiredis/src \ apache:httpd:2.2.29:httpd/third_party/httpd/src \ apache:httpd:2.4.10:httpd24/third_party/httpd24/src \ pagespeed:icu:1b32282:icu/third_party/icu \ open-source-parsers:jsoncpp:1.0.0:jsoncpp/third_party/jsoncpp/src \ glennrp:libpng:libpng-1.2.56-signed:libpng/third_party/libpng/src \ pagespeed:mod_fcgid:c63f176:mod__fcgid/third_party/mod_fcgid \ nghttp2:nghttp2:v1.16.0-24-gf4474d57:nghttp2/third_party/nghttp2 \ pagespeed:optipng:e9a5bd6:optipng/third_party/optipng \ google:protobuf:v3.0.0-beta-4-74-ge8ae137c:protobuf/third_party/protobuf/src \ google:re2:2016-09-01:re2/third_party/re2/src \ apache:serf:1.3.8:serf/third_party/serf/src \ pagespeed:zlib:1f93ffd:zlib/third_party/zlib \ nanopb:nanopb:f8ac463:grpcnanopb/third_party/grpc/src/third_party/nanopb post-extract: . for _D in ${NON_GH_DISTS} DGROUP=${_D:S/^${_D:C/:[^:]+$//}//:S/^://} DFILE=${_D:C/:[^-:][^:]*$//} ${MKDIR} ${WRKSRC_${_D:S/^${_D:C/:[^:]+$//}//:S/^://}} && cd ${EXTRACT_WRKDIR} && \ ${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} ${DISTDIR}/${_D:C/:[^-:][^:]*$//} \ ${EXTRACT_AFTER_ARGS} -C ${WRKSRC_${_D:S/^${_D:C/:[^:]+$//}//:S/^://}} . endfor ${CP} ${DISTDIR}/compiler-${CLR_VERSION}.zip ${WRKSRC_closurezip} post-patch: ( cd ${BUILD_WRKSRC}/third_party/google-sparsehash/gen/arch && \ ${CP} -R linux freebsd && \ cd ${BUILD_WRKSRC}/third_party/google-sparsehash/gen/arch/freebsd && \ ${MV} ia32 i386 && ${MV} x64 amd64 ) ${REINPLACE_CMD} -e "s,%%LOCALBASE%%,${LOCALBASE},g" \ - ${WRKSRC}/base/base.gypi + ${WRKSRC}/base/base.gypi ${WRKSRC}/third_party/serf/select_openssl.gyp ${REINPLACE_CMD} -e "s,%%PORTSSTAGE%%,${STAGEDIR},g" \ ${WRKSRC}/install/Makefile ${FIND} ${WRKSRC} -type f \( -name "*.gyp" -o -name "*.gypi" \) -exec \ ${REINPLACE_CMD} -e "s/'python'/'${PYTHON_VERSION}'/g" {} \; do-configure: cd ${WRKSRC} && \ GYP_DEFINES="${GYP_DEFINES}" CC=${CC} CXX=${CXX} \ ${PYTHON_CMD} build/gyp_chromium --depth=. do-build: cd ${WRKSRC} && \ ${GMAKE} ${MAKE_ENV} builddir=${WRKSRC}/${BUILDTYPE} \ CFLAGS_${BUILDTYPE}="${CFLAGS}" CXXFLAGS_${BUILDTYPE}="${CFLAGS}" \ AR.host=/usr/bin/ar AR.target=/usr/bin/ar CC.host=${CC} CC.target=${CC} \ CXX.host=${CXX} CXX.target=${CXX} BUILDTYPE=${BUILDTYPE} do-install: cd ${WRKSRC}/install && ${MKDIR} FreeBSD && \ echo ' \ APACHE_ROOT=${PREFIX} \ APACHE_MODULES=${PREFIX}/${APACHEMODDIR} \ APACHE_CONF_DIR=${PREFIX}/${APACHEETCDIR} \ APACHE_DOC_ROOT=${DOCSDIR} \ APACHE_CONTROL_PROGRAM=${HTTPD} \ APACHE_PROGRAM=apache${APACHE_VERSION} \ APACHE_START="service apache22 start" \ APACHE_PIDFILE="/var/run/httpd.pid" \ APACHE_USER=www \ DISTRO_NAME=FreeBSD' > FreeBSD/make_vars.mk && \ ${MKDIR} ${STAGEDIR}${PREFIX}/${APACHEMODDIR} && \ ${MKDIR} ${STAGEDIR}${PREFIX}/${APACHEETCDIR} && \ ${MKDIR} ${STAGEDIR}${DOCSDIR} && \ ${GMAKE} ${MAKE_ENV} V=1 builddir=${WRKSRC}/${BUILDTYPE} \ CFLAGS_${BUILDTYPE}="${CFLAGS}" CXXFLAGS_${BUILDTYPE}="${CFLAGS}" \ AR.host=/usr/bin/ar AR.target=/usr/bin/ar CC.host=${CC} CC.target=${CC} \ CXX.host=${CXX} CXX.target=${CXX} BUILDTYPE=${BUILDTYPE} \ APACHE_ROOT=${PREFIX} BINDIR=${PREFIX}/bin \ APACHE_MODULES=${PREFIX}/${APACHEMODDIR} \ APACHE_CONF_DIR=${PREFIX}/${APACHEETCDIR} \ APACHE_DOC_ROOT=${DOCSDIR} \ APACHE_CONTROL_PROGRAM=${HTTPD} APACHE_PROGRAM=apache${APACHE_VERSION} \ APACHE_START="service apache22 start" APACHE_PIDFILE="/var/run/httpd.pid" \ APACHE_USER=www DISTRO_NAME=FreeBSD MOD_PAGESPEED_ROOT=${WRKSRC} \ PAGESPEED_MODULE=${WRKSRC}/Release/libmod_pagespeed.so \ PAGESPEED_MODULE_24=${WRKSRC}/Release/libmod_pagespeed_ap24.so \ PAGESPEED_JS_MINIFY=${WRKSRC}/Release/js_minify \ MOD_PAGESPEED_CACHE=${CACHEDIR} \ MOD_PAGESPEED_LOG=${LOGSDIR} staging install ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/* ${STRIP_CMD} ${STAGEDIR}${PREFIX}/${APACHEMODDIR}/* .include Index: head/www/mod_pagespeed/files/patch-third__party_grpc_src_src_core_lib_tsi_ssl__transport__security.c =================================================================== --- head/www/mod_pagespeed/files/patch-third__party_grpc_src_src_core_lib_tsi_ssl__transport__security.c (revision 455523) +++ head/www/mod_pagespeed/files/patch-third__party_grpc_src_src_core_lib_tsi_ssl__transport__security.c (revision 455524) @@ -1,10 +1,25 @@ --- third_party/grpc/src/src/core/lib/tsi/ssl_transport_security.c.orig 2017-09-14 17:46:43 UTC +++ third_party/grpc/src/src/core/lib/tsi/ssl_transport_security.c @@ -35,6 +35,7 @@ #include +#include #include #include +@@ -54,11 +55,10 @@ + #define TSI_SSL_MAX_PROTECTED_FRAME_SIZE_UPPER_BOUND 16384 + #define TSI_SSL_MAX_PROTECTED_FRAME_SIZE_LOWER_BOUND 1024 + +-/* Putting a macro like this and littering the source file with #if is really +- bad practice. +- TODO(jboeuf): refactor all the #if / #endif in a separate module. */ +-#ifndef TSI_OPENSSL_ALPN_SUPPORT ++#if OPENSSL_VERSION_NUMBER >= 0x10002000L + #define TSI_OPENSSL_ALPN_SUPPORT 1 ++#else ++#define TSI_OPENSSL_ALPN_SUPPORT 0 + #endif + + /* TODO(jboeuf): I have not found a way to get this number dynamically from the Index: head/www/mod_pagespeed/files/patch-third__party_serf_instaweb__ssl__buckets.c =================================================================== --- head/www/mod_pagespeed/files/patch-third__party_serf_instaweb__ssl__buckets.c (nonexistent) +++ head/www/mod_pagespeed/files/patch-third__party_serf_instaweb__ssl__buckets.c (revision 455524) @@ -0,0 +1,18 @@ +--- third_party/serf/instaweb_ssl_buckets.c.orig 2017-06-08 22:22:39 UTC ++++ third_party/serf/instaweb_ssl_buckets.c +@@ -1697,11 +1697,15 @@ int serf_ssl_cert_depth(const serf_ssl_c + int serf_ssl_check_host(const serf_ssl_certificate_t *cert, + const char* hostname) + { ++#if TSI_OPENSSL_ALPN_SUPPORT == 0 ++ return (-1); ++#else + return X509_check_host(cert->ssl_cert, + hostname, + strlen(hostname), + 0 /* we don't need to set any flags */, + NULL /* we don't need the SAN or CN extracted*/); ++#endif + } + + apr_hash_t *serf_ssl_cert_issuer( Property changes on: head/www/mod_pagespeed/files/patch-third__party_serf_instaweb__ssl__buckets.c ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/www/mod_pagespeed/files/patch-third__party_serf_select__openssl.gyp =================================================================== --- head/www/mod_pagespeed/files/patch-third__party_serf_select__openssl.gyp (revision 455523) +++ head/www/mod_pagespeed/files/patch-third__party_serf_select__openssl.gyp (revision 455524) @@ -1,15 +1,21 @@ ---- third_party/serf/select_openssl.gyp.orig 2017-10-04 20:20:10 UTC +--- third_party/serf/select_openssl.gyp.orig 2017-06-08 22:22:39 UTC +++ third_party/serf/select_openssl.gyp -@@ -47,10 +47,10 @@ +@@ -42,15 +42,15 @@ + 'type': 'none', + 'direct_dependent_settings': { + 'cflags': [ +- 'depth; + } + +@@ -337,11 +337,15 @@ + +int serf_ssl_check_host(const serf_ssl_certificate_t *cert, + + const char* hostname) + +{ +++#if TSI_OPENSSL_ALPN_SUPPORT == 0 +++ return (-1); +++#else + + return X509_check_host(cert->ssl_cert, + + hostname, + + strlen(hostname), + + 0 /* we don't need to set any flags */, + + NULL /* we don't need the SAN or CN extracted*/); +++#endif + +} + + apr_hash_t *serf_ssl_cert_issuer( Property changes on: head/www/mod_pagespeed/files/patch-third__party_serf_serf.diff ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property