[-]
[+]
|
Changed |
ngx_pagespeed-1.8.31.4-beta.tar.gz/config
|
@@ -18,8 +18,8 @@
mod_pagespeed_dir="${MOD_PAGESPEED_DIR:-unset}"
if [ "$mod_pagespeed_dir" = "unset" ] ; then
- mod_pagespeed_dir="$ngx_addon_dir/psol/include"
- build_from_source=false
+ mod_pagespeed_dir="%{_builddir}/nginx-%{version}/ngx_pagespeed-%{psol_version}-beta/psol/include"
+ build_from_source=true
if [ ! -e "$mod_pagespeed_dir" ] ; then
echo "ngx_pagespeed: pagespeed optimization library not found:"
|
[-]
[+]
|
Added |
ngx_pagespeed-1.8.31.4-beta.tar.gz/config~
^
|
@@ -0,0 +1,207 @@
+# Copyright 2012 Google Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# Environment Variables (Optional):
+# MOD_PAGESPEED_DIR: absolute path to the mod_pagespeed/src directory
+# PSOL_BINARY: absolute path to pagespeed_automatic.a
+
+mod_pagespeed_dir="${MOD_PAGESPEED_DIR:-unset}"
+if [ "$mod_pagespeed_dir" = "unset" ] ; then
+ mod_pagespeed_dir="$ngx_addon_dir/psol/include"
+ build_from_source=true
+
+ if [ ! -e "$mod_pagespeed_dir" ] ; then
+ echo "ngx_pagespeed: pagespeed optimization library not found:"
+ echo ""
+ echo " You need to separately download the pagespeed library:"
+ echo ""
+ echo " $ cd /path/to/ngx_pagespeed"
+ echo " $ wget https://dl.google.com/dl/page-speed/psol/1.8.31.4.tar.gz"
+ echo " $ tar -xzvf 1.8.31.4.tar.gz # expands to psol/"
+ echo ""
+ echo " Or see the installation instructions:"
+ echo " https://github.com/pagespeed/ngx_pagespeed#how-to-build"
+ exit 1
+ fi
+
+else
+ build_from_source=true
+fi
+
+echo "mod_pagespeed_dir=$mod_pagespeed_dir"
+echo "build_from_source=$build_from_source"
+
+ngx_feature="psol"
+ngx_feature_name=""
+ngx_feature_run=no
+ngx_feature_incs="
+#include \"net/instaweb/htmlparse/public/html_parse.h\"
+#include \"net/instaweb/htmlparse/public/html_writer_filter.h\"
+#include \"net/instaweb/util/public/string.h\"
+#include \"net/instaweb/util/public/string_writer.h\"
+#include \"net/instaweb/util/public/null_message_handler.h\"
+"
+
+os_name='unknown_os'
+arch_name='unknown_arch'
+uname_os=`uname`
+uname_arch=`uname -m`
+
+if [ $uname_os = 'Linux' ]; then
+ os_name='linux'
+elif [ $uname_os = 'Darwin' ]; then
+ os_name='mac'
+else
+ echo "OS not supported: $uname_os"
+ exit 1
+fi
+
+if [ $uname_arch = 'x86_64' -o $uname_arch = 'amd64' ]; then
+ arch_name='x64'
+elif [ $uname_arch = 'x86_32' -o $uname_arch = 'i686' \
+ -o $uname_arch = 'i386' ]; then
+ arch_name='ia32'
+else
+ echo "Architecture not supported: $uname_arch"
+ exit 1
+fi
+
+if [ "$NGX_DEBUG" = "YES" ]; then
+ buildtype=Debug
+else
+ buildtype=Release
+fi
+
+# The compiler needs to know that __sync_add_and_fetch_4 is ok,
+# and this requires an instruction that didn't exist on i586 or i386.
+if [ "$uname_arch" = "i686" ]; then
+ FLAG_MARCH='-march=i686'
+fi
+
+CFLAGS="$CFLAGS $FLAG_MARCH"
+
+case "$NGX_GCC_VER" in
+ 4.8*)
+ # On GCC 4.8 and above, -Wall enables -Wunused-local-typedefs. This breaks
+ # on VerifySizesAreEqual in bit_cast in chromium/src/base/basictypes.h which
+ # has a typedef that is intentionally unused.
+ CFLAGS="$CFLAGS -Wno-unused-local-typedefs"
+
+ # On GCC 4.8 and above, we get the following compiler warning:
+ # chromium/src/base/memory/scoped_ptr.h:133:7: warning: declaration of ‘class scoped_ptr<C>’ [enabled by default]
+ # Based on discussion at http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54055,
+ # this is invalid code, but hasn't been fixed yet in chromium.
+ # Unfortunately, there also does not appear to be a flag for just disabling
+ # that warning, so we add Wno-error to override nginx's default -Werror
+ # option.
+ CFLAGS="$CFLAGS -Wno-error"
+ ;;
+esac
+
+if [ "$WNO_ERROR" = "YES" ]; then
+ CFLAGS="$CFLAGS -Wno-error"
+fi
+
+pagespeed_include="\
+ $mod_pagespeed_dir \
+ $mod_pagespeed_dir/third_party/chromium/src \
+ $mod_pagespeed_dir/third_party/google-sparsehash/src \
+ $mod_pagespeed_dir/third_party/google-sparsehash/gen/arch/$os_name/$arch_name/include \
+ $mod_pagespeed_dir/third_party/protobuf/src \
+ $mod_pagespeed_dir/third_party/re2/src \
+ $mod_pagespeed_dir/out/$buildtype/obj/gen \
+ $mod_pagespeed_dir/out/$buildtype/obj/gen/protoc_out/instaweb \
+ $mod_pagespeed_dir/third_party/apr/src/include \
+ $mod_pagespeed_dir/third_party/aprutil/src/include \
+ $mod_pagespeed_dir/third_party/apr/gen/arch/$os_name/$arch_name/include \
+ $mod_pagespeed_dir/third_party/aprutil/gen/arch/$os_name/$arch_name/include"
+ngx_feature_path="$pagespeed_include"
+
+if $build_from_source ; then
+ psol_library_binaries="\
+ $mod_pagespeed_dir/net/instaweb/automatic/pagespeed_automatic.a"
+else
+ psol_library_dir="$ngx_addon_dir/psol/lib/$buildtype/$os_name/$arch_name"
+ psol_library_binaries="$psol_library_dir/pagespeed_automatic.a"
+fi
+
+pagespeed_libs="-lstdc++ $psol_library_binaries -lrt -pthread -lm"
+ngx_feature_libs="$pagespeed_libs"
+ngx_feature_test="
+ GoogleString output_buffer;
+ net_instaweb::StringWriter write_to_string(&output_buffer);
+
+ net_instaweb::NullMessageHandler handler;
+ net_instaweb::HtmlParse html_parse(&handler);
+ net_instaweb::HtmlWriterFilter html_writer_filter(&html_parse);
+
+ html_writer_filter.set_writer(&write_to_string);
+ html_parse.AddFilter(&html_writer_filter);
+
+ html_parse.StartParse(\"http:example.com\");
+ html_parse.ParseText(
+ \"<html ><body ><h1 >Test</h1 ><p>Test Text</p></body></html>\n\");
+ html_parse.FinishParse();
+
+ printf(\"parsed as: %s\", output_buffer.c_str())"
+
+# Test whether we have pagespeed and can compile and link against it.
+. "$ngx_addon_dir/cpp_feature"
+
+if [ $ngx_found = yes ]; then
+ ps_src="$ngx_addon_dir/src"
+ ngx_addon_name=ngx_pagespeed
+ NGX_ADDON_DEPS="$NGX_ADDON_DEPS \
+ $ps_src/log_message_handler.h \
+ $ps_src/ngx_base_fetch.h \
+ $ps_src/ngx_caching_headers.h \
+ $ps_src/ngx_fetch.h \
+ $ps_src/ngx_list_iterator.h \
+ $ps_src/ngx_message_handler.h \
+ $ps_src/ngx_pagespeed.h \
+ $ps_src/ngx_rewrite_driver_factory.h \
+ $ps_src/ngx_rewrite_options.h \
+ $ps_src/ngx_server_context.h \
+ $ps_src/ngx_url_async_fetcher.h"
+ NGX_ADDON_SRCS="$NGX_ADDON_SRCS \
+ $ps_src/log_message_handler.cc \
+ $ps_src/ngx_base_fetch.cc \
+ $ps_src/ngx_caching_headers.cc \
+ $ps_src/ngx_fetch.cc \
+ $ps_src/ngx_list_iterator.cc \
+ $ps_src/ngx_message_handler.cc \
+ $ps_src/ngx_pagespeed.cc \
+ $ps_src/ngx_rewrite_driver_factory.cc \
+ $ps_src/ngx_rewrite_options.cc \
+ $ps_src/ngx_server_context.cc \
+ $ps_src/ngx_url_async_fetcher.cc"
+
+ # Make pagespeed run immediately before gzip.
+ HTTP_FILTER_MODULES=$(echo $HTTP_FILTER_MODULES |\
+ sed "s/$HTTP_GZIP_FILTER_MODULE/$HTTP_GZIP_FILTER_MODULE $ngx_addon_name/")
+ # Make the etag header filter run immediately after gzip.
+ HTTP_FILTER_MODULES=$(echo $HTTP_FILTER_MODULES |\
+ sed "s/$HTTP_GZIP_FILTER_MODULE/ngx_pagespeed_etag_filter $HTTP_GZIP_FILTER_MODULE/")
+ CORE_LIBS="$CORE_LIBS $pagespeed_libs"
+ CORE_INCS="$CORE_INCS $pagespeed_include"
+ echo "List of modules (in reverse order of applicability): "$HTTP_FILTER_MODULES
+else
+ cat << END
+$0: error: module ngx_pagespeed requires the pagespeed optimization library.
+Look in obj/autoconf.err for more details.
+END
+ exit 1
+fi
+
+have=NGX_PAGESPEED . auto/have
|