/[zanavi_public1]/navit/navit/maptool/poly_to_tri002/xmakefile
ZANavi

Contents of /navit/navit/maptool/poly_to_tri002/xmakefile

Parent Directory Parent Directory | Revision Log Revision Log


Revision 31 - (show annotations) (download)
Mon Feb 4 17:41:59 2013 UTC (11 years, 1 month ago) by zoff99
File size: 4805 byte(s)
new map version, lots of fixes and experimental new features
1 # makefile for Triangle and Show Me
2 #
3 # Type "make" to compile Triangle and Show Me.
4 #
5 # After compiling, type "triangle -h" and "showme -h" to read instructions
6 # for using each of these programs.
7 #
8 # Type "make trilibrary" to compile Triangle as an object file (triangle.o).
9 #
10 # Type "make distclean" to delete all object and executable files.
11
12 # SRC is the directory in which the C source files are, and BIN is the
13 # directory where you want to put the executable programs. By default,
14 # both are the current directory.
15
16 SRC = ./
17 BIN = ./
18
19 # CC should be set to the name of your favorite C compiler.
20
21 CC = cc
22
23 # CSWITCHES is a list of all switches passed to the C compiler. I strongly
24 # recommend using the best level of optimization. I also strongly
25 # recommend timing each level of optimization to see which is the
26 # best. For instance, when I had a DEC Alpha using DEC's optimizing
27 # compiler, the -O2 switch generated a notably faster version of Triangle
28 # than the -O3 switch. Go figure.
29 #
30 # By default, Triangle and Show Me use double precision floating point
31 # numbers. If you prefer single precision, use the -DSINGLE switch.
32 # Double precision uses more memory, but improves the resolution of
33 # the meshes you can generate with Triangle. It also reduces the
34 # likelihood of a floating exception due to overflow. Also, it is
35 # much faster than single precision on many architectures. I recommend
36 # double precision unless you want to generate a mesh for which you do
37 # not have enough memory to use double precision.
38 #
39 # If yours is not a Unix system, use the -DNO_TIMER switch to eliminate the
40 # Unix-specific timer code. Also, don't try to compile Show Me; it only
41 # works with X Windows.
42 #
43 # To get the exact arithmetic to work right on an Intel processor, use the
44 # -DCPU86 switch with Microsoft C, or the -DLINUX switch with gcc running
45 # on Linux. The floating-point arithmetic might not be robust otherwise.
46 # Please see http://www.cs.cmu.edu/~quake/robust.pc.html for details.
47 #
48 # If you are modifying Triangle, I recommend using the -DSELF_CHECK switch
49 # while you are debugging. Defining the SELF_CHECK symbol causes
50 # Triangle to include self-checking code. Triangle will execute more
51 # slowly, however, so be sure to remove this switch before compiling a
52 # production version.
53 #
54 # If the size of the Triangle binary is important to you, you may wish to
55 # generate a reduced version of Triangle. The -DREDUCED switch gets rid
56 # of all features that are primarily of research interest. Specifically,
57 # defining the REDUCED symbol eliminates the -i, -F, -s, and -C switches.
58 # The -DCDT_ONLY switch gets rid of all meshing algorithms above and beyond
59 # constrained Delaunay triangulation. Specifically, defining the CDT_ONLY
60 # symbol eliminates the -r, -q, -a, -u, -D, -S, and -s switches. The
61 # REDUCED and CDT_ONLY symbols may be particularly attractive when Triangle
62 # is called by another program that does not need all of Triangle's
63 # features; in this case, these switches should appear as part of
64 # "TRILIBDEFS" below.
65 #
66 # On some systems, you may need to include -I/usr/local/include and/or
67 # -L/usr/local/lib in the compiler options to ensure that the X include
68 # files and libraries that Show Me needs are found. If you get errors
69 # like "Can't find include file X11/Xlib.h", you need the former switch.
70 # Try compiling without them first; add them if that fails.
71 #
72 # An example CSWITCHES line is:
73 #
74 # CSWITCHES = -O -DNO_TIMER -DLINUX -I/usr/X11R6/include -L/usr/X11R6/lib
75
76 CSWITCHES = -O -DLINUX -I/usr/X11R6/include -L/usr/X11R6/lib
77
78 # TRILIBDEFS is a list of definitions used to compile an object code version
79 # of Triangle (triangle.o) to be called by another program. The file
80 # "triangle.h" contains detailed information on how to call triangle.o.
81 #
82 # The -DTRILIBRARY should always be used when compiling Triangle into an
83 # object file.
84 #
85 # An example TRILIBDEFS line is:
86 #
87 # TRILIBDEFS = -DTRILIBRARY -DREDUCED -DCDT_ONLY
88
89 TRILIBDEFS = -DTRILIBRARY
90
91 # RM should be set to the name of your favorite rm (file deletion program).
92
93 RM = /bin/rm
94
95 # The action starts here.
96
97 all: $(BIN)triangle $(BIN)showme
98
99 trilibrary: $(BIN)triangle.o $(BIN)tricall
100
101 $(BIN)triangle: $(SRC)triangle.c
102 $(CC) $(CSWITCHES) -o $(BIN)triangle $(SRC)triangle.c -lm
103
104 $(BIN)tricall: $(BIN)tricall.c $(BIN)triangle.o
105 $(CC) $(CSWITCHES) -o $(BIN)tricall $(SRC)tricall.c \
106 $(BIN)triangle.o -lm
107
108 $(BIN)triangle.o: $(SRC)triangle.c $(SRC)triangle.h
109 $(CC) $(CSWITCHES) $(TRILIBDEFS) -c -o $(BIN)triangle.o \
110 $(SRC)triangle.c
111
112 $(BIN)showme: $(SRC)showme.c
113 $(CC) $(CSWITCHES) -o $(BIN)showme $(SRC)showme.c -lX11
114
115 distclean:
116 $(RM) $(BIN)triangle $(BIN)triangle.o $(BIN)tricall $(BIN)showme

   
Visit the ZANavi Wiki