www/mod_pagespeed: Add latest stable version to the tree

mod_pagespeed is an open-source Apache module that automatically
optimizes web pages and resources on them by rewriting the
resources using filters that implement web performance best practices.

Reviewed by:	mat (mentor)
Approved by:	mat (mentor)
Sponsored by:	Netzkommune GmbH
Differential Revision:	https://reviews.freebsd.org/D12616
This commit is contained in:
Mahdi Mokhtari 2017-10-13 15:15:53 +00:00
parent d70de080a6
commit 60a05e200a
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=452011
46 changed files with 1372 additions and 0 deletions

View file

@ -474,6 +474,7 @@
SUBDIR += mod_mpm_itk
SUBDIR += mod_musicindex
SUBDIR += mod_ntlm2
SUBDIR += mod_pagespeed
SUBDIR += mod_perl2
SUBDIR += mod_php56
SUBDIR += mod_php70

206
www/mod_pagespeed/Makefile Normal file
View file

@ -0,0 +1,206 @@
# $FreeBSD$
PORTNAME= mod_pagespeed
PORTVERSION= 1.12.34.2
PORTEPOCH= 1
CATEGORIES= www devel
MASTER_SITES= https://boringssl.googlesource.com/boringssl.git/+archive/:boringssl \
https://chromium.googlesource.com/chromium/src/base/+archive/:chromium_base \
https://chromium.googlesource.com/chromium/src/build/+archive/:chromium_build \
https://chromium.googlesource.com/external/google-url/+archive/:googleurl \
https://chromium.googlesource.com/external/webrtc/trunk/third_party/gflags/+archive/master.tar.gz?dummy=/:gflags_arch \
https://chromium.googlesource.com/external/gflags/src/+archive/master.tar.gz?dummy=/:gflags_src \
https://chromium.googlesource.com/chromium/deps/libjpeg_turbo/+archive/:libjpeg_turbo_src \
https://chromium.googlesource.com/chromium/deps/yasm/patched-yasm/+archive/:yasm_patched \
https://chromium.googlesource.com/webm/libwebp/+archive/:libwebp \
https://chromium.googlesource.com/chromium/src/third_party/modp_b64/+archive/: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
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 \
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
${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 <bsd.port.mk>

View file

@ -0,0 +1,73 @@
TIMESTAMP = 1507800856
SHA256 (version_for_cocoapods_6.0-46-g07e78061.tar.gz) = 6c50ceddabb772eeb8b5c9500dd55946b2f83114b7898616e06fdcb8df16f1ab
SIZE (version_for_cocoapods_6.0-46-g07e78061.tar.gz) = 5013132
SHA256 (ccf3c2f32.tar.gz) = f0dcafe0acd3b8698f92eb89b1e3a99d0fee8ec59d2d5c9d2d884b61643d9c79
SIZE (ccf3c2f32.tar.gz) = 1774127
SHA256 (06b7bd9c.tar.gz) = b1d461691f86275a74951bfe76d8b891efe74b7b46d9107fcbdd513c85ffb1ad
SIZE (06b7bd9c.tar.gz) = 516641
SHA256 (405b6e1.tar.gz) = 9c91f5f6a5322b444742a9fa4e1b31c7ae9476614a560fc85a66f1eb8ebcd5f2
SIZE (405b6e1.tar.gz) = 144796
SHA256 (gflags-master.tar.gz) = 6f138e564f00f05e907c60d308d6cf6605a999ca4c917b8d7b08780053ccca17
SIZE (gflags-master.tar.gz) = 25807
SHA256 (src-master.tar.gz) = d0395cf9a8f99b8f5cf12e0d1b0f60daa0ac990e4712a8e36b096071bdff15b6
SIZE (src-master.tar.gz) = 80424
SHA256 (7260e4d.tar.gz) = 0e1f94297e49c2883d126e42be140cd3f44b1ff67280f940fc2df4d264990d00
SIZE (7260e4d.tar.gz) = 783597
SHA256 (7da28c6.tar.gz) = 9285ea6d90e5a2b2a1f99164d8e299926f3e162a1ea8267712bf652f4a0dd2f9
SIZE (7da28c6.tar.gz) = 1438904
SHA256 (v0.5.1.tar.gz) = 02e67658b6c24c5566e08ebd3b5c5c2768065a8acb059f95c952ce4decaa4e21
SIZE (v0.5.1.tar.gz) = 799999
SHA256 (aae6075.tar.gz) = 6c27fb822304e8e6681d37bb534b0f20717c00eed343151b755e23da486a181f
SIZE (aae6075.tar.gz) = 7882
SHA256 (compiler-20161024.zip) = c96431bc4d3d791292741e18e52ef8b845d3a66f5e8c6d26e565f224b55fa6eb
SIZE (compiler-20161024.zip) = 6365190
SHA256 (pagespeed-mod_pagespeed-a5cfe15_GH0.tar.gz) = 9a76b29372283169942b33d07b724dadb854e3218982ff37df3ee5a14cfc9e3c
SIZE (pagespeed-mod_pagespeed-a5cfe15_GH0.tar.gz) = 13046590
SHA256 (google-googlemock-release-1.7.0_GH0.tar.gz) = 3f20b6acb37e5a98e8c4518165711e3e35d47deb6cdb5a4dd4566563b5efd232
SIZE (google-googlemock-release-1.7.0_GH0.tar.gz) = 296168
SHA256 (google-googletest-release-1.7.0_GH0.tar.gz) = f73a6546fdf9fce9ff93a5015e0333a8af3062a152a9ad6bcb772c96687016cc
SIZE (google-googletest-release-1.7.0_GH0.tar.gz) = 468653
SHA256 (apache-apr-1.5.1_GH0.tar.gz) = c7ae128ef3af7651575da746dc27aeb56d120c6b8ced86e8d4e11590efda03cd
SIZE (apache-apr-1.5.1_GH0.tar.gz) = 715270
SHA256 (apache-apr-util-1.5.4_GH0.tar.gz) = f5997456f93f83cb4d6ddff97279fba0b178bdf181199a3698aa77ffbe8a4c83
SIZE (apache-apr-util-1.5.4_GH0.tar.gz) = 516830
SHA256 (google-brotli-v0.4.0-89-g882f418_GH0.tar.gz) = 7e3efeb6805a7683f8d2bfa4b7c1acc55a00957bdaf28db1abcca343cfacd113
SIZE (google-brotli-v0.4.0-89-g882f418_GH0.tar.gz) = 7973634
SHA256 (google-closure-library-v20161024_GH0.tar.gz) = 9dc8bc37e1f882fe90fe09807f6710ddb52eeae2d51755c92564c8b91000cf97
SIZE (google-closure-library-v20161024_GH0.tar.gz) = 4514004
SHA256 (pagespeed-domain-registry-provider-e9b72ea_GH0.tar.gz) = 4cbfdcbf350d85149c425a7921dd1408c443b3352c1b0c0da49fe4d07ca2f1b6
SIZE (pagespeed-domain-registry-provider-e9b72ea_GH0.tar.gz) = 88106
SHA256 (pagespeed-giflib-99deb45_GH0.tar.gz) = 915103d1c37a2c7cd7d9f2c452ee7106210641d4dcddb2b8db2001acebd067fb
SIZE (pagespeed-giflib-99deb45_GH0.tar.gz) = 631625
SHA256 (google-sparsehash-sparsehash-1.7_GH0.tar.gz) = 444cc07adf7dd1dc6f6a48946533d2168f52b73de0414a263c80b44e1d49f4ea
SIZE (google-sparsehash-sparsehash-1.7_GH0.tar.gz) = 312006
SHA256 (grpc-grpc-objective-c-v1.0.0-pre1-254-g2a69139aa7_GH0.tar.gz) = 647d857349b6c81339035eb14452e8ccb11ebd8e435a89af257dbd331d83caf3
SIZE (grpc-grpc-objective-c-v1.0.0-pre1-254-g2a69139aa7_GH0.tar.gz) = 3353874
SHA256 (redis-hiredis-v0.13.3_GH0.tar.gz) = 717e6fc8dc2819bef522deaca516de9e51b9dfa68fe393b7db5c3b6079196f78
SIZE (redis-hiredis-v0.13.3_GH0.tar.gz) = 58291
SHA256 (apache-httpd-2.2.29_GH0.tar.gz) = afce3100fdb6c214299884b65fb74666851ff997a276f2f93f326bbdb9010a61
SIZE (apache-httpd-2.2.29_GH0.tar.gz) = 7303889
SHA256 (apache-httpd-2.4.10_GH0.tar.gz) = 91d0cfd201df2b4a718b01fa192edfd7fa7045178dc3d8af6c0899dd04758ec7
SIZE (apache-httpd-2.4.10_GH0.tar.gz) = 9501071
SHA256 (pagespeed-icu-1b32282_GH0.tar.gz) = d45811de8d73a8cb3c56c25d4efb30b98b625d12a5f645e98c4edb7263ada659
SIZE (pagespeed-icu-1b32282_GH0.tar.gz) = 3240104
SHA256 (open-source-parsers-jsoncpp-1.0.0_GH0.tar.gz) = e7eeb9b96d10cfd2f6205a09899f9800931648f652e09731821854c9ce0c7a1a
SIZE (open-source-parsers-jsoncpp-1.0.0_GH0.tar.gz) = 165343
SHA256 (glennrp-libpng-libpng-1.2.56-signed_GH0.tar.gz) = b187e24e4e6f2181d3e9669f2f1d177b042a5302cdb9292fb7fe4e25040cd35d
SIZE (glennrp-libpng-libpng-1.2.56-signed_GH0.tar.gz) = 872865
SHA256 (pagespeed-mod_fcgid-c63f176_GH0.tar.gz) = e47e6687eaba4537742cfeacc9461e5fe6b0f185c724489e5530778da8efcb61
SIZE (pagespeed-mod_fcgid-c63f176_GH0.tar.gz) = 105890
SHA256 (nghttp2-nghttp2-v1.16.0-24-gf4474d57_GH0.tar.gz) = baa97c794a8cace04751b3dc4960120c14cc9c9b6405355ca7d7f945ef33f47c
SIZE (nghttp2-nghttp2-v1.16.0-24-gf4474d57_GH0.tar.gz) = 1694719
SHA256 (pagespeed-optipng-e9a5bd6_GH0.tar.gz) = c69522c3c3c37e4236c42100a5b62145ab0380b49a1d70a8592d681bbbd273ff
SIZE (pagespeed-optipng-e9a5bd6_GH0.tar.gz) = 49657
SHA256 (google-protobuf-v3.0.0-beta-4-74-ge8ae137c_GH0.tar.gz) = ef342360dc795db0cd76cc3d06d5e7e8af4035eef11e083e5ba203c3021c391e
SIZE (google-protobuf-v3.0.0-beta-4-74-ge8ae137c_GH0.tar.gz) = 3902997
SHA256 (google-re2-2016-09-01_GH0.tar.gz) = 4f5833331c5d6e3bc0465984cff6f75ed9360e1ea1db670716161b98564cda2a
SIZE (google-re2-2016-09-01_GH0.tar.gz) = 380572
SHA256 (apache-serf-1.3.8_GH0.tar.gz) = 0f07e33a99f308af4e115b25cab21a331f9b375fd29549c7b2607c1a56b83fcb
SIZE (apache-serf-1.3.8_GH0.tar.gz) = 186709
SHA256 (pagespeed-zlib-1f93ffd_GH0.tar.gz) = ec7f3715e773921353a038e4355eedec23eb3c8ed55a84b842f3ae1da1599f27
SIZE (pagespeed-zlib-1f93ffd_GH0.tar.gz) = 567080
SHA256 (nanopb-nanopb-f8ac463_GH0.tar.gz) = 57992a05c0f0760a41073b08cb66c5d6987e25631a09d9e0877502a3a91b2655
SIZE (nanopb-nanopb-f8ac463_GH0.tar.gz) = 223064

View file

@ -0,0 +1,27 @@
--- build/common.gypi.orig 2017-10-06 23:46:24 UTC
+++ build/common.gypi
@@ -44,7 +44,7 @@
# way for our users to change the compiler (since gclient gets in
# the way of tweaking gyp flags directly).
'clang_version':
- '<!(python <(DEPTH)/build/clang_version.py)',
+ '<!(python2.7 <(DEPTH)/build/clang_version.py)',
'conditions': [
# TODO(morlovich): AIX, Solaris, FreeBSD10?
@@ -131,6 +131,15 @@
# libraries.
'ldflags!': [
'-Wl,-z,defs',
+ '-zdefs',
+ ],
+ 'cflags!': [
+ '-Wl,-z,defs',
+ '-zdefs',
+ ],
+ 'cflags_cc!': [
+ '-Wl,-z,defs',
+ '-zdefs',
],
}],
['OS == "mac"', {

View file

@ -0,0 +1,18 @@
--- build/pagespeed_overrides.gypi.orig 2017-10-06 11:59:51 UTC
+++ build/pagespeed_overrides.gypi
@@ -90,14 +90,13 @@
],
},
}],
['os_posix==1 and OS!="mac"', {
'target_defaults': {
'ldflags': [
- # Fail to link if there are any undefined symbols.
- '-Wl,-z,defs',
+ '-Wl,-z,lazy',
],
}
}],
['OS=="mac"', {
'target_defaults': {
'xcode_settings': {

View file

@ -0,0 +1,87 @@
--- install/Makefile.orig 2017-06-08 22:22:39 UTC
+++ install/Makefile
@@ -163,7 +163,7 @@ CONF_SOURCES = $(STAGING_DIR)/pagespeed.
MODS_ENABLED_INSTALL_COMMANDS = \
cp -f $(STAGING_DIR)/pagespeed_libraries.conf \
- $(APACHE_CONF_DIR)/pagespeed_libraries.conf
+ %%PORTSSTAGE%%$(APACHE_CONF_DIR)/pagespeed_libraries.conf.sample
else
@@ -172,7 +172,7 @@ else
# independently.
MODS_ENABLED_INSTALL_COMMANDS = \
for file in pagespeed.load pagespeed_libraries.conf; do \
- cp -f $(STAGING_DIR)/$$file $(MODS_AVAILABLE_DIR) ; \
+ cp -f $(STAGING_DIR)/$$file %%PORTSSTAGE%%$(MODS_AVAILABLE_DIR) ; \
cd $(MODS_ENABLED_DIR) && ln -sf ../mods-available/$$file ; \
done; \
rm -f $(MODS_ENABLED_DIR)/headers.load ; \
@@ -298,40 +298,34 @@ staging_except_module : setup_staging_di
cp -f $(LIBRARY_CONF_SOURCE) $(STAGING_DIR)/pagespeed_libraries.conf
$(MODS_ENABLED_STAGING_COMMANDS)
cp -rp mod_pagespeed_example mod_pagespeed_test $(STAGING_DIR)
- @echo Changing security context of $(APACHE_DOC_ROOT)
- @echo This will fail and be ignored if your selinux isn\'t set up.
- -chcon -R --reference=$(APACHE_DOC_ROOT) $(STAGING_DIR)
staging : staging_except_module
- cp $(PAGESPEED_MODULE) $(STAGING_DIR)/mod_pagespeed.so
- cp $(PAGESPEED_MODULE_24) $(STAGING_DIR)/mod_pagespeed_ap24.so
- cp $(PAGESPEED_JS_MINIFY) $(STAGING_DIR)/pagespeed_js_minify
+ if [ -x $(PAGESPEED_MODULE) ]; then cp $(PAGESPEED_MODULE) $(STAGING_DIR)/mod_pagespeed.so; fi
+ if [ -x $(PAGESPEED_MODULE_24) ]; then cp $(PAGESPEED_MODULE_24) $(STAGING_DIR)/mod_pagespeed_ap24.so; fi
+ if [ -x $(PAGESPEED_JS_MINIFY) ]; then cp $(PAGESPEED_JS_MINIFY) $(STAGING_DIR)/pagespeed_js_minify; fi
install_except_module : mod_pagespeed_file_root
$(MODS_ENABLED_INSTALL_COMMANDS)
- cat $(CONF_SOURCES) > $(APACHE_CONF_DIR)/pagespeed.conf
- ln -Tsf $(STAGING_DIR)/mod_pagespeed_example \
- $(APACHE_DOC_ROOT)/mod_pagespeed_example
- ln -Tsf $(STAGING_DIR)/mod_pagespeed_test \
- $(APACHE_DOC_ROOT)/mod_pagespeed_test
+ cat $(CONF_SOURCES) > %%PORTSSTAGE%%$(APACHE_CONF_DIR)/pagespeed.conf.sample
+ ln -sf $(STAGING_DIR)/mod_pagespeed_example \
+ %%PORTSSTAGE%%$(APACHE_DOC_ROOT)/mod_pagespeed_example
+ ln -sf $(STAGING_DIR)/mod_pagespeed_test \
+ %%PORTSSTAGE%%$(APACHE_DOC_ROOT)/mod_pagespeed_test
# To install the mod_pagespeed configuration into the system, you must
# run this as root, or under sudo.
install : install_except_module
- cp $(STAGING_DIR)/mod_pagespeed.so $(APACHE_MODULES)
- cp $(STAGING_DIR)/mod_pagespeed_ap24.so $(APACHE_MODULES)
- cp $(STAGING_DIR)/pagespeed_js_minify $(BINDIR)
+ if [ -x $(PAGESPEED_MODULE) ]; then cp $(STAGING_DIR)/mod_pagespeed.so %%PORTSSTAGE%%$(APACHE_MODULES); fi
+ if [ -x $(PAGESPEED_MODULE_24) ]; then cp $(STAGING_DIR)/mod_pagespeed_ap24.so %%PORTSSTAGE%%$(APACHE_MODULES); fi
+ if [ -x $(PAGESPEED_JS_MINIFY) ]; then cp $(STAGING_DIR)/pagespeed_js_minify %%PORTSSTAGE%%$(BINDIR); fi
mod_pagespeed_file_root :
- mkdir -p $(MOD_PAGESPEED_CACHE)
- chown -R $(APACHE_USER) $(MOD_PAGESPEED_CACHE)
-
- mkdir -p $(MOD_PAGESPEED_CACHE)-alt
- chown -R $(APACHE_USER) $(MOD_PAGESPEED_CACHE)-alt
-
- mkdir -p $(MOD_PAGESPEED_LOG)
- chown -R $(APACHE_USER) $(MOD_PAGESPEED_LOG)
-
+ mkdir -p %%PORTSSTAGE%%$(MOD_PAGESPEED_CACHE)
+
+ mkdir -p %%PORTSSTAGE%%$(MOD_PAGESPEED_CACHE)-alt
+
+ mkdir -p %%PORTSSTAGE%%$(MOD_PAGESPEED_LOG)
+
flush_disk_cache :
rm -rf $(MOD_PAGESPEED_CACHE)
$(MAKE) MOD_PAGESPEED_CACHE=$(MOD_PAGESPEED_CACHE) \
@@ -419,8 +413,6 @@ enable_ports_and_file_access :
$(MOD_PAGESPEED_CACHE)-alt \
$(MOD_PAGESPEED_LOG) ; do \
sudo mkdir -p $$dir; \
- sudo chown $(APACHE_USER) $$dir; \
- sudo chcon -R --reference=$(APACHE_DOC_ROOT) $$dir || true; \
done; \
/usr/sbin/setsebool httpd_can_network_connect on; \
fi

View file

@ -0,0 +1,11 @@
--- net/instaweb/closure.gypi.orig 2017-10-07 00:18:23 UTC
+++ net/instaweb/closure.gypi
@@ -74,7 +74,7 @@
],
}],
['js_includes != ""', {
- 'closure_flags': ['<!@(python -c "print \' \'.join([\'--js \' + js for js in \'<(js_includes)\'.split()]) ")'],
+ 'closure_flags': ['<!@(python2.7 -c "print \' \'.join([\'--js \' + js for js in \'<(js_includes)\'.split()]) ")'],
}],
['"<!(echo $BUILD_JS)" != "1"', {
'action': [

View file

@ -0,0 +1,20 @@
--- net/instaweb/instaweb.gyp.orig 2017-06-08 22:22:39 UTC
+++ net/instaweb/instaweb.gyp
@@ -34,9 +34,14 @@
{
'variables': {
'instaweb_root': '../..',
- 'protoc_out_dir': '<(SHARED_INTERMEDIATE_DIR)/protoc_out/instaweb',
- 'protoc_executable':
- '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)protoc<(EXECUTABLE_SUFFIX)',
+ 'protoc_out_dir': '<(SHARED_INTERMEDIATE_DIR)/protoc_out/instaweb',
+ 'conditions': [
+ ['use_system_protobuf==0', {
+ 'protoc_executable': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)protoc<(EXECUTABLE_SUFFIX)',
+ }, { # use_system_protobuf==1
+ 'protoc_executable': '<!(which protoc)',
+ }],
+ ],
'compiled_js_dir': '<(SHARED_INTERMEDIATE_DIR)/closure_out/instaweb',
'data2c_out_dir': '<(SHARED_INTERMEDIATE_DIR)/data2c_out/instaweb',
'data2c_exe':

View file

@ -0,0 +1,15 @@
--- net/instaweb/mod_pagespeed.gypi.orig 2017-10-06 10:03:15 UTC
+++ net/instaweb/mod_pagespeed.gypi
@@ -41,7 +41,12 @@
'<(DEPTH)/pagespeed/apache/mod_instaweb.cc',
'<(DEPTH)/pagespeed/kernel/base/mem_debug.cc',
],
+ 'defines+': [
+ 'USE_EXPAT',
+ 'SHARED_MODULE',
+ ],
'ldflags+': [
'-Wl,--version-script=build/mod_pagespeed.map',
+ '-Wl,-Bshareable'
],
}

View file

@ -0,0 +1,41 @@
--- net/instaweb/protoc.gypi.orig 2017-06-08 22:22:39 UTC
+++ net/instaweb/protoc.gypi
@@ -18,7 +18,13 @@
'has_services%': 0,
# TODO(cheesy): Just remove these variables, since they are basically
# global, plus we depend directly on protoc anyway.
- 'protoc_executable%': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)protoc<(EXECUTABLE_SUFFIX)',
+ 'conditions': [
+ ['use_system_protobuf==0', {
+ 'protoc_executable': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)protoc<(EXECUTABLE_SUFFIX)',
+ }, { # use_system_protobuf==1
+ 'protoc_executable': '<!(which protoc)',
+ }],
+ ],
'protoc_out_dir%': '<(SHARED_INTERMEDIATE_DIR)/protoc_out/instaweb',
},
'rules': [
@@ -29,8 +35,8 @@
'process_outputs_as_sources': 1,
'variables': {
'protoc_args': [
- '--proto_path=<(protoc_out_dir)/',
- '--cpp_out=<(protoc_out_dir)',
+ '--proto_path=<(protoc_out_dir)/',
+ '--cpp_out=<(protoc_out_dir)',
],
},
'inputs': [
@@ -39,9 +45,9 @@
],
'message': 'Generating C++ code from <(RULE_INPUT_PATH)',
'outputs': [
- '<(protoc_out_dir)/<(instaweb_protoc_subdir)/<(RULE_INPUT_ROOT).pb.h',
- '<(protoc_out_dir)/<(instaweb_protoc_subdir)/<(RULE_INPUT_ROOT).pb.cc',
- '<(protoc_out_dir)/<(instaweb_protoc_subdir)/<(RULE_INPUT_ROOT).proto',
+ '<(protoc_out_dir)/<(instaweb_protoc_subdir)/<(RULE_INPUT_ROOT).pb.h',
+ '<(protoc_out_dir)/<(instaweb_protoc_subdir)/<(RULE_INPUT_ROOT).pb.cc',
+ '<(protoc_out_dir)/<(instaweb_protoc_subdir)/<(RULE_INPUT_ROOT).proto',
],
'conditions': [
['has_services != 0', {

View file

@ -0,0 +1,10 @@
--- net/instaweb/rewriter/image.cc.orig 2017-09-13 23:22:49 UTC
+++ net/instaweb/rewriter/image.cc
@@ -20,6 +20,7 @@
#include <algorithm>
#include <cstddef>
+#include <zlib.h>
#include "base/logging.h"
#include "net/instaweb/rewriter/cached_result.pb.h"

View file

@ -0,0 +1,19 @@
--- pagespeed/kernel.gyp.orig 2017-09-12 22:02:20 UTC
+++ pagespeed/kernel.gyp
@@ -16,8 +16,13 @@
'variables': {
'instaweb_root': '..',
- 'protoc_out_dir': '<(SHARED_INTERMEDIATE_DIR)/protoc_out/instaweb',
- 'protoc_executable':
- '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)protoc<(EXECUTABLE_SUFFIX)',
+ 'protoc_out_dir': '<(SHARED_INTERMEDIATE_DIR)/protoc_out/instaweb',
+ 'conditions': [
+ ['use_system_protobuf==0', {
+ 'protoc_executable': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)protoc<(EXECUTABLE_SUFFIX)',
+ }, { # use_system_protobuf==1
+ 'protoc_executable': '<!(which protoc)',
+ }],
+ ],
'data2c_out_dir': '<(SHARED_INTERMEDIATE_DIR)/data2c_out/instaweb',
'data2c_exe':
'<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)instaweb_data2c<(EXECUTABLE_SUFFIX)',

View file

@ -0,0 +1,13 @@
--- pagespeed/kernel/image/gif_reader.cc.orig 2017-09-13 22:14:53 UTC
+++ pagespeed/kernel/image/gif_reader.cc
@@ -411,8 +411,8 @@ bool ReadGifToPng(GifFileType* gif_file,
png_uint_32 height = png_get_image_height(paletted_png_ptr,
paletted_info_ptr);
for (png_uint_32 row = 1; row < height; ++row) {
- memcpy(paletted_info_ptr->row_pointers[row],
- paletted_info_ptr->row_pointers[0],
+ memcpy(/*paletted_info_ptr->*/row_pointers[row],
+ /*paletted_info_ptr->*/row_pointers[0],
row_size);
}

View file

@ -0,0 +1,10 @@
--- pagespeed/kernel/image/image_converter.cc.orig 2017-09-13 22:51:16 UTC
+++ pagespeed/kernel/image/image_converter.cc
@@ -23,6 +23,7 @@ using net_instaweb::MessageHandler;
#include <setjmp.h>
#include <cstddef>
+#include <zlib.h>
extern "C" {
#ifdef USE_SYSTEM_LIBPNG

View file

@ -0,0 +1,10 @@
--- pagespeed/kernel/image/png_optimizer_test.cc.orig 2017-10-06 21:33:57 UTC
+++ pagespeed/kernel/image/png_optimizer_test.cc
@@ -36,6 +36,7 @@ extern "C" {
#else
#include "third_party/libpng/src/png.h"
#endif
+#include "zlib.h"
}
namespace {

View file

@ -0,0 +1,13 @@
--- pagespeed/kernel/image/test_utils.cc.orig 2017-10-06 17:27:24 UTC
+++ pagespeed/kernel/image/test_utils.cc
@@ -168,8 +168,8 @@ void DecodeAndCompareImagesByPSNR(
void CompareImageReaders(ScanlineReaderInterface* reader1,
ScanlineReaderInterface* reader2) {
- ASSERT_NE(reinterpret_cast<ScanlineReaderInterface*>(NULL), reader1);
- ASSERT_NE(reinterpret_cast<ScanlineReaderInterface*>(NULL), reader2);
+ ASSERT_NE(reinterpret_cast<ScanlineReaderInterface*>((void *)NULL), reader1);
+ ASSERT_NE(reinterpret_cast<ScanlineReaderInterface*>((void *)NULL), reader2);
ASSERT_EQ(reader1->GetPixelFormat(), reader2->GetPixelFormat());
ASSERT_EQ(reader1->GetImageHeight(), reader2->GetImageHeight());
ASSERT_EQ(reader1->GetImageWidth(), reader2->GetImageWidth());

View file

@ -0,0 +1,11 @@
--- pagespeed/kernel/image/webp_optimizer_test.cc.orig 2017-10-06 21:38:20 UTC
+++ pagespeed/kernel/image/webp_optimizer_test.cc
@@ -121,7 +121,7 @@ class WebpScanlineOptimizerTest : public
CreateScanlineWriter(pagespeed::image_compression::IMAGE_WEBP,
pixel_format, width, height, &webp_config,
webp_image, &message_handler_));
- ASSERT_NE(reinterpret_cast<ScanlineWriterInterface*>(NULL),
+ ASSERT_NE(reinterpret_cast<ScanlineWriterInterface*>((void *)NULL),
webp_writer.get());
// Read the scanlines from the original image and write them to the new one.

View file

@ -0,0 +1,18 @@
--- pagespeed/opt.gyp.orig 2017-09-12 22:04:16 UTC
+++ pagespeed/opt.gyp
@@ -20,8 +20,13 @@
# errors.
'chromium_code': 1,
'protoc_out_dir': '<(SHARED_INTERMEDIATE_DIR)/protoc_out/instaweb',
- 'protoc_executable':
- '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)protoc<(EXECUTABLE_SUFFIX)',
+ 'conditions': [
+ ['use_system_protobuf==0', {
+ 'protoc_executable': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)protoc<(EXECUTABLE_SUFFIX)',
+ }, { # use_system_protobuf==1
+ 'protoc_executable': '<!(which protoc)',
+ }],
+ ],
'compiled_js_dir': '<(SHARED_INTERMEDIATE_DIR)/closure_out/instaweb',
'data2c_out_dir': '<(SHARED_INTERMEDIATE_DIR)/data2c_out/instaweb',
'data2c_exe':

View file

@ -0,0 +1,24 @@
--- pagespeed/system/system_rewrite_driver_factory.cc.orig 2017-09-14 17:19:19 UTC
+++ pagespeed/system/system_rewrite_driver_factory.cc
@@ -16,7 +16,9 @@
#include "pagespeed/system/system_rewrite_driver_factory.h"
+#if !defined(OS_BSD)
#include <sys/prctl.h>
+#endif
#include <algorithm> // for min
#include <cstdio>
#include <cstdlib>
@@ -255,9 +257,11 @@ void SystemRewriteDriverFactory::NamePro
// Set the process status. This is what /proc/PID/status shows and what
// "ps -a" gives you. With PR_SET_NAME there's a max of 16 characters, so
// abbreviate pagespeed as ps to be terse.
+#if !defined(OS_BSD)
char name_for_prctl[16];
snprintf(name_for_prctl, sizeof(name_for_prctl), "ps-%s", name);
prctl(PR_SET_NAME, name_for_prctl);
+#endif
// It's also possible to change argv[0], but this is a pain so currently we
// only do this in nginx where they've written ngx_setproctitle to make it

View file

@ -0,0 +1,23 @@
--- testing/gtest.gyp.orig 2017-10-06 20:45:48 UTC
+++ testing/gtest.gyp
@@ -46,15 +46,20 @@
],
'dependencies': [
'gtest_prod',
+ '<(DEPTH)/third_party/gflags/gflags.gyp:gflags',
+ '<(DEPTH)/third_party/apr/apr.gyp:include',
+ '<(DEPTH)/third_party/aprutil/aprutil.gyp:include',
],
'defines': [
# In order to allow regex matches in gtest to be shared between Windows
# and other systems, we tell gtest to always use it's internal engine.
'GTEST_HAS_POSIX_RE=0',
+ 'GTEST_HAS_DEATH_TEST=1',
],
'all_dependent_settings': {
'defines': [
'GTEST_HAS_POSIX_RE=0',
+ 'GTEST_HAS_DEATH_TEST=1',
],
},
'conditions': [

View file

@ -0,0 +1,13 @@
--- testing/gtest/include/gtest/gtest.h.orig 2017-10-06 20:33:54 UTC
+++ testing/gtest/include/gtest/gtest.h
@@ -55,6 +55,10 @@
#include <ostream>
#include <vector>
+#ifndef GTEST_HAS_DEATH_TEST
+#define GTEST_HAS_DEATH_TEST 1
+#endif
+
#include "gtest/internal/gtest-internal.h"
#include "gtest/internal/gtest-string.h"
#include "gtest/gtest-death-test.h"

View file

@ -0,0 +1,10 @@
--- testing/gtest/include/gtest/internal/gtest-port.h.orig 2017-10-06 21:19:08 UTC
+++ testing/gtest/include/gtest/internal/gtest-port.h
@@ -211,6 +211,7 @@
#include <iostream> // NOLINT
#include <sstream> // NOLINT
#include <string> // NOLINT
+#include <vector>
#define GTEST_DEV_EMAIL_ "googletestframework@@googlegroups.com"
#define GTEST_FLAG_PREFIX_ "gtest_"

View file

@ -0,0 +1,39 @@
--- third_party/apr/apr.gyp.orig 2017-10-04 20:42:02 UTC
+++ third_party/apr/apr.gyp
@@ -19,7 +19,7 @@
'apr_src_root': '<(apr_root)/src',
'apr_gen_os_root': '<(apr_root)/gen/arch/<(OS)',
'apr_gen_arch_root': '<(apr_gen_os_root)/<(target_arch)',
- 'system_include_path_apr%': '/usr/include/apr-1.0',
+ 'system_include_path_apr%': '/usr/local/include/apr-1',
'conditions': [
['OS!="win"', {
'apr_os_include': '<(apr_src_root)/include/arch/unix',
@@ -187,6 +187,14 @@
'_GNU_SOURCE',
],
},
+ 'link_settings': {
+ 'ldflags': [
+ '<!@(pkg-config --libs apr-1)',
+ ],
+ 'libraries': [
+ '<!@(pkg-config --libs apr-1)',
+ ],
+ },
},
{
'target_name': 'apr',
@@ -198,8 +206,11 @@
'include',
],
'link_settings': {
+ 'ldflags': [
+ '<!@(pkg-config --libs apr-1)',
+ ],
'libraries': [
- '-lapr-1',
+ '<!@(pkg-config --libs apr-1)',
],
},
},

View file

@ -0,0 +1,39 @@
--- third_party/aprutil/aprutil.gyp.orig 2017-10-04 20:48:05 UTC
+++ third_party/aprutil/aprutil.gyp
@@ -22,7 +22,7 @@
'aprutil_src_root': '<(aprutil_root)/src',
'aprutil_gen_os_root': '<(aprutil_root)/gen/arch/<(OS)',
'aprutil_gen_arch_root': '<(aprutil_gen_os_root)/<(target_arch)',
- 'system_include_path_aprutil%': '/usr/include/apr-1.0',
+ 'system_include_path_aprutil%': '/usr/local/include/apr-1',
},
'conditions': [
['use_system_apache_dev==0', {
@@ -142,6 +142,14 @@
'_GNU_SOURCE',
],
},
+ 'link_settings': {
+ 'ldflags': [
+ '<!@(pkg-config --libs apr-util-1)',
+ ],
+ 'libraries': [
+ '<!@(pkg-config --libs apr-util-1)',
+ ],
+ },
},
{
'target_name': 'aprutil',
@@ -153,8 +161,11 @@
'include',
],
'link_settings': {
+ 'ldflags': [
+ '<!@(pkg-config --libs apr-util-1)',
+ ],
'libraries': [
- '-laprutil-1',
+ '<!@(pkg-config --libs apr-util-1)',
],
},
},

View file

@ -0,0 +1,23 @@
--- third_party/chromium/src/base/debug/stack_trace_posix.cc.orig 2017-08-29 15:13:37 UTC
+++ third_party/chromium/src/base/debug/stack_trace_posix.cc
@@ -145,7 +145,7 @@ void ProcessBacktrace(void *const *trace
handler->HandleOutput("\n");
}
-#else
+#elif defined(OS_LINUX)
bool printed = false;
// Below part is async-signal unsafe (uses malloc), so execute it only
@@ -472,7 +472,11 @@ StackTrace::StackTrace() {
// Though the backtrace API man page does not list any possible negative
// return values, we take no chance.
+#if defined(OS_LINUX)
count_ = std::max(backtrace(trace_, arraysize(trace_)), 0);
+#else
+ count_ = 0;
+#endif
}
void StackTrace::Print() const {

View file

@ -0,0 +1,11 @@
--- third_party/chromium/src/base/profiler/alternate_timer.cc.orig 2017-09-12 17:53:20 UTC
+++ third_party/chromium/src/base/profiler/alternate_timer.cc
@@ -21,7 +21,7 @@ const char kAlternateProfilerTime[] = "C
// Set an alternate timer function to replace the OS time function when
// profiling.
void SetAlternateTimeSource(NowFunction* now_function, TimeSourceType type) {
- DCHECK_EQ(reinterpret_cast<NowFunction*>(NULL), g_time_function);
+ DCHECK_EQ(reinterpret_cast<NowFunction*>((void *)NULL), g_time_function);
g_time_function = now_function;
g_time_source_type = type;
}

View file

@ -0,0 +1,11 @@
--- third_party/chromium/src/base/strings/string_util.h.orig 2017-09-13 21:56:00 UTC
+++ third_party/chromium/src/base/strings/string_util.h
@@ -377,7 +377,7 @@ inline Char HexDigitToInt(Char c) {
// Returns true if it's a whitespace character.
inline bool IsWhitespace(wchar_t c) {
- return wcschr(base::kWhitespaceWide, c) != NULL;
+ return (::wcschr(base::kWhitespaceWide, c) != (wchar_t *)NULL);
}
// Return a byte string in human-readable format with a unit suffix. Not

View file

@ -0,0 +1,21 @@
--- third_party/chromium/src/base/threading/platform_thread_linux.cc.orig 2017-08-29 15:13:38 UTC
+++ third_party/chromium/src/base/threading/platform_thread_linux.cc
@@ -16,7 +16,9 @@
#include "base/tracked_objects.h"
#if !defined(OS_NACL)
+#if !defined(OS_BSD)
#include <sys/prctl.h>
+#endif
#include <sys/resource.h>
#include <sys/syscall.h>
#include <sys/time.h>
@@ -48,7 +50,7 @@ void PlatformThread::SetName(const char*
ThreadIdNameManager::GetInstance()->SetName(CurrentId(), name);
tracked_objects::ThreadData::InitializeThreadContext(name);
-#if !defined(OS_NACL)
+#if !defined(OS_NACL) && !defined(OS_AIX) && !defined(OS_BSD)
// On linux we can get the thread names to show up in the debugger by setting
// the process name for the LWP. We don't want to do this for the main
// thread because that would rename the process, causing tools like killall

View file

@ -0,0 +1,11 @@
--- third_party/chromium/src/base/tracked_objects.cc.orig 2017-09-12 17:33:52 UTC
+++ third_party/chromium/src/base/tracked_objects.cc
@@ -378,7 +378,7 @@ void ThreadData::OnThreadTerminationClea
}
// We must NOT do any allocations during this callback.
// Using the simple linked lists avoids all allocations.
- DCHECK_EQ(this->next_retired_worker_, reinterpret_cast<ThreadData*>(NULL));
+ DCHECK_EQ(this->next_retired_worker_, reinterpret_cast<ThreadData*>((void *)NULL));
this->next_retired_worker_ = first_retired_worker_;
first_retired_worker_ = this;
}

View file

@ -0,0 +1,71 @@
--- third_party/chromium/src/build/common.gypi.orig 2017-10-07 00:10:16 UTC
+++ third_party/chromium/src/build/common.gypi
@@ -100,7 +100,7 @@
['OS=="win" or OS=="mac" or OS=="ios"', {
'host_arch%': 'ia32',
}, {
- 'host_arch%': '<!(python <(DEPTH)/build/linux/detect_host_arch.py)',
+ 'host_arch%': '<!(python2.7 <(DEPTH)/build/linux/detect_host_arch.py)',
}],
# Embedded implies ozone.
@@ -1252,8 +1252,8 @@
# Contains data about the attached devices for gyp_managed_install.
'build_device_config_path': '<(PRODUCT_DIR)/build_devices.cfg',
- 'sas_dll_exists': '<!(python <(DEPTH)/build/dir_exists.py "<(sas_dll_path)")',
- 'wix_exists': '<!(python <(DEPTH)/build/dir_exists.py "<(wix_path)")',
+ 'sas_dll_exists': '<!(python2.7 <(DEPTH)/build/dir_exists.py "<(sas_dll_path)")',
+ 'wix_exists': '<!(python2.7 <(DEPTH)/build/dir_exists.py "<(wix_path)")',
'windows_sdk_default_path': '<(DEPTH)/third_party/platformsdk_win8/files',
'directx_sdk_default_path': '<(DEPTH)/third_party/directxsdk/files',
@@ -1303,18 +1303,18 @@
# We directly set the gcc_version since we know what we use.
'gcc_version%': 46,
}, {
- 'gcc_version%': '<!(python <(DEPTH)/build/compiler_version.py)',
+ 'gcc_version%': '<!(python2.7 <(DEPTH)/build/compiler_version.py)',
}],
],
}, {
'gcc_version%': 0,
}],
- ['OS=="win" and "<!(python <(DEPTH)/build/dir_exists.py <(windows_sdk_default_path))"=="True"', {
+ ['OS=="win" and "<!(python2.7 <(DEPTH)/build/dir_exists.py <(windows_sdk_default_path))"=="True"', {
'windows_sdk_path%': '<(windows_sdk_default_path)',
}, {
'windows_sdk_path%': 'C:/Program Files (x86)/Windows Kits/8.0',
}],
- ['OS=="win" and "<!(python <(DEPTH)/build/dir_exists.py <(directx_sdk_default_path))"=="True"', {
+ ['OS=="win" and "<!(python2.7 <(DEPTH)/build/dir_exists.py <(directx_sdk_default_path))"=="True"', {
'directx_sdk_path%': '<(directx_sdk_default_path)',
}, {
'directx_sdk_path%': '$(DXSDK_DIR)',
@@ -1365,7 +1365,7 @@
# The Mac SDK is set for iOS builds and passed through to Mac
# sub-builds. This allows the Mac sub-build SDK in an iOS build to be
# overridden from the command line the same way it is for a Mac build.
- 'mac_sdk%': '<!(python <(DEPTH)/build/mac/find_sdk.py 10.6)',
+ 'mac_sdk%': '<!(python2.7 <(DEPTH)/build/mac/find_sdk.py 10.6)',
# iOS SDK and deployment target support. The |ios_sdk| value is left
# blank so that when it is set in the project files it will be the
@@ -1585,7 +1585,7 @@
}],
['branding=="Chrome" and buildtype=="Official"', {
- 'mac_sdk%': '<!(python <(DEPTH)/build/mac/find_sdk.py --verify <(mac_sdk_min) --sdk_path=<(mac_sdk_path))',
+ 'mac_sdk%': '<!(python2.7 <(DEPTH)/build/mac/find_sdk.py --verify <(mac_sdk_min) --sdk_path=<(mac_sdk_path))',
# Enable uploading crash dumps.
'mac_breakpad_uploads%': 1,
# Enable dumping symbols at build time for use by Mac Breakpad.
@@ -1593,7 +1593,7 @@
# Enable Keystone auto-update support.
'mac_keystone%': 1,
}, { # else: branding!="Chrome" or buildtype!="Official"
- 'mac_sdk%': '<!(python <(DEPTH)/build/mac/find_sdk.py <(mac_sdk_min))',
+ 'mac_sdk%': '<!(python2.7 <(DEPTH)/build/mac/find_sdk.py <(mac_sdk_min))',
'mac_breakpad_uploads%': 0,
'mac_breakpad%': 0,
'mac_keystone%': 0,

View file

@ -0,0 +1,13 @@
--- third_party/chromium/src/build/util/version.gypi.orig 2017-10-06 23:59:53 UTC
+++ third_party/chromium/src/build/util/version.gypi
@@ -11,8 +11,8 @@
'version_py_path': '<(version_py_path)',
'version_path': '<(version_path)',
'version_full':
- '<!(python <(version_py_path) -f <(version_path) -t "@MAJOR@.@MINOR@.@BUILD@.@PATCH@")',
+ '<!(python2.7 <(version_py_path) -f <(version_path) -t "@MAJOR@.@MINOR@.@BUILD@.@PATCH@")',
'version_mac_dylib':
- '<!(python <(version_py_path) -f <(version_path) -t "@BUILD@.@PATCH_HI@.@PATCH_LO@" -e "PATCH_HI=int(PATCH)/256" -e "PATCH_LO=int(PATCH)%256")',
+ '<!(python2.7 <(version_py_path) -f <(version_path) -t "@BUILD@.@PATCH_HI@.@PATCH_LO@" -e "PATCH_HI=int(PATCH)/256" -e "PATCH_LO=int(PATCH)%256")',
}, # variables
}

View file

@ -0,0 +1,10 @@
--- third_party/closure/download.sh.orig 2017-10-07 01:47:55 UTC
+++ third_party/closure/download.sh
@@ -37,7 +37,6 @@ JAR=$DIR/compiler.jar
# verison.
if [[ ! -e $JAR || -z "$(java -jar $JAR --version | grep $VERSION)" ]]
then
- curl https://dl.google.com/closure-compiler/$ZIP --create-dirs -o $DIR/$ZIP
unzip -o $DIR/$ZIP -d $DIR
cp $JAR_IN $JAR
fi

View file

@ -0,0 +1,50 @@
--- third_party/grpc/grpc.gyp.orig 2017-10-06 10:33:51 UTC
+++ third_party/grpc/grpc.gyp
@@ -22,8 +22,10 @@
'cflags_cc': [
'-Wall',
'-pthread',
- '-zdefs',
- '-Wno-error=deprecated-declarations'
+ '-Wl,-z,defs',
+ '-Wno-error=deprecated-declarations',
+ '-frtti',
+ '-I/usr/local/include'
],
'sources': [
"src/src/cpp/client/secure_credentials.cc",
@@ -71,9 +73,12 @@
'cflags': [
'-std=c99',
'-Wall',
+ '-frtti',
+ '-I/usr/local/include',
],
'ldflags': [
'-Wl,-wrap,memcpy',
+ '-Wl,-z,defs',
],
'sources': [
'src/src/core/lib/surface/init.c',
@@ -270,6 +276,8 @@
'cflags': [
'-std=c99',
'-Wall',
+ '-frtti',
+ '-I/usr/local/include',
],
'sources': [
'src/src/core/lib/profiling/basic_timers.c',
@@ -326,8 +334,10 @@
'cflags_cc': [
'-Wall',
'-pthread',
- '-zdefs',
- '-Wno-error=deprecated-declarations'
+ '-Wl,-z,defs',
+ '-Wno-error=deprecated-declarations',
+ '-frtti',
+ '-I/usr/local/include'
],
'sources': [
'src/src/compiler/cpp_generator.cc',

View file

@ -0,0 +1,103 @@
--- third_party/grpc/src/binding.gyp.orig 2017-10-06 10:33:51 UTC
+++ third_party/grpc/src/binding.gyp
@@ -91,11 +91,14 @@
'cflags': [
'-ftest-coverage',
'-fprofile-arcs',
- '-O0'
+ '-O0',
+ '-frtti',
+ '-I/usr/local/include'
],
'ldflags': [
'-ftest-coverage',
- '-fprofile-arcs'
+ '-fprofile-arcs',
+ '-Wl,-z,defs'
]
}
],
@@ -143,7 +147,9 @@
'cflags': [
'-std=c99',
'-Wall',
- '-Werror'
+ '-Werror',
+ '-frtti',
+ '-I/usr/local/include'
],
'target_name': 'boringssl',
'product_prefix': 'lib',
@@ -454,7 +460,9 @@
'cflags': [
'-std=c99',
'-Wall',
- '-Werror'
+ '-Werror',
+ '-frtti',
+ '-I/usr/local/include'
],
'target_name': 'z',
'product_prefix': 'lib',
@@ -487,7 +495,9 @@
'cflags': [
'-std=c99',
'-Wall',
- '-Werror'
+ '-Werror',
+ '-frtti',
+ '-I/usr/local/include'
],
'target_name': 'gpr',
'product_prefix': 'lib',
@@ -553,7 +563,9 @@
'cflags': [
'-std=c99',
'-Wall',
- '-Werror'
+ '-Werror',
+ '-frtti',
+ '-I/usr/local/include'
],
'target_name': 'grpc',
'product_prefix': 'lib',
@@ -766,12 +778,15 @@
'-Wall',
'-pthread',
'-g',
- '-zdefs',
+ '-Wl,-z,defs',
'-Werror',
- '-Wno-error=deprecated-declarations'
+ '-Wno-error=deprecated-declarations',
+ '-frtti',
+ '-I/usr/local/include'
],
'ldflags': [
- '-g'
+ '-g',
+ '-Wl,-z,defs'
],
"conditions": [
['OS=="mac"', {
@@ -779,7 +795,9 @@
'MACOSX_DEPLOYMENT_TARGET': '10.9',
'OTHER_CFLAGS': [
'-stdlib=libc++',
- '-std=c++11'
+ '-std=c++11',
+ '-frtti',
+ '-I/usr/local/include'
]
}
}],
@@ -791,7 +809,8 @@
}],
['OS=="linux"', {
'ldflags': [
- '-Wl,-wrap,memcpy'
+ '-Wl,-wrap,memcpy',
+ '-Wl,-z,defs'
]
}]
],

View file

@ -0,0 +1,12 @@
--- third_party/grpc/src/include/grpc/impl/codegen/port_platform.h.orig 2017-09-14 17:36:37 UTC
+++ third_party/grpc/src/include/grpc/impl/codegen/port_platform.h
@@ -301,7 +301,8 @@
#define GPR_SUPPORT_CHANNELS_FROM_FD 1
#define GPR_HAVE_SO_NOSIGPIPE 1
#define GPR_HAVE_UNIX_SOCKET 1
-#define GPR_HAVE_IP_PKTINFO 1
+#define GPR_HAVE_IP_PKTINFO 0
+#undef GPR_HAVE_IP_PKTINFO
#define GPR_HAVE_IPV6_RECVPKTINFO 1
#ifdef _LP64
#define GPR_ARCH_64 1

View file

@ -0,0 +1,10 @@
--- 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 <grpc/support/port_platform.h>
+#include <sys/socket.h>
#include <limits.h>
#include <string.h>

View file

@ -0,0 +1,76 @@
--- third_party/grpc/src/templates/binding.gyp.template.orig 2016-08-19 00:55:10 UTC
+++ third_party/grpc/src/templates/binding.gyp.template
@@ -93,11 +93,13 @@
'cflags': [
'-ftest-coverage',
'-fprofile-arcs',
- '-O0'
+ '-O0',
+ '-I/usr/local/include'
],
'ldflags': [
'-ftest-coverage',
- '-fprofile-arcs'
+ '-fprofile-arcs',
+ '-Wl,-z,defs',
]
}
],
@@ -148,7 +151,8 @@
'cflags': [
'-std=c99',
'-Wall',
- '-Werror'
+ '-Werror',
+ '-I/usr/local/include'
],
'target_name': '${lib.name}',
'product_prefix': 'lib',
@@ -178,7 +182,8 @@
'cflags': [
'-std=c99',
'-Wall',
- '-Werror'
+ '-Werror',
+ '-I/usr/local/include'
],
'target_name': '${lib.name}',
'product_prefix': 'lib',
@@ -212,12 +217,14 @@
'-Wall',
'-pthread',
'-g',
- '-zdefs',
+ '-Wl,-z,defs',
'-Werror',
- '-Wno-error=deprecated-declarations'
+ '-Wno-error=deprecated-declarations',
+ '-I/usr/local/include'
],
'ldflags': [
- '-g'
+ '-g',
+ '-Wl,-z,defs'
],
"conditions": [
['OS=="mac"', {
@@ -225,7 +233,8 @@
'MACOSX_DEPLOYMENT_TARGET': '10.9',
'OTHER_CFLAGS': [
'-stdlib=libc++',
- '-std=c++11'
+ '-std=c++11',
+ '-I/usr/local/include'
]
}
}],
@@ -240,7 +249,8 @@
}],
['OS=="linux"', {
'ldflags': [
- '-Wl,-wrap,memcpy'
+ '-Wl,-wrap,memcpy',
+ '-Wl,-z,defs'
]
}]
],

View file

@ -0,0 +1,22 @@
--- third_party/httpd/httpd.gyp.orig 2017-10-06 09:52:26 UTC
+++ third_party/httpd/httpd.gyp
@@ -18,7 +18,7 @@
'apache_src_root': '<(apache_root)/src',
'apache_gen_os_root': '<(apache_root)/gen/arch/<(OS)',
'apache_gen_arch_root': '<(apache_gen_os_root)/<(target_arch)',
- 'system_include_path_httpd%': '/usr/include/apache2',
+ 'system_include_path_httpd%': '/usr/local/include/apache22',
'conditions': [
['OS!="win"', {
'apache_os_include': '<(apache_src_root)/os/unix',
@@ -58,6 +58,10 @@
'direct_dependent_settings': {
'include_dirs': [
'<(system_include_path_httpd)',
+ '/usr/local/libexec/apache22',
+ ],
+ 'ldflags+': [
+ '-L/usr/local/libexec/apache22',
],
},
'dependencies': [

View file

@ -0,0 +1,15 @@
--- third_party/libjpeg_turbo/libjpeg_turbo.gyp.orig 2017-10-05 07:45:26 UTC
+++ third_party/libjpeg_turbo/libjpeg_turbo.gyp
@@ -58,8 +58,11 @@
],
},
'link_settings': {
+ 'ldflags': [
+ '<!@(pkg-config --libs libjpeg)',
+ ],
'libraries': [
- '-ljpeg',
+ '<!@(pkg-config --libs libjpeg)',
],
},
}

View file

@ -0,0 +1,29 @@
--- third_party/libpng/libpng.gyp.orig 2017-10-04 21:29:34 UTC
+++ third_party/libpng/libpng.gyp
@@ -108,11 +108,11 @@
# This detects the version and sets the variable to non-zero for
# pre-1.4 versions.
'png_free_me_suported_define_in_libpng' :
- '<!(<(pkg-config) --atleast-version=1.4.0 libpng; echo $?)'
+ '<!(<(pkg-config) --atleast-version=1.4.0 libpng; echo $?)'
},
'direct_dependent_settings': {
'cflags': [
- '<!@(<(pkg-config) --cflags libpng)',
+ '<!@(<(pkg-config) --cflags libpng)',
],
'defines+': [
'USE_SYSTEM_LIBPNG',
@@ -135,10 +135,10 @@
],
'link_settings': {
'ldflags': [
- '<!@(<(pkg-config) --libs-only-L --libs-only-other libpng)',
+ '<!@(<(pkg-config) --libs libpng)',
],
'libraries': [
- '<!@(<(pkg-config) --libs-only-l libpng)',
+ '<!@(<(pkg-config) --libs libpng)',
],
},
},

View file

@ -0,0 +1,72 @@
--- third_party/protobuf/protobuf.gyp.orig 2017-06-08 22:22:39 UTC
+++ third_party/protobuf/protobuf.gyp
@@ -518,6 +518,7 @@
{
'target_name': 'protobuf_lite',
'type': 'none',
+ 'toolsets': ['host','target'],
'direct_dependent_settings': {
'cflags': [
# Use full protobuf, because vanilla protobuf doesn't have
@@ -529,15 +530,17 @@
# This macro must be defined to suppress the use
# of dynamic_cast<>, which requires RTTI.
- 'GOOGLE_PROTOBUF_NO_RTTI',
- 'GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER',
+ #'GOOGLE_PROTOBUF_NO_RTTI',
+ #'GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER',
],
},
'link_settings': {
# Use full protobuf, because vanilla protobuf doesn't have
# our custom patch to retain unknown fields in lite mode.
+ # Formerly this --> '<!@(pkg-config --libs-only-L --libs-only-other protobuf)',
+ # But it seems to be incorrect for grpc, so I changed it...
'ldflags': [
- '<!@(pkg-config --libs-only-L --libs-only-other protobuf)',
+ '<!@(pkg-config --libs protobuf)',
],
'libraries': [
'<!@(pkg-config --libs-only-l protobuf)',
@@ -545,6 +548,40 @@
},
},
{
+ 'target_name': 'protoc_lib',
+ 'type': 'none',
+ 'toolsets': ['host'],
+ 'link_settings': {
+ 'ldflags': [
+ '-lprotoc',
+ ],
+ },
+ 'dependencies': [
+ 'protobuf_lite',
+ ],
+ },
+ {
+ 'target_name': 'protobuf_message_differencer',
+ 'type': 'none',
+ 'toolsets': ['target'],
+ 'dependencies': [
+ 'protobuf_lite',
+ ],
+ },
+ {
+ 'target_name': 'protobuf_full_do_not_use',
+ 'type': 'none',
+ 'toolsets': ['host','target'],
+ 'link_settings': {
+ 'ldflags': [
+ '-lprotoc',
+ ],
+ },
+ 'dependencies': [
+ 'protobuf_lite',
+ ],
+ },
+ {
'target_name': 'protoc',
'type': 'none',
'toolsets': ['host', 'target'],

View file

@ -0,0 +1,10 @@
--- third_party/re2/src/util/benchmark.cc.orig 2017-10-06 17:07:48 UTC
+++ third_party/re2/src/util/benchmark.cc
@@ -6,6 +6,7 @@
#include <stdio.h>
#include <algorithm>
#include <chrono>
+#include <stdlib.h>
#include "util/util.h"
#include "util/flags.h"

View file

@ -0,0 +1,15 @@
--- third_party/serf/select_openssl.gyp.orig 2017-10-04 20:20:10 UTC
+++ third_party/serf/select_openssl.gyp
@@ -47,10 +47,10 @@
},
'link_settings': {
'ldflags': [
- '<!@(pkg-config --libs-only-L --libs-only-other openssl)',
+ '<!@(pkg-config --libs openssl)',
],
'libraries': [
- '<!@(pkg-config --libs-only-l openssl)',
+ '<!@(pkg-config --libs openssl)',
],
},
},

View file

@ -0,0 +1,20 @@
--- url/url_canon_icu.cc.orig 2017-10-07 18:17:57 UTC
+++ url/url_canon_icu.cc
@@ -130,7 +130,7 @@ void ICUCharsetConverter::ConvertFromUTF
UErrorCode err = U_ZERO_ERROR;
char* dest = &output->data()[begin_offset];
int required_capacity = ucnv_fromUChars(converter_, dest, dest_capacity,
- input, input_len, &err);
+ reinterpret_cast<const UChar*>(input), input_len, &err);
if (err != U_BUFFER_OVERFLOW_ERROR) {
output->set_length(begin_offset + required_capacity);
return;
@@ -169,7 +169,7 @@ bool IDNToASCII(const base::char16* src,
while (true) {
UErrorCode err = U_ZERO_ERROR;
UIDNAInfo info = UIDNA_INFO_INITIALIZER;
- int output_length = uidna_nameToASCII(uidna, src, src_len, output->data(),
+ int output_length = uidna_nameToASCII(uidna, reinterpret_cast<const UChar*>(src), src_len, reinterpret_cast<UChar*>(output->data()),
output->capacity(), &info, &err);
if (U_SUCCESS(err) && info.errors == 0) {
output->set_length(output_length);

View file

@ -0,0 +1,7 @@
mod_pagespeed is an open-source Apache module that automatically optimizes web
pages and resources on them. It does this by rewriting the resources using
filters that implement web performance best practices. Webmasters and web
developers can use mod_pagespeed to improve the performance of their web pages
when serving content with the Apache HTTP Server.
WWW: https://github.com/pagespeed/mod_pagespeed

View file

@ -0,0 +1,9 @@
bin/%%AP_NAME%%_js_minify
%%APACHEMODDIR%%/%%AP_MODULE%%
%%DOCSDIR%%/mod_%%AP_NAME%%_example
%%DOCSDIR%%/mod_%%AP_NAME%%_test
@sample(www,www,0750) %%APACHEETCDIR%%/%%AP_NAME%%.conf.sample
@sample(www,www,0750) %%APACHEETCDIR%%/%%AP_NAME%%_libraries.conf.sample
@dir(www,www,) /var/cache/mod_%%AP_NAME%%
@dir(www,www,) /var/cache/mod_%%AP_NAME%%-alt
@dir(www,www,) /var/log/%%AP_NAME%%