]>
Commit | Line | Data |
---|---|---|
3266f831 JS |
1 | # generic.env |
2 | # Linux/generic | |
3 | # | |
4 | # Common makefile settings for wxWindows programs | |
5 | # This file is included by all the other makefiles, thus changes | |
6 | # made here take effect everywhere (except where overriden). | |
7 | # RCS-ID: $Id$ | |
8 | # | |
9 | ########################### Programs ################################# | |
10 | ||
11 | # Replace this with your own path if necessary | |
12 | WXDIR = $(WXWIN) | |
13 | ||
14 | # C++ compiler | |
15 | CC = g++ | |
16 | ||
17 | # C compiler | |
18 | CCC = gcc | |
19 | ||
20 | # Compiler for lex/yacc .c programs | |
21 | CCLEX = $(CCC) | |
22 | ||
23 | LEX = lex | |
24 | YACC = yacc | |
777553d2 JS |
25 | # Note: if using bison, use -y option for yacc compatibility |
26 | # YACC = bison -y | |
3266f831 JS |
27 | MAKE = make |
28 | AROPTIONS = ruv | |
29 | RANLIB = ranlib | |
30 | ||
31 | ############################ Switches ################################# | |
32 | ||
33 | # Debug/trace mode. 1 or more for debugging. | |
acbd13a3 JS |
34 | DEBUG = 1 |
35 | GUI = -D__WXSTUBS__ -D__UNIX__ | |
3266f831 JS |
36 | GUISUFFIX = _stubs |
37 | ||
38 | ########################## Compiler flags ############################# | |
39 | ||
40 | # Misc options | |
acbd13a3 | 41 | OPTIONS = -D__LINUX__ -D__WXDEBUG__ |
3266f831 JS |
42 | COPTIONS = |
43 | DEBUGFLAGS = -ggdb | |
44 | INCLUDE = | |
45 | WARN = -Wall -Wno-unused # -w | |
46 | CWARN = -Wall -Wno-unused # -w | |
47 | OPT = # -O2 | |
48 | ||
49 | ############################ Includes ################################# | |
50 | ||
51 | # Compiler or system-specific include paths | |
52 | COMPPATHS = | |
53 | XINCLUDE = -I/usr/openwin/include -I/usr/include/X11 -I/usr/include/Xm \ | |
54 | -I/usr/include/X11/Xm -I/usr/include | |
55 | XLIB = -L/usr/local/X11/lib -L/usr/openwin/lib -L/usr/X11/lib -L/usr/X11R6/lib | |
56 | ||
57 | ############################ Libraries ################################ | |
58 | ||
59 | COMPLIBS = -lstdc++ | |
60 | GUILDLIBS = -lwx_stubs $(COMPLIBS) -lXm -lXmu -lXt -lXpm -lX11 -lm | |
61 | ||
62 | ############################# Suffixes ################################ | |
63 | ||
64 | # Change cpp to c if you want to use main.c instead of main.cpp. | |
65 | # Edit wx_setup.h accordingly (USE_C_MAIN=1) | |
66 | ||
67 | OBJSUFF =o | |
68 | SRCSUFF =cpp | |
69 | MAINSUFF =cpp | |
70 | ||
71 | ####################### No changes below this line #################### | |
72 | ||
73 | WXINC = $(WXDIR)/include | |
74 | WXLIB = $(WXDIR)/lib/libwx$(GUISUFFIX).a | |
75 | INC = -I$(WXINC) -I$(WXDIR)/src/png -I$(WXDIR)/src/zlib $(COMPPATHS) | |
76 | ||
77 | # Directory for object files | |
78 | OBJDIR = objects$(GUISUFFIX) | |
79 | ||
75737d05 JS |
80 | CPPFLAGS = $(EXTRACPPFLAGS) $(INC) $(XINCLUDE) $(OPTIONS) $(GUI) $(DEBUGFLAGS) $(WARN) $(OPT) |
81 | CFLAGS = $(EXTRACFLAGS) $(INC) $(XINCLUDE) $(COPTIONS) $(GUI) $(DEBUGFLAGS) $(CWARN) $(OPT) | |
3266f831 JS |
82 | LDFLAGS = $(EXTRALDFLAGS) $(XLIB) -L$(WXDIR)/lib |
83 | LDLIBS = $(EXTRALDLIBS) $(GUILDLIBS) | |
84 | ||
85 | # Clears all default suffixes | |
86 | .SUFFIXES: .o .cpp .c | |
87 | ||
88 | .c.o : | |
89 | $(CCC) -c $(CFLAGS) -o $@ $< | |
90 | ||
91 | .cpp.o : | |
92 | $(CC) -c $(CPPFLAGS) -o $@ $< | |
93 | ||
94 | .C.o : | |
95 | $(CC) -c $(CPPFLAGS) -o $@ $< | |
96 | ||
97 | ####################### Targets to allow multiple GUIs #################### | |
98 | ||
99 | dummy: | |
100 | echo Use a target: one of motif, stubs | |
101 | ||
102 | stubs: | |
acbd13a3 | 103 | make -f makefile.unx all GUI='-D__WXSTUBS__ -D__UNIX__' GUISUFFIX='_stubs' GUILDLIBS='-lwx_stubs $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm' |
3266f831 JS |
104 | |
105 | motif: | |
acbd13a3 | 106 | make -f makefile.unx all GUI='-D__WXMOTIF__ -D__UNIX__' GUISUFFIX='_motif' GUILDLIBS='-lwx_motif $(COMPLIBS) -lpng -lzlib -lXm -lXmu -lXt -lXpm -lX11 -lm' |
3266f831 JS |
107 | |
108 | gtk: | |
acbd13a3 | 109 | make -f makefile.unx all GUI='-D__WXGTK__ -D__UNIX__' GUISUFFIX='_gtk' GUILDLIBS='-lwx_gtk2 $(COMPLIBS) -ldl -lgtk -lgdk -lglib -lpng -lzlib -lX11 -lm -pthread' |
3266f831 JS |
110 | |
111 | cleanstubs: | |
acbd13a3 | 112 | make -f makefile.unx clean GUI='-D__WXSTUBS__ -D__UNIX__' GUISUFFIX='_stubs' GUILDLIBS='-lwx_stubs $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm' |
3266f831 JS |
113 | |
114 | cleanmotif: | |
acbd13a3 JS |
115 | make -f makefile.unx clean GUI='-D__WXMOTIF__ -D__UNIX__' GUISUFFIX='_motif' GUILDLIBS='-lwx_motif $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm' |
116 | ||
117 | cleangtk: | |
118 | make -f makefile.unx clean GUI='-D__WXGTK__ -D__UNIX__' GUISUFFIX='_gtk' | |
3266f831 JS |
119 | |
120 | $(OBJDIR): | |
121 | mkdir $(OBJDIR) | |
122 |