Lines 1-115
Link Here
|
1 |
#----------------------------------------------------------------------------- |
|
|
2 |
# Top-level Makefile for ANN. |
3 |
# |
4 |
# ANN: Approximate Nearest Neighbors |
5 |
# Version: 1.1 05/03/05 |
6 |
#----------------------------------------------------------------------------- |
7 |
# Copyright (c) 1997-2005 University of Maryland and Sunil Arya and |
8 |
# David Mount. All Rights Reserved. |
9 |
# |
10 |
# This software and related documentation is part of the Approximate |
11 |
# Nearest Neighbor Library (ANN). This software is provided under |
12 |
# the provisions of the Lesser GNU Public License (LGPL). See the |
13 |
# file ../ReadMe.txt for further information. |
14 |
# |
15 |
# The University of Maryland (U.M.) and the authors make no |
16 |
# representations about the suitability or fitness of this software for |
17 |
# any purpose. It is provided "as is" without express or implied |
18 |
# warranty. |
19 |
#----------------------------------------------------------------------------- |
20 |
# Revision 0.1 09/06/97 |
21 |
# alpha release |
22 |
# Revision 0.2 06/26/98 |
23 |
# Minor changes to fix compilation errors on SGI systems. |
24 |
# Revision 1.0 04/01/05 |
25 |
# Initial release (finally!) |
26 |
# Added linux-g++ target |
27 |
# Revision 1.1 05/03/05 |
28 |
# Added macosx-g++ target |
29 |
#----------------------------------------------------------------------------- |
30 |
|
31 |
#----------------------------------------------------------------------------- |
32 |
# default: list the options |
33 |
# The following legacy targets are also available. |
34 |
# make sunos4 for Sun with SunOS 4.x |
35 |
# make sunos4-g++ for Sun with SunOS 4.x and g++ |
36 |
# make alpha-g++ for DEC Alpha and g++ |
37 |
# The following targets are used for internal development only |
38 |
# make authors-debug author's debugging |
39 |
# make authors-perf author's performance evaluations |
40 |
# make distribution author's generation of distribution file |
41 |
#----------------------------------------------------------------------------- |
42 |
default: |
43 |
@echo "Enter one of the following:" |
44 |
@echo " make linux-g++ for Linux and g++" |
45 |
@echo " make macosx-g++ for Mac OS X and g++" |
46 |
@echo " make sunos5 for Sun with SunOS 5.x" |
47 |
@echo " make sunos5-sl for Sun with SunOS 5.x, make shared libs" |
48 |
@echo " make sunos5-g++ for Sun with SunOS 5.x and g++" |
49 |
@echo " make sunos5-g++-sl for Sun with SunOS 5.x, g++, make shared libs" |
50 |
@echo " make clean remove .o files" |
51 |
@echo " make realclean remove .o, library and executable files" |
52 |
@echo " " |
53 |
@echo "See file Makefile for other compilation options, such as disabling" |
54 |
@echo "performance measurement code." |
55 |
|
56 |
#----------------------------------------------------------------------------- |
57 |
# main make entry point |
58 |
#----------------------------------------------------------------------------- |
59 |
alpha-g++ macosx-g++ linux-g++ sgi sunos4 sunos4-g++ sunos5 sunos5-g++ sunos5-g++-sl authors-debug authors-perf: |
60 |
cd src ; $(MAKE) $@ |
61 |
cd test ; $(MAKE) $@ |
62 |
cd sample ; $(MAKE) $@ |
63 |
cd ann2fig ; $(MAKE) $@ |
64 |
|
65 |
#----------------------------------------------------------------------------- |
66 |
# Remove .o files and core files |
67 |
#----------------------------------------------------------------------------- |
68 |
clean: |
69 |
cd src ; $(MAKE) clean |
70 |
cd test ; $(MAKE) clean |
71 |
cd sample ; $(MAKE) clean |
72 |
cd ann2fig ; $(MAKE) clean |
73 |
cd doc ; $(MAKE) clean |
74 |
cd MS_Win32; $(MAKE) clean |
75 |
cd validate ; $(MAKE) clean |
76 |
|
77 |
#----------------------------------------------------------------------------- |
78 |
# Remove everthing that can be remade |
79 |
#----------------------------------------------------------------------------- |
80 |
realclean: |
81 |
-rm -f lib/* |
82 |
-rm -f bin/* |
83 |
cd src ; $(MAKE) realclean |
84 |
cd test ; $(MAKE) realclean |
85 |
cd sample ; $(MAKE) realclean |
86 |
cd ann2fig ; $(MAKE) realclean |
87 |
cd doc ; $(MAKE) realclean |
88 |
cd MS_Win32; $(MAKE) realclean |
89 |
cd validate ; $(MAKE) realclean |
90 |
|
91 |
#----------------------------------------------------------------------------- |
92 |
# Make distribution package (for use by authors only) |
93 |
#----------------------------------------------------------------------------- |
94 |
DISTR = ann_1.1.2 |
95 |
|
96 |
distribution: realclean |
97 |
cd .. ; mv -f $(DISTR) $(DISTR)-old; mkdir $(DISTR) |
98 |
cp Copyright.txt ../$(DISTR) |
99 |
cp License.txt ../$(DISTR) |
100 |
cp Make-config ../$(DISTR) |
101 |
cp Makefile ../$(DISTR) |
102 |
cp ReadMe.txt ../$(DISTR) |
103 |
cp -r MS_Win32 ../$(DISTR) |
104 |
# cd ..; mv -f $(DISTR)_MS_Win32_bin $(DISTR)_MS_Win32_bin-old |
105 |
cp -r MS_Win32_bin ../$(DISTR)_MS_Win32_bin |
106 |
cp -r bin ../$(DISTR) |
107 |
cp -r include ../$(DISTR) |
108 |
cp -r lib ../$(DISTR) |
109 |
cp -r src ../$(DISTR) |
110 |
cp -r test ../$(DISTR) |
111 |
cp -r sample ../$(DISTR) |
112 |
cp -r ann2fig ../$(DISTR) |
113 |
cd ../$(DISTR); mkdir doc |
114 |
cp doc/*.pdf ../$(DISTR)/doc |
115 |
# cd .. ; tar -cfv $(DISTR).tar $(DISTR) ; gzip $(DISTR).tar |