1*cdf0e10cSrcweir#************************************************************************* 2*cdf0e10cSrcweir# 3*cdf0e10cSrcweir# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4*cdf0e10cSrcweir# 5*cdf0e10cSrcweir# Copyright 2000, 2010 Oracle and/or its affiliates. 6*cdf0e10cSrcweir# 7*cdf0e10cSrcweir# OpenOffice.org - a multi-platform office productivity suite 8*cdf0e10cSrcweir# 9*cdf0e10cSrcweir# This file is part of OpenOffice.org. 10*cdf0e10cSrcweir# 11*cdf0e10cSrcweir# OpenOffice.org is free software: you can redistribute it and/or modify 12*cdf0e10cSrcweir# it under the terms of the GNU Lesser General Public License version 3 13*cdf0e10cSrcweir# only, as published by the Free Software Foundation. 14*cdf0e10cSrcweir# 15*cdf0e10cSrcweir# OpenOffice.org is distributed in the hope that it will be useful, 16*cdf0e10cSrcweir# but WITHOUT ANY WARRANTY; without even the implied warranty of 17*cdf0e10cSrcweir# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18*cdf0e10cSrcweir# GNU Lesser General Public License version 3 for more details 19*cdf0e10cSrcweir# (a copy is included in the LICENSE file that accompanied this code). 20*cdf0e10cSrcweir# 21*cdf0e10cSrcweir# You should have received a copy of the GNU Lesser General Public License 22*cdf0e10cSrcweir# version 3 along with OpenOffice.org. If not, see 23*cdf0e10cSrcweir# <http://www.openoffice.org/license.html> 24*cdf0e10cSrcweir# for a copy of the LGPLv3 License. 25*cdf0e10cSrcweir# 26*cdf0e10cSrcweir#************************************************************************* 27*cdf0e10cSrcweir 28*cdf0e10cSrcweir# mk file for Window Intel using GCC 29*cdf0e10cSrcweir 30*cdf0e10cSrcweirSOLAR_JAVA*=TRUE 31*cdf0e10cSrcweirFULL_DESK=TRUE 32*cdf0e10cSrcweirJAVAFLAGSDEBUG=-g 33*cdf0e10cSrcweir 34*cdf0e10cSrcweir# SOLAR JAva Unterstuetzung nur fuer wntmsci 35*cdf0e10cSrcweir 36*cdf0e10cSrcweirASM=ml 37*cdf0e10cSrcweirAFLAGS=/c /Cp /coff 38*cdf0e10cSrcweir 39*cdf0e10cSrcweir# architecture dependent flags for the C and C++ compiler that can be changed by 40*cdf0e10cSrcweir# exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build 41*cdf0e10cSrcweirARCH_FLAGS*=-march=pentium 42*cdf0e10cSrcweir 43*cdf0e10cSrcweirCXX*=gcc 44*cdf0e10cSrcweir### Der gcc vertraegt kein Semikolon im Include-Pfad RT 45*cdf0e10cSrcweir# old: 46*cdf0e10cSrcweir#CFLAGS=-c -Wall -I$(INCLUDE) $(OLE2DEF) 47*cdf0e10cSrcweir# new: 48*cdf0e10cSrcweir#CYGINC=$(INCLUDE:s/-I /-I/:+" ":s/;/ -I/:s/-I //:s/ / /) 49*cdf0e10cSrcweirCFLAGS=-fmessage-length=0 -c -nostdinc $(OLE2DEF) 50*cdf0e10cSrcweir### 51*cdf0e10cSrcweirCFLAGSCC=-pipe $(ARCH_FLAGS) 52*cdf0e10cSrcweirCFLAGSCXX=-pipe $(ARCH_FLAGS) 53*cdf0e10cSrcweirCFLAGSEXCEPTIONS=-fexceptions -fno-enforce-eh-specs 54*cdf0e10cSrcweirCFLAGS_NO_EXCEPTIONS=-fno-exceptions 55*cdf0e10cSrcweirPICSWITCH:= 56*cdf0e10cSrcweir 57*cdf0e10cSrcweirCFLAGS_CREATE_PCH=-x c++-header -I$(INCPCH) -DPRECOMPILED_HEADERS 58*cdf0e10cSrcweirCFLAGS_USE_PCH=-I$(SLO)$/pch -DPRECOMPILED_HEADERS -Winvalid-pch 59*cdf0e10cSrcweirCFLAGS_USE_EXCEPTIONS_PCH=-I$(SLO)$/pch_ex -DPRECOMPILED_HEADERS -Winvalid-pch 60*cdf0e10cSrcweir 61*cdf0e10cSrcweirCFLAGSOBJGUIST= 62*cdf0e10cSrcweirCFLAGSOBJCUIST= 63*cdf0e10cSrcweirCFLAGSOBJGUIMT=-D_MT 64*cdf0e10cSrcweirCFLAGSOBJCUIMT=-D_MT 65*cdf0e10cSrcweirCFLAGSSLOGUIMT=-D_MT $(PICSWITCH) 66*cdf0e10cSrcweirCFLAGSSLOCUIMT=-D_MT $(PICSWITCH) 67*cdf0e10cSrcweirCFLAGSPROF= 68*cdf0e10cSrcweirCFLAGSDEBUG=-g 69*cdf0e10cSrcweirCFLAGSDBGUTIL= 70*cdf0e10cSrcweir.IF "$(PRODUCT)"!="" 71*cdf0e10cSrcweirCFLAGSOPT=-O2 -fno-strict-aliasing # optimizing for products 72*cdf0e10cSrcweir.ELSE # "$(PRODUCT)"!="" 73*cdf0e10cSrcweirCFLAGSOPT= # no optimizing for non products 74*cdf0e10cSrcweir.ENDIF # "$(PRODUCT)"!="" 75*cdf0e10cSrcweir# Compiler flags for disabling optimizations 76*cdf0e10cSrcweirCFLAGSNOOPT=-O0 77*cdf0e10cSrcweir# Compiler flags for describing the output path 78*cdf0e10cSrcweirCFLAGSOUTOBJ=-o 79*cdf0e10cSrcweir#plattform hart setzen 80*cdf0e10cSrcweirCDEFS+=-DWIN32 -DWINVER=0x500 -D_WIN32_WINNT=0x500 -D_WIN32_IE=0x500 -D_M_IX86 -DSTLPORT_VERSION=450 -D_NATIVE_WCHAR_T_DEFINED -D_MSC_EXTENSIONS -D_FORCENAMELESSUNION 81*cdf0e10cSrcweir.IF "$(DYNAMIC_CRT)"!="" 82*cdf0e10cSrcweirCDEFS+=-D_DLL 83*cdf0e10cSrcweir.ENDIF 84*cdf0e10cSrcweir 85*cdf0e10cSrcweir# -Wshadow does not work for C with nested uses of pthread_cleanup_push: 86*cdf0e10cSrcweirCFLAGSWARNCC=-Wall -Wextra -Wendif-labels 87*cdf0e10cSrcweirCFLAGSWARNCXX=$(CFLAGSWARNCC) -Wshadow -Wno-ctor-dtor-privacy \ 88*cdf0e10cSrcweir -Wno-non-virtual-dtor 89*cdf0e10cSrcweirCFLAGSWALLCC=$(CFLAGSWARNCC) 90*cdf0e10cSrcweirCFLAGSWALLCXX=$(CFLAGSWARNCXX) 91*cdf0e10cSrcweirCFLAGSWERRCC=-Werror 92*cdf0e10cSrcweirCFLAGSWERRCXX=-Werror 93*cdf0e10cSrcweir 94*cdf0e10cSrcweirMODULES_WITH_WARNINGS := \ 95*cdf0e10cSrcweir b_server \ 96*cdf0e10cSrcweir chart2 \ 97*cdf0e10cSrcweir devtools \ 98*cdf0e10cSrcweir extensions \ 99*cdf0e10cSrcweir lingu \ 100*cdf0e10cSrcweir r_tools \ 101*cdf0e10cSrcweir soldep \ 102*cdf0e10cSrcweir starmath \ 103*cdf0e10cSrcweir sw \ 104*cdf0e10cSrcweir xmlsecurity 105*cdf0e10cSrcweir 106*cdf0e10cSrcweirSTATIC= -static 107*cdf0e10cSrcweirDYNAMIC= -dynamic 108*cdf0e10cSrcweir 109*cdf0e10cSrcweirLINK*=$(CXX) 110*cdf0e10cSrcweirLINKC*=$(CC) 111*cdf0e10cSrcweir 112*cdf0e10cSrcweirCYGLIB=$(LIB:s/;/ -L/) 113*cdf0e10cSrcweirLINKFLAGS=-nostdlib -Wl,--enable-stdcall-fixup,--enable-runtime-pseudo-reloc-v2 -L$(CYGLIB) 114*cdf0e10cSrcweir.IF "$(USE_MINGW)"=="cygwin" 115*cdf0e10cSrcweirMINGWLIBDIR=$(COMPATH)$/lib$/mingw 116*cdf0e10cSrcweir.ELSE 117*cdf0e10cSrcweirMINGWLIBDIR=$(COMPATH)$/lib 118*cdf0e10cSrcweir.ENDIF 119*cdf0e10cSrcweirMINGWSSTDOBJ=$(MINGW_CLIB_DIR)$/crtbegin.o 120*cdf0e10cSrcweirMINGWSSTDENDOBJ=$(MINGW_CLIB_DIR)$/crtend.o 121*cdf0e10cSrcweirLINKFLAGSAPPGUI=-mwindows $(MINGWLIBDIR)$/crt2.o 122*cdf0e10cSrcweirLINKFLAGSSHLGUI=--warn-once -mwindows -shared $(MINGWLIBDIR)$/dllcrt2.o 123*cdf0e10cSrcweirLINKFLAGSAPPCUI=-mconsole $(MINGWLIBDIR)$/crt2.o 124*cdf0e10cSrcweirLINKFLAGSSHLCUI=--warn-once -mconsole -shared $(MINGWLIBDIR)$/dllcrt2.o 125*cdf0e10cSrcweirLINKFLAGSTACK= 126*cdf0e10cSrcweirLINKFLAGSPROF= 127*cdf0e10cSrcweirLINKFLAGSDEBUG=-g 128*cdf0e10cSrcweirLINKFLAGSOPT= 129*cdf0e10cSrcweir 130*cdf0e10cSrcweir.IF "$(MINGW_SHARED_GXXLIB)"=="YES" && "$(DYNAMIC_CRT)"!="" 131*cdf0e10cSrcweirSTDLIBCPP=$(MINGW_SHARED_LIBSTDCPP) 132*cdf0e10cSrcweir.ELSE 133*cdf0e10cSrcweirSTDLIBCPP=-lstdc++ 134*cdf0e10cSrcweir.ENDIF 135*cdf0e10cSrcweirUWINAPILIB*=$(DYNAMIC) -luwinapi 136*cdf0e10cSrcweir 137*cdf0e10cSrcweir.IF "$(MINGW_SHARED_GCCLIB)"=="YES" && "$(DYNAMIC_CRT)"!="" 138*cdf0e10cSrcweirMINGW_LIBGCC=-lgcc_s -lgcc 139*cdf0e10cSrcweirLINKFLAGS+=-shared-libgcc 140*cdf0e10cSrcweir.ELSE 141*cdf0e10cSrcweir.IF "$(MINGW_GCCLIB_EH)"=="YES" 142*cdf0e10cSrcweirMINGW_LIBGCC=-lgcc_eh -lgcc 143*cdf0e10cSrcweir.ELSE 144*cdf0e10cSrcweirMINGW_LIBGCC=-lgcc 145*cdf0e10cSrcweir.ENDIF 146*cdf0e10cSrcweir.ENDIF 147*cdf0e10cSrcweirSTDOBJVCL=$(L)$/salmain.obj 148*cdf0e10cSrcweirSTDOBJGUI= 149*cdf0e10cSrcweirSTDSLOGUI= 150*cdf0e10cSrcweirSTDOBJCUI= 151*cdf0e10cSrcweirSTDSLOCUI= 152*cdf0e10cSrcweirSTDLIBGUIMT=-Wl,--start-group CPPRUNTIME $(MINGW_LIBGCC) 153*cdf0e10cSrcweirSTDLIBCUIMT=-Wl,--start-group CPPRUNTIME $(MINGW_LIBGCC) 154*cdf0e10cSrcweirSTDSHLGUIMT=-Wl,--start-group CPPRUNTIME $(MINGW_LIBGCC) 155*cdf0e10cSrcweirSTDSHLCUIMT=-Wl,--start-group CPPRUNTIME $(MINGW_LIBGCC) 156*cdf0e10cSrcweir.IF "$(DYNAMIC_CRT)"!="" 157*cdf0e10cSrcweirSTDLIBGUIMT+=-lmingwthrd 158*cdf0e10cSrcweirSTDLIBCUIMT+=-lmingwthrd 159*cdf0e10cSrcweirSTDSHLGUIMT+=-lmingwthrd 160*cdf0e10cSrcweirSTDSHLCUIMT+=-lmingwthrd 161*cdf0e10cSrcweir.ENDIF 162*cdf0e10cSrcweirSTDLIBGUIMT+=-lmingw32 -lmoldname -lmingwex -Wl,--end-group $(UWINAPILIB) -lm -lkernel32 -luser32 -lmsvcrt 163*cdf0e10cSrcweirSTDLIBCUIMT+=-lmingw32 -lmoldname -lmingwex -Wl,--end-group $(UWINAPILIB) -lm -lkernel32 -luser32 -lmsvcrt 164*cdf0e10cSrcweirSTDSHLGUIMT+=-lmingw32 -lmoldname -lmingwex -Wl,--end-group $(UWINAPILIB) -lm -lkernel32 -luser32 -lmsvcrt 165*cdf0e10cSrcweirSTDSHLCUIMT+=-lmingw32 -lmoldname -lmingwex -Wl,--end-group $(UWINAPILIB) -lm -lkernel32 -luser32 -lmsvcrt 166*cdf0e10cSrcweir 167*cdf0e10cSrcweirLIBSTLPORT=-lstlport_gcc 168*cdf0e10cSrcweirLIBSTLPORTST=-lstlport_gcc_static $(STDLIBCPP) 169*cdf0e10cSrcweir 170*cdf0e10cSrcweirLIBMGR=ar 171*cdf0e10cSrcweirLIBFLAGS=-rsu 172*cdf0e10cSrcweir 173*cdf0e10cSrcweirIMPLIB=ld 174*cdf0e10cSrcweirIMPLIBFLAGS= 175*cdf0e10cSrcweir 176*cdf0e10cSrcweirMAPSYM=tmapsym 177*cdf0e10cSrcweirMAPSYMFLAGS= 178*cdf0e10cSrcweir 179*cdf0e10cSrcweirRC=rc 180*cdf0e10cSrcweirRCFLAGS=-D__MINGW32__ -DWIN32 -D_WIN32_IE=0x400 -fo$@ $(RCFILES) 181*cdf0e10cSrcweirRCLINK= 182*cdf0e10cSrcweirRCLINKFLAGS= 183*cdf0e10cSrcweirRCSETVERSION= 184*cdf0e10cSrcweir 185*cdf0e10cSrcweirDLLPOSTFIX=gi 186*cdf0e10cSrcweirPCHPOST=.gch 187*cdf0e10cSrcweir 188*cdf0e10cSrcweirADVAPI32LIB=-ladvapi32 189*cdf0e10cSrcweirSHELL32LIB=-lshell32 190*cdf0e10cSrcweirGDI32LIB=-lgdi32 191*cdf0e10cSrcweirOLE32LIB=-lole32 192*cdf0e10cSrcweirOLEAUT32LIB=-loleaut32 193*cdf0e10cSrcweirUUIDLIB=$(PSDK_HOME)$/lib$/uuid.lib 194*cdf0e10cSrcweirWINSPOOLLIB=-lwinspool 195*cdf0e10cSrcweirIMM32LIB=-limm32 196*cdf0e10cSrcweirVERSIONLIB=-lversion 197*cdf0e10cSrcweirWINMMLIB=-lwinmm 198*cdf0e10cSrcweirWSOCK32LIB=-lwsock32 199*cdf0e10cSrcweirMPRLIB=-lmpr 200*cdf0e10cSrcweirWS2_32LIB=-lws2_32 201*cdf0e10cSrcweirKERNEL32LIB=-lkernel32 202*cdf0e10cSrcweirUSER32LIB=-luser32 203*cdf0e10cSrcweirLIBCMT=-lmsvcrt 204*cdf0e10cSrcweirCOMDLG32LIB=-lcomdlg32 205*cdf0e10cSrcweirCOMCTL32LIB=-lcomctl32 206*cdf0e10cSrcweirCRYPT32LIB=$(PSDK_HOME)$/lib$/crypt32.lib 207*cdf0e10cSrcweirGDIPLUSLIB=$(PSDK_HOME)$/lib$/gdiplus.lib 208*cdf0e10cSrcweirDBGHELPLIB=$(PSDK_HOME)$/lib$/dbghelp.lib 209*cdf0e10cSrcweirMSILIB=$(PSDK_HOME)$/lib$/msi.lib 210*cdf0e10cSrcweirDDRAWLIB=$(DIRECTXSDK_LIB)/ddraw.lib 211*cdf0e10cSrcweirSHLWAPILIB=$(PSDK_HOME)$/lib$/shlwapi.lib 212*cdf0e10cSrcweirURLMONLIB=$(PSDK_HOME)$/lib$/urlmon.lib 213*cdf0e10cSrcweirUNICOWSLIB=$(PSDK_HOME)$/lib$/unicows.lib 214*cdf0e10cSrcweirWININETLIB=-lwininet 215*cdf0e10cSrcweirOLDNAMESLIB=-lmoldname 216*cdf0e10cSrcweirMSIMG32LIB=$(PSDK_HOME)$/lib$/msimg32.lib 217*cdf0e10cSrcweirPROPSYSLIB=-lpropsys 218