# # Ivy League Utilities # # by Stephane Chatty # # Copyright 1991-2000 # Laboratoire de Recherche en Informatique (LRI) # Centre d'Etudes de la Navigation Aerienne (CENA) # # Makefile # # $Id$ # $CurLog$ # MAJOR = 1 MINOR = 0 LOCINCL = ../include CXX = g++ CXXOPTIONS = -O2 CXXSUFFIX = cc CXXFLAGS = $(CXXOPTIONS) -I$(LOCINCL) OBJ = Allocator.o List.o DList.o Chain.o String.o Array.o \ HashTable.o IdTable.o DirPath.o RegExp.o \ Signal.o Time.o Timer.o Automaton.o BitField.o cc = $(CXXSUFFIX) SRC = Allocator.$(cc) List.$(cc) DList.$(cc) String.$(cc) Array.$(cc) \ HashTable.$(cc) DirPath.$(cc) IdTable.$(cc) RegExp.$(cc) \ Signal.$(cc) Time.$(cc) Timer.$(cc) Automaton.$(cc) BitField.$(cc) HDR = bool.h word.h Initializer.h Allocator.h List.h DList.h Chain.h String.h \ Array.h HashTable.h IdTable.h DirPath.h RegExp.h \ Signal.h Time.h Timer.h Automaton.h BitField.h TESTS = testchain testdlist testid testregexp testtimer testdirpath testhash testlist testsignal all: libIvlUtils.a libIvlUtils.so.$(MAJOR).$(MINOR) headers test: $(TESTS) libIvlUtils.a: $(OBJ) rm -f $@ ar q $@ $(OBJ) libIvlUtils.so.$(MAJOR).$(MINOR): $(OBJ) rm -f $@ $(CXX) -shared -Wl,-soname,libIvlUtils.so.$(MAJOR) -o $@ $(OBJ) -lc headers: incldir \ $(LOCINCL)/ivl/cplus_bugs.h \ $(LOCINCL)/ivl/bool.h \ $(LOCINCL)/ivl/word.h \ $(LOCINCL)/ivl/Initializer.h \ $(LOCINCL)/ivl/Allocator.h \ $(LOCINCL)/ivl/List.h \ $(LOCINCL)/ivl/DList.h \ $(LOCINCL)/ivl/Chain.h \ $(LOCINCL)/ivl/String.h \ $(LOCINCL)/ivl/Array.h \ $(LOCINCL)/ivl/HashTable.h \ $(LOCINCL)/ivl/IdTable.h \ $(LOCINCL)/ivl/DirPath.h \ $(LOCINCL)/ivl/RegExp.h \ $(LOCINCL)/ivl/Signal.h \ $(LOCINCL)/ivl/Time.h \ $(LOCINCL)/ivl/Timer.h \ $(LOCINCL)/ivl/Automaton.h \ $(LOCINCL)/ivl/BitField.h incldir: test -d $(LOCINCL)/ivl || mkdirhier $(LOCINCL)/ivl $(LOCINCL)/ivl/cplus_bugs.h: cplus_bugs.h cp cplus_bugs.h $(LOCINCL)/ivl $(LOCINCL)/ivl/bool.h: bool.h cp bool.h $(LOCINCL)/ivl $(LOCINCL)/ivl/word.h: word.h cp word.h $(LOCINCL)/ivl $(LOCINCL)/ivl/Initializer.h: Initializer.h cp Initializer.h $(LOCINCL)/ivl $(LOCINCL)/ivl/Allocator.h: Allocator.h cp Allocator.h $(LOCINCL)/ivl $(LOCINCL)/ivl/List.h: List.h cp List.h $(LOCINCL)/ivl $(LOCINCL)/ivl/DList.h: DList.h cp DList.h $(LOCINCL)/ivl $(LOCINCL)/ivl/Chain.h: Chain.h cp Chain.h $(LOCINCL)/ivl $(LOCINCL)/ivl/String.h: String.h cp String.h $(LOCINCL)/ivl $(LOCINCL)/ivl/Array.h: Array.h cp Array.h $(LOCINCL)/ivl $(LOCINCL)/ivl/HashTable.h: HashTable.h cp HashTable.h $(LOCINCL)/ivl $(LOCINCL)/ivl/IdTable.h: IdTable.h cp IdTable.h $(LOCINCL)/ivl $(LOCINCL)/ivl/DirPath.h: DirPath.h cp DirPath.h $(LOCINCL)/ivl $(LOCINCL)/ivl/RegExp.h: RegExp.h cp RegExp.h $(LOCINCL)/ivl $(LOCINCL)/ivl/Signal.h: Signal.h cp Signal.h $(LOCINCL)/ivl $(LOCINCL)/ivl/Time.h: Time.h cp Time.h $(LOCINCL)/ivl $(LOCINCL)/ivl/Timer.h: Timer.h cp Timer.h $(LOCINCL)/ivl $(LOCINCL)/ivl/Automaton.h: Automaton.h cp Automaton.h $(LOCINCL)/ivl $(LOCINCL)/ivl/BitField.h: BitField.h cp BitField.h $(LOCINCL)/ivl install: all test -d $(PREFIX)/usr/include/ivl || mkdirhier $(PREFIX)/usr/include/ivl for f in `find $(LOCINCL)/ivl/*.h -type f -maxdepth 1`; do \ install -m 644 $$f $(PREFIX)/usr/include/ivl; \ done test -d $(PREFIX)/usr/lib || mkdirhier $(PREFIX)/usr/lib install -m 644 libIvlUtils.a $(PREFIX)/usr/lib install -m 644 libIvlUtils.so.$(MAJOR).$(MINOR) $(PREFIX)/usr/lib ln -s /usr/lib/libIvlUtils.so.$(MAJOR).$(MINOR) $(PREFIX)/usr/lib/libIvlUtils.so.$(MAJOR) ln -s /usr/lib/libIvlUtils.so.$(MAJOR).$(MINOR) $(PREFIX)/usr/lib/libIvlUtils.so clean: rm -f *.o libIvlUtils.a libIvlUtils.so.$(MAJOR).$(MINOR) $(TESTS) testchain: testchain.$(cc) $(SRC) libIvlUtils.a $(CXX) -o $@ $@.$(cc) -L. -lIvlUtils testdirpath: testdirpath.$(cc) $(SRC) libIvlUtils.a $(CXX) -o $@ $@.$(cc) -L. -lIvlUtils testdlist: testdlist.$(cc) $(SRC) libIvlUtils.a $(CXX) -o $@ $@.$(cc) -L. -lIvlUtils testhash: testhash.$(cc) $(SRC) libIvlUtils.a $(CXX) -o $@ $@.$(cc) -L. -lIvlUtils testid: testid.$(cc) $(SRC) libIvlUtils.a $(CXX) -o $@ $@.$(cc) -L. -lIvlUtils testlist: testlist.$(cc) $(SRC) libIvlUtils.a $(CXX) -o $@ $@.$(cc) -L. -lIvlUtils testregexp: testregexp.$(cc) $(SRC) libIvlUtils.a $(CXX) -o $@ $@.$(cc) -L. -lIvlUtils testsignal: testsignal.$(cc) $(SRC) libIvlUtils.a $(CXX) -o $@ $@.$(cc) -L. -lIvlUtils testtimer: testtimer.$(cc) $(SRC) libIvlUtils.a $(CXX) -o $@ $@.$(cc) -L. -lIvlUtils