]> git.saurik.com Git - wxWidgets.git/blobdiff - src/makeg95.env
compare charset strings case-insensitively (and so avoid conversions between utf...
[wxWidgets.git] / src / makeg95.env
index d07503208f1e26d13f5e094f9942caba056c0c4d..f235603377533b316caa780460b3c5c9d6b07818 100644 (file)
 #
 MINGW32=1
 
+# set MIN_SUFFIX to nothing if you use only MinGW compiler, set it to
+# something MinGW-specific if you want to build wxWindows with more than one
+# compiler
+ifeq ($(MINGW32),1)
+  MIN_SUFFIX=_min
+else
+  MIN_SUFFIX=_cyg
+endif
+
 # Set to your gcc version. Generally 'gcc --version' tells you
 # which version you have. But it cannot distinguish between
 # 2.95.2-1 and earlier suffix versions of 2.95 . In that case,
@@ -57,6 +66,10 @@ MINGW32VERSION=3.0
 # on the command line like so: make WINE=1 -f makefile.g95
 #WINE=1
 
+# Set this if you are using a cross-compiler, i.e. compiling on one system
+# the program for another one
+# CROSS=i386-mingw32-
+
 # If we're using MSYS, or other utilities that use forward slashes,
 # you need to set this when invoking the makefile from DOS, or the
 # wrong separators will be assumed. However, if you're using MSYS,
@@ -69,7 +82,8 @@ OSTYPE=msys
 endif
 
 # If building DLL, the version
-WXVERSION=250
+include $(WXDIR)/src/version.mak
+WXVERSION=$(wxMAJOR_VERSION)$(wxMINOR_VERSION)$(wxRELEASE_NUMBER_IFUNSTABLE)
 
 ifndef UNICODE
   UNICODE=0
@@ -158,8 +172,8 @@ endif
 
 # Define the C++ and C compiler respectively
 ifndef WINE
-CXX = g++
-CC = gcc
+CXX = $(CROSS)g++
+CC = $(CROSS)gcc
 else
 CXX = wineg++
 CC = winegcc
@@ -167,7 +181,7 @@ endif
 
 # Compiler used for LEX generated C
 # For now at least, it can be the same as the regular C compiler
-CCLEX = $(CC)
+CCLEX = $(CROSS)$(CC)
 
 # This shouldn't be needed as make is supposed to define this
 # variable itself. Uncomment it if your make complains.
@@ -184,7 +198,7 @@ CCLEX = $(CC)
 # Some versions of windres cannot cope with the --preprocessor
 # option. Uncomment the RCPREPROCESSOR line below if yours can.
 ifndef WINE
-RESCOMP=windres $(_USE_TEMP_FILE_IF_SUPPORTED)
+RESCOMP=$(CROSS)windres $(_USE_TEMP_FILE_IF_SUPPORTED)
 else
 RESCOMP=wrc
 endif
@@ -201,8 +215,8 @@ RCDEFSWITCH=--define
 RESFLAGS=$(RCPREPROCESSOR) $(RCINCSWITCH) $(WXDIR)/include $(RCEXTRAINC) $(RCDEFSWITCH) __WIN32__ $(RCDEFSWITCH) __WIN95__ $(RCDEFSWITCH) __GNUWIN32__
 
 # Needed to build a DLL if your linker does not support --shared option.
-AS = as
-DLLTOOL = dlltool
+AS = $(CROSS)as
+DLLTOOL = $(CROSS)dlltool
 
 ########################## Compiler flags #############################
 
@@ -217,7 +231,13 @@ endif
 OPTIONS = -DSTRICT $(_USE_W32API_HEADER_IF_SUPPORTED)
 
 # Add "-mthreads" if you want to have threads under mingw32
-COMMON_THREADFLAGS =
+# Add "-mno-cygwin" if you want to link with msvcrt.dll in Cywin and Wine
+#                   Otherwise, you link against the native runtime (cygwin.dll
+#                   or libc). Having the flag in mingw32 does not hurt as you
+#                   always link against msvcrt.dll By default it should be on,
+#                   to minimize dependencies on Cygwin, and have more correct
+#                   filename behaviour in Wine.
+COMMON_FLAGS = -mno-cygwin  # -mthreads
 
 # Debugging information
 ifeq ($(FINAL),0)
@@ -235,7 +255,7 @@ WINVERSION=-DWINVER=0x0350 -D__GNUWIN32__ # Generic WIN32
 else
 APPVER=4.0 # 3.50
 # This means 'enable Windows 95 features' (in wxWindows and in the compiler).
-WINVERSION=-DWINVER=0x0400 -D__WIN95__ -D__GNUWIN32__
+WINVERSION=-DWINVER=0x0400 -D__GNUWIN32__
 endif
 
 # This is never used and should be expunged.
@@ -256,10 +276,10 @@ WARN = -Wall
 # build wxbase/wxMSW
 ifeq ($(wxUSE_GUI),1)
     TOOLKIT=msw
-    GUI = -D__WXMSW__ -D__WINDOWS__
+    GUI =
 else
     TOOLKIT=base
-    GUI = -D__WXMSW__ -D__WINDOWS__ -DwxUSE_GUI=0
+    GUI = -DwxUSE_GUI=0
 endif
 
 ifeq ($(FINAL),1)
@@ -270,8 +290,8 @@ endif
 
 # Options for ar archiver
 AROPTIONS = ruv
-AR = ar
-RANLIB = ranlib
+AR = $(CROSS)ar
+RANLIB = $(CROSS)ranlib
 
 # Extra compiler libraries
 COMPLIBS=
@@ -285,15 +305,15 @@ OLELIBS=-lole32 -loleaut32 -luuid
 BASELIBS=-lstdc++ -lgcc -lodbc32 -lwsock32
 ifeq ($(wxUSE_GUI),1)
   WINLIBS= $(BASELIBS) \
-         -lwinspool -lwinmm -lshell32 \
-         -lcomctl32 -lctl3d32 -lodbc32 -ladvapi32 \
-         -lodbc32 -lwsock32 -lopengl32 -lglu32 $(OLELIBS) #  -loldnames
+          -lwinspool -lwinmm -lshell32 \
+          -lcomctl32 -lctl3d32 -lodbc32 -ladvapi32 \
+          -lodbc32 -lwsock32 -lopengl32 -lglu32 $(OLELIBS) #  -loldnames
 else
   WINLIBS=$(BASELIBS)
 endif
 
 #WINLIBS=-lstdc++ -lgcc \
-#      -lwinspool -lwinmm -lshell32 \
+#    -lwinspool -lwinmm -lshell32 \
 #    -lcomctl32 -lctl3d32 -lodbc32 -ladvapi32 -lwsock32 # -loldnames
 
 # Shouldn't need to change these...
@@ -313,7 +333,7 @@ ifdef WXUSINGDLL
   # png, jpeg, etc are exported from wx dll, so skip and save on link time.
   LIBS = $(EXTRALIBS) $(WXLIB) $(WINLIBS) $(COMPLIBS)
 else
-  LIBS = $(EXTRALIBS) $(WXLIB) -lregex -lpng -ljpeg -lzlib -ltiff $(WINLIBS) $(COMPLIBS)
+  LIBS = $(EXTRALIBS) $(WXLIB) -lregex$(MIN_SUFFIX) -lpng$(MIN_SUFFIX) -ljpeg$(MIN_SUFFIX) -lzlib$(MIN_SUFFIX) -ltiff$(MIN_SUFFIX) $(WINLIBS) $(COMPLIBS)
 endif
 
 WINFLAGS = $(OBSOLETE_DEFINES) $(WINVERSION)
@@ -349,12 +369,12 @@ WXLIB=$(WXDIR)/lib/$(LIBPREFIX)wx$(TOOLKIT)$(UNIEXT)$(DEBEXT).$(LIBSUFF)
 
 ifdef WXMAKINGDLL
   EXTRADLLFLAGS = -DWXMAKINGDLL=1 -D_DLL=1 -D_WINDLL=1
-  WXLIB=$(WXDIR)/lib/$(LIBPREFIX)wx$(TOOLKIT)$(WXVERSION)$(UNIEXT)$(DEBEXT).$(LIBSUFF)
+  WXLIB=$(WXDIR)/lib/$(LIBPREFIX)wx$(TOOLKIT)$(WXVERSION)$(UNIEXT)$(DEBEXT)$(MIN_SUFFIX).$(LIBSUFF)
 endif
 
 ifdef WXUSINGDLL
   EXTRADLLFLAGS = -DWXUSINGDLL=1
-  WXLIB=$(WXDIR)/lib/$(LIBPREFIX)wx$(TOOLKIT)$(WXVERSION)$(UNIEXT)$(DEBEXT).$(LIBSUFF)
+  WXLIB=$(WXDIR)/lib/$(LIBPREFIX)wx$(TOOLKIT)$(WXVERSION)$(UNIEXT)$(DEBEXT)$(MIN_SUFFIX).$(LIBSUFF)
 endif
 
 
@@ -392,13 +412,13 @@ ALL_CPPFLAGS = $(XINCLUDE) $(INC) $(CPPFLAGS) $(EXTRACPPFLAGS)
 # C and C++ compiler flags for compatibility with old gcc versions
 REQUIRED_GCC_FLAGS = $(_STRUCT_RETURN_WORKAROUND) $(_THUNK_WORKAROUND)
 # C++ compiler flags
-ALL_CXXFLAGS = $(COMMON_THREADFLAGS) $(REQUIRED_GCC_FLAGS) $(UNICODE_OPT) $(OPTIONS) $(GUI) $(DEBUGFLAGS) $(WARN) $(OPT) $(EXTRADLLFLAGS) $(CXXFLAGS)
+ALL_CXXFLAGS = $(COMMON_FLAGS) $(REQUIRED_GCC_FLAGS) $(UNICODE_OPT) $(OPTIONS) $(GUI) $(DEBUGFLAGS) $(WARN) $(OPT) $(EXTRADLLFLAGS) $(CXXFLAGS)
 # C compiler flags
-ALL_CFLAGS   = $(COMMON_THREADFLAGS) $(REQUIRED_GCC_FLAGS) $(UNICODE_OPT) $(OPTIONS) $(GUI) $(DEBUGFLAGS) $(WARN) $(OPT) $(EXTRADLLFLAGS) $(CFLAGS)
+ALL_CFLAGS   = $(COMMON_FLAGS) $(REQUIRED_GCC_FLAGS) $(UNICODE_OPT) $(OPTIONS) $(GUI) $(DEBUGFLAGS) $(WARN) $(OPT) $(EXTRADLLFLAGS) $(CFLAGS)
 # Linker flags
-ALL_LDFLAGS  = $(COMMON_THREADFLAGS) $(WINDOWSLDFLAGS) $(WINDOWSLDLIBS) $(WXLIBDIRS) $(EXTRALDFLAGS) $(LDFLAGS)
+ALL_LDFLAGS  = $(COMMON_FLAGS) $(WINDOWSLDFLAGS) $(WINDOWSLDLIBS) $(WXLIBDIRS) $(EXTRALDFLAGS) $(LDFLAGS)
 # under Cygwin, Dlls must not be linked with subsystem=windows
-ALL_LDFLAGS_DLL  = $(COMMON_THREADFLAGS) $(WINDOWSLDLIBS) $(WXLIBDIRS) $(EXTRALDFLAGS) $(LDFLAGS)
+ALL_LDFLAGS_DLL  = $(COMMON_FLAGS) $(WINDOWSLDLIBS) $(WXLIBDIRS) $(EXTRALDFLAGS) $(LDFLAGS)
   
 .SUFFIXES: .rc .$(RESSUFF) .$(RSCSUFF) .cpp .cxx .cc .c