#----------------------------------------------------------------------------- # Makefile for ANN library #---------------------------------------------------------------------- # 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. #---------------------------------------------------------------------- # History: # Revision 0.1 03/04/98 # Initial release # Revision 1.0 04/01/05 # Renamed files from .cc to .cpp for Microsoft Visual C++ # Added kd_dump.cpp # Revision 1.1 05/03/05 # Added kd_fix_rad_search.cpp and bd_fix_rad_search.cpp #---------------------------------------------------------------------- #----------------------------------------------------------------------------- # Some basic definitions: # BASEDIR where include, src, lib, ... are # INCLIB include directory # LIBLIB library directory #----------------------------------------------------------------------------- BASEDIR = .. INCDIR = $(BASEDIR)/include LIBDIR = $(BASEDIR)/lib SOURCES = ANN.cpp brute.cpp kd_tree.cpp kd_util.cpp kd_split.cpp \ kd_dump.cpp kd_search.cpp kd_pr_search.cpp kd_fix_rad_search.cpp \ bd_tree.cpp bd_search.cpp bd_pr_search.cpp bd_fix_rad_search.cpp \ perf.cpp HEADERS = kd_tree.h kd_split.h kd_util.h kd_search.h \ kd_pr_search.h kd_fix_rad_search.h perf.h pr_queue.h pr_queue_k.h OBJECTS = $(SOURCES:.cpp=.o) #----------------------------------------------------------------------------- # Make the library #----------------------------------------------------------------------------- default: @echo "Specify a target configuration" targets: $(LIBDIR)/$(ANNLIB) $(LIBDIR)/$(ANNLIB): $(OBJECTS) $(MAKELIB) $(ANNLIB) $(OBJECTS) $(RANLIB) $(ANNLIB) mv $(ANNLIB) $(LIBDIR) #----------------------------------------------------------------------------- # Make object files #----------------------------------------------------------------------------- ANN.o: ANN.cpp $(C++) -c -I$(INCDIR) $(CFLAGS) ANN.cpp brute.o: brute.cpp $(C++) -c -I$(INCDIR) $(CFLAGS) brute.cpp kd_tree.o: kd_tree.cpp $(C++) -c -I$(INCDIR) $(CFLAGS) kd_tree.cpp kd_util.o: kd_util.cpp $(C++) -c -I$(INCDIR) $(CFLAGS) kd_util.cpp kd_split.o: kd_split.cpp $(C++) -c -I$(INCDIR) $(CFLAGS) kd_split.cpp kd_search.o: kd_search.cpp $(C++) -c -I$(INCDIR) $(CFLAGS) kd_search.cpp kd_pr_search.o: kd_pr_search.cpp $(C++) -c -I$(INCDIR) $(CFLAGS) kd_pr_search.cpp kd_fix_rad_search.o: kd_fix_rad_search.cpp $(C++) -c -I$(INCDIR) $(CFLAGS) kd_fix_rad_search.cpp kd_dump.o: kd_dump.cpp $(C++) -c -I$(INCDIR) $(CFLAGS) kd_dump.cpp bd_tree.o: bd_tree.cpp $(C++) -c -I$(INCDIR) $(CFLAGS) bd_tree.cpp bd_search.o: bd_search.cpp $(C++) -c -I$(INCDIR) $(CFLAGS) bd_search.cpp bd_pr_search.o: bd_pr_search.cpp $(C++) -c -I$(INCDIR) $(CFLAGS) bd_pr_search.cpp bd_fix_rad_search.o: bd_fix_rad_search.cpp $(C++) -c -I$(INCDIR) $(CFLAGS) bd_fix_rad_search.cpp perf.o: perf.cpp $(C++) -c -I$(INCDIR) $(CFLAGS) perf.cpp #----------------------------------------------------------------------------- # Configuration definitions #----------------------------------------------------------------------------- include ../Make-config #----------------------------------------------------------------------------- # Cleaning #----------------------------------------------------------------------------- clean: -rm -f *.o core realclean: clean