📄 configure
字号:
echo "OSDIR=\$(INCDIR)" >>$file echo "CC=$APXS_CC" >>$file echo "CFLAGS=-I\$(INCDIR) $APXS_CFLAGS" >>$file echo "CFLAGS_SHLIB=$APXS_CFLAGS_SHLIB" >>$file echo "LD_SHLIB=$APXS_LD_SHLIB" >>$file echo "LDFLAGS=$APXS_LDFLAGS" >>$file echo "LDFLAGS_SHLIB=$APXS_LDFLAGS_SHLIB" >>$file echo "LIBS_SHLIB=$APXS_LIBS_SHLIB" >>$file # define the package locations echo "SSL_BASE=$ssl" >>$file if [ ".$mm" != . ]; then echo "EAPI_MM=$mm" >>$file fi # provide more environment for libssl.module CC="$APXS_CC" # let libssl.module create more modfile=pkg.sslmod/libssl.so APXS_MODE=YES my_testcompile="./etc/testcompile.sh" my_cutrule="./etc/cutrule.sh" sed '1,/ConfigStart/d;/ConfigEnd/,$d' <pkg.sslmod/libssl.module >configure.stub.sh . ./configure.stub.sh # generate final module Makefile echo "$prefix Creating Makefile in pkg.sslmod" | eval $disp_std cat Makefile.config pkg.sslmod/Makefile.tmpl >pkg.sslmod/Makefile # generate top-level Makefile stub echo "" >Makefile echo "APXS=$apxs" >>Makefile echo "" >>Makefile echo "all:" >>Makefile echo " -@cd pkg.sslmod; \$(MAKE)" >>Makefile echo "install: all" >>Makefile echo " -@cd pkg.sslmod; \$(APXS) -i -n ssl_module libssl.so" >>Makefile echo "clean:" >>Makefile echo " -@cd pkg.sslmod; \$(MAKE) clean" >>Makefile echo "distclean:" >>Makefile echo " -@cd pkg.sslmod; \$(MAKE) distclean" >>Makefile echo " -@rm -f Makefile" >>Makefile # cleanup rm -f configure.stub.sh 2>/dev/null rm -f Makefile.config 2>/dev/null exit 0fi## check for SSL certificate and key files#if [ ".$crt" != . ]; then if [ ! -f "$crt" ]; then echo "$0:${T_MD}Error${T_ME}: Cannot find SSL X.509 certificate file $crt" 1>&2 exit 1 fifiif [ ".$key" != . ]; then if [ ! -f "$key" ]; then echo "$0:${T_MD}Error${T_ME}: Cannot find SSL RSA private key file $key" 1>&2 exit 1 fifi## make sure a `patch' program is available#if [ ".$patch" != . ]; then if [ -f $patch ]; then echo "$prefix Auxiliary patch tool: $patch (EXPECT FAILURES)" | eval $disp_std else echo "$0:${T_MD}Error${T_ME}: Provided 'patch' tool not found: $patch" 1>&2 exit 1 fielse if [ ! -f etc/patch/patch ]; then (cd etc/ && tar xvf patch.tar && cd patch && ./configure; make) 2>&1 |\ tee config.log |\ if [ .$quiet = .no ]; then etc/prop.sh "$prefix Auxiliary patch tool: ./etc/patch/patch (local)" fi if [ ! -f etc/patch/patch ]; then echo "$0:${T_MD}Error${T_ME}: Building of 'patch' tool failed:" 1>&2 echo "-------------------------------------------------" 1>&2 tail config.log echo "-------------------------------------------------" 1>&2 echo "Hint: Either try to build 'patch' under etc/patch/" 1>&2 echo "Hint: manually and re-run this 'configure' script" 1>&2 echo "Hint: or provide us the path to your vendor 'patch'" 1>&2 echo "Hint: program via the --with-patch=FILE option (but" 1>&2 echo "Hint: expect perhaps failures when applying patches!)" 1>&2 exit 1 else rm -f config.log patch='etc/patch/patch' fi else echo "$prefix Auxiliary patch tool: ./etc/patch/patch (local)" | eval $disp_std patch='etc/patch/patch' fifi## Now apply the packages to the Apache source tree...#echo "$prefix Applying packages to Apache source tree:" | eval $disp_std## Applying: Extended API#echo "$prefixo Extended API (EAPI)" | eval $disp_std./etc/apply.sh 'ap_hook' $apache/src/support/httpd.exp \ $patch pkg.eapi/eapi.patch $apache "$prefixe" "$disp_ver"echo "$prefixe creating: [FILE] src/README.EAPI" | eval $disp_vercp -p pkg.eapi/README.EAPI $apache/src/README.EAPIecho "$prefixe creating: [FILE] src/ap/ap_hook.c" | eval $disp_vercp -p pkg.eapi/ap_hook.c $apache/src/ap/ap_hook.cecho "$prefixe creating: [FILE] src/ap/ap_ctx.c" | eval $disp_vercp -p pkg.eapi/ap_ctx.c $apache/src/ap/ap_ctx.cecho "$prefixe creating: [FILE] src/ap/ap_mm.c" | eval $disp_vercp -p pkg.eapi/ap_mm.c $apache/src/ap/ap_mm.cecho "$prefixe creating: [FILE] src/include/ap_hook.h" | eval $disp_vercp -p pkg.eapi/ap_hook.h $apache/src/include/ap_hook.hecho "$prefixe creating: [FILE] src/include/ap_ctx.h" | eval $disp_vercp -p pkg.eapi/ap_ctx.h $apache/src/include/ap_ctx.hecho "$prefixe creating: [FILE] src/include/ap_mm.h" | eval $disp_vercp -p pkg.eapi/ap_mm.h $apache/src/include/ap_mm.hif [ ".$eapionly" = .1 ]; then echo "Done: source extension and patches successfully applied." | eval $disp_std echo "" | eval $disp_std echo "Now proceed with the following commands (Bourne-Shell syntax):" | eval $disp_std echo " \$ cd $apache" | eval $disp_std echo " \$ ./configure ... --enable-module=so --enable-rule=EAPI" | eval $disp_std echo " \$ make" | eval $disp_std echo " \$ make install" | eval $disp_std exit 0fi## Applying: Distribution Documents#echo "$prefixo Distribution Documents" | eval $disp_stdfor file in README LICENSE INSTALL; do echo "$prefixe creating: [FILE] $file.SSL" | eval $disp_ver cp -p $file $apache/$file.SSLdoneecho "$prefixe creating: [FILE] src/CHANGES.SSL" | eval $disp_vercp -p CHANGES $apache/src/CHANGES.SSL## Applying: SSL Module Source#echo "$prefixo SSL Module Source" | eval $disp_std./etc/apply.sh 'SSL_BASE' $apache/src/Configuration.tmpl \ $patch pkg.sslmod/sslmod.patch $apache "$prefixe" "$disp_ver"if [ ! -d "$apache/src/modules/ssl" ]; then echo "$prefixe creating: [DIR] src/modules/ssl" | eval $disp_ver mkdir $apache/src/modules/sslfifor file in `cd pkg.sslmod; echo *`; do [ ! -f pkg.sslmod/$file ] && continue [ ".$file" = ".sslmod.patch" ] && continue echo "$prefixe creating: [FILE] src/modules/ssl/$file" | eval $disp_ver cp -p pkg.sslmod/$file $apache/src/modules/ssl/done# make sure the timestamps are not corruptedtouch $apache/src/modules/ssl/ssl_expr_scan.ltouch $apache/src/modules/ssl/ssl_expr_parse.ysleep 1touch $apache/src/modules/ssl/ssl_expr_scan.ctouch $apache/src/modules/ssl/ssl_expr_parse.ctouch $apache/src/modules/ssl/ssl_expr_parse.h## Applying: SSL Support#echo "$prefixo SSL Support" | eval $disp_std./etc/apply.sh 'ALGO=RSA' $apache/Makefile.tmpl \ $patch pkg.sslsup/sslsup.patch $apache "$prefixe" "$disp_ver"echo "$prefixe creating: [FILE] src/support/mkcert.sh" | eval $disp_vercp -p pkg.sslsup/mkcert.sh $apache/src/support/mkcert.sh## Applying: SSL Configuration Additions#echo "$prefixo SSL Configuration Additions" | eval $disp_std./etc/apply.sh 'SSL' $apache/conf/httpd.conf-dist \ $patch pkg.sslcfg/sslcfg.patch $apache "$prefixe" "$disp_ver"if [ ! -d "$apache/conf/ssl.crt" ]; then echo "$prefixe creating: [DIR] conf/ssl.crt" | eval $disp_ver mkdir $apache/conf/ssl.crtfiecho "$prefixe creating: [FILE] conf/ssl.crt/README.CRT" | eval $disp_vercp -p pkg.sslcfg/README.CRT $apache/conf/ssl.crt/README.CRTecho "$prefixe creating: [FILE] conf/ssl.crt/Makefile" | eval $disp_vercp -p pkg.sslcfg/Makefile.crt $apache/conf/ssl.crt/Makefileecho "$prefixe creating: [FILE] conf/ssl.crt/ca-bundle.crt" | eval $disp_vercp -p pkg.sslcfg/ca-bundle.crt $apache/conf/ssl.crt/ca-bundle.crtecho "$prefixe creating: [FILE] conf/ssl.crt/snakeoil-ca-rsa.crt" | eval $disp_vercp -p pkg.sslcfg/snakeoil-ca-rsa.crt $apache/conf/ssl.crt/snakeoil-ca-rsa.crtecho "$prefixe creating: [FILE] conf/ssl.crt/snakeoil-ca-dsa.crt" | eval $disp_vercp -p pkg.sslcfg/snakeoil-ca-dsa.crt $apache/conf/ssl.crt/snakeoil-ca-dsa.crtecho "$prefixe creating: [FILE] conf/ssl.crt/snakeoil-rsa.crt" | eval $disp_vercp -p pkg.sslcfg/snakeoil-rsa.crt $apache/conf/ssl.crt/snakeoil-rsa.crtecho "$prefixe creating: [FILE] conf/ssl.crt/snakeoil-dsa.crt" | eval $disp_vercp -p pkg.sslcfg/snakeoil-dsa.crt $apache/conf/ssl.crt/snakeoil-dsa.crtecho "$prefixe creating: [FILE] conf/ssl.crt/server.crt" | eval $disp_verif [ ".$crt" != . ]; then if [ ".$key" != . ]; then cp -p $crt $apache/conf/ssl.crt/server.crt else sed -e '/-----BEGIN CERTIFICATE/,/-----END CERTIFICATE/p' -e '/.*/d' \ <$crt >$apache/conf/ssl.crt/server.crt fielse cp -p pkg.sslcfg/server.crt $apache/conf/ssl.crt/server.crtfiif [ ! -d "$apache/conf/ssl.csr" ]; then echo "$prefixe creating: [DIR] conf/ssl.csr" | eval $disp_ver mkdir $apache/conf/ssl.csrfiecho "$prefixe creating: [FILE] conf/ssl.csr/README.CSR" | eval $disp_vercp -p pkg.sslcfg/README.CSR $apache/conf/ssl.csr/README.CSRecho "$prefixe creating: [FILE] conf/ssl.csr/server.csr" | eval $disp_vercp -p pkg.sslcfg/server.csr $apache/conf/ssl.csr/server.csrif [ ! -d "$apache/conf/ssl.prm" ]; then echo "$prefixe creating: [DIR] conf/ssl.prm" | eval $disp_ver mkdir $apache/conf/ssl.prmfiecho "$prefixe creating: [FILE] conf/ssl.prm/README.PRM" | eval $disp_vercp -p pkg.sslcfg/README.PRM $apache/conf/ssl.prm/README.PRMecho "$prefixe creating: [FILE] conf/ssl.csr/snakeoil-ca-dsa.prm" | eval $disp_vercp -p pkg.sslcfg/snakeoil-ca-dsa.prm $apache/conf/ssl.prm/snakeoil-ca-dsa.prmecho "$prefixe creating: [FILE] conf/ssl.csr/snakeoil-dsa.prm" | eval $disp_vercp -p pkg.sslcfg/snakeoil-dsa.prm $apache/conf/ssl.prm/snakeoil-dsa.prmif [ ! -d "$apache/conf/ssl.crl" ]; then echo "$prefixe creating: [DIR] conf/ssl.crl" | eval $disp_ver mkdir $apache/conf/ssl.crlfiecho "$prefixe creating: [FILE] conf/ssl.crl/Makefile" | eval $disp_vercp -p pkg.sslcfg/Makefile.crl $apache/conf/ssl.crl/Makefileecho "$prefixe creating: [FILE] conf/ssl.crl/README.CRL" | eval $disp_vercp -p pkg.sslcfg/README.CRL $apache/conf/ssl.crl/README.CRLif [ ! -d "$apache/conf/ssl.key" ]; then echo "$prefixe creating: [DIR] conf/ssl.key" | eval $disp_ver mkdir $apache/conf/ssl.keyfiecho "$prefixe creating: [FILE] conf/ssl.key/README.KEY" | eval $disp_vercp -p pkg.sslcfg/README.KEY $apache/conf/ssl.key/README.KEYecho "$prefixe creating: [FILE] conf/ssl.key/snakeoil-ca-rsa.key" | eval $disp_vercp -p pkg.sslcfg/snakeoil-ca-rsa.key $apache/conf/ssl.key/snakeoil-ca-rsa.keyecho "$prefixe creating: [FILE] conf/ssl.key/snakeoil-ca-dsa.key" | eval $disp_vercp -p pkg.sslcfg/snakeoil-ca-dsa.key $apache/conf/ssl.key/snakeoil-ca-dsa.keyecho "$prefixe creating: [FILE] conf/ssl.key/snakeoil-rsa.key" | eval $disp_vercp -p pkg.sslcfg/snakeoil-rsa.key $apache/conf/ssl.key/snakeoil-rsa.keyecho "$prefixe creating: [FILE] conf/ssl.key/snakeoil-dsa.key" | eval $disp_vercp -p pkg.sslcfg/snakeoil-dsa.key $apache/conf/ssl.key/snakeoil-dsa.keyecho "$prefixe creating: [FILE] conf/ssl.key/server.key" | eval $disp_verif [ ".$crt" != . ]; then if [ ".$key" != . ]; then cp -p $key $apache/conf/ssl.key/server.key else sed -e '/-----BEGIN RSA PRIVATE KEY/,/-----END RSA PRIVATE KEY/p' -e '/.*/d' \ <$crt >$apache/conf/ssl.key/server.key fielse cp -p pkg.sslcfg/server.key $apache/conf/ssl.key/server.keyfi## Applying: SSL Module Documentation#echo "$prefixo SSL Module Documentation" | eval $disp_std./etc/apply.sh 'mod_ssl' $apache/htdocs/manual/mod/directives.html.en \ $patch pkg.ssldoc/ssldoc.patch $apache "$prefixe" "$disp_ver"if [ ! -d "$apache/htdocs/manual/mod/mod_ssl" ]; then echo "$prefixe creating: [DIR] htdocs/manual/mod/mod_ssl" | eval $disp_ver mkdir $apache/htdocs/manual/mod/mod_sslfifor file in `cd pkg.ssldoc; echo index.html ssl_*`; do [ ! -f pkg.ssldoc/$file ] && continue echo "$prefixe creating: [FILE] htdocs/manual/mod/mod_ssl/$file" | eval $disp_ver cp -p pkg.ssldoc/$file $apache/htdocs/manual/mod/mod_ssl/doneecho "$prefixe creating: [FILE] htdocs/manual/images/apache_pb.gif" | eval $disp_vercp -p pkg.ssldoc/apache_pb.gif $apache/htdocs/manual/images/apache_pb.gifecho "$prefixe creating: [FILE] htdocs/manual/images/feather.jpg" | eval $disp_vercp -p pkg.ssldoc/feather.jpg $apache/htdocs/manual/images/feather.jpgecho "$prefixe creating: [FILE] htdocs/manual/images/mod_ssl_sb.gif" | eval $disp_vercp -p pkg.ssldoc/mod_ssl_sb.gif $apache/htdocs/manual/images/mod_ssl_sb.gifecho "$prefixe creating: [FILE] htdocs/manual/images/openssl_ics.gif" | eval $disp_vercp -p pkg.ssldoc/openssl_ics.gif $apache/htdocs/manual/images/openssl_ics.gif## Applying: Addons#echo "$prefixo Addons" | eval $disp_std./etc/apply.sh 'mod_define' $apache/src/Configuration.tmpl \ $patch pkg.addon/addon.patch $apache "$prefixe" "$disp_ver"echo "$prefixe creating: [FILE] src/modules/extra/mod_define.c" | eval $disp_vercp -p pkg.addon/mod_define.c $apache/src/modules/extra/mod_define.cecho "$prefixe creating: [FILE] htdocs/manual/mod/mod_define.html" | eval $disp_vercp -p pkg.addon/mod_define.html $apache/htdocs/manual/mod/mod_define.html## Final cleanup and message#find $apache -type f -name "*.orig" -print | xargs rm -f echo "Done: source extension and patches successfully applied." | eval $disp_std## Optionally configure Apache#if [ ".$ssl" != . ]; then echo "" | eval $disp_std cd $apache SSL_BASE=$ssl EAPI_MM=$mm ./configure $apaci --enable-module=ssl rc=$? if [ $rc -ne 0 ]; then echo "$0:${T_MD}Error${T_ME}: APACI failed" 1>&2 exit 1 fi if [ ! -f src/main/Makefile ]; then echo "$0:${T_MD}Error${T_ME}: APACI failed" 1>&2 exit 1 fi if [ .$expert != .yes ]; then echo "" | eval $disp_std echo "Now proceed with the following commands:" | eval $disp_std echo " \$ cd $apache" | eval $disp_std echo " \$ make" | eval $disp_std if [ ".$crt" = . ]; then echo " \$ make certificate" | eval $disp_std fi echo " \$ make install" | eval $disp_std fielse if [ .$expert != .yes ]; then echo "" | eval $disp_std echo "Now proceed with the following commands (Bourne-Shell syntax):" | eval $disp_std echo " \$ cd $apache" | eval $disp_std echo " \$ SSL_BASE=/path/to/openssl ./configure ... --enable-module=ssl" | eval $disp_std echo " \$ make" | eval $disp_std if [ ".$crt" = . ]; then echo " \$ make certificate" | eval $disp_std fi echo " \$ make install" | eval $disp_std fifi
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -