## ## Makefile -- Build procedure for mod_mp3 ## # the used tools APXS=/usr/local/sbin/apxs APACHECTL=apachectl VERSION = 0.40 DISTNAME = mod_mp3 DISTVNAME = $(DISTNAME)-$(VERSION) SRC = mod_mp3.c directives.c ice.c load.c shout.c utility.c ogg.c common.c id3.c log.c internal_dispatch.c encode.c OBJ = src/mod_mp3.lo src/directives.lo src/ice.lo src/load.lo src/shout.lo src/utility.lo src/ogg.lo src/common.lo src/id3.lo src/log.lo src/internal_dispatch.lo src/encode.lo SHELL = /bin/sh PERL = perl NOOP = $(SHELL) -c true RM_RF = rm -rf SUFFIX = .gz COMPRESS = gzip --best TAR = tar CP = cp TARFLAGS = cvf PREOP = @$(NOOP) POSTOP = @$(NOOP) TO_UNIX = @$(NOOP) AINCLUDEDIR=-I`$(APXS) -q INCLUDEDIR` `$(APXS) -q CFLAGS` ACFLAGS=-I`$(APXS) -q INCLUDEDIR` LD_SHLIB=`$(APXS) -q LDFLAGS_SHLIB` CFLAGS_SHLIB=`$(APXS) -q CFLAGS_SHLIB` CC=`$(APXS) -q CC` LD=`$(APXS) -q LD_SHLIB` CONFDIR=`$(APXS) -q SYSCONFDIR` DEF = -DCONTENT_DISPOSITION -DSELECT_ENABLED INC = $(AINCLUDEDIR) $(DEF) LIB = $(ACFLAGS) # the default target all: mod_mp3.so # compile the DSO file mod_mp3.so: $(OBJ) Makefile $(APXS) -c $(LIB) $(OBJ) src/mod_mp3.lo : src/mod_mp3.c $(CC) $(CFLAGS_SHLIB) $(INC) -c src/mod_mp3.c $(DEF) -o src/mod_mp3.lo src/directives.lo : src/directives.c $(CC) $(CFLAGS_SHLIB) $(INC) -c src/directives.c $(DEF) -o src/directives.lo src/ice.lo : src/ice.c $(CC) $(CFLAGS_SHLIB) $(INC) -c src/ice.c $(DEF) -o src/ice.lo src/load.lo : src/load.c $(CC) $(CFLAGS_SHLIB) $(INC) -c src/load.c $(DEF) -o src/load.lo src/shout.lo : src/shout.c $(CC) $(CFLAGS_SHLIB) $(INC) -c src/shout.c $(DEF) -o src/shout.lo src/utility.lo : src/utility.c $(CC) $(CFLAGS_SHLIB) $(INC) -c src/utility.c $(DEF) -o src/utility.lo src/ogg.lo : src/ogg.c $(CC) $(CFLAGS_SHLIB) $(INC) -c src/ogg.c $(DEF) -o src/ogg.lo src/common.lo : src/common.c $(CC) $(CFLAGS_SHLIB) $(INC) -c src/common.c $(DEF) -o src/common.lo src/id3.lo : src/id3.c $(CC) $(CFLAGS_SHLIB) $(INC) -c src/id3.c $(DEF) -o src/id3.lo src/log.lo : src/log.c $(CC) $(CFLAGS_SHLIB) $(INC) -c src/log.c $(DEF) -o src/log.lo src/internal_dispatch.lo : src/internal_dispatch.c $(CC) $(CFLAGS_SHLIB) $(INC) -c src/internal_dispatch.c $(DEF) -o src/internal_dispatch.lo src/encode.lo : src/encode.c $(CC) $(CFLAGS_SHLIB) $(INC) -c src/encode.c $(DEF) -o src/encode.lo # install the DSO file into the Apache installation # and activate it in the Apache configuration install: all $(APXS) -i -a -n 'mp3' src/mod_mp3.so if [ -f $(CONFDIR)/mp3.conf ]; then\ echo "Preserving old mp3.conf"; \ $(CP) support/mp3.conf $(CONFDIR)/mp3.conf.default; \ else \ $(CP) support/mp3.conf $(CONFDIR)/mp3.conf; \ fi @echo "+--------------------------------------------------------+"; \ echo "| All done. |"; \ echo "| If you want to use the default mod_mp3 configure file |"; \ echo "| go add: |"; \ echo "| |"; \ echo "| Include $(CONFDIR)/mp3.conf |"; \ echo "| |"; \ echo "| to your httpd.conf for apache. |"; \ echo "| If not, cat its content into your httpd.conf file. |"; \ echo "| |"; \ echo "| Thanks for installing mod_mp3. |"; \ echo "+--------------------------------------------------------+"; \ # cleanup clean: -rm -f $(OBJ) mod_mp3.so *~~ # simple test test: reload xmms http://127.0.0.1:8000/ & # reload the module by installing and restarting Apache reload: install stop start # the general Apache start/restart/stop procedures start: $(APACHECTL) start restart: $(APACHECTL) restart stop: $(APACHECTL) stop dist: version $(DISTVNAME).tar$(SUFFIX) rpm: #all dist cp $(DISTVNAME).tar$(SUFFIX) /usr/src/redhat/SOURCES rpm -ba $(DISTNAME).spec cp /usr/src/redhat/RPMS/i386/$(DISTVNAME)*.i386.rpm . cp /usr/src/redhat/SRPMS/$(DISTVNAME)*.src.rpm . version: echo $(VERSION) > VERSION echo "#define VERSION \"$(VERSION)\"" > src/version.h cat mod_mp3.spec | $(PERL) -e 'while () { push @file, $$_} open(FILE, ">mod_mp3.spec"); for(@file) { if (/^Version/) { print FILE "Version: ${VERSION}\n" } else { print FILE $$_}}' $(DISTVNAME).tar$(SUFFIX) : distdir $(PREOP) $(TO_UNIX) $(TAR) $(TARFLAGS) $(DISTVNAME).tar $(DISTVNAME) $(RM_RF) $(DISTVNAME) $(COMPRESS) $(DISTVNAME).tar $(POSTOP) distdir : # $(RM_RF) $(DISTVNAME) $(PERL) -MExtUtils::Manifest=manicopy,maniread \ -e "manicopy(maniread(),'$(DISTVNAME)', '$(DIST_CP)');" docs : tpod2html support/faq.pod > faq.html pod2text support/faq.pod > faq push : if [ -F *.gz ] ; then \ rm *.gz; \ fi make dist scp $(DISTVNAME).tar$(SUFFIX) root@www.tangent.org:/usr/local/slash/site/www.tangent.org/htdocs/download scp $(DISTVNAME).tar$(SUFFIX) root@ftp.tangent.org:/var/ftp/pub/apache scp $(DISTVNAME)*.i386.rpm root@www.tangent.org:/usr/local/slash/site/www.tangent.org/htdocs/download scp $(DISTVNAME)*i386.rpm root@ftp.tangent.org:/var/ftp/pub/apache scp faq.html root@www.tangent.org:/usr/local/slash/site/www.tangent.org/htdocs/faqs/mod_mp3.html proto : $(PERL) utils/protobuild.pl > src/proto.h