# Copyright (C) 2007-2014, Gabriel Dos Reis. # All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are # met: # # - Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # # - Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in # the documentation and/or other materials provided with the # distribution. # # - Neither the name of The Numerical Algorithms Group Ltd. nor the # names of its contributors may be used to endorse or promote products # derived from this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS # IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A # PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER # OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. DRIVER = ../driver/open-axiom$(EXEEX) INTERPSYS = \ $(DRIVER) --execpath=../interp/interpsys$(EXEEXT) \ --system="$(AXIOM)" \ --sysdb="$(oa_src_datadir)/algebra/" openaxiom_databases = \ $(addprefix $(oa_targetdir)/algebra/, \ compress.daase interp.daase browse.daase categor.daase \ operation.daase libdb.text comb.text \ USERS.DAASE/index.KAF DEPENDENTS.DAASE/index.KAF) openaxiom_glossfiles = \ $(addprefix $(oa_targetdir)/algebra/, \ glosskey.text gloss.ht glossdef.text) subdir = src/etc/ pamphlets = Makefile.pamphlet $(asq_SOURCES) build_libdir = $(top_builddir)/src/lib libspad_la = -L$(build_libdir) -lspad openaxiom_c_libs = -lopen-axiom-core @oa_c_runtime_extra@ -lm .PHONY: all all-asq all: all-ax all-ax all-asq: stamp @echo finished $(builddir) stamp: stamp-databases $(oa_target_bindir)/asq$(EXEEXT) \ $(oa_target_libdir)/summary \ $(oa_target_libdir)/copyright rm -f stamp $(STAMP) stamp .PHONY: all-databases all-databases: stamp-databases stamp-databases: ../algebra/*.NRLIB/code.$(FASLEXT) ../doc/gloss.text @ echo rebuilding databases... rm -f stamp-databases rm -f ../algebra/topics.data rm -f $(oa_targetdir)/*.daase rm -f $(oa_targetdir)/libdb.text rm -f $(oa_targetdir)/comdb.text rm -rf $(oa_targetdir)/algebra/USERS.DAASE rm -rf $(oa_targetdir)/algebra/DEPENDENTS.DAASE cp $(oa_src_docdir)/topics.data ../algebra (cd ../algebra && $(INTERPSYS) --build-databases) cp -p ../algebra/*.daase $(oa_targetdir)/algebra cp -p ../algebra/libdb.text $(oa_targetdir)/algebra cp -p ../algebra/comdb.text $(oa_targetdir)/algebra mkdir -p $(oa_targetdir)/algebra/USERS.DAASE cp -p ../algebra/USERS.DAASE/index.KAF \ $(oa_targetdir)/algebra/USERS.DAASE mkdir -p $(oa_targetdir)/algebra/DEPENDENTS.DAASE cp -p ../algebra/DEPENDENTS.DAASE/index.KAF \ $(oa_targetdir)/algebra/DEPENDENTS.DAASE cp -p ../algebra/glosskey.text $(oa_target_docdir) cp -p ../algebra/glossdef.text $(oa_target_docdir) bin_PROGRAMS = asq$(EXEEXT) asq_sources = asq.c asq_SOURCES = $(addsuffix .pamphlet, $(asq_sources)) asq_objects = $(asq_sources:.c=.$(OBJEXT)) asq_LDADD = $(libspad_la) -L$(build_libdir) $(openaxiom_c_libs) $(oa_target_bindir)/asq$(EXEEXT): asq$(EXEEXT) cp -p $< $(oa_target_bindir) asq$(EXEEXT): $(asq_objects) $(LINK) -o $@ $(asq_objects) $(asq_LDADD) %.$(OBJEXT) %.lo: %.c $(oa_c_macros_h) $(COMPILE) $(CXXCFLAGS) $(oa_includes) -o $@ $< asq.c: $(srcdir)/asq.c.pamphlet $(oa_hammer) --tangle --output=$@ $< $(oa_target_libdir)/summary: $(srcdir)/summary cp -p $< $@ $(oa_target_libdir)/copyright: $(srcdir)/copyright cp -p $< $@ ../doc/gloss.text: $(oa_src_docdir)/gloss.text cp $< cp $@ mostlyclean-local: rm -f $(asq_sources) $(asq_objects) $(bin_PROGRAMS) rm -f $(openaxiom_databases) rm -f $(openaxiom_glossfiles) rm -f stamp clean-local: mostlyclean-local rm -f $(oa_target_libdir)/summary rm -f $(oa_target_libdir)/copyright rm -f $(oa_target_bindir)/asq$(EXEEXT) distclean-local: clean-local