diff options
author | Greg Stein <gstein@apache.org> | 2004-02-05 10:16:25 +0000 |
---|---|---|
committer | Greg Stein <gstein@apache.org> | 2004-02-05 10:16:25 +0000 |
commit | 7f5b352d208fc156d060afc3d4d9bd6dd02472dc (patch) | |
tree | cfa5a711c027d72cc924b6fe5e6451b8d81fbe2c /Makefile.in | |
parent | 4ee50c35aa2cd7184e3e6ec836f469f08bd003f5 (diff) | |
download | apr-7f5b352d208fc156d060afc3d4d9bd6dd02472dc.tar.gz |
First whack at switching to a single top-level make. This adds a dependency
upon Python at packaging time, but not at end-user config/build time. As far
as I can tell, the build continues to function properly. (out-of-dir
config/make not tested, and apr-iconv prolly needs some work)
The buildconf scripts now generate a build-outputs.mk file which is included
by the root's Makefile (via the build/gen-build.py script). bulid-outputs.mk
specifies all of the various files present in the distribution.
The top-level Makefiles were simplified to use an $(OBJECTS) symbol rather
than 'find'ing them. Similarly, a $(HEADERS) symbol is used for the exports.
The corresponding delete-* targets were eliminated since we have a precise
set of inputs.
The subdirs' Makefiles were removed since they are no longer called/used.
The apr-util/uri Makefile was responsible for compiling a C program to
generate the uri_delims.h file. That process was replaced by a Python script
to generate the header (called by buildconf). The .c and .dsp were left for
the Windows build to continue, but that should be revamped.
build/apr_rules.mk was revamped somewhat to avoid recursion, but a lot of
cleanup is still needed. Much of the recursive/local/x- logic is no longer
needed and can be elimianated. rules.mk was created for inclusion by N
makefiles, but that isn't really true any more, so it could probably be
tossed (caveat: test/Makefile). Saved for a phase 2.
Some additional work was added to properly clean up files in */build/,
rather than relying on a makefile in there.
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@64891 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'Makefile.in')
-rw-r--r-- | Makefile.in | 55 |
1 files changed, 15 insertions, 40 deletions
diff --git a/Makefile.in b/Makefile.in index 0b55c5e03..148402d21 100644 --- a/Makefile.in +++ b/Makefile.in @@ -10,14 +10,14 @@ APR_MAJOR_VERSION=@APR_MAJOR_VERSION@ # Macros for supporting directories # INCDIR=./include -INCDIR1=../include -INCLUDES=-I$(INCDIR) -I$(INCDIR1) +OSDIR=$(INCDIR)/arch/@OSDIR@ +DEFOSDIR=$(INCDIR)/arch/@DEFAULT_OSDIR@ +INCLUDES=-I$(INCDIR) -I$(OSDIR) -I$(DEFOSDIR) # # Macros for target determination # -SUBDIRS=@SUBDIRS@ -CLEAN_SUBDIRS= . test build +CLEAN_SUBDIRS= test INSTALL_SUBDIRS=@INSTALL_SUBDIRS@ TARGET_LIB = lib@APR_LIBNAME@.la @@ -26,16 +26,18 @@ TARGET_LIB = lib@APR_LIBNAME@.la # Rules for building specific targets, starting with 'all' for # building the entire package. # -TARGETS = delete-lib $(TARGET_LIB) delete-exports export_vars.h apr.exp +TARGETS = $(TARGET_LIB) export_vars.h apr.exp # bring in rules.mk for standard functionality @INCLUDE_RULES@ +@INCLUDE_OUTPUTS@ CLEAN_TARGETS = apr-config.out apr.exp exports.c export_vars.h DISTCLEAN_TARGETS = config.cache config.log config.status \ include/apr.h include/arch/unix/apr_private.h \ - libtool apr-config -EXTRACLEAN_TARGETS = configure aclocal.m4 include/arch/unix/apr_private.h.in + libtool apr-config build/apr_rules.mk +EXTRACLEAN_TARGETS = configure aclocal.m4 include/arch/unix/apr_private.h.in \ + build-outputs.mk build/ltcf-c.sh build/ltmain.sh build/libtool.m4 prefix=@prefix@ exec_prefix=@exec_prefix@ @@ -48,17 +50,6 @@ VPATH=@srcdir@ top_srcdir=@apr_srcdir@ top_blddir=@apr_builddir@ -EXPORT_FILES = $(top_srcdir)/include/*.h - -delete-lib: - @if test -f $(TARGET_LIB); then \ - for i in $(SUBDIRS); do objects="$$objects $$i/*.@so_ext@"; done ; \ - if test -n "`find $$objects -newer $(TARGET_LIB)`"; then \ - echo Found newer objects. Will relink $(TARGET_LIB). ; \ - echo $(RM) -f $(TARGET_LIB) ; \ - $(RM) -f $(TARGET_LIB) ; \ - fi \ - fi # Create apr-config script suitable for the install tree apr-config.out: apr-config @@ -102,27 +93,14 @@ install: $(TARGET_LIB) apr-config.out done \ fi -$(TARGET_LIB): - @for i in $(SUBDIRS); do objects="$$objects $$i/*.@so_ext@"; done ; \ - tmpcmd="$(LINK) @lib_target@ $(ALL_LIBS)"; \ - echo $$tmpcmd; \ - $$tmpcmd && touch $@ - -delete-exports: - @if test -f apr.exp; then \ - headers="`find include/*.h -newer apr.exp`" ; \ - if test -n "$$headers"; then \ - echo Found newer headers. Will rebuild apr.exp. ; \ - echo $(RM) -f apr.exp exports.c export_vars.h ; \ - $(RM) -f apr.exp exports.c export_vars.h ; \ - fi \ - fi +$(TARGET_LIB): $(OBJECTS) + $(LINK) @lib_target@ $(ALL_LIBS) -exports.c: - $(AWK) -f $(top_srcdir)/build/make_exports.awk $(EXPORT_FILES) > $@ +exports.c: $(HEADERS) + $(AWK) -f $(top_srcdir)/build/make_exports.awk $^ > $@ -export_vars.h: - $(AWK) -f $(top_srcdir)/build/make_var_export.awk $(EXPORT_FILES) > $@ +export_vars.h: $(HEADERS) + $(AWK) -f $(top_srcdir)/build/make_var_export.awk $^ > $@ apr.exp: exports.c export_vars.h @echo "#! lib@APR_LIBNAME@.so" > $@ @@ -142,6 +120,3 @@ etags: # DO NOT REMOVE docs: $(INCDIR)/*.h - -.PHONY: delete-lib delete-exports -.NOTPARALLEL: delete-lib delete-exports |