1#************************************************************************* 2# 3# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4# 5# Copyright 2000, 2010 Oracle and/or its affiliates. 6# 7# OpenOffice.org - a multi-platform office productivity suite 8# 9# This file is part of OpenOffice.org. 10# 11# OpenOffice.org is free software: you can redistribute it and/or modify 12# it under the terms of the GNU Lesser General Public License version 3 13# only, as published by the Free Software Foundation. 14# 15# OpenOffice.org is distributed in the hope that it will be useful, 16# but WITHOUT ANY WARRANTY; without even the implied warranty of 17# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18# GNU Lesser General Public License version 3 for more details 19# (a copy is included in the LICENSE file that accompanied this code). 20# 21# You should have received a copy of the GNU Lesser General Public License 22# version 3 along with OpenOffice.org. If not, see 23# <http://www.openoffice.org/license.html> 24# for a copy of the LGPLv3 License. 25# 26#************************************************************************* 27MKFILENAME:=SETTINGS.MK 28 29# smaller/greater arithmetic's like ".IF 400<=200" are an OOo extention to 30# the initial dmake 4.1PL0 (unfortunately called 4.10) version and are 31# tested implicitly by the construction below. 32.IF $(MAKEVERSION:s/-cvs//:s/.//)<=410 33.ERROR : ; @echo Forced error: dmake version 4.11 or newer is needed! 34force_dmake_to_error 35.ENDIF 36 37.INCLUDE .IGNORE : ooo_vendor.mk 38 39# --- common tool makros -------------------------------------- 40 41.IF "$(USE_PCH)"!="" 42ENABLE_PCH=TRUE 43.ENDIF # "$(USE_PCH)"!="" 44 45.IF "$(ENABLE_PCH)"!="" && "$(BUILD_SPECIAL)"!="" 46.IF "$(SOLARSRC)"=="$(SRC_ROOT)" 47NETWORK_BUILD:=TRUE 48.ENDIF # "$(SOLARSRC)"=="$(SRC_ROOT)" 49.ENDIF # "$(ENABLE_PCH)"!="" && "$(BUILD_SPECIAL)"!="" 50 51.INCLUDE : unitools.mk 52 53.INCLUDE : minor.mk 54 55.INCLUDE .IGNORE : rtlbootstrap.mk 56 57PLATFORMID = $(RTL_OS:l)_$(RTL_ARCH:l) 58EXTNAME*=$(EXTENSIONNAME)_in 59 60.IF "$(UPDATER)"!="" || "$(CWS_WORK_STAMP)"!="" 61 62.IF "$(SOURCEVERSION)"!="$(WORK_STAMP)" 63.ERROR : ; @echo Forced error: minor.mk in solenv/inc does not match your version! 64WRONG_SOURCEVERSION 65.ENDIF 66 67# Create $(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT)/$(UPD)minor.mk if needed 68%minor.mk : $(SOLARENV)/inc/minor.mk 69 @@-$(MKDIRHIER) $(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT) 70 @@$(COPY) $(SOLARENV)/inc/minor.mk $(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT)/$(UPD)minor.mk 71 @@$(TOUCH) $(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT)/minormkchanged.flg 72.ENDIF # "$(UPDATER)"!="" || "$(CWS_WORK_STAMP)"!="" 73 74# Force creation of $(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT)/ 75# $(UPD)minor.mk could be empty as it's contents were already included from minor.mk 76.INCLUDE : $(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT)/$(UPD)minor.mk 77 78.IF "$(BSCLIENT)"=="TRUE" 79.IF "$(UPDATER)"!="YES" 80incorrect_settings: 81 @echo "#" 82 @echo "#" ERROR: setsolar option -bsclient used but UPDATER=YES not set! 83 @echo "#" 84 force_dmake_to_error 85.ENDIF 86.ENDIF 87 88.INCLUDE : udkversion.mk 89 90# --- reset defined Environments -------------------- 91ASM= 92AFLAGS= 93 94 95#START JAVA 96 97#interpreter location 98.IF "$(JAVAINTERPRETER)" == "" 99.IF "$(JDK)" == "J++" 100JAVAINTERPRETER=jview.exe 101.ELSE 102.IF "$(JDK)" == "SCAFE" 103.IF "$(JDK_VERSION)" != "" 104JAVAINTERPRETER=$(DEVROOT)/vcafe11/java/bin/java.exe 105.ELSE 106JAVAINTERPRETER=$(DEVROOT)/cafepro/java/bin/java.exe 107.ENDIF 108.ELSE 109.IF "$(JAVACISGCJ)" == "yes" 110JAVAINTERPRETER=gij 111.ELSE 112JAVAINTERPRETER=java 113.ENDIF 114.ENDIF 115.ENDIF 116.ENDIF 117 118#compiler location 119.IF "$(JAVACOMPILER)" == "" 120.IF "$(JDK)" == "J++" 121JAVACOMPILER=jvc.exe 122.ELSE 123.IF "$(JDK)" == "SCAFE" 124.IF "$(JDK_VERSION)" != "" 125JAVACOMPILER=$(DEVROOT)/vcafe11/bin/sj.exe 126.ELSE 127JAVACOMPILER=$(DEVROOT)/cafepro/bin/sj.exe 128.ENDIF 129.ELSE 130.IF "$(JAVACISGCJ)" == "yes" 131JAVACOMPILER=gcj 132.ELSE 133JAVACOMPILER=javac 134.ENDIF 135.ENDIF 136.ENDIF 137.ENDIF 138 139#if javadoc is not already set 140.IF "$(JAVADOC)"=="" 141JAVADOC=javadoc -J-Xmx120m 142.ENDIF 143 144#required arguments 145JAVAC=$(JAVACOMPILER) 146JAVAI:=$(JAVAINTERPRETER) 147.IF "$(JAVACISGCJ)" == "yes" 148JAVAC+=--encoding=UTF-8 -O2 -fno-assert -Wno-deprecated -C 149.ENDIF 150 151#classpath and response 152.IF "$(JDK)" == "J++" 153JAVACPS=/cp 154.ELSE 155.IF "$(JDK)" == "SCAFE" 156JAVACPS=-classpath 157JAVARESPONSE=TRUE 158.ELSE 159JAVACPS=-classpath 160JAVARESPONSE= 161.ENDIF 162.ENDIF 163 164JAVAFLAGS+=$(JAVA_TARGET_FLAG) 165 166#END JAVA 167 168CDEFS= 169CXXDEFS= 170CDEFSCXX= 171CDEFSOBJ= 172CDEFSSLO= 173CDEFSGUI= 174CDEFSCUI= 175CDEFSMT= 176CDEFSPROF= 177CDEFSDEBUG= 178CDEFSDBGUTIL= 179CDEFSOPT= 180 181CFLAGS= 182CFLAGSCALL= 183CFLAGSCXX= 184CFLAGSCC= 185CFLAGSOBJ= 186CFLAGSSLO= 187CFLAGSOBJGUIMT= 188CFLAGSOBJCUIMT= 189CFLAGSSLOGUIMT= 190CFLAGSSLOCUIMT= 191CFLAGSPROF= 192CFLAGSDEBUG= 193CFLAGSDBGUTIL= 194CFLAGSOPT= 195CFLAGSNOOPT= 196CFLAGSOUTOBJ= 197 198CFLAGSINCXX= 199 200LINKFLAGS= 201LINKFLAGSAPPGUI= 202LINKFLAGSSHLGUI= 203LINKFLAGSAPPCUI= 204LINKFLAGSSHLCUI= 205LINKFLAGSTACK= 206LINKFLAGSPROF= 207LINKFLAGSDEBUG= 208LINKFLAGSOPT= 209LINKFLAGSAPP= 210LINKFLAGSSHL= 211LINKEXTENDLINE= 212 213STDOBJGUI= 214STDSLOGUI= 215STDOBJCUI= 216STDSLOCUI= 217STDLIBGUIMT= 218STDLIBCUIMT= 219STDSHLGUIMT= 220STDSHLCUIMT= 221STDOBJ= 222STDSLO= 223STDLIB= 224STDSHL= 225 226LIBFLAGS= 227 228IMPLIBMGR= 229IMPLIBFLAGS= 230 231MAPSYM= 232MAPSYMFLAGS= 233 234RSC= 235RSCFLAGS= 236RSCDEFS= 237RSCLANG= 238 239RC= 240RCFLAGS= 241RCLINK= 242RCLINKFLAGS= 243RCSETVERSION= 244 245DLLPOSTFIX= 246 247HC= 248HCFLAGS= 249 250MKDEP= 251 252AS= 253BC= 254COBOL= 255CPP= 256FOR= 257PASCAL= 258 259BFLAGS= 260COBFLAGS= 261CPPFLAGS= 262CXXFLAGS= 263FFLAGS= 264PFLAGS= 265RFLAGS= 266 267LNT= 268LNTFLAGS= 269LNTFLAGSGUI= 270LNTFLAGSCOM= 271 272# doesn't make sense 273#IDLSTATICOBJS= 274 275E2P= 276CAP= 277cap= 278 279# not to reset because possibly taken from environment 280#CC= 281#CXX= 282#LINK= 283#LIBMGR= 284 285 286# avoid confusion with CUE PROFILE variable... 287PROFILE= 288 289# can be set on the command line. we shouldn't delete them! 290#profile= 291 292# reset as setting those manually is no lonjger supported 293DBGUTIL= 294dbgutil= 295 296# =========================================================================== 297# unter NT werden Variablennamen an untergeordnete makefiles UPPERCASE 298# weitergereicht, aber case significant ausgewertet! 299# --------------------------------------------------------------------------- 300 301DMAKE_WORK_DIR*:=$(subst,/,/ $(PWD)) 302.IF "$(GUI)"=="WNT" 303posix_PWD:=/cygdrive/$(PWD:s/://) 304.ELSE #GUI)"=="WNT" 305posix_PWD:=$(PWD) 306.ENDIF #GUI)"=="WNT" 307 308 309.IF "$(TMP)"!="" 310tmp*=$(TMP) 311.ENDIF 312 313.IF "$(tmp)"!="" 314TMP*=$(tmp) 315.ENDIF 316 317.IF "$(TEMP)"!="" 318temp*=$(TEMP) 319.ENDIF 320 321.IF "$(temp)"!="" 322TEMP*=$(temp) 323.ENDIF 324 325.IF "$(DEPEND)"!="" 326depend=$(DEPEND) 327.ENDIF 328 329.IF "$(OPTIMIZE)"!="" 330optimize=$(OPTIMIZE) 331.ENDIF 332 333.IF "$(NOPT)"!="" 334nopt*=$(NOPT) 335.ENDIF 336 337.IF "$(GROUP)"!="" 338group*=$(GROUP) 339.ENDIF 340 341.IF "$(group)"!="" 342GROUP*=$(group) 343.ENDIF 344 345# override dbglevel if set manually 346.IF "$(dbglevel)"!="" 347DBG_LEVEL=$(dbglevel) 348.ENDIF 349 350.IF "$(NODEBUG)"!="" 351nodebug=$(NODEBUG) 352.ENDIF 353 354.IF "$(hbtoolkit)"!="" 355HBTOOLKIT=$(hbtoolkit) 356.ENDIF 357 358.IF "$(PRODUCT)"!="" 359product*=$(PRODUCT) 360.ENDIF 361 362.IF "$(product)"!="" 363PRODUCT*=$(product) 364.ENDIF 365 366.IF "$(VERBOSE)"!="" 367verbose*=$(VERBOSE) 368.ENDIF 369 370.IF "$(verbose)"!="" 371# normalize: "false" (any upper/lower case) and "0" mean FALSE, everything else means TRUE 372VERBOSE_IS_FALSE:=$(or $(eq,"$(verbose:u)","FALSE" "false" ) $(eq,"$(verbose)","0" "false" )) 373VERBOSE!:=$(eq,"$(VERBOSE_IS_FALSE)","t" FALSE TRUE) 374.ENDIF 375 376.IF "$(SOLARLANG)" != "" 377solarlang*=$(SOLARLANG) 378.ENDIF 379 380.IF "$(solarlang)" != "" 381SOLARLANG:=$(solarlang) 382.ENDIF 383 384.IF "$(wall)"!="" 385COMPILER_WARN_ALL=TRUE 386.ENDIF # "$(wall)"!="" 387 388.IF "$(werror)"!="" 389COMPILER_WARN_ERRORS=TRUE 390.ENDIF 391 392.IF "$(RSC_ONCE)"!="" 393rsc_once*=$(RSC_ONCE) 394.ENDIF 395 396#.IF "$(COMMON_BUILD)"!="" 397#common_build*=$(COMMON_BUILD) 398#.ENDIF 399common_build:= 400COMMON_BUILD:= 401 402.IF "$(USE_SHL_VERSIONS)"!="" 403use_shl_versions*=$(USE_SHL_VERSIONS) 404.ENDIF 405 406.IF "$(noremove)"!="" 407NOREMOVE*=$(noremove) 408.ENDIF 409 410# --- env flags not case sensitive -------------------------------- 411 412#.IF "$(envcflags)"!="" 413ENVCFLAGS*=$(envcflags) 414#.ENDIF 415 416#.IF "$(envcflagscxx)"!="" 417ENVCFLAGSCXX*=$(envcflagscxx) 418#.ENDIF 419 420 421.IF "$(envcdefs)"!="" 422ENVCDEFS*=$(envcdefs) 423.ENDIF 424 425.IF "$(envlibflags)"!="" 426ENVLIBFLAGS*=$(envlibflags) 427.ENDIF 428 429.IF "$(envcflagsincxx)"!="" 430ENVCFLAGSINCXX*=$(envcflagsincxx) 431.ENDIF 432 433.IF "$(envlinkflags)"!="" 434ENVLINKFLAGS*=$(envlinkflags) 435.ENDIF 436 437.IF "$(envrscflags)"!="" 438ENVRSCFLAGS*=$(envrscflags) 439.ENDIF 440 441.IF "$(envrscdefs)"!="" 442ENVRSCDEFS*=$(envrscdefs) 443.ENDIF 444 445.IF "$(envrsclinkflags)"!="" 446# ENVRSCLINKFLAGS*=$(envrsclinkflags) 447.ENDIF 448 449.IF "$(envrcflags)"!="" 450ENVRCFLAGS*=$(envrcflags) 451.ENDIF 452 453.IF "$(envrclinkflags)"!="" 454ENVRCLINKFLAGS*=$(envrclinkflags) 455.ENDIF 456 457# --- set both L10N variables to keep things working --------------- 458 459L10N-framework=$(L10N_framework) 460 461# --- Parameter Einstellungen ueberpruefen und umsetzen ------------ 462 463# profile immer mit product 464.IF "$(profile)"!="" 465.IF "$(product)"=="" 466product=full 467.ENDIF 468.ENDIF 469 470.IF "$(debug)"!="" 471DBG_LEVEL*=2 472.ENDIF 473 474# Produkt auf einen Wert setzen (alles klein) 475.IF "$(product)" != "" 476optimize=true 477.IF "$(product)" == "full" || "$(product)" == "Full" || "$(product)" == "FULL" 478product!=full 479.ENDIF 480.IF "$(product)" == "demo" || "$(product)" == "Demo" || "$(product)" == "DEMO" 481product!=demo 482.ENDIF 483.IF "$(product)" == "compact" || "$(product)" == "Compact" || "$(product)" == "COMPACT" 484product!=compact 485.ENDIF 486DBG_LEVEL*=0 487.ELSE 488optimize!=true 489dbgutil!=true 490DBG_LEVEL*=1 491USE_STLP_DEBUG*=TRUE 492.ENDIF 493 494.IF "$(debug)"!="" 495.IF "$(debug)"!="D_FORCE_OPT" 496optimize= 497OPTIMIZE= 498.ENDIF 499.ENDIF 500 501.IF "$(nopt)"!="" 502optimize= 503OPTIMIZE= 504.ENDIF 505 506# Optimierung bei FinalCheck funktioniert nicht! 507.IF "$(bndchk)" != "" 508optimize= 509OPTIMIZE= 510.ENDIF 511 512###################################################### 513# 514# sprachabh. einstellungen 515# 516###################################################### 517 518.INCLUDE : lang.mk 519 520.INCLUDE : postset.mk 521 522RSC_LANG_ISO+:=$(completelangiso) 523.EXPORT : RSC_LANG_ISO 524 525###################################################### 526 527.IF "$(TARGETTYPE)"=="" 528TARGETTYPE=CUI 529.ENDIF 530 531# --- Pfade setzen ------------------------------------------------- 532 533# Output-Pfad 534# profile has to be first for not getting the .pro extension 535.IF "$(profile)"!="" 536OUT=$(PRJ)/$(OUTPATH).cap 537ROUT=$(OUTPATH).cap 538.ELSE 539 540.IF "$(product)"!="" 541OUT=$(PRJ)/$(OUTPATH).pro 542ROUT=$(OUTPATH).pro 543 544.ELSE 545.IF "$(profile)"!="" 546OUT=$(PRJ)/$(OUTPATH).cap 547ROUT=$(OUTPATH).cap 548.ENDIF 549.IF "$(dbcs)"!="" 550OUT=$(PRJ)/$(OUTPATH).w 551ROUT=$(OUTPATH).w 552.ENDIF 553# could already be set by makefile.mk 554.IF "$(OUT)" == "" 555OUT*=$(PRJ)/$(OUTPATH) 556ROUT*=$(OUTPATH) 557.ENDIF 558.ENDIF 559.ENDIF 560 561.IF "$(bndchk)" != "" 562OUT:=$(PRJ)/$(OUTPATH).bnd 563ROUT=$(OUTPATH).bnd 564.ENDIF 565.IF "$(truetime)" != "" 566OUT=$(PRJ)/$(OUTPATH).tt 567ROUT=$(OUTPATH).tt 568.ENDIF 569.IF "$(hbtoolkit)"!="" 570OUT=$(PRJ)/$(OUTPATH).tlk 571ROUT=$(OUTPATH).tlk 572.ENDIF 573 574.IF "$(PRJ)"!="." 575.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2" 576PATH_IN_MODULE:=\ 577 $(subst,$(normpath $(shell @+cd $(PRJ) && pwd $(PWDFLAGS)))/, $(PWD)) 578.ELSE # "$(GUI)"=="WNT" 579PATH_IN_MODULE:=$(subst,$(shell @+cd $(PRJ) && pwd $(PWDFLAGS))/, $(PWD)) 580.ENDIF # "$(GUI)"=="WNT" 581.ELSE # "$(PRJ)"!="." 582PATH_IN_MODULE:= 583.ENDIF # "$(PRJ)"!="." 584 585## common output tree 586#.IF "$(common_build)"!="" 587#COMMON_OUTDIR*=common 588#.IF "$(no_common_build_reslib)"=="" 589#common_build_reslib=true 590#.ENDIF # "$(no_common_build_reslib)"=="" 591#.IF "$(no_common_build_zip)"=="" 592#common_build_zip=true 593#.ENDIF # "$(no_common_build_zip)"=="" 594#.IF "$(no_common_build_sign_jar)"=="" 595#common_build_sign_jar=true 596#.ENDIF # "$(no_common_build_sign_jar)"=="" 597#.IF "$(no_common_build_srs)"=="" 598#common_build_srs=true 599#.ENDIF # "$(no_common_build_srs)"=="" 600#.ELSE # "$(common_build)"!="" 601COMMON_OUTDIR:=$(OUTPATH) 602#.ENDIF # "$(common_build)"!="" 603 604LOCAL_OUT:=$(OUT) 605LOCAL_COMMON_OUT:=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(OUT)) 606.EXPORT : LOCAL_OUT LOCAL_COMMON_OUT 607 608# --- generate output tree ----------------------------------------- 609 610# disable for makefiles wrapping a gnumake module 611.IF "$(TARGET)"!="prj" 612# As this is not part of the initial startup makefile we define an infered 613# target instead of using $(OUT)/inc/myworld.mk as target name. 614# (See iz62795) 615$(posix_PWD)/$(OUT)/inc/%world.mk : 616 @$(MKOUT) $(ROUT) 617 @echo $(EMQ)# > $@ 618 619.INCLUDE : $(posix_PWD)/$(OUT)/inc/myworld.mk 620 621.IF "$(common_build)"!="" 622$(posix_PWD)/$(LOCAL_COMMON_OUT)/inc/%world.mk : 623 @$(MKOUT) $(subst,$(OUTPATH),$(COMMON_OUTDIR) $(ROUT)) 624 @echo $(EMQ)# > $@ 625 626.INCLUDE : $(posix_PWD)/$(LOCAL_COMMON_OUT)/inc/myworld.mk 627.ENDIF # "$(common_build)"!="" 628.ENDIF # "$(TARGET)"!="prj" 629 630.INCLUDE .IGNORE : office.mk 631 632# Misc-Pfad 633.IF "$(UNR)"!="" 634MISCX=$(OUT)/umisc 635MISC=$(OUT)/umisc 636.ELSE 637MISC=$(OUT)/misc 638# pointing to misc in common output tree if exists 639COMMONMISC={$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(MISC))} 640.ENDIF 641 642OUTCXX=$(OUT)/cxx 643 644.IF "$(PACKAGE)"!="" 645IDLPACKAGE:=$(PACKAGE) 646IDLPACKAGENAME:=$(IDLPACKAGE:sX\X/X) 647.ELSE 648IDLPACKAGE=$(PRJNAME) 649IDLPACKAGENAME=$(PRJNAME) 650.ENDIF 651 652# Objekt-Pfad 653OBJ=$(OUT)/obj 654SLO=$(OUT)/slo 655ROBJ=$(ROUT)/obj 656RSLO=$(ROUT)/slo 657 658# Particle Path 659PAR=$(OUT)/par 660 661# Library-Pfad 662LB=$(OUT)/lib 663SLB=$(OUT)/slb 664 665# wir haben ein ucr verzeichnis 666UCR=$(OUT)/ucr 667 668# $(L) nur noch pfad ins solver\upd\...\lib 669#L:={$(LB);$(SLB);$(ILIB)} 670L=$(SOLARLIBDIR) 671 672#.EXPORT : SLB LB L LIB 673ENVPRJ:=$(PRJ) 674#todo: check PRJ is still expected to exist in environment 675.EXPORT : PRJ ENVPRJ 676 677# Class-Path for java-classes 678# obwohl der generierte Bytecode plattformunabhg. sein sollte 679# generieren wir ihn ersteinmal ins abhaengige Verzeichnis 680CLASSDIR=$(OUT)/class 681CLASSPATH!:=.$(PATH_SEPERATOR)$(CLASSDIR)$(PATH_SEPERATOR)$(CLASSPATH) 682STARJAR=java -classpath $(CLASSPATH)$(PATH_SEPERATOR)$(SOLARENV)/bin/jtools.jar com.sun.star.tool.starjar.StarJar 683 684STARDEP=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/javadep 685.IF "$(PRJNAME)"=="sj2" 686CLASSPATH!:=$(CLASSPATH:s/sj2/no/) 687.ENDIF 688.IF "$(PRJNAME)"=="uno" 689CLASSPATH!:=$(CLASSPATH:s/uno/no/) 690.ENDIF 691.IF "$(PRJNAME)"=="tkt" 692CLASSPATH!:=$(CLASSPATH:s/tkt/no/) 693.ENDIF 694 695# default output directory when processing 696# configuration files 697PROCESSOUT*:=$(MISC) 698 699# Makros fuer die Librarynamen des Solar 700.INCLUDE : libs.mk 701 702.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2" 703VERSIONOBJ=$(SLO)/_version.obj 704.ENDIF 705 706.IF "$(GUI)"=="UNX" 707VERSIONOBJ=$(SLO)/_version.o 708.ENDIF 709 710.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2" 711WINVERSIONNAMES=$(UNIXVERSIONNAMES) 712.ENDIF # "$(GUI)"=="WNT" 713 714.IF "$(GUI)"=="WNT" || "$(GUI)"=="OS2" 715.IF "$(COM)"=="GCC" 716SHELLLIB=-lgdi32 -lshell32 -ladvapi32 -lcomdlg32 717.ELSE 718SHELLLIB=gdi32.lib shell32.lib advapi32.lib comdlg32.lib 719.ENDIF 720.ENDIF 721 722# BIN-Pfad 723.IF "$(UNR)"!="" 724BIN=$(OUT)/ubin 725.ELSE 726BIN=$(OUT)/bin 727.ENDIF 728# pointing to misc in common output tree if exists 729COMMONBIN=$(LOCAL_COMMON_OUT)/bin 730 731# Include-Pfad 732# still without -I here s.a. target.mk INCLUDE 733INC=$(PRJ)/inc 734INCPCH=$(PRJ)/inc/pch 735INCLOCAL=../inc 736INCGUI=$(PRJ)/$(GUIBASE)/inc 737INCCOM=$(OUT)/inc 738INCCOMX=$(OUT)/inc 739INCUNOIDL=$(INCCOM)/$(PRJNAME) 740INCDEPN=. $(INCGUI) $(INCLOCAL) $(INC) $(INC)/$(PRJNAME) 741.IF "$(PRJINC)"!="" 742INCLOCPRJ=$(foreach,i,$(PRJINC) $i/inc) 743INCDEPN+=$(INCLOCPRJ) 744.ENDIF 745.IF "$(INCPRE)"!="" 746INCDEPN+=$(INCPRE) 747.ENDIF 748 749# Resource-Pfad fuer .SRS 750 751.IF "$(common_build_srs)"!="" 752SRS=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(OUT))/srs 753SRSX=$(subst,$(OUTPATH),$(COMMON_OUTDIR) $(OUT))/srs 754.ELSE # "$(common_build_srs)"!="" 755SRS=$(OUT)/srs 756SRSX=$(OUT)/srs 757.ENDIF # "$(common_build_srs)"!="" 758 759# Resource-Pfad fuer .RC und .RES 760RES=$(OUT)/res 761 762# das normale MISC wird nicht an LDMISC angepasst, stattdessen MISCX 763 764.IF "$(make_xl)"!="" 765BIN=$(PRJ)/$(OUTPATH).xl/bin 766.ENDIF 767 768# damit gezielt Abhaengigkeiten auf s: angegeben werden koennen 769 770.IF "$(common_build)"!="" 771SOLARIDLDIR=$(SOLARVERSION)/common$(PROEXT)/idl$(UPDMINOREXT) 772.ELSE 773SOLARIDLDIR=$(SOLARVERSION)/$(INPATH)/idl$(UPDMINOREXT) 774.ENDIF 775 776#.IF "$(UPDMINOR)" != "" 777#UPDMINOREXT=.$(UPDMINOR) 778#.ELSE 779#UPDMINOREXT= 780#.ENDIF 781SOLARRESDIR=$(SOLARVERSION)/$(INPATH)/res$(UPDMINOREXT) 782SOLARRESXDIR=$(SOLARVERSION)/$(INPATH)/res$(UPDMINOREXT) 783SOLARLIBDIR=$(SOLARVERSION)/$(INPATH)/lib$(UPDMINOREXT) 784SOLARJAVADIR=$(SOLARVERSION)/$(INPATH)/java$(UPDMINOREXT) 785SOLARINCDIR=$(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT) 786SOLARINCXDIR=$(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT) 787.IF "$(SOLARLANG)"!="deut" 788.IF "$(SOLARLANG)" != "" 789SOLARINCXDIR=$(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT)/$(SOLARLANG) 790SOLARRESXDIR=$(SOLARVERSION)/$(INPATH)/res$(UPDMINOREXT)/$(SOLARLANG) 791.ENDIF 792.ENDIF 793SOLARBINDIR:=$(SOLARVERSION)/$(INPATH)/bin$(UPDMINOREXT) 794SOLARUCRDIR=$(SOLARVERSION)/$(INPATH)/ucr$(UPDMINOREXT) 795SOLARPARDIR=$(SOLARVERSION)/$(INPATH)/par$(UPDMINOREXT) 796SOLARXMLDIR=$(SOLARVERSION)/$(INPATH)/xml$(UPDMINOREXT) 797SOLARDOCDIR=$(SOLARVERSION)/$(INPATH)/doc$(UPDMINOREXT) 798SOLARPCKDIR=$(SOLARVERSION)/$(INPATH)/pck$(UPDMINOREXT) 799SOLARSDFDIR=$(SOLARVERSION)/$(INPATH)/sdf$(UPDMINOREXT) 800SOLARCOMMONBINDIR=$(SOLARVERSION)/common$(PROEXT)/bin$(UPDMINOREXT) 801SOLARCOMMONRESDIR=$(SOLARVERSION)/common$(PROEXT)/res$(UPDMINOREXT) 802SOLARCOMMONPCKDIR=$(SOLARVERSION)/common$(PROEXT)/pck$(UPDMINOREXT) 803SOLARCOMMONSDFDIR=$(SOLARVERSION)/common$(PROEXT)/sdf$(UPDMINOREXT) 804.IF "$(common_build)"=="" 805SOLARCOMMONBINDIR=$(SOLARBINDIR) 806SOLARCOMMONRESDIR=$(SOLARRESDIR) 807SOLARCOMMONPCKDIR=$(SOLARPCKDIR) 808SOLARCOMMONSDFDIR=$(SOLARSDFDIR) 809.ENDIF 810 811.EXPORT : SOLARBINDIR 812 813L10N_MODULE*=$(SOURCE_ROOT_DIR)/extras/l10n 814ALT_L10N_MODULE*=$(SOLARSRC)$/l10n_so 815 816.IF "$(WITH_LANG)"!="" 817.INCLUDE .IGNORE: $(L10N_MODULE)/$(COMMON_OUTDIR)$(PROEXT)/inc/localization_present.mk 818.INCLUDE .IGNORE: $(ALT_L10N_MODULE)/$(COMMON_OUTDIR)$(PROEXT)/inc/localization_present.mk 819 820# check for localizations not hosted in l10n module. if a file exists there 821# it won't in l10n 822.IF "$(ALT_LOCALIZATION_FOUND)"!="" 823TRYALTSDF:=$(ALT_L10N_MODULE)$/$(COMMON_OUTDIR)$(PROEXT)$/misc/sdf$/$(PRJNAME)$/$(PATH_IN_MODULE)$/localize.sdf 824LOCALIZESDF:=$(strip $(shell @+$(IFEXIST) $(TRYALTSDF) $(THEN) echo $(TRYALTSDF) $(FI))) 825.ENDIF # "$(ALT_LOCALIZATION_FOUND)"!="" 826# if the l10n module exists, use split localize.sdf directly from there 827.IF "$(LOCALIZATION_FOUND)"!="" && "$(LOCALIZESDF)"=="" 828# still check for existence as there may be no localization yet 829TRYSDF:=$(L10N_MODULE)$/$(COMMON_OUTDIR)$(PROEXT)$/misc/sdf$/$(PRJNAME)$/$(PATH_IN_MODULE)$/localize.sdf 830LOCALIZESDF:=$(strip $(shell @+$(IFEXIST) $(TRYSDF) $(THEN) echo $(TRYSDF) $(FI))) 831.ENDIF # "$(LOCALIZATION_FOUND)"!="" && "$(LOCALIZESDF)"=="" 832# else use localize.sdf from local output tree if localization .zip exists 833.IF "$(LOCALIZESDF)"=="" 834LOCALSDFFILE:=$(COMMONMISC)$/$(PRJNAME)$/$(PATH_IN_MODULE)$/localize.sdf 835LOCALIZESDF:=$(strip $(shell @+$(IFEXIST) $(SOLARCOMMONSDFDIR)$/$(PRJNAME).zip $(THEN) echo $(LOCALSDFFILE) $(FI))) 836.IF "$(LOCALIZESDF)"=="" 837LOCALSDFFILE!:= 838.ENDIF # "$(LOCALIZESDF)"=="" 839.ENDIF # "$(LOCALIZESDF)"=="" 840# dummy target to keep the build happy. 841.IF "$(LOCALIZESDF)"=="" 842LOCALIZESDF:=$(COMMONMISC)$/$(PRJNAME)$/dummy$/localize.sdf 843.ENDIF # "$(LOCALIZESDF)"=="" 844.ENDIF # "$(WITH_LANG)"!="" 845 846JARDIR=$(OUT)/class 847 848# needs to be expanded!!! 849 850# extend library path for MS Compiler 851.IF "$(COM)"=="MSC" 852LIB:=$(LB);$(SLB);$(ILIB) 853.ENDIF 854 855# extend library path for MinGW Compiler 856.IF "$(GUI)$(COM)"=="WNTGCC" 857LIB:=$(LB);$(BIN);$(ILIB) 858.ENDIF 859 860# --- Environment-Allgemein ---------------------------------------- 861 862.IF "$(CPUNAME)" == "" 863CPUNAME=CPUNAME_HAS_TO_BE_SET_IN_ENVIRONMENT 864.ENDIF 865 866.IF "$(USE_STLP_DEBUG)" != "" 867SCPCDEFS+=-D_STLP_DEBUG 868.ENDIF 869 870.IF "$(UDK_MAJOR)"!="" 871SCPDEFS+=-DUDK_MAJOR=$(UDK_MAJOR) 872.ENDIF # "$(UDK_MAJOR)"!="" 873 874SCPDEFS+=-U$(COMID) -DCOMID=$(COMID) -DCOMNAME=$(COMNAME) -D_$(COMID) 875SCPDEFS+=-DCCNUMVER=$(CCNUMVER) 876.IF "$(COM)"=="GCC" 877SCPDEFS+=-DSHORTSTDCPP3=$(SHORTSTDCPP3) -DSHORTSTDC3=$(SHORTSTDC3) 878.ENDIF # "$(SHORTSTDCPP3)"!="" 879# extend library path for OS/2 gcc/wlink 880.IF "$(GUI)"=="OS2" 881LIB:=$(LB);$(SLB);$(ILIB) 882.ENDIF 883 884 885UNOIDLDEFS+=-DSUPD=$(UPD) -DUPD=$(UPD) 886 887UNOIDLDEPFLAGS=-Mdepend=$(SOLARVER) 888 889UNOIDLINC+=-I. -I.. -I$(PRJ) -I$(PRJ)/inc -I$(PRJ)/$(INPATH)/idl -I$(OUT)/inc -I$(SOLARIDLDIR) -I$(SOLARINCDIR) 890 891CDEFS= -D$(OS) -D$(GUI) -D$(GVER) -D$(COM) -D$(CVER) -D$(CPUNAME) 892 893.IF "$(USE_STLP_DEBUG)" != "" && "$(GUI)"!="OS2" 894CDEFS+=-D_STLP_DEBUG 895.ENDIF 896 897.IF "$(CDEFS_PRESET)" != "" 898CDEFS+=$(CDEFS_PRESET) 899.ENDIF 900 901.IF "$(TIMELOG)" != "" 902CDEFS+=-DTIMELOG 903.ENDIF 904 905CDEFSCXX= 906CDEFSOBJ= 907CDEFSSLO=-DSHAREDLIB -D_DLL_ 908CDEFSGUI=-DGUI 909CDEFSCUI=-DCUI 910#CDEFSMT=-DMULTITHREAD 911CDEFSPROF=-DPROFILE 912.IF "$(dbg_build_only)" == "" 913CDEFSDEBUG=-DDEBUG 914.ENDIF 915CDEFSDBGUTIL=-DDBG_UTIL 916CDEFSOPT=-DOPTIMIZE 917 918MKDEPFLAGS+=-I$(INCDEPN:s/ / -I/:s/-I-I/-I/) 919MKDEPALLINC=$(SOLARINC:s/-I/ -I/) 920MKDEPPREINC=-I$(PREPATH)/$(INPATH)/inc$(UPDMINOREXT) 921MKDEPSOLENV=-I$(SOLARENV)/inc -I$(SOLARENV)/$(GUI)$(CVER)$(COMEX)/inc 922MKDEPSOLVER=-I$(SOLARVERSION)/$(INPATH)/inc$(UPDMINOREXT) -I$(SOLARVERSION)/$(INPATH)/inc 923MKDEPLOCAL=-I$(INCCOM) 924 925.IF "$(MKDEPENDALL)"!="" 926MKDEPFLAGS+=$(MKDEPALLINC) 927.ENDIF 928 929.IF "$(MKDEPENDSOLENV)"!="" 930MKDEPFLAGS+=$(MKDEPSOLENV) 931.ENDIF 932 933.IF "$(MKDEPENDPREPATH)"!="" 934MKDEPFLAGS+=$(MKDEPPREINC) 935.ENDIF 936 937.IF "$(MKDEPENDSOLVER)"!="" 938MKDEPFLAGS+=$(MKDEPSOLVER) 939.ENDIF 940# unused - nodep should do the same now 941#.IF "$(MKDEPENDLOCAL)"!="NO" 942MKDEPFLAGS+=$(MKDEPLOCAL) 943#.ENDIF 944 945BISON*=bison 946YACCFLAGS*=-d 947 948SVIDL=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/svidl 949 950LDUMP2*=$(SOLARBINDIR)/ldump4 951 952ZIPUPDATE=-u -j 953ZIPFLAGS=$(ZIPUPDATE) 954#hack for dynamic language subdirs 955LANGDIR=LANGDIR 956 957#scplinker flags 958SCPLINKFLAGS=-i $(PAR),$(SOLARPARDIR) 959.IF "$(SCPLINKVERSION)"!="" 960SCPLINKFLAGS+=-v $(SCPLINKVERSION) 961.ENDIF # "$(SCPLINKVERSION)"!="" 962 963.IF "$(make_srs_deps)"!="" 964RSC=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/rscdep 965.ELSE # "$(make_srs_deps)"!="" 966RSC=$(AUGMENT_LIBRARY_PATH) $(FLIPCMD) $(SOLARBINDIR)/rsc 967.ENDIF # "$(make_srs_deps)"!="" 968 969.IF "$(VERBOSE)" == "TRUE" 970 VERBOSITY=-verbose 971.ELSE 972 COMMAND_ECHO=@ 973 .IF "$(VERBOSE)" == "FALSE" 974 VERBOSITY=-quiet 975 ZIP_VERBOSITY=-q 976 .ENDIF 977.ENDIF # "$(VERBOSE)" == "TRUE" 978COMPILE_ECHO_SWITCH= 979COMPILE_ECHO_FILE=$(<:f) 980 981#new 982RSCUPDVER=$(RSCREVISION) 983RSCUPDVERDEF=-DUPDVER="$(RSCUPDVER)" 984 985RSCFLAGS=-s 986RSCDEFS=-D$(GUI) -D$(GVER) -D$(COM) -D$(CVER) $(JAVADEF) 987 988.IF "$(BUILD_SPECIAL)"!="" 989RSCDEFS+=-DBUILD_SPECIAL=$(BUILD_SPECIAL) 990.ENDIF 991 992RSCDEFIMG*=default_images 993 994RSCEXTINC=. 995 996.IF "$(DEBUG)" != "" 997RSCDEFS+= -DDEBUG 998.ENDIF 999 1000# settings for mozilla idl compiler 1001XPIDL=xpidl 1002XPIDL_LINK=xpt_link 1003 1004# alle bisher verwendeten Linker benutzen + um LIBs auf der naechsten Zeile 1005# weiter zu schreiben, wenn es da eine Ausnahme geben sollte, muss 1006# LINKEXTENDLINE compilerabhaengig definiert werden 1007LINKEXTENDLINE=+ 1008 1009LNT=$(DEVROOT)/lint/lint 1010#LNTFLAGS=+v -i$(DEVROOT)/lint\ -mL options.lnt -u 1011LNTFLAGS=+v -i$(DEVROOT)/lint/ -mL options.lnt -u 1012LNTFLAGSOUTOBJ=-os 1013 1014.IF "$(GUI)"=="WNT" 1015.INCLUDE : wnt.mk 1016.ENDIF 1017 1018.IF "$(GUI)" == "UNX" 1019.INCLUDE : unx.mk 1020.ENDIF 1021 1022.IF "$(GUI)" == "OS2" 1023.INCLUDE : os2.mk 1024.ENDIF 1025 1026.IF "$(OOO_LIBRARY_PATH_VAR)" != "" 1027# Add SOLARLIBDIR at the begin of a (potentially previously undefined) library 1028# path (LD_LIBRARY_PATH, PATH, etc.; prepending avoids fetching libraries from 1029# an existing office/URE installation; the ": &&" enables this to work at the 1030# start of a recipe line that is not prefixed by "+" as well as in the middle of 1031# an existing && chain: 1032AUGMENT_LIBRARY_PATH = : && \ 1033 $(OOO_LIBRARY_PATH_VAR)=$(normpath, $(SOLARSHAREDBIN))$${{$(OOO_LIBRARY_PATH_VAR):+:$${{$(OOO_LIBRARY_PATH_VAR)}}}} 1034AUGMENT_LIBRARY_PATH_LOCAL = : && \ 1035 $(OOO_LIBRARY_PATH_VAR)=$(normpath, $(PWD)/$(DLLDEST)):$(normpath, $(SOLARSHAREDBIN))$${{$(OOO_LIBRARY_PATH_VAR):+:$${{$(OOO_LIBRARY_PATH_VAR)}}}} 1036.END 1037 1038# remove if .Net 2003 support has expired 1039.IF "$(debug)"!="" 1040.IF "$(OS)$(COM)$(CPU)" == "WNTMSCI" 1041.IF "$(COMEX)" == "10" 1042.IF "$(SLOFILES)$(OBJFILES)$(DEPOBJFILES)"!="" 1043MAXPROCESS!:=1 1044.EXPORT : MAXPROCESS 1045.ENDIF # "$(SLOFILES)$(OBJFILES)$(DEPOBJFILES)"!="" 1046.ENDIF # "$(COMEX)" == "10" 1047.ENDIF # "$(OS)$(COM)$(CPU)" == "WNTMSCI" 1048.ENDIF # "$(debug)"!="" 1049 1050# for multiprocess building in external modules 1051# allow seperate handling 1052EXTMAXPROCESS*=$(MAXPROCESS) 1053 1054IDLC*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/idlc 1055REGMERGE*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/regmerge 1056REGCOMPARE*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/regcompare 1057REGCOMP*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/regcomp 1058CPPUMAKER*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/cppumaker 1059JAVAMAKER*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/javamaker 1060RDBMAKER*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/rdbmaker 1061CLIMAKER*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/climaker 1062 1063CPPUNITTESTER=$(AUGMENT_LIBRARY_PATH_LOCAL) $(SOLARBINDIR)/cppunittester 1064HELPEX=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/helpex 1065LNGCONVEX=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/lngconvex 1066HELPLINKER=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/HelpLinker 1067 1068.IF "$(JAVAINTERPRETER)" == "" 1069JAVA*:=java 1070.ELSE 1071JAVA*:=$(JAVAINTERPRETER) 1072.ENDIF 1073.EXPORT : JAVA JAVAI 1074 1075# Define SCPCOMP without wrapper because pre2par.pl chokes on DOS style 1076# pathes. (See iz57443) 1077SCPCOMP=$(PERL) $(SOLARENV)/bin/pre2par.pl 1078SCPLINK=$(PERL) $(SOLARENV)/bin/par2script.pl 1079LZIP*=lzip 1080CPPLCC*=$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/cpplcc 1081 1082.IF "$(DISABLE_ENHANCED_COMID)"=="" 1083.INCLUDE : tg_compv.mk 1084.ELSE # "$(DISABLE_ENHANCED_COMID)"=="" 1085COMID=$(COM) 1086.ENDIF # "$(DISABLE_ENHANCED_COMID)"=="" 1087.IF "$(SOLAR_JAVA)"=="TRUE" 1088.IF "$(USE_JAVAVER)"!="" 1089.INCLUDE : tg_javav.mk 1090.ENDIF "$(USE_JAVAVER)"!="" 1091.ENDIF # "$(SOLAR_JAVA)"=="TRUE" 1092 1093.IF "$(COM)"=="GCC" 1094GXX_INCLUDE_PATH*:=$(COMPATH)/include/c++/$(CCVER) 1095.EXPORT : GXX_INCLUDE_PATH 1096CDEFS+= -DGXX_INCLUDE_PATH=$(GXX_INCLUDE_PATH) 1097.ENDIF 1098 1099# --- extend new environment ---------------------------------- 1100CDEFS+= -DSUPD=$(UPD) 1101 1102# flags to enable build with symbols; required for crashdump feature 1103.IF ("$(ENABLE_CRASHDUMP)"!="" && "$(ENABLE_CRASHDUMP)"!="DUMMY") || "$(ENABLE_SYMBOLS)"!="" 1104CFLAGSENABLESYMBOLS_CC_ONLY*=$(CFLAGSENABLESYMBOLS) 1105CFLAGSCXX+=$(CFLAGSENABLESYMBOLS) 1106CFLAGSCC+=$(CFLAGSENABLESYMBOLS_CC_ONLY) 1107.ENDIF # ("$(ENABLE_CRASHDUMP)"!="" && "$(ENABLE_CRASHDUMP)"!="DUMMY") || "$(ENABLE_SYMBOLS)"!="" 1108 1109.IF "$(profile)"!="" 1110CDEFS+= $(CDEFSPROF) 1111CFLAGS+= $(CFLAGSPROF) 1112.IF "$(WST)"!="" 1113LINKFLAGS=$(LINKFLAGSWST) 1114LINKCFLAGS=$(LINKFLAGSWST) 1115.ELSE 1116LINKFLAGSADD+=$(LINKFLAGSPROF) 1117.ENDIF 1118.ENDIF 1119 1120.IF "$(debug)"!="" 1121JAVAFLAGS+=$(JAVAFLAGSDEBUG) 1122CDEFS+= $(CDEFSDEBUG) 1123CFLAGS+= $(CFLAGSDEBUG) 1124LINKFLAGSADD+= $(LINKFLAGSDEBUG) 1125.ENDIF 1126 1127.IF "$(dbgutil)"!="" 1128CDEFS+=$(CDEFSDBGUTIL) 1129CFLAGS+=$(CFLAGSDBGUTIL) 1130RSCDEFS+=-DDBG_UTIL 1131.ENDIF 1132 1133.IF "$(product)"!="" 1134CDEFS+= -DPRODUCT -DNDEBUG 1135RSCDEFS+= -DPRODUCT 1136RSCDEFS+= -DNDEBUG 1137.ENDIF 1138 1139.IF "$(DBG_LEVEL)"!="" 1140CDEFS+=-DOSL_DEBUG_LEVEL=$(DBG_LEVEL) 1141RSCDEFS+=-DOSL_DEBUG_LEVEL=$(DBG_LEVEL) 1142.ENDIF 1143 1144.IF "$(optimize)"!="" 1145CDEFS+=$(CDEFSOPT) 1146CFLAGS+=$(CFLAGSOPT) 1147LINKFLAGSADD+=$(LINKFLAGSOPT) 1148.ELSE 1149CFLAGS+=$(CFLAGSNOOPT) 1150.ENDIF 1151 1152.IF "$(ENABLE_EXCEPTIONS)"!="" 1153GLOBAL_EXCEPTIONS_FLAGS+=$(CFLAGSEXCEPTIONS) 1154GLOBAL_EXCEPTIONS_FLAGS+=-DEXCEPTIONS_ON 1155.ELSE 1156GLOBAL_EXCEPTIONS_FLAGS+=$(CFLAGS_NO_EXCEPTIONS) 1157GLOBAL_EXCEPTIONS_FLAGS+=-DEXCEPTIONS_OFF 1158.ENDIF 1159# used if an object appears in the EXCEPTIONSFILES list 1160# see also rules.mk 1161LOCAL_EXCEPTIONS_FLAGS+=$(CFLAGSEXCEPTIONS) 1162LOCAL_EXCEPTIONS_FLAGS+=-DEXCEPTIONS_ON 1163 1164.IF "$(ENABLE_LAYOUT)" == "TRUE" 1165CDEFS+=-DENABLE_LAYOUT=1 1166.ELSE # ENABLE_LAYOUT != TRUE 1167CFLAGS+=-DENABLE_LAYOUT=0 1168.ENDIF # ENABLE_LAYOUT != TRUE 1169 1170.IF "$(ENABLE_LAYOUT_EXPERIMENTAL)" == "TRUE" 1171CDEFS+=-DENABLE_LAYOUT_EXPERIMENTAL=1 1172.ELSE # ENABLE_LAYOUT_EXPERIMENTAL != TRUE 1173CFLAGS+=-DENABLE_LAYOUT_EXPERIMENTAL=0 1174.ENDIF # ENABLE_LAYOUT_EXPERIMENTAL != TRUE 1175 1176# compose flags and defines for GUI 1177.IF "$(TARGETTYPE)"=="GUI" 1178CDEFS+= $(CDEFSGUI) 1179CFLAGSSLO+=$(CFLAGSSLOGUIMT) 1180CDEFSSLO+=$(CDEFSSLOMT) 1181LINKFLAGSAPP=$(LINKFLAGSAPPGUI) 1182LINKFLAGSSHL=$(LINKFLAGSSHLGUI) 1183STDOBJ=$(STDOBJGUI) 1184STDSLO=$(STDSLOGUI) 1185 1186CDEFSOBJ+= $(CDEFSMT) $(CDEFSOBJMT) 1187CFLAGSOBJ+=$(CFLAGSOBJGUIMT) 1188STDLIB=$(STDLIBGUIMT) 1189STDSHL=$(STDSHLGUIMT) 1190 1191.ENDIF 1192 1193# compose flags and defines for CUI 1194.IF "$(TARGETTYPE)" == "CUI" || "$(TARGETTYPE)"=="cui" 1195CDEFS+= $(CDEFSCUI) 1196CFLAGSSLO+=$(CFLAGSSLOCUIMT) 1197CDEFSSLO+=$(CDEFSSLOMT) 1198LINKFLAGSAPP=$(LINKFLAGSAPPCUI) 1199LINKFLAGSSHL=$(LINKFLAGSSHLCUI) 1200STDOBJ=$(STDOBJCUI) 1201STDSLO=$(STDSLOCUI) 1202 1203CDEFSOBJ+=$(CDEFSMT) $(CDEFSOBJMT) 1204CFLAGSOBJ+=$(CFLAGSOBJCUIMT) 1205STDLIB=$(STDLIBCUIMT) 1206STDSHL=$(STDSHLCUIMT) 1207 1208.ENDIF 1209 1210.EXPORT : PICSWITCH 1211 1212.IF "$(USE_SYSTEM_STL)"=="YES" 1213LIBSTLPORT="" 1214.ENDIF 1215 1216.IF "$(NO_DEFAULT_STL)"=="" 1217STDLIB+=$(LIBSTLPORT) 1218STDSHL+=$(LIBSTLPORT) 1219.ENDIF # "$(NO_DEFAULT_STL)"=="" 1220 1221# fill up unresolved symbols not found else where 1222.IF "$(FILLUPARC)"!="" 1223STDLIB+=$(FILLUPARC) 1224STDSHL+=$(FILLUPARC) 1225.ENDIF # "$(FILUPARC)"!="" 1226 1227.IF "$(SOLAR_JAVA)"!="" 1228CDEFS+=$(JAVADEF) 1229.ENDIF # "$(SOLAR_JAVA)"!="" 1230 1231.INCLUDE .IGNORE: $(UPD)$(LAST_MINOR).mk 1232 1233# Once all modules on a given platform compile without warnings, the specific 1234# .mk file for that platform should set COMPILER_WARN_ERRORS=TRUE and no longer 1235# set MODULES_WITH_WARNINGS, and once no platform sets MODULES_WITH_WARNINGS any 1236# longer, this code can go away: 1237.IF "$(MODULES_WITH_WARNINGS)" != "" 1238MODULES_WITH_WARNINGS_1 := $(foreach,i,$(MODULES_WITH_WARNINGS) .$(i).) 1239MODULES_WITH_WARNINGS_2 := $(subst,.$(PRJNAME)., $(MODULES_WITH_WARNINGS_1)) 1240.IF "$(MODULES_WITH_WARNINGS_1)" == "$(MODULES_WITH_WARNINGS_2)" 1241COMPILER_WARN_ERRORS = TRUE 1242.ENDIF 1243.ENDIF 1244 1245CFLAGSWARNCXX *= $(CFLAGSWARNCC) 1246CFLAGSWALLCXX *= $(CFLAGSWALLCC) 1247CFLAGSWERRCXX *= $(CFLAGSWERRCC) 1248 1249.IF "$(ENVWARNFLAGS)"=="" 1250.IF "$(COMPILER_WARN_ALL)"=="" 1251CFLAGSCC+=$(CFLAGSWARNCC) 1252CFLAGSCXX+=$(CFLAGSWARNCXX) 1253.ELSE 1254CFLAGSCC+=$(CFLAGSWALLCC) 1255CFLAGSCXX+=$(CFLAGSWALLCXX) 1256.ENDIF 1257.IF "$(COMPILER_WARN_ERRORS)"!="" && "$(EXTERNAL_WARNINGS_NOT_ERRORS)"=="" 1258CFLAGSCC+=$(CFLAGSWERRCC) 1259CFLAGSCXX+=$(CFLAGSWERRCXX) 1260.ENDIF 1261.ELSE # "$(ENVWARNFLAGS)"=="" 1262CFLAGSAPPEND+=$(ENVWARNFLAGS) 1263.ENDIF # "$(ENVWARNFLAGS)"=="" 1264 1265CDEFS+= $(ADDCDEFS) 1266CDEFS+= $(ENVCDEFS) 1267CFLAGS+= $(CFLAGSCALL) $(ENVCFLAGS) 1268CFLAGSCXX+= $(ENVCFLAGSCXX) 1269# andersrum wg. -TPxxxx 1270CFLAGSINCXX+:=$(ENVCFLAGSINCXX) 1271LIBFLAGS+= $(ENVLIBFLAGS) 1272LINKFLAGSADD+= $(ENVLINKFLAGS) 1273RSCFLAGS+= $(ENVRSCFLAGS) 1274RSCDEFS+= $(ENVRSCDEFS) 1275# RSCLINKFLAGS+= $(ENVRSCLINKFLAGS) 1276RCFLAGS+= $(ENVRCFLAGS) 1277RCLINKFLAGS+= $(ENVRCLINKFLAGS) 1278 1279LINKFLAGSRUNPATH_URELIB*= 1280LINKFLAGSRUNPATH_UREBIN*= 1281LINKFLAGSRUNPATH_OOO*= 1282LINKFLAGSRUNPATH_SDK*= 1283LINKFLAGSRUNPATH_BRAND*= 1284LINKFLAGSRUNPATH_OXT*= 1285LINKFLAGSRUNPATH_BOXT*= 1286LINKFLAGSRUNPATH_NONE*= 1287 1288# make sure both linker variables are set 1289LINKC*=$(LINK) 1290LINKCFLAGS*=$(LINKFLAGS) 1291LINKFLAGS+=$(LINKFLAGSADD) 1292LINKCFLAGS+=$(LINKFLAGSADD) 1293 1294#defaults for UCR HEADER 1295UNOUCRBASE*=UCR 1296UNOUCROUT*=$(OUT)/inc/$(TARGET) 1297INCPRE+=-I$(UNOUCROUT) 1298UNOUCRRDB*=$(SOLARBINDIR)/types.rdb 1299 1300# location of trustedinfo.manifest for Windows Vista 1301.IF "$(COM)"=="MSC" 1302TRUSTED_MANIFEST_LOCATION*=$(SOLARENV)/inc 1303.ENDIF # "$(COM)"=="MSC" 1304 1305# --- Compiler ----------------------------------------------------- 1306.INCLUDE : rules.mk 1307 1308# --- include typelists -------------------------------------------- 1309 1310.IF "$(COMP1TYPELIST)"!="" 1311.INCLUDE .IGNORE : $(MISC)/$(COMP1TYPELIST).mk 1312$(COMP1TYPELIST)_XML2CMPTYPES:=$(shell @$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/xml2cmp -types stdout $(MISC)/$(COMP1TYPELIST)$($(WINVERSIONNAMES)_MAJOR).xml) 1313.ENDIF 1314 1315.IF "$(COMP2TYPELIST)"!="" 1316.INCLUDE .IGNORE : $(MISC)/$(COMP2TYPELIST).mk 1317$(COMP2TYPELIST)_XML2CMPTYPES:=$(shell @$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/xml2cmp -types stdout $(MISC)/$(COMP2TYPELIST)$($(WINVERSIONNAMES)_MAJOR).xml) 1318.ENDIF 1319 1320.IF "$(COMP3TYPELIST)"!="" 1321.INCLUDE .IGNORE : $(MISC)/$(COMP3TYPELIST).mk 1322$(COMP3TYPELIST)_XML2CMPTYPES:=$(shell @$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/xml2cmp -types stdout $(MISC)/$(COMP3TYPELIST)$($(WINVERSIONNAMES)_MAJOR).xml) 1323.ENDIF 1324 1325.IF "$(COMP4TYPELIST)"!="" 1326.INCLUDE .IGNORE : $(MISC)/$(COMP4TYPELIST).mk 1327$(COMP4TYPELIST)_XML2CMPTYPES:=$(shell @$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/xml2cmp -types stdout $(MISC)/$(COMP4TYPELIST)$($(WINVERSIONNAMES)_MAJOR).xml) 1328.ENDIF 1329 1330.IF "$(COMP5TYPELIST)"!="" 1331.INCLUDE .IGNORE : $(MISC)/$(COMP5TYPELIST).mk 1332$(COMP5TYPELIST)_XML2CMPTYPES:=$(shell @$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/xml2cmp -types stdout $(MISC)/$(COMP5TYPELIST)$($(WINVERSIONNAMES)_MAJOR).xml) 1333.ENDIF 1334 1335.IF "$(COMP6TYPELIST)"!="" 1336.INCLUDE .IGNORE : $(MISC)/$(COMP6TYPELIST).mk 1337$(COMP6TYPELIST)_XML2CMPTYPES:=$(shell @$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/xml2cmp -types stdout $(MISC)/$(COMP6TYPELIST)$($(WINVERSIONNAMES)_MAJOR).xml) 1338.ENDIF 1339 1340.IF "$(COMP7TYPELIST)"!="" 1341.INCLUDE .IGNORE : $(MISC)/$(COMP7TYPELIST).mk 1342$(COMP7TYPELIST)_XML2CMPTYPES:=$(shell @$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/xml2cmp -types stdout $(MISC)/$(COMP7TYPELIST)$($(WINVERSIONNAMES)_MAJOR).xml) 1343.ENDIF 1344 1345.IF "$(COMP8TYPELIST)"!="" 1346.INCLUDE .IGNORE : $(MISC)/$(COMP8TYPELIST).mk 1347$(COMP8TYPELIST)_XML2CMPTYPES:=$(shell @$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/xml2cmp -types stdout $(MISC)/$(COMP8TYPELIST)$($(WINVERSIONNAMES)_MAJOR).xml) 1348.ENDIF 1349 1350.IF "$(COMP9TYPELIST)"!="" 1351.INCLUDE .IGNORE : $(MISC)/$(COMP9TYPELIST).mk 1352$(COMP9TYPELIST)_XML2CMPTYPES:=$(shell @$(AUGMENT_LIBRARY_PATH) $(SOLARBINDIR)/xml2cmp -types stdout $(MISC)/$(COMP9TYPELIST)$($(WINVERSIONNAMES)_MAJOR).xml) 1353.ENDIF 1354 1355# some place to define these jars for SO environment 1356XML_APIS_JAR*=$(SOLARBINDIR)/xml-apis.jar 1357XERCES_JAR*=$(SOLARBINDIR)/xercesImpl.jar 1358 1359.IF "$(SYSTEM_CPPUNIT)" != "YES" 1360CPPUNIT_CFLAGS = 1361.END 1362 1363COMPONENTPREFIX_URE_NATIVE = vnd.sun.star.expand:$$URE_INTERNAL_LIB_DIR/ 1364COMPONENTPREFIX_URE_JAVA = vnd.sun.star.expand:$$URE_INTERNAL_JAVA_DIR/ 1365.IF "$(OS)" == "WNT" 1366COMPONENTPREFIX_BASIS_NATIVE = vnd.sun.star.expand:$$BRAND_BASE_DIR/program/ 1367.ELSE 1368COMPONENTPREFIX_BASIS_NATIVE = vnd.sun.star.expand:$$OOO_BASE_DIR/program/ 1369.END 1370COMPONENTPREFIX_BASIS_JAVA = vnd.sun.star.expand:$$OOO_BASE_DIR/program/classes/ 1371COMPONENTPREFIX_BASIS_PYTHON = vnd.openoffice.pymodule: 1372COMPONENTPREFIX_INBUILD_NATIVE = \ 1373 vnd.sun.star.expand:$$OOO_INBUILD_SHAREDLIB_DIR/ 1374COMPONENTPREFIX_INBUILD_JAVA = vnd.sun.star.expand:$$OOO_INBUILD_JAR_DIR/ 1375COMPONENTPREFIX_EXTENSION = ./ 1376 1377# workaround for strange dmake bug: 1378# if the previous block was a rule or a target, "\#" isn't recognized 1379# as an escaped "#". if it was an assignment, escaping works... 1380some_unique_variable_name:=1 1381