# makeg95.env # Common makefile settings for wxWindows programs # This file is included by all the other makefiles, thus changes # made here take effect everywhere (except where overriden). # # An alternative to editing this file is to create a shell script # to export specific variables, and call make with the -e switch # to override makefile variables. See wx/install/install.txt. # And you can override specific variables on the make command line, e.g. # # make -f makefile.unix WXDEBUG='' # # You may prefer to use the GNU configure script than raw makefiles - # see contrib/wxshlib. # ########################## Compiler ################################## # C++ compiler # For AIX/CSet++: use CC = xlC # For IRIX: use CC = CC # CC = gcc-2.6.2 CC = gcc # C compiler for pure C programs # Typical: CC=g++ , CCC=gcc # CC=cl386 /Tp, CCC=cl386 # # (Used only for XView, file sb_scrol.c) # CCC = $(CC) # Compiler used for LEX generated C # AIX: use $(CCC) CCLEX=$(CC) MAKE=make # LEX LEX=flex.exe -t -L # YACC. byacc or bison # YACC=byacc.exe YACC=bison.exe # Resource compiler RESCOMP=windres.exe RESFLAGS=--include-dir $(WXDIR)/include --define __WIN32__ --define __WIN95__ --define __GNUWIN32__ ########################## Compiler flags ############################# # Miscellaneous compiler options # Solaris/GCC: -DSVR4 # Solaris/GCC, dynamic library: -DSVR4 -fPIC # FreeBDS 2.0: does not need -D_BSD - always defined # AIX/CSet++: -+ -qsrcmsg -DSYSV # AIX/GCC: -DSYSV -DAIX # Data General: -DDG # HP: -D_HPUX_SOURCE +a1 -Aa +d -z # IRIX: -mips2 OPTIONS= # -D__MINGW32__ # -D__EGCS__ # Debugging information # AIX: comment out. # IRIX: -g3 DEBUGFLAGS = -ggdb -D__WXDEBUG__ # Debug/trace mode. 1 or more for debugging. WXDEBUG=0 WIN95=1 ifeq ($(WIN95),0) # With 3.50, Win95 will use your existing icons to show smaller ones. # With 4.0, you'll have to follow Win95 procedures for icons or you'll get the # default Windows icon. APPVER=3.50 WINVERSION=-DWINVER=0x0350 -D__GNUWIN32__ -D__WIN32__ # Generic WIN32 else APPVER=3.50 # 4.0 # This means 'enable Windows 95 features' (in wxWindows and in VC++ 4.0). WINVERSION=-DWINVER=0x0400 -D__WIN95__ -D__GNUWIN32__ -D__WIN32__ endif CPU=i386 # Suffixes OBJSUFF=o SRCSUFF=cpp LIBPREFIX=lib LIBSUFF=a EXESUFF=.exe RESSUFF=res RSCSUFF=rsc # Warnings # AIX: comment out # IRIX: -w -wlint,-fpiv # These are for the GNU compiler. We now get the compiler to check for as # many things as we can, to catch portability problems sooner. WARN = -Wall # -pedantic -Wpointer-arith -Wtraditional -Wcast-align \ # -Wenum-clash -Wnested-externs -Woverloaded-virtual \ # -Winline -Wconversion # not good with too few 'const' decls in wxWindows # -Wcast-qual -Wwrite-strings # too hard (problems with system header files) # -Wstrict-prototypes -Wmissing-prototypes # -Wredudant-decs # Which GUI, -Dwx_xview or -Dwx_motif (don't change this) GUI = -D__WXMSW__ # Optimization # OPT = -O # FreeBSD 2.0 with i486: OPT = -O2 -m486 # IRIX: -O2 #-O0 : no, -O1: quick, -O2: global -O3: full(register) # Linux: -m486 # -O2 for optimization OPT = # Options for ar archiver # AROPTIONS = crs # For IRIX and Solaris (both SYSVR4). AROPTIONS = ruv RANLIB = ranlib # RANLIB = echo # Uncomment this line for IRIX and Solaris # Compiler libraries: defaults to GCC libraries # Solaris: -lgen -ldl -lsocket -lnsl # and/or possibly -lucb, whatever that is... (-lucb CAUSES MOTIF FILE SELECTION PROBLEMS) # or possibly -lgen -lsocket -L/usr/ccs/lib linbnsl.a # GCC > 2.7.1 on Solaris: -lstdc++ -lc -lgen -ldl -lsocket -lnsl -lucb # SGI: -lPW # FreeBSD 2.0: -lg++ -lcompat # FreeBSD 1.x: -lcompat doesn`t need, only -lg++ needed # AIX: -lCns -lbsd # G++ 2.7.0 requires -liostream too. # IRIX: -lPW #COMPLIBS=-lg++ #for win95 #COMPLIBS=-lgcc # Compiler or system-specific include paths # E.g. some SPARCStations need # -I/usr/ucbinclude/sys #added for win95 COMPPATHS= # HP-specific compiler library: an AIAI convenience HPCOMPLIBS= # LDLIBS for specific GUIs # The following for LINUX and Motif 2.0: #MOTIFLDLIBS = -lwx_motif $(COMPLIBS) -lXm -lXmu -lXpm -lXt -lXext -lX11 -lm #BASICMOTIFLDLIBS = -lwx_motif /aiai/packages/motif1.2.1/motif/sun4/lib/libXm.a /aiai/packages/motif1.2.1/motif/sun4/lib/libXmu.a /aiai/packages/motif1.2.1/motif/sun4/lib/libXt.a /aiai/packages/motif1.2.1/motif/sun4/lib/libX11.a -lm # Apparently libg++ (in COMPLIBS) should go before libXm because of a clash of # function name: re_create. #BASICMOTIFLDLIBS = -lwx_motif $(COMPLIBS) -lXm -lXmu -lXt -lX11 -lm #MOTIFLDLIBS = $(BASICMOTIFLDLIBS) $(COMPLIBS) #XVIEWLDLIBS = -lwx_ol -lxview -lolgx -lX11 -lm $(COMPLIBS) #HPLDLIBS=-lwx_hp -lXm -lXmu -lXt -lX11 -lm #CYGNUSLDLIBS= # Default LDLIBS for XView (don't change this) #LDLIBS = $(CYGNUSLDLIBS) # _ol or _motif (don't need to change, the makefiles will take # care of it if you use motif/hp/xview targets) #GUISUFFIX=_ol ########################## Directories ############################### WINLIBS=-lstdc++ -lgcc \ -lwinspool -lwinmm -lshell32 -loldnames \ -lcomctl32 -lctl3d32 -lodbc32 # Shouldn't need to change these... WXSRC=$(WXDIR)/src/msw WXINC=$(WXDIR)/include WXBASESRC=$(WXDIR)/src/common WXLIB=$(WXDIR)/lib/$(LIBPREFIX)wx.$(LIBSUFF) INC = -I$(WXINC) $(COMPPATHS) RCLFLAGS=-cpp "cpp -lang-c++ -DWIN32 -D_WIN32 -DRCL_INVOKED -I$(WXWIN)\include" #LIBS = -lctl3d32 $(WXLIB) $(WINLIBS) $(COMPLIBS) LIBS = $(WXLIB) $(WINLIBS) $(COMPLIBS) WINFLAGS=-D_X86_=1 -DWIN32 -D_WIN32 $(WINVERSION) #for windows 95 XINCLUDE=$(WINFLAGS) XLIB=$(LIBS) LDLIBS = $(LIBS) # Directory for object files (don't change) OBJDIR = objects$(GUISUFFIX) # You shouldn't need to change these... CPPFLAGS = $(XINCLUDE) $(INC) $(OPTIONS) $(GUI) $(DEBUGFLAGS) -DWXDEBUG='$(WXDEBUG)' $(WARN) $(OPT) CFLAGS = $(XINCLUDE) $(INC) $(OPTIONS) $(GUI) $(DEBUGFLAGS) -DWXDEBUG='$(WXDEBUG)' $(WARN) $(OPT) LDFLAGS = -Wl,--subsystem,windows -mwindows -L$(WXDIR)/lib # Extra patch link for XView #XVIEW_LINK = $(WXDIR)/src/x/objects_ol/sb_scrol.o # $(WXDIR)/src/x/objects_ol/xvwinlp.o .SUFFIXES: .rc .$(RESSUFF) .$(RSCSUFF) .cpp .c # Set these in a batch file instead e.g. install/cygnus.bat # RCINCLUDE="$(WXDIR)/include/msw;$(WXDIR)/contrib/fafa;$(WXDIR)/contrib/itsybits"; \ # CPLUS_INCLUDE_PATH=/usr/H-i386-cygwin32/i386-cygwin32/include:/usr/H-i386-cygwin32/lib/gcc-lib/i386-cygwin32/cygnus-2.7.2-961023/include:$(WXDIR)/include/common:$(WXDIR)/include/msw:$(WXDIR)/contrib/fafa:$(WXDIR)/contrib/itsybits; \ # export CPLUS_INCLUDE_PATH RCINCLUDE; \ .rc.$(RESSUFF): $< $(WXDIR)/include/msw/wx.rc $(RC) $(RESFLAGS1) $< $(RESFLAGS2) $*.$(RESSUFF) $(RCLFLAGS) .$(RESSUFF).$(RSCSUFF): $< $(CVTRES) $< $*.$(RSCSUFF) .$(SRCSUFF).$(OBJSUFF): $(CC) -c $(CPPFLAGS) -o $@ $*.$(SRCSUFF) .c.o: $(CC) -c $(CPPFLAGS) -o $@ $*.c