Skip to content
Snippets Groups Projects
makefile 1.54 KiB
Newer Older
  • Learn to ignore specific revisions
  • APPPATH = /usr/bin
    
    BINFOLDER = bin
    
    
    SUBDIRS_LIBS = libaregexptree
    
    Jan Trávníček's avatar
    Jan Trávníček committed
    SUBDIRS_BINS = acat \
                   aconvert aconvert.dot aconvert.gastex aconvert.regexp aconvert.automaton aconvert.grammar \
                   aminimize \
    
    Jan Trávníček's avatar
    Jan Trávníček committed
                   adiff adiff.automaton adiff.grammar \
                   aepsilon \
    
    Tomáš Pecka's avatar
    Tomáš Pecka committed
                   atrim \
    
                   anormalize \
    
                   aconversions \
                   aderivation aintegral \
    
    Tomáš Pecka's avatar
    Tomáš Pecka committed
                   aoptimize.regexp \
                   arand
    
    SUBDIRS_WITH_MAKE = $(dir $(wildcard */makefile))
    
    
    .PHONY: $(CORE_LIB) $(SUBDIRS_LIBS) $(SUBDIRS_BINS)
    
    all: $(CORE_LIB) $(SUBDIRS_LIBS) $(SUBDIRS_BINS) copy
    
    $(CORE_LIB):
    	$(MAKE) -C $@
    
    $(SUBDIRS_LIBS): $(CORE_LIB)
    
    Martin Žák's avatar
    Martin Žák committed
    	$(MAKE) -C $@
    
    $(SUBDIRS_BINS): $(SUBDIRS_LIBS)
    
    	$(MAKE) -C $@
    
    
    clean:
    	for dir in $(SUBDIRS_WITH_MAKE); do \
    	    $(MAKE) -C $$dir clean; \
    	done
    
    
    copy: $(CORE_LIB) $(SUBDIRS_LIBS) $(SUBDIRS_BINS)
    
    	mkdir -p $(BINFOLDER)
    	rm -rf $(BINFOLDER)/*
    
    	for dir in $(CORE_LIB) $(SUBDIRS_LIBS); do \
    
    	    cp $$dir/lib/* $(BINFOLDER); \
    	done
    	for dir in $(SUBDIRS_BINS); do \
    	    cp $$dir/bin/* $(BINFOLDER); \
    	done
    
    Martin Žák's avatar
    Martin Žák committed
    
    install:
    
    	cp alib/lib/libalib.so $(LIBPATH)
    
    	cp acat/bin/acat $(APPPATH)
    	cp aconvert/bin/aconvert $(APPPATH)
    	cp aconvert.dot/bin/aconvert.dot $(APPPATH)
    	cp aconvert.gastex/bin/aconvert.gastex $(APPPATH)
    	cp aminimize/bin/aminimize $(APPPATH)
    
    
    uninstall:
    	rm $(LIBPATH)/libalib.so
    	rm $(APPPATH)/acat
    	rm $(APPPATH)/aconvert
    	rm $(APPPATH)/aconvert.dot
    	rm $(APPPATH)/aconvert.gastex
    
    	rm $(APPPATH)/aminimize