CFLAGS = -O2 -ftree-vectorize -fPIC FFLAGS = -fast -O4 CC = @CC@ $(CFLAGS) CXX = @CXX@ $(CFLAGS) F77= @F77@ $(FFLAGS) LINK= @LINKER@ BASE = ./src INSTALLDIR = @prefix@/bin LIBDIR = @prefix@/lib INCDIR = @prefix@/include/duchamp V = @PACKAGE_VERSION@ EXEC = Duchamp-$(V) EXEC-STUB = Duchamp AR = ar cq LIB = libduchamp-$(V).a LIB_LN = libduchamp.a RANLIB = ranlib SHAREDLIB = @SHRLD@ #SHAREDFLAGS = -shared -Wl,-soname,@SHRLIB@ LIBSO = @SHRLIB@ LIBSO_LN = @SHRLN@ INSTALL = @INSTALL@ LN_S = @LN_S@ PGPLOTINC = @PGPLOTINC@ PGPLOTLIB = @PGPLOTLIB@ CFITSIOINC = @CFITSIOINC@ CFITSIOLIB = @CFITSIOLIB@ WCSINC = @WCSINC@ WCSLIB = @WCSLIB@ CINC = -I$(BASE) $(PGPLOTINC) $(WCSINC) $(CFITSIOINC) LIBS = $(WCSLIB) $(CFITSIOLIB) $(PGPLOTLIB) ATROUSDIR = $(BASE)/ATrous PIXELMAPDIR = $(BASE)/PixelMap DETECTIONDIR = $(BASE)/Detection CUBESDIR = $(BASE)/Cubes FITSIODIR = $(BASE)/FitsIO PLOTDIR = $(BASE)/Plotting UTILDIR = $(BASE)/Utils OUTPUTSDIR = $(BASE)/Outputs TESTDIR = ./verification HEADS = $(BASE)/config.h\ $(BASE)/duchamp.hh\ $(BASE)/pgheader.hh\ $(BASE)/param.hh\ $(BASE)/fitsHeader.hh\ $(PIXELMAPDIR)/Line.hh\ $(PIXELMAPDIR)/Voxel.hh\ $(PIXELMAPDIR)/Scan.hh\ $(PIXELMAPDIR)/Object2D.hh\ $(PIXELMAPDIR)/Object3D.hh\ $(ATROUSDIR)/atrous.hh\ $(ATROUSDIR)/filter.hh\ $(ATROUSDIR)/B3SplineFilter.hh\ $(ATROUSDIR)/TriangleFilter.hh\ $(ATROUSDIR)/HaarFilter.hh\ $(ATROUSDIR)/FilterFactory.hh\ $(DETECTIONDIR)/detection.hh\ $(DETECTIONDIR)/finders.hh\ $(DETECTIONDIR)/ObjectGrower.hh\ $(CUBESDIR)/cubes.hh\ $(FITSIODIR)/Beam.hh\ $(FITSIODIR)/DuchampBeam.hh\ $(FITSIODIR)/ReadExisting.hh\ $(FITSIODIR)/ReadExistingRecon.hh\ $(FITSIODIR)/ReadExistingSmooth.hh\ $(FITSIODIR)/WriteArray.hh\ $(FITSIODIR)/WriteBaselineArray.hh\ $(FITSIODIR)/WriteMaskArray.hh\ $(FITSIODIR)/WriteMomentMapArray.hh\ $(FITSIODIR)/WriteMomentMaskArray.hh\ $(FITSIODIR)/WriteReconArray.hh\ $(FITSIODIR)/WriteSmoothArray.hh\ $(PLOTDIR)/DuchampPlot.hh\ $(PLOTDIR)/MultipleDuchampPlot.hh\ $(PLOTDIR)/ImagePlot.hh\ $(PLOTDIR)/SpectralPlot.hh\ $(PLOTDIR)/SimpleSpectralPlot.hh\ $(PLOTDIR)/CutoutPlot.hh\ $(UTILDIR)/Hanning.hh\ $(UTILDIR)/GaussSmooth1D.hh\ $(UTILDIR)/GaussSmooth2D.hh\ $(UTILDIR)/Section.hh\ $(UTILDIR)/Statistics.hh\ $(UTILDIR)/utils.hh\ $(UTILDIR)/feedback.hh\ $(UTILDIR)/mycpgplot.hh\ $(UTILDIR)/VOField.hh\ $(UTILDIR)/VOParam.hh\ $(OUTPUTSDIR)/columns.hh\ $(OUTPUTSDIR)/CatalogueSpecification.hh\ $(OUTPUTSDIR)/CatalogueWriter.hh\ $(OUTPUTSDIR)/FileCatalogueWriter.hh\ $(OUTPUTSDIR)/ASCIICatalogueWriter.hh\ $(OUTPUTSDIR)/VOTableCatalogueWriter.hh\ $(OUTPUTSDIR)/AnnotationWriter.hh\ $(OUTPUTSDIR)/KarmaAnnotationWriter.hh\ $(OUTPUTSDIR)/DS9AnnotationWriter.hh\ $(OUTPUTSDIR)/CasaAnnotationWriter.hh OBJECTS-NOPG = $(BASE)/mainDuchamp.o \ $(BASE)/duchamp.o\ $(BASE)/param.o\ $(BASE)/fitsHeader.o\ $(PIXELMAPDIR)/Line.o\ $(PIXELMAPDIR)/Voxel.o\ $(PIXELMAPDIR)/Scan.o\ $(PIXELMAPDIR)/Object2D.o\ $(PIXELMAPDIR)/Object3D.o\ $(ATROUSDIR)/filter.o\ $(ATROUSDIR)/B3SplineFilter.o\ $(ATROUSDIR)/TriangleFilter.o\ $(ATROUSDIR)/HaarFilter.o\ $(ATROUSDIR)/FilterFactory.o\ $(ATROUSDIR)/atrous_1d_reconstruct.o\ $(ATROUSDIR)/atrous_2d_reconstruct.o\ $(ATROUSDIR)/atrous_3d_reconstruct.o\ $(ATROUSDIR)/baselineSubtract.o\ $(ATROUSDIR)/ReconSearch.o\ $(DETECTIONDIR)/detection.o\ $(DETECTIONDIR)/ObjectGrower.o\ $(DETECTIONDIR)/areClose.o\ $(DETECTIONDIR)/lutz_detect.o\ $(DETECTIONDIR)/mergeIntoList.o\ $(DETECTIONDIR)/outputDetection.o\ $(DETECTIONDIR)/sorting.o\ $(DETECTIONDIR)/spectrumDetect.o\ $(CUBESDIR)/cubes.o\ $(CUBESDIR)/cubes_extended.o\ $(CUBESDIR)/baseline.o\ $(CUBESDIR)/CubicSearch.o\ $(CUBESDIR)/detectionIO.o\ $(CUBESDIR)/existingDetections.o\ $(CUBESDIR)/getImage.o\ $(CUBESDIR)/invertCube.o\ $(CUBESDIR)/Merger.o\ $(CUBESDIR)/momentMap.o\ $(CUBESDIR)/smoothCube.o\ $(CUBESDIR)/spectraUtils.o\ $(CUBESDIR)/trimImage.o\ $(FITSIODIR)/Beam.o\ $(FITSIODIR)/DuchampBeam.o\ $(FITSIODIR)/ReadExisting.o\ $(FITSIODIR)/ReadExistingRecon.o\ $(FITSIODIR)/ReadExistingSmooth.o\ $(FITSIODIR)/WriteArray.o\ $(FITSIODIR)/WriteBaselineArray.o\ $(FITSIODIR)/WriteMaskArray.o\ $(FITSIODIR)/WriteMomentMapArray.o\ $(FITSIODIR)/WriteMomentMaskArray.o\ $(FITSIODIR)/WriteReconArray.o\ $(FITSIODIR)/WriteSmoothArray.o\ $(FITSIODIR)/dataIO.o\ $(FITSIODIR)/headerIO.o\ $(FITSIODIR)/subsection.o\ $(FITSIODIR)/wcsIO.o\ $(UTILDIR)/Section.o\ $(UTILDIR)/Statistics.o\ $(UTILDIR)/feedback.o\ $(UTILDIR)/GaussSmooth1D.o\ $(UTILDIR)/Hanning.o\ $(UTILDIR)/VOField.o\ $(UTILDIR)/VOParam.o\ $(UTILDIR)/getStats.o\ $(UTILDIR)/getNormalStats.o\ $(UTILDIR)/getRobustStats.o\ $(UTILDIR)/linear_regression.o\ $(UTILDIR)/medianBaseline.o\ $(UTILDIR)/position_related.o\ $(UTILDIR)/sort.o\ $(UTILDIR)/string_related.o\ $(UTILDIR)/wcsFunctions.o\ $(UTILDIR)/zscale.o\ $(OUTPUTSDIR)/columns.o\ $(OUTPUTSDIR)/CatalogueSpecification.o\ $(OUTPUTSDIR)/CatalogueWriter.o\ $(OUTPUTSDIR)/FileCatalogueWriter.o\ $(OUTPUTSDIR)/ASCIICatalogueWriter.o\ $(OUTPUTSDIR)/VOTableCatalogueWriter.o\ $(OUTPUTSDIR)/AnnotationWriter.o\ $(OUTPUTSDIR)/KarmaAnnotationWriter.o\ $(OUTPUTSDIR)/DS9AnnotationWriter.o\ $(OUTPUTSDIR)/CasaAnnotationWriter.o ifeq ($(strip $(PGPLOTLIB)),) OBJECTS = $(OBJECTS-NOPG) else OBJECTS = $(OBJECTS-NOPG)\ $(CUBESDIR)/drawBlankEdges.o\ $(CUBESDIR)/drawMomentCutout.o\ $(CUBESDIR)/outputSpectra.o\ $(CUBESDIR)/plotting.o\ $(DETECTIONDIR)/drawBorders.o\ $(PLOTDIR)/DuchampPlot.o\ $(PLOTDIR)/MultipleDuchampPlot.o\ $(PLOTDIR)/ImagePlot.o\ $(PLOTDIR)/SpectralPlot.o\ $(PLOTDIR)/SimpleSpectralPlot.o\ $(PLOTDIR)/CutoutPlot.o\ $(UTILDIR)/mycpgplot.o\ $(UTILDIR)/PlottingUtilities.o\ $(UTILDIR)/pgplot_related.o endif duchamp : $(OBJECTS) $(LINK) -o $(EXEC) $(OBJECTS) $(LIBS) lib : $(OBJECTS) $(AR) $(LIB) $(OBJECTS) $(RANLIB) $(LIB) $(SHAREDLIB) $(CINC) $(LIBS) -o $(LIBSO) $(OBJECTS) # $(CXX) $(SHAREDFLAGS) -o $(LIBSO) $(OBJECTS) createTestImage : $(TESTDIR)/createTestImage.o $(UTILDIR)/get_random_spectrum.o $(CXX) -o createTestImage.x $(TESTDIR)/createTestImage.o $(UTILDIR)/get_random_spectrum.o $(CFITSIOLIB) @LIBS@ install : $(INSTALL) -d -m 2755 $(INSTALLDIR) $(INSTALL) -m 755 $(EXEC) $(INSTALLDIR) $(RM) $(INSTALLDIR)/$(EXEC-STUB) cd $(INSTALLDIR) && $(LN_S) $(EXEC) $(EXEC-STUB) -test ! -f $(LIB) || $(INSTALL) -d -m 2755 $(LIBDIR) -test ! -f $(LIB) || $(INSTALL) -m 644 $(LIB) $(LIBDIR) -test ! -f $(LIB) || ( cd $(LIBDIR) && $(RM) $(LIB_LN) && $(LN_S) $(LIB) $(LIB_LN) ) -test ! -f $(LIBSO) || ( $(INSTALL) -m 755 $(LIBSO) $(LIBDIR) && \ if [ "@SHRLN@" != "" ] ; then \ cd $(LIBDIR) && $(RM) $(LIBSO_LN) && $(LN_S) $(LIBSO) $(LIBSO_LN); \ fi ) $(INSTALL) -d -m 2755 $(INCDIR) $(INSTALL) -m 644 $(BASE)/*.hh $(INCDIR) $(INSTALL) -m 644 $(BASE)/*.h $(INCDIR) $(INSTALL) -d -m 2755 $(INCDIR)/Cubes $(INSTALL) -m 644 $(CUBESDIR)/*.hh $(INCDIR)/Cubes $(INSTALL) -d -m 2755 $(INCDIR)/ATrous $(INSTALL) -m 644 $(ATROUSDIR)/*.hh $(INCDIR)/ATrous $(INSTALL) -d -m 2755 $(INCDIR)/Detection $(INSTALL) -m 644 $(DETECTIONDIR)/*.hh $(INCDIR)/Detection $(INSTALL) -d -m 2755 $(INCDIR)/FitsIO $(INSTALL) -m 644 $(FITSIODIR)/*.hh $(INCDIR)/FitsIO $(INSTALL) -d -m 2755 $(INCDIR)/Plotting $(INSTALL) -m 644 $(PLOTDIR)/*.hh $(INCDIR)/Plotting $(INSTALL) -d -m 2755 $(INCDIR)/PixelMap $(INSTALL) -m 644 $(PIXELMAPDIR)/*.hh $(INCDIR)/PixelMap $(INSTALL) -d -m 2755 $(INCDIR)/Outputs $(INSTALL) -m 644 $(OUTPUTSDIR)/*.hh $(INCDIR)/Outputs $(INSTALL) -d -m 2755 $(INCDIR)/Utils $(INSTALL) -m 644 $(UTILDIR)/*.hh $(INCDIR)/Utils $(INSTALL) -m 644 $(UTILDIR)/*.tcc $(INCDIR)/Utils $(OBJECTS) : $(HEADS) .cc.o: $(CXX) -c $< $(CINC) -o $@ .c.o: $(CC) -c $< $(CINC) -o $@ clean : rm -f $(BASE)/*.o $(ATROUSDIR)/*.o $(CUBESDIR)/*.o $(FITSIODIR)/*.o $(DETECTIONDIR)/*.o $(UTILDIR)/*.o $(PIXELMAPDIR)/*.o $(PLOTDIR)/*.o $(LIB) $(LIBSO) cleanest: clean rm -rf Makefile config.log config.status src/config.h $(EXEC)