# $Id: PTMakefile,v 1.11 2000/07/27 11:17:58 carlo Exp $ # # ProtoType Library Makefile # # Copyright (C) 1999-2000, by # # Carlo Wood, Run on IRC # RSA-1024 0x624ACAD5 1997-01-26 Sign & Encrypt # Fingerprint16 = 32 EC A7 B6 AC DB 65 A6 F6 F6 55 DD 1C DC FF 61 # # All rights reserved. # # See the file LICENSE for copyright information. # # This file may be distributed under the terms of the Q Public License 1.0 # as defined by Troll Tech AS of Norway and appearing in the file LICENSE.QPL # included in the packaging of this file. # #----------------------------------------------------------------------------- # # Edit $PROTODIR/Makedefs.h to get it working for your system # ifeq (.$(LIB).version,$(wildcard .$(LIB).version)) include .$(LIB).version VERSION=$(VERSION_MAJOR).$(VERSION_MINOR).$(VERSION_PATCH) endif GETSUBOBJS="yes" include $(PROTODIR)/common/PTMakefile .PHONY: .subdirs static shared %.o: %.c $(PROTODIR)/Makedefs.h $(CC) $(CFLAGS) -fpic $(IFLAGS) $(SYSTEMINCLUDEFLAGS) -c $< -o $@ %.o: %$(CPPEXT) $(PROTODIR)/Makedefs.h $(CXX) $(CXXFLAGS) -fpic $(IFLAGS) $(SYSTEMINCLUDEFLAGS) -c $< -o $@ .subdirs: @list='$(SUBDIRS)'; for i in $$list; \ do $(MAKE) -C $$i "CFLAGS=$(CFLAGS) -fpic" "CXXFLAGS=$(CXXFLAGS) -fpic" build || exit; \ done build:: shared ifeq (.$(LIB).version,$(wildcard .$(LIB).version)) shared: .depend-timestamp $(OBJS) .subdirs $(BASEDIR)/lib/lib$(LIB).so static: .depend-timestamp $(OBJS) .subdirs $(BASEDIR)/lib/lib$(LIB).a else shared: .depend-timestamp $(OBJS) .subdirs static: .depend-timestamp $(OBJS) .subdirs endif $(SUBOBJS): $(MAKE) .subdirs $(BASEDIR)/lib/lib$(LIB).a: $(OBJS) $(EXTRA_OBJS) $(SUBOBJS) $(AR) -cru lib$(LIB).a $(OBJS) $(EXTRA_OBJS) $(SUBOBJS) $(RANLIB) lib$(LIB).a $(INSTALL) -d $(BASEDIR)/lib $(MV) lib$(LIB).a $(BASEDIR)/lib $(BASEDIR)/lib/lib$(LIB).so: $(OBJS) .$(LIB).version $(EXTRA_OBJS) $(SUBOBJS) ifneq ($(CXXSRC),) $(CXX) $(LDFLAGS) -shared -Wl,-soname,lib$(LIB).so.$(VERSION_MAJOR) -o lib$(LIB).so.$(VERSION) -fpic $(OBJS) $(EXTRA_OBJS) $(SUBOBJS) $(STATICLIBS) $(LIBFLAGS) $(SHAREDLIBS) else $(CC) $(LDFLAGS) -shared -Wl,-soname,lib$(LIB).so.$(VERSION_MAJOR) -o lib$(LIB).so.$(VERSION) -fpic $(OBJS) $(EXTRA_OBJS) $(SUBOBJS) $(STATICLIBS) $(LIBFLAGS) $(SHAREDLIBS) endif $(INSTALL) -d $(BASEDIR)/lib $(RM) -f $(BASEDIR)/lib/lib$(LIB).so* $(MV) lib$(LIB).so.$(VERSION) $(BASEDIR)/lib ( cd $(BASEDIR)/lib; \ ln -s lib$(LIB).so.$(VERSION) lib$(LIB).so.$(VERSION_MAJOR); \ ln -s lib$(LIB).so.$(VERSION_MAJOR) lib$(LIB).so )