# 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). # The settings are for GnuWin32-derived compilers, i.e. Cygwin and Mingw32. # # If using Cygwin, set this to 0. # If using Mingw32, set this to 1. MINGW32=1 # Set to the version you have MINGW32VERSION=2.95 # Set to the appropriate remove command RM=rm -f # Set to the appropriate copy command COPY=cp ########################## Compiler ################################## # C++ compiler # Put a comment before --pipe for Cygwin, remove comment for Mingw32 2.95 ifeq ($(MINGW32),1) ifeq ($(MINGW32VERSION),2.95) CC = gcc --pipe -fvtable-thunks else CC = gcc endif else CC = gcc endif # C compiler for pure C programs CCC = $(CC) # Compiler used for LEX generated C CCLEX=gcc MAKE=make # LEX LEX=flex # -t -L # YACC. yacc or bison YACC=byacc #YACC=bison # Settings for Cyginw/Mingw32 RESCOMP=windres.exe RCINPUTSWITCH=-i RCOUTPUTSWITCH=-o RCINCSWITCH=--include-dir RCDEFSWITCH=--define RESFLAGS=$(RCINCSWITCH) $(WXDIR)/include $(RCDEFSWITCH) __WIN32__ $(RCDEFSWITCH) __WIN95__ $(RCDEFSWITCH) __GNUWIN32__ ########################## Compiler flags ############################# # Miscellaneous compiler options OPTIONS= -DSTRICT # -D__MINGW32__ # Debugging information DEBUGFLAGS = -D__WXDEBUG__ 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 WARN = -Wall # Which GUI, -Dwx_xview or -Dwx_motif (don't change this) GUI = -D__WXMSW__ -D__WINDOWS__ # according to Guillermo Rodriguez Garcia this flag is # needed to make the standard div() function work - otherwise it returns # absolutely incorrect results and completely breaks the wxImage class # (where it's used extensively) # GRG: at least it is needed in mingw32-gcc2.8.1 OPT = -fno-pcc-struct-return -O2 -fno-rtti -fno-exceptions # Options for ar archiver # AROPTIONS = crs # For IRIX and Solaris (both SYSVR4). AROPTIONS = ruv RANLIB = ranlib # Extra compiler libraries COMPLIBS= # Compiler or system-specific include paths COMPPATHS= ########################## Directories ############################### WINLIBS=-lstdc++ -lgcc \ -lwinspool -lwinmm -lshell32 \ -lcomctl32 -lctl3d32 -lodbc32 -ladvapi32 \ -lole32 -loleaut32 -luuid \ -lodbc32 -lwsock32# -loldnames #WINLIBS=-lstdc++ -lgcc \ # -lwinspool -lwinmm -lshell32 \ # -lcomctl32 -lctl3d32 -lodbc32 -ladvapi32 -lwsock32 # -loldnames # Shouldn't need to change these... WXSRC=$(WXDIR)/src/msw WXINC=$(WXDIR)/include WXBASESRC=$(WXDIR)/src/common WXLIB=$(WXDIR)/lib/$(LIBPREFIX)wx.$(LIBSUFF) GNUWIN32EXTRA=-I$(WXDIR)/include/wx/msw/gnuwin32 ifeq ($(MINGW32),1) ifeq ($(MINGW32),2.95) GNUWIN32EXTRA= endif endif ifeq ($(MINGW32),1) INC = -I$(WXINC) -I$(WXDIR)/src/png -I$(WXDIR)/src/jpeg -I$(WXDIR)/src/zlib $(EXTRAINC) $(COMPPATHS) else INC = -I$(WXINC) -I$(WXDIR)/src/png -I$(WXDIR)/src/jpeg -I$(WXDIR)/src/zlib $(EXTRAINC) $(COMPPATHS) -I$(WXDIR)/include/wx/msw/gnuwin32 endif RCLFLAGS=-cpp "cpp -lang-c++ -DWIN32 -D_WIN32 -DRCL_INVOKED -I$(WXWIN)/include" #LIBS = $(WXLIB) $(WXDIR)/lib/libzlib.a $(WXDIR)/lib/libpng.a $(WXDIR)/lib/libjpeg.a $(WINLIBS) $(COMPLIBS) $(EXTRALIBS) LIBS = $(WXLIB) -lpng -ljpeg -lzlib $(WINLIBS) $(COMPLIBS) $(EXTRALIBS) 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) OBJDIR = . # You shouldn't need to change these... CPPFLAGS = $(XINCLUDE) $(INC) $(OPTIONS) $(GUI) $(DEBUGFLAGS) $(WARN) $(OPT) $(EXTRACPPFLAGS) CFLAGS = $(XINCLUDE) $(INC) $(OPTIONS) $(GUI) $(DEBUGFLAGS) $(WARN) $(OPT) $(EXTRACFLAGS) WINDOWSLDFLAGS=-Wl,--subsystem,windows -mwindows LDFLAGS = $(WINDOWSLDFLAGS) -L$(WXDIR)/lib $(EXTRALDFLAGS) .SUFFIXES: .rc .$(RESSUFF) .$(RSCSUFF) .cpp .c .$(SRCSUFF).$(OBJSUFF): $(CC) -c $(CPPFLAGS) -o $@ $*.$(SRCSUFF) .c.o: $(CC) -c $(CPPFLAGS) -o $@ $*.c