blob: 67176e824516897e274750723a029e40e7b535f1 [file] [log] [blame]
# The following is a trick to get CPAN clients to follow prerequisites:
#
# PREREQ_PM
#
# --- MakeMaker post_initialize section:
AUTOMAKE_OPTIONS = foreign
SUBDIRS = . include library module glue
EXTRA_DIST = LICENSE NOTICE README INSTALL CHANGES STATUS FAQ.pod MANIFEST.SKIP Makefile.PL buildconf build win32 docs libapreq.rc
APU_SRCDIR=`@APU_CONFIG@ --srcdir`
APR_SRCDIR=`@APR_CONFIG@ --srcdir`
APU_DOX = (cd $(APU_SRCDIR); cat docs/doxygen.conf - | doxygen -)
APR_DOX = (cd $(APR_SRCDIR); cat docs/doxygen.conf - | doxygen -)
SED_BODY_TAG= s(^[\S\s]+<body.+|</body>[\S\s]+$$)()gi, \
s(href="/Apache2(?:/\w+)*/([^/]+).html")(href="group__apreq__xs__\L$$1.html")g, \
s(href="/APR/Request/Param/(?:Table|Cookie).html")(href="group__apreq__xs__apr__request.html")g, \
s(href="/APR/Request.html")(href="group__apreq__xs__apr__request.html")g, \
s(href="/APR/Request/([^/]+).html")(href="group__apreq__xs__apr__request__\L$$1.html")g, \
s(href="/APR/Brigade.html")(href="http://apr.apache.org/docs/apr-util/$(APU_DOC_VERSION)/apr__buckets_8h.html")g, \
s(href="/APR/([^/]+).html")(href="http://apr.apache.org/docs/apr/$(APR_DOC_VERSION)/apr__\L$$1s_8h.html")g
EUM=ExtUtils::Manifest
PM_DIR=glue/perl/lib/Apache2
XS_DIR=glue/perl/xsbuilder/APR
bin_SCRIPTS = apreq2-config
CLEANFILES = $(bin_SCRIPTS)
POD2HTML = @PERL@ -MPod::Html -wle 'pod2html @ARGV'
if BUILD_PERL_GLUE
PERL_TEST = perl_test
else
PERL_TEST =
endif
TAR=@TAR@
release: distclean docs_clean reconfig distdir
@PERL@ build/version_check.pl > $(distdir)/PREREQUISITES
@PERL@ build/version_check.pl -version=@PACKAGE_VERSION@ > $(distdir)/META.yml
echo MANIFEST > $(distdir)/MANIFEST
@cd $(distdir); @PERL@ -M$(EUM) -e "$(EUM)::mkmanifest"
@PERL@ -ple '$$_="$(distdir)/$$_"' $(distdir)/MANIFEST | $(TAR) -czf $(distdir).tar.gz -T -
rm -rf $(distdir)
@sha256sum $(distdir).tar.gz > $(distdir).tar.gz.sha256
@sha512sum $(distdir).tar.gz > $(distdir).tar.gz.sha512
@echo "Made $(distdir).tar.gz and hashes"
release_test:
-rm -rf $(distdir)
if [ ! -x $(TAR) ]; then echo "$(TAR) is not executable."; fi
$(TAR) xzvf $(distdir).tar.gz
@cd $(distdir); @PERL@ -M$(EUM) -e "die 'Bogus MANIFEST' if $(EUM)::manicheck"
@cd $(distdir); @PERL@ Makefile.PL -apxs @APACHE2_APXS@ && $(MAKE) test
rm -rf $(distdir)
@echo "$(distdir).tar.gz is kosher."
reconfig:
./buildconf.nice
./config.nice
docs_clean:
-rm -rf docs
-rm -rf *.html pod2*.tmp
docs: pod2html build/doxygen.conf apr_tags docs/html/feather.png
@PERL@ build/version_check.pl doxygen
doxygen build/doxygen.conf
docs_install: docs
@$(NORMAL_INSTALL)
$(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
cp *.html docs/html
cp -R docs $(DESTDIR)$(pkgdatadir)
%.html: $(POD_DIR)/%.pm Makefile.am
${POD2HTML} < $< | @PERL@ -0777 -pe '$(SED_BODY_TAG)' > $@
Apache2__Request.html: $(PM_DIR)/Request.pm
${POD2HTML} < $< | @PERL@ -0777 -pe '$(SED_BODY_TAG)' > $@
Apache2__Upload.html: $(PM_DIR)/Upload.pm
${POD2HTML} < $< | @PERL@ -0777 -pe '$(SED_BODY_TAG)' > $@
Apache2__Cookie.html: $(PM_DIR)/Cookie.pm
${POD2HTML} < $< | @PERL@ -0777 -pe '$(SED_BODY_TAG)' > $@
APR__Request.html: $(XS_DIR)/Request/Request.pod
${POD2HTML} < $< | @PERL@ -0777 -pe '$(SED_BODY_TAG)' > $@
APR__Request__Param.html: $(XS_DIR)/Request/Param/Param.pod
${POD2HTML} < $< | @PERL@ -0777 -pe '$(SED_BODY_TAG)' > $@
APR__Request__Cookie.html: $(XS_DIR)/Request/Cookie/Cookie.pod
${POD2HTML} < $< | @PERL@ -0777 -pe '$(SED_BODY_TAG)' > $@
APR__Request__Error.html: $(XS_DIR)/Request/Error/Error.pod
${POD2HTML} < $< | @PERL@ -0777 -pe '$(SED_BODY_TAG)' > $@
APR__Request__Apache2.html: $(XS_DIR)/Request/Apache2/Apache2.pod
${POD2HTML} < $< | @PERL@ -0777 -pe '$(SED_BODY_TAG)' > $@
APR__Request__CGI.html: $(XS_DIR)/Request/CGI/CGI.pod
${POD2HTML} < $< | @PERL@ -0777 -pe '$(SED_BODY_TAG)' > $@
FAQ.html: Makefile.am FAQ.pod
${POD2HTML} < FAQ.pod | @PERL@ -0777 -pe '$(SED_BODY_TAG)' > FAQ.html
pod2html :: Apache2__Request.html Apache2__Cookie.html Apache2__Upload.html
pod2html :: APR__Request.html APR__Request__Cookie.html
pod2html :: APR__Request__Param.html APR__Request__Error.html
pod2html :: APR__Request__Apache2.html APR__Request__CGI.html FAQ.html
$(POD_DIR)/%.t: $(POD_DIR)/%.pod
(cd glue/perl ; pod2test docs/$*.pod docs/$*.t)
pod2test :: $(POD_DIR)/Request.t $(POD_DIR)/Cookie.t $(POD_DIR)/Upload.t $(POD_DIR)/Error.t $(POD_DIR)/Table.t
apr_tags: docs/apr.tag docs/apu.tag
docs/html/feather.png:
${mkinstalldirs} docs
${mkinstalldirs} docs/html
cp feather.png docs/html
docs/apu.tag:
${mkinstalldirs} docs
echo GENERATE_TAGFILE=`pwd`/docs/apu.tag | $(APU_DOX)
docs/apr.tag:
${mkinstalldirs} docs
echo GENERATE_TAGFILE=`pwd`/docs/apr.tag | $(APR_DOX)
test: all library_test module_test $(PERL_TEST)
module_test:
cd module; $(MAKE) test
library_test:
cd library; $(MAKE) test
perl_install:
cd glue/perl; $(MAKE) install
perl_test:
cd glue/perl; ../../libtool --mode=execute -dlopen ../../library/libapreq2.la $(MAKE) test
perl_glue:
cd glue/perl; @PERL@ ../../build/xsbuilder.pl run
cd glue/perl; @PERL@ Makefile.PL -apxs @APACHE2_APXS@
cd glue/perl; $(MAKE)
if BUILD_HTTPD
install-exec-local: httpd_install
httpd_install:
cd @APACHE2_SRC@; $(MAKE) install
endif