################################################################### # [LibNN - Neural Networks Library] # http://libnn.org # Copyright (C) 2002 - 2003 LAGACHERIE Matthieu RICORDEAU Olivier # # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License # as published by the Free Software Foundation; either version 2 # of the License, or (at your option) any later version. This # program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. You should have # received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, # USA. # # SPECIAL NOTE (the beerware clause): # This software is free software. However, it also falls under the beerware # special category. That is, if you find this software useful, or use it # every day, or want to grant us for our modest contribution to the # free software community, feel free to send us a beer from one of # your local brewery. Our preference goes to Belgium abbey beers and # irish stout (Guiness for strength!), but we like to try new stuffs. # # Authors: # LAGACHERIE Matthieu # Paper mail : 7 rue Delescluzes 94280 LE KREMLIN BICETRE, FRANCE # E-mail : matthieu@libnn.org # # RICORDEAU Olivier # Paper mail : 69 avenue d'Italie 75013 PARIS, FRANCE # E-mail : olivier@libnn.org # ################################################################### include common.Makefile # main target ############# NAME = libnn all: $(BYTE) $(OPT) # Recompiles everything from scratch re: clean all # bytecode and native-code compilation ###################################### $(NAME).cma: @echo " /" @echo " | compiling bytecode in subdirectories in order" @echo " | to build $@ (bytecode library) ..." @echo " \\" @for i in $(SUBDIRS);\ do\ ( cd $$i ; make byte );\ done @echo " /" @echo " | building $@ (bytecode library) ..." @echo " \\" $(OCAMLC) $(ALL_CMA_LIB) $(BLFLAGS) -o $@ $(NAME).cmxa: @echo " /" @echo " | compiling native code in subdirectories in order" @echo " | to build $@ and $(NAME).a (native code libraries) ..." @echo " \\" @for i in $(SUBDIRS);\ do\ ( cd $$i ; make opt );\ done @echo " /" @echo " | building $@ and $(NAME).a (native code libraries) ..." @echo " \\" $(OCAMLMKLIB) $(ALL_CMX_LIB) -o $(NAME) $(BYTE): $(NAME).cma $(OPT): $(NAME).cmxa # documentation ############### doc: $(BYTE) @echo " /" @echo " | doing make doc in subdirectories..." @echo " \\" @for i in $(SUBDIRS);\ do\ ( cd $$i ; make doc );\ done # clean ####### clean: default-clean @echo " /" @echo " | doing make clean in subdirectories..." @echo " \\" @for i in $(SUBDIRS);\ do\ ( cd $$i ; make clean );\ done @echo " /" @echo " | cleaning current directory..." @echo " \\" $(RM) $(NAME).{cma,cmxa,a} default-clean: $(RM) *.cm[iox] *.o *~ \#* doc-clean: @echo " /" @echo " | doing make doc-clean in subdirectories..." @echo " \\" @for i in $(SUBDIRS);\ do\ ( cd $$i ; make doc-clean );\ done dist-clean distclean:: clean $(RM) config.cache config.log config.status # depend ######## .depend depend:: $(GENERATED) $(RM) .depend $(OCAMLDEP) $(INCLUDES) *.ml *.mli > .depend # common.Makefile is rebuilt whenever common.Makefile.in or configure.in # is modified ######################################################################## common.Makefile: common.Makefile.in config.status ./config.status Makefile: common.Makefile config.status: configure ./config.status --recheck configure: configure.in autoconf # This line results in a make failure with NetBSD's `make' command. Just # `touch ./.depend' and `make' will not complain. # Otherwise, you can use gmake instead... include .depend