| 1 | #==================================================================== |
|---|
| 2 | # NeXus - Neutron & X-ray Common Data Format |
|---|
| 3 | # |
|---|
| 4 | # Makefile for building Fortran 90 version of NeXus libraries |
|---|
| 5 | # |
|---|
| 6 | # Copyright (C) 2002 Mark Koennecke |
|---|
| 7 | # |
|---|
| 8 | # This library is free software; you can redistribute it and/or |
|---|
| 9 | # modify it under the terms of the GNU Lesser General Public |
|---|
| 10 | # License as published by the Free Software Foundation; either |
|---|
| 11 | # version 2 of the License, or (at your option) any later version. |
|---|
| 12 | # |
|---|
| 13 | # This library is distributed in the hope that it will be useful, |
|---|
| 14 | # but WITHOUT ANY WARRANTY; without even the implied warranty of |
|---|
| 15 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
|---|
| 16 | # Lesser General Public License for more details. |
|---|
| 17 | # |
|---|
| 18 | # You should have received a copy of the GNU Lesser General Public |
|---|
| 19 | # License along with this library; if not, write to the Free |
|---|
| 20 | # Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, |
|---|
| 21 | # MA 02111-1307 USA |
|---|
| 22 | # |
|---|
| 23 | # For further information, see <http://www.nexusformat.org> |
|---|
| 24 | # |
|---|
| 25 | # $Id$ |
|---|
| 26 | # |
|---|
| 27 | #==================================================================== |
|---|
| 28 | |
|---|
| 29 | #Edit "makefile_options" to set compiler flags |
|---|
| 30 | include makefile_options |
|---|
| 31 | |
|---|
| 32 | ifdef H4ROOT |
|---|
| 33 | H4LIBS=-L$(H4ROOT)/lib -lmfhdf -ldf -ljpeg |
|---|
| 34 | else |
|---|
| 35 | H4LIBS= |
|---|
| 36 | endif |
|---|
| 37 | ifdef H5ROOT |
|---|
| 38 | H5LIBS=-L$(H5ROOT)/lib -lhdf5 |
|---|
| 39 | else |
|---|
| 40 | H5LIBS= |
|---|
| 41 | endif |
|---|
| 42 | |
|---|
| 43 | LIBNEXUS90_OBJ=NXUmodule.o NXmodule.o |
|---|
| 44 | NXTEST_OBJ=NXtest.o |
|---|
| 45 | NXDUMP_OBJ=NXdump.o |
|---|
| 46 | |
|---|
| 47 | all: libNeXus90.a NXtest NXdump |
|---|
| 48 | |
|---|
| 49 | NXmodule.o: NXmodule.f90 |
|---|
| 50 | $(F90) $(F90FLAGS) -c $(FROOT)/NXmodule.f90 |
|---|
| 51 | |
|---|
| 52 | NXUmodule.o: NXUmodule.f90 NXmodule.o |
|---|
| 53 | $(F90) $(F90FLAGS) -c $(FROOT)/NXUmodule.f90 |
|---|
| 54 | |
|---|
| 55 | NXtest.o: NXtest.f90 |
|---|
| 56 | $(F90) $(F90FLAGS) -c $(FROOT)/NXtest.f90 |
|---|
| 57 | |
|---|
| 58 | NXdump.o: NXdump.f90 |
|---|
| 59 | $(F90) $(F90FLAGS) -c $(FROOT)/NXdump.f90 |
|---|
| 60 | |
|---|
| 61 | libNeXus90.a : $(LIBNEXUS90_OBJ) |
|---|
| 62 | @echo "*** Creating Fortran 90 NeXus interface ***" |
|---|
| 63 | cp libNeXus.a $@ |
|---|
| 64 | ar -r $@ $(LIBNEXUS90_OBJ) |
|---|
| 65 | ranlib $@ |
|---|
| 66 | |
|---|
| 67 | NXtest: libNeXus90.a $(NXTEST_OBJ) |
|---|
| 68 | $(F90) $(F90FLAGS) $(LDFLAGS) -o NXtest $(NXTEST_OBJ) $(FROOT)/libNeXus90.a \ |
|---|
| 69 | $(H4LIBS) $(H5LIBS) -lz |
|---|
| 70 | |
|---|
| 71 | NXdump: libNeXus90.a $(NXDUMP_OBJ) |
|---|
| 72 | $(F90) $(F90FLAGS) $(LDFLAGS) -o NXdump $(NXDUMP_OBJ) $(FROOT)/libNeXus90.a \ |
|---|
| 73 | $(H4LIBS) $(H5LIBS) -lz |
|---|