File:  [Public] / libwww / Library / src / Attic / CommonMakefile
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Wed Feb 3 09:52:56 1993 UTC (31 years, 4 months ago) by timbl
Branches: CERN
CVS tags: R1

First import of WWW Library source files. (not in working state)

#	Common Makefile for W3 Library Code
#	-----------------------------------
#
#	(c) CERN 1990, 1991 -- see Copyright.html for conditions
#
# This file should be invariant between systems.
#	DEPENDENCIES NOT COMPLETE @@
#
#	make		Compile and link the software (private version)
#	make install	Copy it into the system (implies make)
#	make update	Copy installed version into installed version
#	make uninstall	Unlink installed version from the system
#	make clean	Remove intermediate files
#	make cleanall	Remove intremediate files and products
#	
# Macros required to be defined already for make:
#
# CC		The C compiler
# CFLAGS	Flags for $(CC) -- except the -I which are below
# LFLAGS	Flags for ld
#
# WWW           The WWW source tree directory
#
# Macros needed for make install:
#
# LIBDIR	Directory for installed library
#______________________________________________________________________

# If this is actually run in a subdirectory,
#
# WWW = ../../..
# WWW = ../..	For [cernlib] build in this directory

WC = $(WWW)/Library
CMN = $(WWW)/Library/Implementation/

# Where shall we put the objects and built library?

LOB = $(WTMP)/Library/$(WWW_MACH)

# Bug: This path, if relative, is taken relative to the directory
# in which this makefile is, not the pwd.  This screws up the 
# recursive invocation
# include $(CMN)Version.make
include $(ABS)$(WWW)/Library/Implementation/Version.make

CFLAGS2 = $(CFLAGS) -I$(CMN)

CERNLIBBIN = $(WWW)/bin

COMMON = $(LOB)/HTParse.o $(LOB)/HTAccess.o $(LOB)/HTTP.o \
	$(LOB)/HTFile.o	$(LOB)/HTFTP.o $(LOB)/HTTCP.o \
	$(LOB)/SGML.o $(LOB)/HTML.o $(LOB)/HTChunk.o \
	$(LOB)/HTAtom.o $(LOB)/HTAnchor.o $(LOB)/HTStyle.o \
	$(LOB)/HTList.o $(LOB)/HTString.o $(LOB)/HTFormat.o \
	$(LOB)/HTHistory.o $(LOB)/HTNews.o $(LOB)/HTGopher.o

CFILES = $(CMN)HTParse.c $(CMN)HTAccess.c $(CMN)HTTP.c $(CMN)HTFile.c \
	$(CMN)HTFTP.c   $(CMN)HTTCP.c     $(CMN)SGML.c $(CMN)HTML.c \
	$(CMN)HTChunk.c $(CMN)HTAtom.c   $(CMN)HTAnchor.c $(CMN)HTStyle.c \
	$(CMN)HTList.c  $(CMN)HTString.c $(CMN)HTFormat.c $(CMN)HTHistory.c \
	$(CMN)HTNews.c  $(CMN)HTGopher.c

HFILES = $(CMN)HTParse.h $(CMN)HTAccess.h $(CMN)HTTP.h $(CMN)HTFile.h \
	$(CMN)HTFTP.h $(CMN)HTTCP.h \
	$(CMN)SGML.h $(CMN)HTML.h $(CMN)HTChunk.h \
	$(CMN)HTAtom.h $(CMN)HTAnchor.h $(CMN)HTStyle.h \
	$(CMN)HTList.h \
	$(CMN)HTString.h $(CMN)HTFormat.h $(CMN)HTHistory.h $(CMN)HTNews.h \
	$(CMN)HTGopher.h \
	$(CMN)HTUtils.h $(CMN)tcp.h $(CMN)WWW.h $(CMN)HText.h

SOURCES = $(CFILES) $(HFILES) $(CMN)Version.make $(CMN)CommonMakefile \
	$(WWW)/README.txt $(WWW)/Copyright.txt


#	Library
#
#  On SGI, ranlib is unnecessary and does not exist so we ignore errors
# for that step
$(LOB)/libwww.a : $(COMMON)
	ar r $(LOB)/libwww.a $(COMMON)
	-ranlib $(LOB)/libwww.a

#	Clean up everything generatable except final products
clean :
	rm $(LOB)/*.o $(LOB)/.created
	-rmdir $(LOB)

#	Clean up everything generatable including final products

cleanall : clean
	rm $(LOB)/libwww.a

#	Install W3 library into system space (not normally necessary)

install : libwww.a
	- mkdir $(LIBDIR)
	cp libwww.a $(LIBDIR)/libwww.a
	
uninstall :
	rm $(LIBDIR)/libwww.a

#		Distribution use only:
#		----------------------

binary : /pub/www/bin/$(WWW_MACH)/libwww_$(VC).a
	echo FTP archive binary Libray $(VC) for $(WWW_MACH) up to date.


/pub/www/bin/$(WWW_MACH)/libwww_$(VC).a : libwww.a
	-mkdir /pub/www/bin/$(WWW_MACH)
	cp libwww.a /pub/www/bin/$(WWW_MACH)/libwww_$(VC).a

#	Source Distribution:

distribute :  /pub/www/README.txt /pub/www/Copyright.txt
	(cd $(WWW)/..; WWW=WWW ABS=`pwd`/ make $(MFLAGS) \
		-f WWW/Library/Implementation/CommonMakefile \
		/pub/www/src/WWWLibrary_$(VC).tar.Z)
	echo Distribution of Library version $(VC) up to date.

/pub/www/src/WWWLibrary_$(VC).tar.Z : $(SOURCES)
	tar cf /pub/www/src/WWWLibrary_$(VC).tar \
	    $(SOURCES)  $(WC)/*/Makefile $(WC)/vms/descrip.mms
	compress /pub/www/src/WWWLibrary_$(VC).tar


#	Hypertext supplied in text format
#	---------------------------------

$(WWW)/README.txt : $(WWW)/../README.html
	www -n -p66 http://info.cern.ch/hypertext/README.html \
		> $(WWW)/README.txt
/pub/www/README.txt : $(WWW)/README.txt
	cp $(WWW)/README.txt /pub/www/README.txt

$(WWW)/Copyright.txt : $(WWW)/../Copyright.html
	www -n -p66 http://info.cern.ch/hypertext/Copyright.html \
		> $(WWW)/Copyright.txt
/pub/www/Copyright.txt : $(WWW)/Copyright.txt
	cp $(WWW)/Copyright.txt /pub/www/Copyright.txt

# 			Common code
#			-----------

#	Directory for object files - .created checks it exists

OE = $(LOB)/.created
$(OE) :
	-mkdir $(WTMP)
	-mkdir $(WTMP)/Library
	-mkdir $(WTMP)/Library/$(WWW_MACH)
	touch $@

$(LOB)/HTList.o : $(OE) $(CMN)HTList.c $(CMN)HTUtils.h $(CMN)HTList.h
	$(CC) -c -o $@ $(CFLAGS2) $(CMN)HTList.c

$(LOB)/HTAnchor.o : $(OE) $(CMN)HTAnchor.c $(CMN)HTUtils.h $(CMN)HTList.h
	$(CC) -c -o $@ $(CFLAGS2) $(CMN)HTAnchor.c

$(LOB)/HTFormat.o : $(OE) $(CMN)HTFormat.c $(CMN)HTUtils.h $(CMN)HTList.h
	$(CC) -c -o $@ $(CFLAGS2) $(CMN)HTFormat.c

$(LOB)/HTHistory.o : $(OE) $(CMN)HTHistory.c $(CMN)HTUtils.h $(CMN)HTList.h
	$(CC) -c -o $@ $(CFLAGS2) $(CMN)HTHistory.c

$(LOB)/HTNews.o : $(OE) $(CMN)HTNews.c $(CMN)HTUtils.h $(CMN)HTList.h
	$(CC) -c -o $@ $(CFLAGS2) $(CMN)HTNews.c

$(LOB)/HTGopher.o : $(OE) $(CMN)HTGopher.c $(CMN)HTUtils.h $(CMN)HTList.h
	$(CC) -c -o $@ $(CFLAGS2) $(CMN)HTGopher.c

$(LOB)/HTStyle.o : $(OE) $(CMN)HTStyle.c $(CMN)HTUtils.h
	$(CC) -c -o $@ $(CFLAGS2) $(CMN)HTStyle.c

$(LOB)/HTAtom.o : $(OE) $(CMN)HTAtom.c $(CMN)HTUtils.h
	$(CC) -c -o $@ $(CFLAGS2) $(CMN)HTAtom.c

$(LOB)/HTChunk.o : $(OE) $(CMN)HTChunk.c $(CMN)HTUtils.h
	$(CC) -c -o $@ $(CFLAGS2) $(CMN)HTChunk.c

$(LOB)/HTString.o : $(OE) $(CMN)HTString.c $(CMN)HTUtils.h $(CMN)Version.make
	$(CC) -c -o $@ $(CFLAGS2) -DVC=\"$(VC)\" $(CMN)HTString.c

$(LOB)/SGML.o : $(OE) $(CMN)SGML.c $(CMN)HTUtils.h
	$(CC) -c -o $@ $(CFLAGS2) $(CMN)SGML.c

$(LOB)/HTML.o : $(OE) $(CMN)HTML.c $(CMN)HTUtils.h
	$(CC) -c -o $@ $(CFLAGS2) $(CMN)HTML.c

#	Communications & Files

$(LOB)/HTTP.o : $(OE) $(CMN)HTTP.c $(CMN)HTUtils.h
	$(CC) -c -o $@ $(CFLAGS2) $(CMN)HTTP.c

$(LOB)/HTTCP.o : $(OE) $(CMN)HTTCP.c $(CMN)HTUtils.h
	$(CC) -c -o $@ $(CFLAGS2) $(CMN)HTTCP.c

$(LOB)/HTFile.o : $(OE) $(CMN)HTFile.c $(CMN)HTUtils.h
	$(CC) -c -o $@ $(CFLAGS2) $(CMN)HTFile.c

$(LOB)/HTFTP.o : $(OE) $(CMN)HTFTP.c $(CMN)HTUtils.h
	$(CC) -c -o $@ $(CFLAGS2) $(CMN)HTFTP.c

$(LOB)/HTAccess.o : $(OE)  $(CMN)HTAccess.c $(CMN)HTUtils.h
	$(CC) -c -o $@ $(CFLAGS2) $(CMN)HTAccess.c

$(LOB)/HTParse.o : $(OE) $(CMN)HTParse.c $(CMN)HTUtils.h
	$(CC) -c -o $@ $(CFLAGS2) $(CMN)HTParse.c

Webmaster