| #************************************************************************* |
| # |
| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance |
| # with the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, |
| # software distributed under the License is distributed on an |
| # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| # KIND, either express or implied. See the License for the |
| # specific language governing permissions and limitations |
| # under the License. |
| # |
| #************************************************************************* |
| |
| GUI := OS2 |
| COM := GCC |
| |
| # set tmpdir to some mixed case path, suitable for native tools |
| #gb_TMPDIR:=$(if $(TMPDIR),$(shell cygpath -m $(TMPDIR)),$(shell cygpath -m /tmp)) |
| #gb_MKTEMP := mktemp --tmpdir=$(gb_TMPDIR) gbuild.XXXXXX |
| gb_MKTEMP := mktemp -t gbuild.XXXXXX |
| |
| gb_CC := gcc |
| gb_CXX := g++ |
| gb_GCCP := gcc |
| gb_LINK := gcc |
| gb_AR := emxomfar |
| gb_AWK := awk |
| gb_CLASSPATHSEP := ; |
| gb_RC := wrc |
| |
| # use CC/CXX if they are nondefaults |
| ifneq ($(origin CC),default) |
| gb_CC := $(CC) |
| gb_GCCP := $(CC) |
| endif |
| ifneq ($(origin CXX),default) |
| gb_CXX := $(CXX) |
| endif |
| |
| # until we get a solution to libc ticket#251, use dmik's -q option. |
| EMXOMFOPT = -q |
| export EMXOMFOPT |
| |
| gb_OSDEFS := \ |
| -D$(OS) \ |
| -D_PTHREADS \ |
| -DOS2 \ |
| $(PTHREAD_CFLAGS) \ |
| |
| gb_COMPILERDEFS := \ |
| -D$(COM) \ |
| -DHAVE_GCC_VISIBILITY_FEATURE \ |
| -DCPPU_ENV=$(COMNAME) \ |
| |
| gb_CPUDEFS := -D$(ALIGN) -DINTEL -D_X86_=1 -DX86 |
| |
| gb_RCDEFS := \ |
| -DOS2 \ |
| -bt=os2 \ |
| -i$(PATH_EMXPGCC)\include \ |
| |
| gb_RCFLAGS := \ |
| -V |
| |
| gb_CFLAGS := \ |
| -Zomf \ |
| -Wall \ |
| -Wendif-labels \ |
| -Wextra \ |
| -Wshadow \ |
| -fmessage-length=0 \ |
| -fno-common \ |
| -fno-strict-aliasing \ |
| -I$(JAVA_HOME)/include \ |
| -I$(JAVA_HOME)/include/os2 |
| |
| gb_CXXFLAGS := \ |
| -Zomf \ |
| -Wall \ |
| -Wendif-labels \ |
| -Wextra \ |
| -Wno-ctor-dtor-privacy \ |
| -Wno-non-virtual-dtor \ |
| -Wshadow \ |
| -fmessage-length=0 \ |
| -fno-common \ |
| -fno-strict-aliasing \ |
| -fno-use-cxa-atexit \ |
| -I$(JAVA_HOME)/include \ |
| -I$(JAVA_HOME)/include/os2 |
| |
| gb_STDLIBS = \ |
| z \ |
| stdc++ |
| |
| ifneq ($(EXTERNAL_WARNINGS_NOT_ERRORS),TRUE) |
| gb_CFLAGS_WERROR := -Werror |
| gb_CXXFLAGS_WERROR := -Werror |
| endif |
| |
| gb_LinkTarget_EXCEPTIONFLAGS := \ |
| -DEXCEPTIONS_ON \ |
| -fexceptions \ |
| -fno-enforce-eh-specs \ |
| |
| gb_PrecompiledHeader_EXCEPTIONFLAGS := $(gb_LinkTarget_EXCEPTIONFLAGS) |
| |
| gb_LinkTarget_NOEXCEPTIONFLAGS := \ |
| -DEXCEPTIONS_OFF \ |
| -fno-exceptions \ |
| |
| gb_NoexPrecompiledHeader_NOEXCEPTIONFLAGS := $(gb_LinkTarget_NOEXCEPTIONFLAGS) |
| |
| |
| gb_LinkTarget_LDFLAGS := \ |
| -g -Zomf \ |
| -Zhigh-mem \ |
| -Zlinker "DISABLE 1121" \ |
| -Zmap \ |
| -lcx \ |
| $(patsubst %,-LIBPATH:%,$(filter-out .,$(subst ;, ,$(subst \,/,$(ILIB))))) \ |
| $(subst -L../lib , ,$(SOLARLIB)) \ |
| |
| ifneq ($(ENABLE_CRASHDUMP),) |
| gb_LinkTarget_LDFLAGS += -DEBUG |
| gb_CFLAGS+=-Zi |
| gb_CXXFLAGS+=-Zi |
| endif |
| |
| ifeq ($(gb_DEBUGLEVEL),2) |
| gb_COMPILEROPTFLAGS := -O0 |
| gb_COMPILEROPT1FLAGS := -O0 |
| #gb_LinkTarget_LDFLAGS += -DEBUG |
| else |
| gb_COMPILEROPTFLAGS := -Os |
| gb_COMPILEROPT1FLAGS := -O1 |
| endif |
| |
| gb_COMPILERNOOPTFLAGS := -O0 |
| |
| |
| # Helper class |
| |
| gb_Helper_abbreviate_dirs_native = $(gb_Helper_abbreviate_dirs) |
| |
| # convert parameters filesystem root to native notation |
| # does some real work only on windows, make sure not to |
| # break the dummy implementations on unx* |
| define gb_Helper_convert_native |
| $(1) |
| endef |
| |
| |
| # AsmObject class |
| |
| gb_AsmObject_EXT := .s |
| |
| define gb_AsmObject__command |
| $(call gb_Output_announce,$(2),$(true),ASM,3) |
| $(call gb_Helper_abbreviate_dirs,\ |
| mkdir -p $(dir $(1)) && \ |
| $(gb_CC) \ |
| $(DEFS) \ |
| $(T_CFLAGS) \ |
| $(CFLAGS) \ |
| -c $(3) \ |
| -o $(1) \ |
| -MT $(1) \ |
| -I$(dir $(3)) \ |
| $(INCLUDE)) |
| endef |
| |
| # CObject class |
| |
| # $(call gb_CObject__command,object,relative-source,source,dep-file) |
| define gb_CObject__command |
| $(call gb_Output_announce,$(2),$(true),C ,3) |
| $(call gb_Helper_abbreviate_dirs,\ |
| mkdir -p $(dir $(1)) $(dir $(4)) && \ |
| $(gb_CC) \ |
| $(DEFS) \ |
| $(T_CFLAGS) \ |
| $(CFLAGS) \ |
| -c $(3) \ |
| -o $(1) \ |
| -MMD -MT $(1) \ |
| -MF $(4) \ |
| -I$(dir $(3)) \ |
| $(INCLUDE)) |
| endef |
| |
| |
| # CxxObject class |
| |
| # $(call gb_CxxObject__command,object,relative-source,source,dep-file) |
| define gb_CxxObject__command |
| $(call gb_Output_announce,$(2),$(true),CXX,3) |
| $(call gb_Helper_abbreviate_dirs,\ |
| mkdir -p $(dir $(1)) $(dir $(4)) && \ |
| $(gb_CXX) \ |
| $(DEFS) \ |
| $(T_CXXFLAGS) \ |
| $(CXXFLAGS) \ |
| -c $(3) \ |
| -o $(1) \ |
| -MMD -MT $(1) \ |
| -MF $(4) \ |
| -I$(dir $(3)) \ |
| $(INCLUDE_STL) $(INCLUDE)) |
| endef |
| |
| |
| # PrecompiledHeader class |
| |
| gb_PrecompiledHeader_get_enableflags = -DPRECOMPILED_HEADERS -Yu$(1).hxx \ |
| -Fp$(call gb_PrecompiledHeader_get_target,$(1)) |
| |
| ifeq ($(gb_FULLDEPS),$(true)) |
| define gb_PrecompiledHeader__command_deponcompile |
| $(call gb_Helper_abbreviate_dirs_native,\ |
| $(OUTDIR)/bin/makedepend$(gb_Executable_EXT) \ |
| $(4) $(5) \ |
| -I$(dir $(3)) \ |
| $(filter-out -I$(COMPATH)% -I$(JAVA_HOME)%,$(6)) \ |
| $(3) \ |
| -f - \ |
| | $(gb_AWK) -f $(GBUILDDIR)/processdeps.awk \ |
| -v OBJECTFILE=$(1) \ |
| -v OUTDIR=$(OUTDIR)/ \ |
| -v WORKDIR=$(WORKDIR)/ \ |
| -v SRCDIR=$(SRCDIR)/ \ |
| -v REPODIR=$(REPODIR)/ \ |
| > $(call gb_PrecompiledHeader_get_dep_target,$(2))) |
| endef |
| else |
| gb_PrecompiledHeader__command_deponcompile = |
| endif |
| |
| |
| define gb_PrecompiledHeader__command |
| $(call gb_Output_announce,$(2),$(true),PCH,1) |
| $(call gb_Helper_abbreviate_dirs_native,\ |
| mkdir -p $(dir $(1)) $(dir $(call gb_PrecompiledHeader_get_dep_target,$(2))) && \ |
| unset INCLUDE && \ |
| $(gb_CXX) \ |
| $(4) $(5) -Fd$(PDBFILE) \ |
| -I$(dir $(3)) \ |
| $(6) \ |
| -c $(3) \ |
| -DPRECOMPILED_HEADERS \ |
| -Yc$(notdir $(patsubst %.cxx,%.hxx,$(3))) -Fp$(1) -Fo$(1).obj) |
| $(call gb_PrecompiledHeader__command_deponcompile,$(1),$(2),$(3),$(4),$(5),$(6)) |
| endef |
| |
| # NoexPrecompiledHeader class |
| |
| gb_NoexPrecompiledHeader_get_enableflags = -Yu$(1).hxx \ |
| -Fp$(call gb_NoexPrecompiledHeader_get_target,$(1)) |
| |
| ifeq ($(gb_FULLDEPS),$(true)) |
| define gb_NoexPrecompiledHeader__command_deponcompile |
| $(call gb_Helper_abbreviate_dirs_native,\ |
| $(OUTDIR)/bin/makedepend$(gb_Executable_EXT) \ |
| $(4) $(5) \ |
| -I$(dir $(3)) \ |
| $(filter-out -I$(COMPATH)% -I$(JAVA_HOME)%,$(6)) \ |
| $(3) \ |
| -f - \ |
| | $(gb_AWK) -f $(GBUILDDIR)/processdeps.awk \ |
| -v OBJECTFILE=$(1) \ |
| -v OUTDIR=$(OUTDIR)/ \ |
| -v WORKDIR=$(WORKDIR)/ \ |
| -v SRCDIR=$(SRCDIR)/ \ |
| -v REPODIR=$(REPODIR)/ \ |
| > $(call gb_NoexPrecompiledHeader_get_dep_target,$(2))) |
| endef |
| else |
| gb_NoexPrecompiledHeader__command_deponcompile = |
| endif |
| |
| |
| define gb_NoexPrecompiledHeader__command |
| $(call gb_Output_announce,$(2),$(true),PCH,1) |
| $(call gb_Helper_abbreviate_dirs_native,\ |
| mkdir -p $(dir $(1)) $(dir $(call gb_NoexPrecompiledHeader_get_dep_target,$(2))) && \ |
| unset INCLUDE && \ |
| $(gb_CXX) \ |
| $(4) $(5) -Fd$(PDBFILE) \ |
| -I$(dir $(3)) \ |
| $(6) \ |
| -c $(3) \ |
| -DPRECOMPILED_HEADERS \ |
| -Yc$(notdir $(patsubst %.cxx,%.hxx,$(3))) -Fp$(1) -Fo$(1).obj) |
| $(call gb_NoexPrecompiledHeader__command_deponcompile,$(1),$(2),$(3),$(4),$(5),$(6)) |
| endef |
| |
| # LinkTarget class |
| |
| gb_LinkTarget_CFLAGS := $(gb_CFLAGS) $(gb_CFLAGS_WERROR) |
| gb_LinkTarget_CXXFLAGS := $(gb_CXXFLAGS) $(gb_CXXFLAGS_WERROR) |
| ifeq ($(ENABLE_SYMBOLS),SMALL) |
| gb_DEBUG_CFLAGS := -g1 |
| else |
| gb_DEBUG_CFLAGS := -g3 |
| endif |
| |
| gb_LinkTarget_INCLUDE :=\ |
| $(filter-out %/stl, $(subst -I. , ,$(SOLARINC))) \ |
| $(foreach inc,$(subst ;, ,$(JDKINC)),-I$(inc)) \ |
| |
| gb_LinkTarget_INCLUDE_STL := $(filter %/stl, $(subst -I. , ,$(SOLARINC))) |
| |
| gb_LinkTarget_get_pdbfile = $(call gb_LinkTarget_get_target,)pdb/$(1).pdb |
| |
| DLLBASE = $(notdir $(DLLTARGET:.dll=)) |
| DLLDEF = $(dir $(DLLTARGET))$(DLLBASE).def |
| |
| define gb_LinkTarget__command_dynamiclinkexecutable |
| $(call gb_Output_announce,$(2),$(true),LNK,4) |
| $(call gb_Helper_abbreviate_dirs_native,\ |
| mkdir -p $(dir $(1)) && \ |
| rm -f $(1) && \ |
| $(if $(DLLTARGET), echo LIBRARY $(DLLBASE) INITINSTANCE TERMINSTANCE > $(DLLDEF) &&) \ |
| $(if $(DLLTARGET), echo DATA MULTIPLE >> $(DLLDEF) &&) \ |
| RESPONSEFILE=$(call var2filecr,$(shell $(gb_MKTEMP)),1, \ |
| $(call gb_Helper_convert_native,\ |
| $(foreach object,$(CXXOBJECTS),$(call gb_CxxObject_get_target,$(object))) \ |
| $(foreach object,$(GENCXXOBJECTS),$(call gb_GenCxxObject_get_target,$(object))) \ |
| $(foreach object,$(COBJECTS),$(call gb_CObject_get_target,$(object))) \ |
| $(foreach object,$(GENCOBJECTS),$(call gb_GenCObject_get_target,$(object))) \ |
| $(foreach object,$(ASMOBJECTS),$(call gb_AsmObject_get_target,$(object))) \ |
| $(PCHOBJS))) && \ |
| $(if $(DLLTARGET), echo EXPORTS >> $(DLLDEF) &&) \ |
| $(if $(DLLTARGET), emxexp @$${RESPONSEFILE} | fix_exp_file | sort | uniq | fix_def_ord >> $(DLLDEF) &&) \ |
| $(gb_LINK) \ |
| $(if $(filter Library,$(TARGETTYPE)),$(gb_Library_TARGETTYPEFLAGS)) \ |
| $(if $(filter StaticLibrary,$(TARGETTYPE)),$(gb_StaticLibrary_TARGETTYPEFLAGS)) \ |
| $(if $(filter Executable,$(TARGETTYPE)),$(gb_Executable_TARGETTYPEFLAGS)) \ |
| $(if $(VERSIONMAP),$(gb_Library_VERSIONMAPFLAG) $(VERSIONMAP)) \ |
| $(T_LDFLAGS) \ |
| @$${RESPONSEFILE} \ |
| $(if $(DLLTARGET), $(DLLDEF)) \ |
| $(NATIVERES) \ |
| $(foreach lib,$(LINKED_STATIC_LIBS),$(call gb_StaticLibrary_get_target,$(lib))) \ |
| $(patsubst %.lib,-l%,$(foreach lib,$(LINKED_LIBS),$(call gb_Library_get_filename,$(lib)))) \ |
| $(patsubst %,-l%,$(EXTERNAL_LIBS)) \ |
| $(LIBS) \ |
| $(if $(DLLTARGET),-o $(DLLTARGET), -o $(1) ); \ |
| RC=$$?; rm $${RESPONSEFILE} \ |
| $(if $(DLLTARGET),; emximp -p2048 -o $(1) $(DLLDEF) ) \ |
| $(if $(DLLTARGET),; if [ ! -f $(DLLTARGET) ]; then rm -f $(1) && false; fi) ; exit $$RC) |
| endef |
| |
| |
| define gb_LinkTarget__command_staticlinklibrary |
| $(call gb_Helper_abbreviate_dirs_native,\ |
| mkdir -p $(dir $(1)) && \ |
| RESPONSEFILE=`$(gb_MKTEMP)` && \ |
| echo "$(foreach object,$(CXXOBJECTS),$(call gb_CxxObject_get_target,$(object))) \ |
| $(foreach object,$(GENCXXOBJECTS),$(call gb_GenCxxObject_get_target,$(object))) \ |
| $(foreach object,$(GENCOBJECTS),$(call gb_GenCObject_get_target,$(object))) \ |
| $(foreach object,$(COBJECTS),$(call gb_CObject_get_target,$(object))) " > $${RESPONSEFILE} && \ |
| $(gb_AR) cru\ |
| $(1) \ |
| @$${RESPONSEFILE}) |
| endef |
| |
| define gb_LinkTarget__command |
| $(call gb_Output_announce,$(2),$(true),LNK,4) |
| $(if $(filter GoogleTest Executable,$(TARGETTYPE)),$(call gb_LinkTarget__command_dynamiclinkexecutable,$(1),$(2))) |
| $(if $(filter Library,$(TARGETTYPE)),$(call gb_LinkTarget__command_dynamiclinkexecutable,$(1),$(2))) |
| $(if $(filter StaticLibrary,$(TARGETTYPE)),$(call gb_LinkTarget__command_staticlinklibrary,$(1))) |
| endef |
| |
| |
| # Library class |
| |
| gb_Library_DEFS := -D_DLL_ |
| gb_Library_TARGETTYPEFLAGS := -Zdll |
| gb_Library_VERSIONMAPFLAG := -Wl,--version-script |
| gb_Library_get_rpath := |
| |
| gb_Library_SYSPRE := |
| gb_Library_PLAINEXT := .lib |
| |
| gb_Library_PLAINLIBS_NONE += \ |
| stdc++ \ |
| ft2lib \ |
| dl \ |
| freetype \ |
| m \ |
| pthread |
| |
| gb_Library_LAYER := \ |
| $(foreach lib,$(gb_Library_OOOLIBS),$(lib):OOO) \ |
| $(foreach lib,$(gb_Library_PLAINLIBS_NONE),$(lib):OOO) \ |
| $(foreach lib,$(gb_Library_PLAINLIBS_URE),$(lib):OOO) \ |
| $(foreach lib,$(gb_Library_PLAINLIBS_OOO),$(lib):OOO) \ |
| $(foreach lib,$(gb_Library_RTLIBS),$(lib):OOO) \ |
| $(foreach lib,$(gb_Library_RTVERLIBS),$(lib):OOO) \ |
| $(foreach lib,$(gb_Library_STLLIBS),$(lib):OOO) \ |
| $(foreach lib,$(gb_Library_UNOLIBS_URE),$(lib):OOO) \ |
| $(foreach lib,$(gb_Library_UNOLIBS_OOO),$(lib):OOO) \ |
| $(foreach lib,$(gb_Library_UNOVERLIBS),$(lib):OOO) \ |
| |
| gb_Library_FILENAMES :=\ |
| $(foreach lib,$(gb_Library_TARGETS),$(lib):$(gb_Library_SYSPRE)$(lib)$(gb_Library_PLAINEXT)) |
| |
| |
| gb_Library_DLLEXT := .dll |
| gb_Library_MAJORVER := |
| gb_Library_RTEXT := $(gb_Library_DLLEXT) |
| ifeq ($(gb_PRODUCT),$(true)) |
| gb_Library_STLEXT := stdc++$(gb_Library_DLLEXT) |
| else |
| gb_Library_STLEXT := stlp45_stldebug$(gb_Library_DLLEXT) |
| endif |
| gb_Library_OOOEXT := $(gb_Library_DLLEXT) |
| gb_Library_UNOEXT := .uno$(gb_Library_DLLEXT) |
| gb_Library_UNOVEREXT := $(gb_Library_MAJORVER)$(gb_Library_DLLEXT) |
| gb_Library_RTVEREXT := $(gb_Library_MAJORVER)$(gb_Library_RTEXT) |
| |
| gb_Library_DLLFILENAMES :=\ |
| $(foreach lib,$(gb_Library_OOOLIBS),$(lib):$(lib)$(gb_Library_OOOEXT)) \ |
| $(foreach lib,$(gb_Library_PLAINLIBS_NONE),$(lib):$(lib)$(gb_Library_DLLEXT)) \ |
| $(foreach lib,$(gb_Library_PLAINLIBS_URE),$(lib):$(lib)$(gb_Library_DLLEXT)) \ |
| $(foreach lib,$(gb_Library_PLAINLIBS_OOO),$(lib):$(lib)$(gb_Library_DLLEXT)) \ |
| $(foreach lib,$(gb_Library_RTLIBS),$(lib):$(lib)$(gb_Library_RTEXT)) \ |
| $(foreach lib,$(gb_Library_RTVERLIBS),$(lib):$(lib)$(gb_Library_RTVEREXT)) \ |
| $(foreach lib,$(gb_Library_STLLIBS),$(lib):$(lib)$(gb_Library_STLEXT)) \ |
| $(foreach lib,$(gb_Library_UNOLIBS_URE),$(lib):$(lib)$(gb_Library_UNOEXT)) \ |
| $(foreach lib,$(gb_Library_UNOLIBS_OOO),$(lib):$(lib)$(gb_Library_UNOEXT)) \ |
| $(foreach lib,$(gb_Library_UNOVERLIBS),$(lib):$(lib)$(gb_Library_UNOVEREXT)) \ |
| |
| define gb_Library_Library_platform |
| $(call gb_LinkTarget_set_dlltarget,$(2),$(3)) |
| |
| #$(call gb_LinkTarget_set_auxtargets,$(2),\ |
| $(patsubst %.lib,%.exp,$(call gb_LinkTarget_get_target,$(2))) \ |
| $(3).manifest \ |
| $(call gb_LinkTarget_get_pdbfile,$(2)) \ |
| $(patsubst %.dll,%.pdb,$(3)) \ |
| $(patsubst %.dll,%.ilk,$(3)) \ |
| ) |
| |
| $(call gb_Library_get_target,$(1)) \ |
| $(call gb_Library_get_clean_target,$(1)) : AUXTARGETS := $(OUTDIR)/bin/$(notdir $(3)) |
| |
| ifneq ($(ENABLE_CRASHDUMP),) |
| $(call gb_Library_get_target,$(1)) \ |
| $(call gb_Library_get_clean_target,$(1)) : AUXTARGETS += \ |
| $(OUTDIR)/bin/$(notdir $(patsubst %.dll,%.pdb,$(3))) \ |
| $(OUTDIR)/bin/$(notdir $(patsubst %.dll,%.ilk,$(3))) \ |
| |
| $(call gb_Deliver_add_deliverable,$(OUTDIR)/bin/$(notdir $(patsubst %.dll,%.pdb,$(3))),$(patsubst %.dll,%.pdb,$(3)),$(1)) |
| $(call gb_Deliver_add_deliverable,$(OUTDIR)/bin/$(notdir $(patsubst %.dll,%.ilk,$(3))),$(patsubst %.dll,%.ilk,$(3)),$(1)) |
| endif |
| |
| $(call gb_Deliver_add_deliverable,$(OUTDIR)/bin/$(notdir $(3)),$(3),$(1)) |
| |
| $(call gb_LinkTarget_get_target,$(2)) \ |
| $(call gb_LinkTarget_get_headers_target,$(2)) : PDBFILE = $(call gb_LinkTarget_get_pdbfile,$(2)) |
| |
| endef |
| |
| define gb_Library_add_default_nativeres_DISABLED |
| $(call gb_WinResTarget_WinResTarget_init,$(1)/$(2)) |
| $(call gb_WinResTarget_add_file,$(1)/$(2),solenv/inc/shlinfo) |
| $(call gb_WinResTarget_set_defs,$(1)/$(2),\ |
| $$(DEFS) \ |
| -DADDITIONAL_VERINFO1 \ |
| -DADDITIONAL_VERINFO2 \ |
| -DADDITIONAL_VERINFO3 \ |
| ) |
| $(call gb_Library_add_nativeres,$(1),$(2)) |
| $(call gb_Library_get_clean_target,$(1)) : $(call gb_WinResTarget_get_clean_target,$(1)/$(2)) |
| |
| endef |
| |
| define gb_Library_add_nativeres |
| $(call gb_LinkTarget_get_target,$(call gb_Library__get_linktargetname,$(1))) : $(call gb_WinResTarget_get_target,$(1)/$(2)) |
| $(call gb_LinkTarget_get_target,$(call gb_Library__get_linktargetname,$(1))) : NATIVERES += $(call gb_WinResTarget_get_target,$(1)/$(2)) |
| |
| endef |
| |
| define gb_Library_get_dllname |
| $(patsubst $(1):%,%,$(filter $(1):%,$(gb_Library_DLLFILENAMES))) |
| endef |
| |
| |
| # StaticLibrary class |
| |
| gb_StaticLibrary_DEFS := |
| gb_StaticLibrary_SYSPRE := |
| gb_StaticLibrary_PLAINEXT := .lib |
| gb_StaticLibrary_JPEGEXT := lib$(gb_StaticLibrary_PLAINEXT) |
| |
| gb_StaticLibrary_FILENAMES := \ |
| $(foreach lib,$(gb_StaticLibrary_JPEGLIBS),$(lib):$(gb_StaticLibrary_SYSPRE)$(lib)$(gb_StaticLibrary_JPEGEXT)) \ |
| $(foreach lib,$(gb_StaticLibrary_PLAINLIBS),$(lib):$(gb_StaticLibrary_SYSPRE)$(lib)$(gb_StaticLibrary_PLAINEXT)) \ |
| |
| gb_StaticLibrary_StaticLibrary_platform = |
| |
| |
| # Executable class |
| |
| gb_Executable_EXT := .exe |
| gb_Executable_TARGETTYPEFLAGS := |
| #-RELEASE -BASE:0x1b000000 -OPT:NOREF -INCREMENTAL:NO -DEBUG |
| gb_Executable_get_rpath := |
| |
| gb_InBuild_Library_Path := $(OUTDIR)/bin |
| gb_Augment_Library_Path := PATH="$${PATH}:$(gb_InBuild_Library_Path)" |
| |
| define gb_Executable_Executable_platform |
| #$(call gb_LinkTarget_set_auxtargets,$(2),\ |
| # $(patsubst %.exe,%.pdb,$(call gb_LinkTarget_get_target,$(2))) \ |
| # $(call gb_LinkTarget_get_pdbfile,$(2)) \ |
| # $(call gb_LinkTarget_get_target,$(2)).manifest \ |
| #) |
| |
| #$(call gb_Executable_get_target,$(1)) \ |
| #$(call gb_Executable_get_clean_target,$(1)) : AUXTARGETS := $(call gb_Executable_get_target,$(1)).manifest |
| #$(call gb_Deliver_add_deliverable,$(call gb_Executable_get_target,$(1)).manifest,$(call gb_LinkTarget_get_target,$(2)).manifest,$(1)) |
| |
| #$(call gb_LinkTarget_get_target,$(2)) \ |
| #$(call gb_LinkTarget_get_headers_target,$(2)) : PDBFILE = $(call gb_LinkTarget_get_pdbfile,$(2)) |
| |
| endef |
| |
| # GoogleTest class |
| |
| gb_GoogleTest_GTESTPRECOMMAND := PATH="$${PATH}:$(OUTDIR)/bin" |
| gb_GoogleTest_get_filename = $(1)$(gb_Executable_EXT) |
| |
| define gb_GoogleTest_GoogleTest_platform |
| endef |
| |
| # JunitTest class |
| |
| define gb_JunitTest_JunitTest_platform |
| $(call gb_JunitTest_get_target,$(1)) : DEFS := \ |
| -Dorg.openoffice.test.arg.soffice="$$$${OOO_TEST_SOFFICE:-path:$(SRCDIR)/instsetoo_native/$(INPATH)/Apache_OpenOffice/installed/install/en-US/OpenOffice 4/program/soffice.exe}" \ |
| -Dorg.openoffice.test.arg.env=PATH \ |
| -Dorg.openoffice.test.arg.user=file:///$(call gb_JunitTest_get_userdir,$(1)) \ |
| |
| endef |
| |
| |
| # Ant class |
| |
| define gb_Ant_add_dependencies |
| __ant_out:=$(shell $(gb_Ant_ANTCOMMAND) -Ddependencies.outfile=`cygpath -m $(WORKDIR)/Ant/$(1)/deps` -f `cygpath -m $(2)` dependencies) |
| $$(eval $(foreach dep,$(shell cat $(WORKDIR)/Ant/$(1)/deps),$$(call gb_Ant_add_dependency,$(call gb_Ant_get_target,$(1)),$(shell cygpath -u $(dep))))) |
| |
| endef |
| |
| |
| # SdiTarget class |
| |
| gb_SdiTarget_SVIDLPRECOMMAND := PATH="$${PATH}:$(OUTDIR)/bin" |
| |
| # SrsPartMergeTarget |
| |
| gb_SrsPartMergeTarget_TRANSEXPRECOMMAND := PATH="$${PATH}:$(OUTDIR)/bin" |
| |
| # SrsPartTarget class |
| |
| gb_SrsPartTarget_RSCTARGET := $(OUTDIR)/bin/rsc.exe |
| gb_SrsPartTarget_RSCCOMMAND := SOLARBINDIR=$(OUTDIR)/bin $(gb_SrsPartTarget_RSCTARGET) |
| |
| ifeq ($(gb_FULLDEPS),$(true)) |
| define gb_SrsPartTarget__command_dep |
| $(call gb_Helper_abbreviate_dirs_native,\ |
| $(OUTDIR)/bin/makedepend$(gb_Executable_EXT) \ |
| $(INCLUDE) \ |
| $(DEFS) \ |
| $(2) \ |
| -f - \ |
| | $(gb_AWK) -f $(GBUILDDIR)/processdeps.awk \ |
| -v OBJECTFILE=$(call gb_SrsPartTarget_get_target,$(1)) \ |
| -v OUTDIR=$(OUTDIR)/ \ |
| -v WORKDIR=$(WORKDIR)/ \ |
| -v SRCDIR=$(SRCDIR)/ \ |
| -v REPODIR=$(REPODIR)/ \ |
| > $(call gb_SrsPartTarget_get_dep_target,$(1))) |
| endef |
| else |
| gb_SrsPartTarget__command_dep = |
| endif |
| |
| # WinResTarget class |
| |
| gb_WinResTarget_POSTFIX :=.res |
| |
| define gb_WinResTarget__command |
| $(call gb_Output_announce,$(2),$(true),RES,3) |
| $(call gb_Helper_abbreviate_dirs_native,\ |
| mkdir -p $(dir $(1)) && \ |
| $(gb_RC) \ |
| $(DEFS) $(FLAGS) \ |
| -I$(dir $(3)) \ |
| $(INCLUDE) \ |
| -fo=$(1) \ |
| -r $(RCFILE) ) |
| endef |
| |
| $(eval $(call gb_Helper_make_dep_targets,\ |
| WinResTarget \ |
| )) |
| |
| ifeq ($(gb_FULLDEPS),$(true)) |
| define gb_WinResTarget__command_dep |
| $(call gb_Helper_abbreviate_dirs_native,\ |
| $(OUTDIR)/bin/makedepend$(gb_Executable_EXT) \ |
| $(INCLUDE) \ |
| $(DEFS) \ |
| $(2) \ |
| -f - \ |
| | $(gb_AWK) -f $(GBUILDDIR)/processdeps.awk \ |
| -v OBJECTFILE=$(call gb_WinResTarget_get_target,$(1)) \ |
| -v OUTDIR=$(OUTDIR)/ \ |
| -v WORKDIR=$(WORKDIR)/ \ |
| -v SRCDIR=$(SRCDIR)/ \ |
| -v REPODIR=$(REPODIR)/ \ |
| > $(call gb_WinResTarget_get_dep_target,$(1))) |
| endef |
| else |
| gb_WinResTarget__command_dep = |
| endif |
| |
| # ComponentTarget |
| |
| gb_XSLTPROCPRECOMMAND := PATH="$${PATH}:$(OUTDIR)/bin" |
| gb_Library_COMPONENTPREFIXES := \ |
| OOO:vnd.sun.star.expand:\dOOO_BASE_DIR/program/ \ |
| URELIB:vnd.sun.star.expand:\dURE_INTERNAL_LIB_DIR/ \ |
| NONE:vnd.sun.star.expand:\dOOO_INBUILD_SHAREDLIB_DIR/ \ |
| |
| # UnoApiTarget |
| |
| gb_UnoApiTarget_IDLCTARGET := $(OUTDIR)/bin/idlc.exe |
| gb_UnoApiTarget_IDLCCOMMAND := SOLARBINDIR=$(OUTDIR)/bin $(gb_UnoApiTarget_IDLCTARGET) |
| gb_UnoApiTarget_REGMERGETARGET := $(OUTDIR)/bin/regmerge.exe |
| gb_UnoApiTarget_REGMERGECOMMAND := SOLARBINDIR=$(OUTDIR)/bin $(gb_UnoApiTarget_REGMERGETARGET) |
| gb_UnoApiTarget_REGCOMPARETARGET := $(OUTDIR)/bin/regcompare.exe |
| gb_UnoApiTarget_REGCOMPARECOMMAND := SOLARBINDIR=$(OUTDIR)/bin $(gb_UnoApiTarget_REGCOMPARETARGET) |
| gb_UnoApiTarget_CPPUMAKERTARGET := $(OUTDIR)/bin/cppumaker.exe |
| gb_UnoApiTarget_CPPUMAKERCOMMAND := SOLARBINDIR=$(OUTDIR)/bin $(gb_UnoApiTarget_CPPUMAKERTARGET) |
| gb_UnoApiTarget_REGVIEWTARGET := $(OUTDIR)/bin/regview.exe |
| gb_UnoApiTarget_REGVIEWCOMMAND := SOLARBINDIR=$(OUTDIR)/bin $(gb_UnoApiTarget_REGVIEWTARGET) |
| |
| # vim: set noet sw=4 ts=4: |