# -*-Makefile-*- # # This file is part of rasdaman community. # # Rasdaman community 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 3 of the License, or # (at your option) any later version. # # Rasdaman community 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 rasdaman community. If not, see . # # Copyright 2003, 2004, 2005, 2006, 2007, 2008, 2009 Peter Baumann / # rasdaman GmbH. # # For more information please see # or contact Peter Baumann via . # Top Level makefile. This points to the various modules that have to be build # and/or deployed # # MAKEFILE FOR: # test programs of module conversion # # COMMENTS: # ################################################################## # # This is just an example Makefile for a test program. # The dependency of the test program on the lib of the # corresponding module is in the Makefile of the module. # ######################### Definitions ############################ # standard include with general options include $(RMANBASE)/Makefile.inc # all test programs ifeq ($(OSTYPE),linux-gnu) ALLTESTS = test_convertor test_png test_jpeg test_bmp test_vff else ALLTESTS = test_convertor test_hdf test_png test_jpeg test_bmp test_vff endif # For the time being: HDF includes / libs HDFBASE = $(SUPPORT_BASE) HDFINC = -I$(HDFBASE)/include HDFLIB = -L$(HDFBASE)/lib -ldf -ljpeg -lz -lmfhdf -lnsl ifeq ($(OSTYPE),linux-gnu) LINKLIBS=$(CONVERSION) $(CLIENTCOMM) $(COMPRESSION) $(RASLIB) $(RASODMG) CLIENTLDFLAGS += -lz else ifdef RMANGCC LINKLIBS=$(CONVERSION) $(CLIENTCOMM) $(COMPRESSION) $(RASLIB) $(RASODMG) CLIENTLDFLAGS += -lsocket -lnsl -lz else LINKLIBS=$(CONVERSION) $(RASLIB) endif endif ########################### Targets ############################## # test target for convertors like r_TIFF .PHONY : convertor convertor: test_module $(ALLTESTS) .PHONY : test_module test_module: cd $(RMANBASE)/conversion; $(MAKE) .PHONY : tiff tiff: test_module test_convertor .PHONY : hdf hdf: test_module test_hdf .PHONY : png png: test_module test_png .PHONY : jpeg jpeg: test_module test_jpeg .PHONY : bmp bmp: test_module test_bmp .PHONY : vff vff: test_module test_vff test_convertor: test_convertor.o $(LINKLIBS) $(PURIFY) $(CXX) $(CLIENTLDFLAGS) -o $@ $^ -L$(SUPPORT_BASE)/lib -ltiff -ljpeg -lz -lcrypto test_hdf: test_hdf.o $(LINKLIBS) $(PURIFY) $(CXX) $(CLIENTLDFLAGS) -o $@ $^ -L$(SUPPORT_BASE)/lib -lcrypto -lz $(HDFLIB) test_png: test_png.o $(LINKLIBS) $(PURIFY) $(CXX) $(CLIENTLDFLAGS) -o $@ $^ -L$(SUPPORT_BASE)/lib -lpng -lz -lcrypto test_jpeg: test_jpeg.o $(LINKLIBS) $(PURIFY) $(CXX) $(CLIENTLDFLAGS) -o $@ $^ -L$(SUPPORT_BASE)/lib -ljpeg -lz -lcrypto test_bmp: test_bmp.o $(LINKLIBS) $(PURIFY) $(CXX) $(CLIENTLDFLAGS) -o $@ $^ -L$(SUPPORT_BASE)/lib -lcrypto -lz test_vff: test_vff.o $(LINKLIBS) $(PURIFY) $(CXX) $(CLIENTLDFLAGS) -o $@ $^ -L$(SUPPORT_BASE)/lib -lcrypto -lz .PHONY : clean clean: -rm $(ALLTESTS) -rm *.o # deletes all non modified, but checked out files .PHONY : rcsclean rcsclean: -rcsclean ######################## Dependencies ############################ test_convertor.o: test_convertor.cc $(CXX) test_convertor.cc -c -o $@ $(CLIENTCXXFLAGS) test_hdf.o: test_hdf.cc $(CXX) test_hdf.cc -c -o $@ $(HDFINC) $(CLIENTCXXFLAGS) test_png.o: test_png.cc $(CXX) test_png.cc -c -o $@ $(CLIENTCXXFLAGS) test_jpeg.o: test_jpeg.cc $(CXX) test_jpeg.cc -c -o $@ $(CLIENTCXXFLAGS) test_bmp.o: test_bmp.cc $(CXX) test_bmp.cc -c -o $@ $(CLIENTCXXFLAGS) test_vff.o: test_vff.cc $(CXX) test_vff.cc -c -o $@ $(CLIENTCXXFLAGS)