# Jamfile for Apache Server 1.2.6
#
# $Id: //guest/eric_scouten/webkeeper/Jamfile#1 $
P4 ?= perforce ;
HDRS += $(P4) ;
LINKLIBS += $(P4)/libclient.a $(P4)/librpc.a $(P4)/libsupp.a ;
switch $(OS)
{
case AMDAHL : CCFLAGS += -Xa -eft -DUTS21 ;
LINKLIBS += -lsocket -lbsd -la ;
case AIX : CCFLAGS += -DAIX -U__STR__ ;
case AUX : CCFLAGS += -DAUX -D_POSIX_SOURCE ;
LINKLIBS += -lposix -lbsd -s ;
case BSDI : CCFLAGS += -m486 ;
case DOMAINOS : CCFLAGS += -DAPOLLO ;
case FREEBSD : LINKLIBS += -lcrypt ;
case HPUX : CCFLAGS += -DHPUX ;
case IRIX : CCFLAGS += -DIRIX ;
LINKLIBS += -lsun ;
case LINUX : CCFLAGS += -DLINUX ;
case NCR : CCFLAGS += -DSVR4 ;
LINKLIBS += -lsocket -lnsl -lc ;
case NETBSD : CCFLAGS += -m486 ;
LINKLIBS += -lcrypt ;
case NEXT : CCFLAGS += -DNEXT ;
case OSF : CCFLAGS += -DOSF1 ;
case PTX : CCFLAGS += -DSEQUENT ;
case QNX : CCFLAGS += -DQNX ;
LINKFLAGS += -N 0x20000 ;
case SCO : CCFLAGS += -DSCO5 ;
LINKLIBS +=-lsocket -lmalloc ;
case SCO3 : CCFLAGS += -Oacgiltz -DSCO ;
LINKLIBS += -lPW -lsocket -lmalloc -lcrypt_i ;
case SOLARIS : CCFLAGS += -DSOLARIS2 ;
LINKLIBS += -lsocket -lnsl ;
case SUNOS : CCFLAGS += -DSUNOS4 ; CC = gcc ; LINK = gcc ;
case ULTRIX : CCFLAGS += -DULTRIX ;
case UNIXWARE : CCFLAGS += -DSVR4 -DUW2 ;
LINKLIBS += -lsocket -lnsl -lcrypt ;
}
rule Module
{
switch $(<[2])
{
case *.c : LOADED_MODULES += $(<[1]) ; MODULESRC += $(<[2-]) ;
case * : LINKED_MODULES += $(<[1]) ; LINKLIBS += $(<[2-]) ;
}
}
Module core_module http_core.c ;
Module access_module mod_access.c ;
Module action_module mod_actions.c ;
Module alias_module mod_alias.c ;
Module asis_module mod_asis.c ;
Module auth_module mod_auth.c ;
Module browser_module mod_browser.c ;
Module cgi_module mod_cgi.c ;
Module config_log_module mod_log_config.c ;
Module dir_module mod_dir.c ;
Module env_module mod_env.c ;
# Module fastcgi_module mod_fastcgi.c ;
Module imap_module mod_imap.c ;
Module includes_module mod_include.c ;
Module mime_module mod_mime.c ;
Module negotiation_module mod_negotiation.c ;
Module userdir_module mod_userdir.c ;
Module webkeep_module mod_webkeep.c mod_webkeep2.cc ;
# Module agent_log_module mod_log_agent.c ;
# Module anon_auth_module mod_auth_anon.c ;
# Module cern_meta_module mod_cern_meta.c ;
# Module db_auth_module mod_auth_db.c ;
# Module dbm_auth_module mod_auth_dbm.c ;
# Module digest_module mod_digest.c ;
# Module dld_module mod_dld.c ;
# Module example_module modules/example/mod_example.c ;
# Module expires_module mod_expires.c ;
# Module headers_module mod_headers.c ;
# Module info_module mod_info.c ;
# Module msql_auth_module mod_auth_msql.c ;
# Module proxy_module modules/proxy/libproxy.a ;
Module referer_log_module mod_log_referer.c ;
# Module rewrite_module mod_rewrite.c ;
# Module status_module mod_status.c ;
# Module usertrack_module mod_usertrack.c ;
Main httpd :
alloc.c
buff.c
explain.c
http_bprintf.c
http_config.c
http_log.c
http_main.c
http_protocol.c
http_request.c
md5c.c
modules.c
rfc1413.c
util.c
util_date.c
util_md5.c
util_script.c
util_snprintf.c
$(MODULESRC)
$(EXTRAS)
;
rule MakeModules
{
Clean clean : $(<) ;
Depends $(<) : Jamfile ;
}
actions MakeModules
{
(
echo '#include "httpd.h"'
echo '#include "http_config.h"'
echo ''
for i in $(LOADED_MODULES) $(LINKED_MODULES)
do echo "extern module $i;"
done
echo ''
echo 'module *prelinked_modules[] = {'
for i in $(LOADED_MODULES) $(LINKED_MODULES)
do echo " &$i,"
done
echo ' NULL'
echo '};'
echo ''
echo 'module *preloaded_modules[] = {'
for i in $(LOADED_MODULES)
do echo " &$i,"
done
echo ' NULL'
echo '};'
) > $(<)
}
MakeModules modules.c ;