mirror of
https://github.com/php/php-src.git
synced 2024-11-24 18:34:21 +08:00
88 lines
2.0 KiB
Makefile
88 lines
2.0 KiB
Makefile
# Makefile to generate build tools
|
|
#
|
|
# Standard usage:
|
|
# make -f build.mk
|
|
#
|
|
# To prepare a self-contained distribution:
|
|
# make -f build.mk dist
|
|
#
|
|
#
|
|
# Written by Sascha Schumann
|
|
#
|
|
# $Id$
|
|
|
|
|
|
LT_TARGETS = ltmain.sh ltconfig
|
|
LT_PATCHES = patch-aa patch-ab
|
|
|
|
SUBDIRS = libzend TSRM
|
|
|
|
makefile_am_files = $(shell find . -name Makefile.am)
|
|
makefile_in_files = $(makefile_am_files:.am=.in)
|
|
makefile_files = $(makefile_am_files:e.am=e)
|
|
|
|
config_h_in = php_config.h.in
|
|
|
|
config_h_files = \
|
|
$(shell echo ext/*/config.h.stub sapi/*/config.h.stub)
|
|
|
|
config_m4_files = \
|
|
$(shell echo ext/*/config.m4 sapi/*/config.m4)
|
|
|
|
acconfig_h_SOURCES = acconfig.h.in $(config_h_files)
|
|
|
|
targets = $(makefile_in_files) $(LT_TARGETS) configure $(config_h_in)
|
|
|
|
all: $(targets)
|
|
@for i in $(SUBDIRS); do \
|
|
test -d $$i || (test -d ../$$i && ln -s ../$$i $$i); \
|
|
(cd $$i && $(MAKE) -f build.mk AMFLAGS=$(AMFLAGS)); \
|
|
done
|
|
|
|
dist:
|
|
@rm -f $(SUBDIRS) 2>/dev/null || true
|
|
@for i in $(SUBDIRS); do \
|
|
test -d $$i || (test -d ../$$i && cp -rp ../$$i $$i); \
|
|
done
|
|
@find . -type l -exec rm {} \;
|
|
$(MAKE) AMFLAGS=--copy -f build.mk
|
|
|
|
clean:
|
|
rm -f $(targets)
|
|
@for i in $(SUBDIRS); do \
|
|
(cd $$i && $(MAKE) -f build.mk clean); \
|
|
done
|
|
|
|
cvsclean:
|
|
@for i in $(shell find . -follow -name .cvsignore); do \
|
|
(cd `dirname $$i` && rm -rf `cat .cvsignore`); \
|
|
done
|
|
@rm -f $(SUBDIRS) 2>/dev/null || true
|
|
|
|
acconfig.h: $(acconfig_h_SOURCES)
|
|
@echo rebuilding $@
|
|
@cat $(acconfig_h_SOURCES) > $@
|
|
|
|
$(LT_TARGETS): $(LT_PATCHES)
|
|
rm -f $(LT_TARGETS)
|
|
libtoolize --automake -c -f
|
|
patch ltconfig < patch-aa
|
|
patch ltmain.sh < patch-ab
|
|
|
|
$(makefile_in_files): $(makefile_am_files) aclocal.m4
|
|
@echo rebuilding Makefile.in\'s
|
|
@automake -a -i $(AMFLAGS) $(makefile_files) 2>&1 \
|
|
| grep -v PHP_OUTPUT_FILES || true >&2
|
|
|
|
aclocal.m4: configure.in acinclude.m4
|
|
aclocal
|
|
|
|
$(config_h_in): configure.in acconfig.h
|
|
# explicitly remove target since autoheader does not seem to work
|
|
# correctly otherwise (timestamps are not updated)
|
|
@rm -f $@
|
|
autoheader
|
|
|
|
configure: aclocal.m4 configure.in $(config_m4_files)
|
|
autoconf
|