You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by bj...@apache.org on 2001/04/02 17:20:46 UTC
cvs commit: httpd-2.0/server Makefile.in
bjh 01/04/02 08:20:46
Modified: . Makefile.in acinclude.m4 configure.in
build rules.mk
os/os2 config.m4
server Makefile.in
Added: os/os2 core.mk core_header.def
Log:
Switch to using aplibtool for building under OS/2 & add support for building
loadable modules as OS/2 DLLs.
Revision Changes Path
1.62 +3 -1 httpd-2.0/Makefile.in
Index: Makefile.in
===================================================================
RCS file: /home/cvs/httpd-2.0/Makefile.in,v
retrieving revision 1.61
retrieving revision 1.62
diff -u -r1.61 -r1.62
--- Makefile.in 2001/03/11 14:54:12 1.61
+++ Makefile.in 2001/04/02 15:20:45 1.62
@@ -1,5 +1,5 @@
-SUBDIRS = srclib modules os server support
+SUBDIRS = srclib os server modules support
PROGRAM_NAME = $(progname)
PROGRAM_SOURCES = modules.c
@@ -126,3 +126,5 @@
suexec:
cd support && make suexec
+
+include $(top_srcdir)/os/os2/core.mk
1.71 +4 -0 httpd-2.0/acinclude.m4
Index: acinclude.m4
===================================================================
RCS file: /home/cvs/httpd-2.0/acinclude.m4,v
retrieving revision 1.70
retrieving revision 1.71
diff -u -r1.70 -r1.71
--- acinclude.m4 2001/03/24 09:43:05 1.70
+++ acinclude.m4 2001/04/02 15:20:45 1.71
@@ -86,6 +86,10 @@
APACHE_SUBST(PORT)
APACHE_SUBST(NOTEST_CFLAGS)
APACHE_SUBST(NOTEST_LDFLAGS)
+ APACHE_SUBST(CORE_IMPLIB_FILE)
+ APACHE_SUBST(CORE_IMPLIB)
+ APACHE_SUBST(SH_LIBTOOL)
+ APACHE_SUBST(MK_IMPLIB)
abs_srcdir="`(cd $srcdir && pwd)`"
1.136 +21 -2 httpd-2.0/configure.in
Index: configure.in
===================================================================
RCS file: /home/cvs/httpd-2.0/configure.in,v
retrieving revision 1.135
retrieving revision 1.136
diff -u -r1.135 -r1.136
--- configure.in 2001/03/31 11:31:45 1.135
+++ configure.in 2001/04/02 15:20:45 1.136
@@ -41,6 +41,23 @@
AC_CANONICAL_SYSTEM
+case "$host_alias" in
+ *os2*)
+ # Use a custom made libtool replacement
+ echo "using aplibtool"
+ LIBTOOL="$abs_srcdir/srclib/apr/build/aplibtool"
+ SH_LIBTOOL="$LIBTOOL --shared --export-all"
+ CORE_IMPLIB_FILE="ApacheCoreOS2.la"
+ CORE_IMPLIB="$abs_srcdir/server/$CORE_IMPLIB_FILE"
+ MK_IMPLIB="emximp"
+ SHMOD_EXPORT_EXT="def"
+ other_targets="$other_targets os2core"
+ ;;
+ *)
+ SH_LIBTOOL='$(SHELL) $(top_builddir)/shlibtool --silent'
+ ;;
+esac
+
dnl
dnl ## Preload our OS configuration
APR_PRELOAD
@@ -158,8 +175,10 @@
APACHE_SUBST(BUILTIN_LIBS)
AM_DISABLE_SHARED
-AM_PROG_LIBTOOL
-APACHE_LIBTOOL_SILENT
+if test -z "$LIBTOOL"; then
+ AM_PROG_LIBTOOL
+ APACHE_LIBTOOL_SILENT
+fi
if test "$apache_need_shared" = "yes"; then
$SHELL $ac_aux_dir/ltconfig --output=shlibtool --disable-static --srcdir=$ac_aux_dir --cache-file=./config.cache $ac_aux_dir/ltmain.sh
1.45 +9 -4 httpd-2.0/build/rules.mk
Index: rules.mk
===================================================================
RCS file: /home/cvs/httpd-2.0/build/rules.mk,v
retrieving revision 1.44
retrieving revision 1.45
diff -u -r1.44 -r1.45
--- rules.mk 2001/03/16 23:04:56 1.44
+++ rules.mk 2001/04/02 15:20:45 1.45
@@ -71,14 +71,13 @@
# Link-related commands
LINK = $(LIBTOOL) --mode=link $(COMPILE) $(LTFLAGS) $(LDFLAGS) $(NOTEST_LDFLAGS) -o $@
-SH_LINK = $(SH_LIBTOOL) --mode=link $(COMPILE) $(LTFLAGS) $(LDFLAGS) $(NOTEST_LDFLAGS) -o $@
+SH_LINK = $(SH_LIBTOOL) --mode=link $(COMPILE) $(LTFLAGS) $(LDFLAGS) $(EXTRA_LDFLAGS) $(NOTEST_LDFLAGS) $(CORE_IMPLIB) -o $@
MOD_LINK = $(LIBTOOL) --mode=link $(COMPILE) -module $(LTFLAGS) $(LDFLAGS) $(NOTEST_LDFLAGS) -o $@
# Cross compile commands
# Helper programs
-SH_LIBTOOL = $(SHELL) $(top_builddir)/shlibtool --silent
MKINSTALLDIRS = $(abs_srcdir)/build/mkdir.sh
INSTALL = $(abs_srcdir)/build/install.sh -c
INSTALL_DATA = $(INSTALL) -m 644
@@ -92,7 +91,7 @@
SHLIB_SUFFIX = so
.SUFFIXES:
-.SUFFIXES: .S .c .$(CXX_SUFFIX) .lo .o .s .y .l .slo
+.SUFFIXES: .S .c .$(CXX_SUFFIX) .lo .o .s .y .l .slo .def .la
.c.o:
$(COMPILE) -c $<
@@ -128,6 +127,12 @@
all: all-recursive
install: install-recursive
+
+# Makes an import library from a def file
+.def.la:
+ $(LIBTOOL) --mode=compile $(MK_IMPLIB) -o $@ $<
+
+
# if we are doing a distclean, we actually want to hit every
# directory that has ever been configured. To do this, we just do a quick
# find for all the leftover Makefiles, and then run make distclean in those
@@ -184,7 +189,7 @@
clean: clean-recursive clean-x
clean-x:
- rm -f $(targets) *.slo *.lo *.la *.o $(CLEAN_TARGETS)
+ rm -f $(targets) *.slo *.lo *.la *.o *.obj $(CLEAN_TARGETS)
rm -rf .libs
distclean: distclean-recursive clean-x
1.2 +0 -1 httpd-2.0/os/os2/config.m4
Index: config.m4
===================================================================
RCS file: /home/cvs/httpd-2.0/os/os2/config.m4,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- config.m4 2000/01/26 07:51:45 1.1
+++ config.m4 2001/04/02 15:20:45 1.2
@@ -1,4 +1,3 @@
if test "$OS" = "os2" ; then
CFLAGS="$CFLAGS -DOS2 -O2"
- LDFLAGS="$LDFLAGS -Zexe"
fi
1.1 httpd-2.0/os/os2/core.mk
Index: core.mk
===================================================================
# Some rules for making a shared core dll on OS/2
os2core: httpd.dll $(CORE_IMPLIB)
$(LIBTOOL) --mode=link gcc $(EXTRA_LDFLAGS) -o httpd $(CORE_IMPLIB)
httpd.dll: $(PROGRAM_DEPENDENCIES) $(CORE_IMPLIB)
$(LINK) -Zdll $(EXTRA_LDFLAGS) -s -o $@ server/exports.lo modules.lo $(PROGRAM_DEPENDENCIES) $(EXTRA_LIBS) server/ApacheCoreOS2.def
1.1 httpd-2.0/os/os2/core_header.def
Index: core_header.def
===================================================================
LIBRARY httpd INITINSTANCE
DESCRIPTION "Apache Server Core"
EXPORTS
"main"
"ap_my_generation"
"ap_restart_time"
"ap_extended_status"
"ap_scoreboard_image"
"ap_conftree"
"ap_server_root"
"ap_top_module"
1.39 +7 -2 httpd-2.0/server/Makefile.in
Index: Makefile.in
===================================================================
RCS file: /home/cvs/httpd-2.0/server/Makefile.in,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -r1.38 -r1.39
--- Makefile.in 2001/03/05 04:43:56 1.38
+++ Makefile.in 2001/04/02 15:20:45 1.39
@@ -1,7 +1,7 @@
TARGET_EXPORTS = apache.exports
CLEAN_TARGETS = gen_test_char gen_uri_delims test_char.h uri_delims.h \
- $(TARGET_EXPORTS)
+ $(TARGET_EXPORTS) ApacheCoreOS2.def
SUBDIRS = mpm
@@ -15,7 +15,7 @@
util_filter.c exports.c buildmark.c scoreboard.c \
error_bucket.c protocol.c core.c request.c
-targets = delete-exports $(LTLIBRARY_NAME)
+targets = delete-exports $(LTLIBRARY_NAME) $(CORE_IMPLIB_FILE)
include $(top_srcdir)/build/rules.mk
include $(top_srcdir)/build/library.mk
@@ -59,3 +59,8 @@
# wtf does this have to be explicit????
exports.lo: exports.c
+
+# Rule to make def file for OS/2 core dll
+ApacheCoreOS2.def: exports.c $(top_srcdir)/os/$(OS_DIR)/core_header.def
+ cat $(top_srcdir)/os/$(OS_DIR)/core_header.def > $@
+ $(CPP) $< $(COMMON_FLAGS) | grep "ap_hack_" | sed -e 's/^.*[)]\(.*\);$$/ "\1"/' >> $@