diff options
Diffstat (limited to 'math/ann/files/patch-Makefile')
-rw-r--r-- | math/ann/files/patch-Makefile | 149 |
1 files changed, 149 insertions, 0 deletions
diff --git a/math/ann/files/patch-Makefile b/math/ann/files/patch-Makefile new file mode 100644 index 000000000000..d9309c87d7d5 --- /dev/null +++ b/math/ann/files/patch-Makefile @@ -0,0 +1,149 @@ +--- Makefile.orig 2010-01-28 12:40:01.000000000 +0800 ++++ Makefile 2010-04-23 20:57:18.091096908 +0800 +@@ -1,115 +1,32 @@ +-#----------------------------------------------------------------------------- +-# Top-level Makefile for ANN. +-# +-# ANN: Approximate Nearest Neighbors +-# Version: 1.1 05/03/05 +-#----------------------------------------------------------------------------- +-# Copyright (c) 1997-2005 University of Maryland and Sunil Arya and +-# David Mount. All Rights Reserved. +-# +-# This software and related documentation is part of the Approximate +-# Nearest Neighbor Library (ANN). This software is provided under +-# the provisions of the Lesser GNU Public License (LGPL). See the +-# file ../ReadMe.txt for further information. +-# +-# The University of Maryland (U.M.) and the authors make no +-# representations about the suitability or fitness of this software for +-# any purpose. It is provided "as is" without express or implied +-# warranty. +-#----------------------------------------------------------------------------- +-# Revision 0.1 09/06/97 +-# alpha release +-# Revision 0.2 06/26/98 +-# Minor changes to fix compilation errors on SGI systems. +-# Revision 1.0 04/01/05 +-# Initial release (finally!) +-# Added linux-g++ target +-# Revision 1.1 05/03/05 +-# Added macosx-g++ target +-#----------------------------------------------------------------------------- +- +-#----------------------------------------------------------------------------- +-# default: list the options +-# The following legacy targets are also available. +-# make sunos4 for Sun with SunOS 4.x +-# make sunos4-g++ for Sun with SunOS 4.x and g++ +-# make alpha-g++ for DEC Alpha and g++ +-# The following targets are used for internal development only +-# make authors-debug author's debugging +-# make authors-perf author's performance evaluations +-# make distribution author's generation of distribution file +-#----------------------------------------------------------------------------- +-default: +- @echo "Enter one of the following:" +- @echo " make linux-g++ for Linux and g++" +- @echo " make macosx-g++ for Mac OS X and g++" +- @echo " make sunos5 for Sun with SunOS 5.x" +- @echo " make sunos5-sl for Sun with SunOS 5.x, make shared libs" +- @echo " make sunos5-g++ for Sun with SunOS 5.x and g++" +- @echo " make sunos5-g++-sl for Sun with SunOS 5.x, g++, make shared libs" +- @echo " make clean remove .o files" +- @echo " make realclean remove .o, library and executable files" +- @echo " " +- @echo "See file Makefile for other compilation options, such as disabling" +- @echo "performance measurement code." +- +-#----------------------------------------------------------------------------- +-# main make entry point +-#----------------------------------------------------------------------------- +-alpha-g++ macosx-g++ linux-g++ sgi sunos4 sunos4-g++ sunos5 sunos5-g++ sunos5-g++-sl authors-debug authors-perf: +- cd src ; $(MAKE) $@ +- cd test ; $(MAKE) $@ +- cd sample ; $(MAKE) $@ +- cd ann2fig ; $(MAKE) $@ +- +-#----------------------------------------------------------------------------- +-# Remove .o files and core files +-#----------------------------------------------------------------------------- ++CXXFLAGS+=-Iinclude -Isrc -fPIC ++LDFLAGS+= ++VPATH=src ++SRCS=ANN.cpp \ ++ bd_fix_rad_search.cpp bd_pr_search.cpp bd_search.cpp bd_tree.cpp \ ++ brute.cpp perf.cpp kd_tree.cpp kd_util.cpp \ ++ kd_dump.cpp kd_fix_rad_search.cpp kd_pr_search.cpp kd_search.cpp kd_split.cpp ++OBJS=$(SRCS:.cpp=.o) ++LIBDIR=lib ++ ++ANN_SO=libann.so ++ANN_A=libann.a ++ANN_SONAME=$(ANN_SO).0 ++LIBANN_SO=$(LIBDIR)/$(ANN_SONAME) ++LIBANN_A=$(LIBDIR)/$(ANN_A) ++TARGETS=$(LIBANN_SO) $(LIBANN_A) ++ ++all: $(TARGETS) ++ ++install: all ++ ++%.o: %.cpp ++ $(CXX) $(CXXFLAGS) -c $< -o $@ ++ ++$(LIBANN_SO): $(OBJS) ++ $(CXX) $^ -o $@ -shared -Wl,-soname,$(ANN_SONAME) $(LDFLAGS) ++ ++$(LIBANN_A): $(OBJS) ++ $(AR) rcs $@ $^ ++ + clean: +- cd src ; $(MAKE) clean +- cd test ; $(MAKE) clean +- cd sample ; $(MAKE) clean +- cd ann2fig ; $(MAKE) clean +- cd doc ; $(MAKE) clean +- cd MS_Win32; $(MAKE) clean +- cd validate ; $(MAKE) clean +- +-#----------------------------------------------------------------------------- +-# Remove everthing that can be remade +-#----------------------------------------------------------------------------- +-realclean: +- -rm -f lib/* +- -rm -f bin/* +- cd src ; $(MAKE) realclean +- cd test ; $(MAKE) realclean +- cd sample ; $(MAKE) realclean +- cd ann2fig ; $(MAKE) realclean +- cd doc ; $(MAKE) realclean +- cd MS_Win32; $(MAKE) realclean +- cd validate ; $(MAKE) realclean +- +-#----------------------------------------------------------------------------- +-# Make distribution package (for use by authors only) +-#----------------------------------------------------------------------------- +-DISTR = ann_1.1.2 +- +-distribution: realclean +- cd .. ; mv -f $(DISTR) $(DISTR)-old; mkdir $(DISTR) +- cp Copyright.txt ../$(DISTR) +- cp License.txt ../$(DISTR) +- cp Make-config ../$(DISTR) +- cp Makefile ../$(DISTR) +- cp ReadMe.txt ../$(DISTR) +- cp -r MS_Win32 ../$(DISTR) +-# cd ..; mv -f $(DISTR)_MS_Win32_bin $(DISTR)_MS_Win32_bin-old +- cp -r MS_Win32_bin ../$(DISTR)_MS_Win32_bin +- cp -r bin ../$(DISTR) +- cp -r include ../$(DISTR) +- cp -r lib ../$(DISTR) +- cp -r src ../$(DISTR) +- cp -r test ../$(DISTR) +- cp -r sample ../$(DISTR) +- cp -r ann2fig ../$(DISTR) +- cd ../$(DISTR); mkdir doc +- cp doc/*.pdf ../$(DISTR)/doc +-# cd .. ; tar -cfv $(DISTR).tar $(DISTR) ; gzip $(DISTR).tar ++ rm -f $(TARGETS) $(OBJS) |