mirror of
https://github.com/apache/httpd.git
synced 2026-01-06 09:01:14 +03:00
files with no editing whatsoever.) Also sets up the shebang for printenv.pl, and drops in the test-cgi.bat script. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89742 13f79535-47bb-0310-9956-ffa450edef68
261 lines
11 KiB
Makefile
261 lines
11 KiB
Makefile
# Makefile for Windows NT and Windows 95/98/2000
|
|
|
|
# Targets are:
|
|
# _apacher - build Apache in Release mode
|
|
# _apached - build Apache in Debug mode
|
|
# installr - build and install a Release build
|
|
# installd - build and install a Debug build
|
|
# clean - remove (most) generated files
|
|
# _cleanr - remove (most) files generated by a Release build
|
|
# _cleand - remove (most) files generated by a Debug build
|
|
#
|
|
# The default installation directory is \Apache2.0. This can be changed
|
|
# with the INSTDIR macro, for example:
|
|
#
|
|
# nmake /f Makefile.win INSTDIR="d:\Program Files\Apache" installr
|
|
#
|
|
# Note: this does *NOT* change the compiled in default "server root"
|
|
# Also be aware that certain awk's will not accept backslahed names,
|
|
# so the server root should be given in forward slashes (quoted),
|
|
# preferably with the drive designation!
|
|
|
|
!IF !EXIST("srclib\apr")
|
|
!MESSAGE Please check out or download and unpack the Apache Portability Runtime
|
|
!MESSAGE sources (apr and apr-util) into your $(INSTDIR)\srclib directory.
|
|
!MESSAGE Apache cannot build without these libraries!
|
|
!MESSAGE
|
|
!ERROR Need $(INSTDIR)\srclib\apr
|
|
!ENDIF
|
|
|
|
!IF !EXIST("srclib\apr-util")
|
|
!MESSAGE Please check out or download and unpack the Apache Portability Runtime
|
|
!MESSAGE sources (apr and apr-util) into your $(INSTDIR)\srclib directory.
|
|
!MESSAGE Apache cannot build without these libraries!
|
|
!MESSAGE
|
|
!ERROR Need $(INSTDIR)\srclib\apr-util
|
|
!ENDIF
|
|
|
|
!IF "$(INSTDIR)" == ""
|
|
INSTDIR=\Apache2
|
|
!MESSAGE Using default install directory $(INSTDIR)
|
|
!ENDIF
|
|
|
|
!IFNDEF MAKEOPT
|
|
# Only default the behavior if MAKEOPT= is omitted
|
|
!IF "$(MAKE)" == "NMAKE"
|
|
# Microsoft NMake options
|
|
MAKEOPT=-nologo
|
|
!ELSEIF "($MAKE)" == "make"
|
|
# Borland make options? Not really supported (yet)
|
|
MAKEOPT=-s -N
|
|
!ENDIF
|
|
!ENDIF
|
|
|
|
default: _apacher
|
|
|
|
_apacher:
|
|
$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release _build
|
|
|
|
_apached:
|
|
$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug _build
|
|
|
|
installr:
|
|
$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release _build _install
|
|
|
|
installd:
|
|
$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug _build _install
|
|
|
|
_cleanr:
|
|
$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET=CLEAN _build
|
|
|
|
_cleand:
|
|
$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET=CLEAN _build
|
|
|
|
clean:
|
|
$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=R LONG=Release CTARGET=CLEAN _build
|
|
$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=D LONG=Debug CTARGET=CLEAN _build
|
|
|
|
_build:
|
|
echo Building Win32 $(LONG) targets ($(SHORT) suffixes)
|
|
cd srclib\apr
|
|
$(MAKE) $(MAKEOPT) -f apr.mak CFG="apr - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
$(MAKE) $(MAKEOPT) -f libapr.mak CFG="libapr - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
cd ..\..
|
|
cd srclib\apr-util\uri
|
|
$(MAKE) $(MAKEOPT) -f gen_uri_delims.mak CFG="gen_uri_delims - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
cd ..\..\..
|
|
cd srclib\apr-util\xml\expat\lib
|
|
$(MAKE) $(MAKEOPT) -f xml.mak CFG="xml - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
cd ..\..\..
|
|
$(MAKE) $(MAKEOPT) -f aprutil.mak CFG="aprutil - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
$(MAKE) $(MAKEOPT) -f libaprutil.mak CFG="libaprutil - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
cd ..\..
|
|
cd srclib\pcre
|
|
$(MAKE) $(MAKEOPT) -f dftables.mak CFG="dftables - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
$(MAKE) $(MAKEOPT) -f pcre.mak CFG="pcre - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
$(MAKE) $(MAKEOPT) -f pcreposix.mak CFG="pcreposix - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
cd ..\..
|
|
cd server
|
|
$(MAKE) $(MAKEOPT) -f gen_test_char.mak CFG="gen_test_char - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
cd ..
|
|
-del $(LONG)\buildmark.obj
|
|
$(MAKE) $(MAKEOPT) -f libhttpd.mak CFG="libhttpd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
$(MAKE) $(MAKEOPT) -f Apache.mak CFG="Apache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
cd modules\aaa
|
|
$(MAKE) $(MAKEOPT) -f mod_auth_anon.mak CFG="mod_auth_anon - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
$(MAKE) $(MAKEOPT) -f mod_auth_dbm.mak CFG="mod_auth_dbm - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
$(MAKE) $(MAKEOPT) -f mod_auth_digest.mak CFG="mod_auth_digest - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
cd ..\..
|
|
cd modules\cache
|
|
$(MAKE) $(MAKEOPT) -f mod_file_cache.mak CFG="mod_file_cache - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
cd ..\..
|
|
cd modules\dav\main
|
|
$(MAKE) $(MAKEOPT) -f mod_dav.mak CFG="mod_dav - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
cd ..\..\..
|
|
cd modules\dav\fs
|
|
$(MAKE) $(MAKEOPT) -f mod_dav_fs.mak CFG="mod_dav_fs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
cd ..\..\..
|
|
cd modules\generators
|
|
$(MAKE) $(MAKEOPT) -f mod_info.mak CFG"=mod_info - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
$(MAKE) $(MAKEOPT) -f mod_status.mak CFG="mod_status - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
cd ..\..
|
|
cd modules\mappers
|
|
$(MAKE) $(MAKEOPT) -f mod_rewrite.mak CFG="mod_rewrite - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
$(MAKE) $(MAKEOPT) -f mod_speling.mak CFG="mod_speling - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
cd ..\..
|
|
cd modules\metadata
|
|
$(MAKE) $(MAKEOPT) -f mod_cern_meta.mak CFG="mod_cern_meta - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
$(MAKE) $(MAKEOPT) -f mod_expires.mak CFG="mod_expires - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
$(MAKE) $(MAKEOPT) -f mod_headers.mak CFG="mod_headers - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
$(MAKE) $(MAKEOPT) -f mod_usertrack.mak CFG="mod_usertrack - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
cd ..\..
|
|
# cd modules\proxy
|
|
# $(MAKE) $(MAKEOPT) -f mod_proxy.mak CFG="mod_proxy - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
# cd ..\..
|
|
cd support
|
|
$(MAKE) $(MAKEOPT) -f ab.mak CFG="ab - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
$(MAKE) $(MAKEOPT) -f htpasswd.mak CFG="htpasswd - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
$(MAKE) $(MAKEOPT) -f htdigest.mak CFG="htdigest - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
$(MAKE) $(MAKEOPT) -f logresolve.mak CFG="logresolve - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
$(MAKE) $(MAKEOPT) -f rotatelogs.mak CFG="rotatelogs - Win32 $(LONG)" RECURSE=0 $(CTARGET)
|
|
cd ..
|
|
|
|
_install:
|
|
-mkdir "$(INSTDIR)"
|
|
-mkdir "$(INSTDIR)\bin"
|
|
-mkdir "$(INSTDIR)\cgi-bin"
|
|
-mkdir "$(INSTDIR)\conf"
|
|
-mkdir "$(INSTDIR)\htdocs"
|
|
-mkdir "$(INSTDIR)\htdocs\manual"
|
|
-mkdir "$(INSTDIR)\icons"
|
|
-mkdir "$(INSTDIR)\include"
|
|
-mkdir "$(INSTDIR)\include\xml"
|
|
-mkdir "$(INSTDIR)\include\pcre"
|
|
-mkdir "$(INSTDIR)\lib"
|
|
-mkdir "$(INSTDIR)\libexec"
|
|
-mkdir "$(INSTDIR)\logs"
|
|
-mkdir "$(INSTDIR)\modules"
|
|
# -mkdir "$(INSTDIR)\proxy"
|
|
copy $(LONG)\Apache.exe "$(INSTDIR)\bin"
|
|
copy $(LONG)\libhttpd.dll "$(INSTDIR)\bin"
|
|
copy srclib\apr\$(LONG)\libapr.dll "$(INSTDIR)\bin"
|
|
copy srclib\apr-util\$(LONG)\libaprutil.dll "$(INSTDIR)\bin"
|
|
copy modules\aaa\$(LONG)\mod_auth_anon.so "$(INSTDIR)\modules"
|
|
copy modules\aaa\$(LONG)\mod_auth_dbm.so "$(INSTDIR)\modules"
|
|
copy modules\aaa\$(LONG)\mod_auth_digest.so "$(INSTDIR)\modules"
|
|
copy modules\cache\$(LONG)\mod_file_cache.so "$(INSTDIR)\modules"
|
|
copy modules\dav\fs\$(LONG)\mod_dav_fs.so "$(INSTDIR)\modules"
|
|
copy modules\dav\main\$(LONG)\mod_dav.so "$(INSTDIR)\modules"
|
|
copy modules\generators\$(LONG)\mod_info.so "$(INSTDIR)\modules"
|
|
copy modules\generators\$(LONG)\mod_status.so "$(INSTDIR)\modules"
|
|
copy modules\mappers\$(LONG)\mod_rewrite.so "$(INSTDIR)\modules"
|
|
copy modules\mappers\$(LONG)\mod_speling.so "$(INSTDIR)\modules"
|
|
copy modules\metadata\$(LONG)\mod_cern_meta.so "$(INSTDIR)\modules"
|
|
copy modules\metadata\$(LONG)\mod_expires.so "$(INSTDIR)\modules"
|
|
copy modules\metadata\$(LONG)\mod_headers.so "$(INSTDIR)\modules"
|
|
copy modules\metadata\$(LONG)\mod_usertrack.so "$(INSTDIR)\modules"
|
|
# copy modules\proxy\$(LONG)\mod_proxy.so "$(INSTDIR)\modules"
|
|
copy support\$(LONG)\ab.exe "$(INSTDIR)\bin"
|
|
copy support\$(LONG)\htpasswd.exe "$(INSTDIR)\bin"
|
|
copy support\$(LONG)\htdigest.exe "$(INSTDIR)\bin"
|
|
copy support\$(LONG)\logresolve.exe "$(INSTDIR)\bin"
|
|
copy support\$(LONG)\rotatelogs.exe "$(INSTDIR)\bin"
|
|
copy docs\cgi-examples\printenv "$(INSTDIR)\cgi-bin\printenv.pl"
|
|
-awk -f <<script.awk "docs\cgi-examples\printenv" "$(INSTDIR)\cgi-bin\printenv.pl"
|
|
BEGIN {
|
|
srcfl = ARGV[1];
|
|
dstfl = ARGV[2];
|
|
if ( "perl -e \"print $$^X;\"" | getline perlroot ) {
|
|
gsub( /\\/, "/", perlroot );
|
|
print "#!" perlroot > dstfl;
|
|
getline < srcfl;
|
|
}
|
|
while ( ( getline < srcfl ) > 0 ) {
|
|
print $$0 > dstfl;
|
|
}
|
|
}
|
|
<<
|
|
copy docs\cgi-examples\test-cgi.bat "$(INSTDIR)\cgi-bin"
|
|
xcopy docs\docroot "$(INSTDIR)\htdocs" /d < <<
|
|
A
|
|
<<
|
|
xcopy docs\manual "$(INSTDIR)\htdocs\manual" /s /d < <<
|
|
A
|
|
<<
|
|
xcopy include\*.h "$(INSTDIR)\include" /d < <<
|
|
A
|
|
<<
|
|
xcopy srclib\apr\include\*.h "$(INSTDIR)\include" /d < <<
|
|
A
|
|
<<
|
|
xcopy srclib\apr-util\include\*.h "$(INSTDIR)\include" /d < <<
|
|
A
|
|
<<
|
|
xcopy srclib\pcre\*.h "$(INSTDIR)\include\pcre" /d < <<
|
|
A
|
|
<<
|
|
xcopy docs\icons "$(INSTDIR)\icons" /s /d < <<
|
|
A
|
|
<<
|
|
copy srclib\apr\Lib$(SHORT)\apr.lib "$(INSTDIR)\lib"
|
|
copy srclib\apr-util\Lib$(SHORT)\aprutil.lib "$(INSTDIR)\lib"
|
|
copy srclib\pcre\Lib$(SHORT)\pcre.lib "$(INSTDIR)\lib"
|
|
copy srclib\pcre\Lib$(SHORT)\pcreposix.lib "$(INSTDIR)\lib"
|
|
copy srclib\apr\$(LONG)\libapr.lib "$(INSTDIR)\libexec"
|
|
copy srclib\apr\$(LONG)\libapr.exp "$(INSTDIR)\libexec"
|
|
copy srclib\apr-util\$(LONG)\libaprutil.lib "$(INSTDIR)\libexec"
|
|
copy srclib\apr-util\$(LONG)\libaprutil.exp "$(INSTDIR)\libexec"
|
|
copy $(LONG)\libhttpd.exp "$(INSTDIR)\libexec"
|
|
copy $(LONG)\libhttpd.lib "$(INSTDIR)\libexec"
|
|
copy modules\dav\main\$(LONG)\mod_dav.exp "$(INSTDIR)\libexec"
|
|
copy modules\dav\main\$(LONG)\mod_dav.lib "$(INSTDIR)\libexec"
|
|
copy docs\conf\magic "$(INSTDIR)\conf\magic.default"
|
|
if not exist "$(INSTDIR)\conf\magic" \
|
|
copy "$(INSTDIR)\conf\magic.default" "$(INSTDIR)\conf\magic"
|
|
copy docs\conf\mime.types "$(INSTDIR)\conf\mime.types.default"
|
|
if not exist "$(INSTDIR)\conf\mime.types" \
|
|
copy "$(INSTDIR)\conf\mime.types.default" "$(INSTDIR)\conf\mime.types"
|
|
copy docs\conf\httpd-win.conf "$(INSTDIR)\conf\httpd.default.conf"
|
|
-awk -f <<script.awk "docs\conf\httpd-win.conf" "$(INSTDIR)\conf\httpd.default.conf" "$(INSTDIR)"
|
|
BEGIN {
|
|
srcfl = ARGV[1];
|
|
dstfl = ARGV[2];
|
|
serverroot = ARGV[3];
|
|
gsub( /\\/, "/", serverroot );
|
|
while ( ( getline < srcfl ) > 0 ) {
|
|
gsub( /@@ServerRoot@@/, serverroot );
|
|
print $$0 > dstfl;
|
|
}
|
|
}
|
|
<<
|
|
if not exist "$(INSTDIR)\conf\httpd.conf" \
|
|
copy "$(INSTDIR)\conf\httpd.default.conf" "$(INSTDIR)\conf\httpd.conf"
|
|
awk -f <<script.awk "support\dbmmanage.in" >"$(INSTDIR)\bin\dbmmanage.pl"
|
|
{ if ( $$0 ~ /^BEGIN { @AnyDBM_File::/ ) {
|
|
sub( /ISA = qw\(.*\)/, "ISA = qw(SDBM_File)" );
|
|
}
|
|
if ( $$0 !~ /^#!@perlbin@/ )
|
|
print $$0;
|
|
}
|
|
<<
|