VirtualBox

Changeset 16389 in vbox for trunk/src/libs/xpcom18a4


Ignore:
Timestamp:
Jan 29, 2009 9:30:46 PM (16 years ago)
Author:
vboxsync
Message:

xpcom: build xpidl as a 32-bit binary on darwin.amd64; started cleaning up the xpcom build program template.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/libs/xpcom18a4/Makefile.kmk

    r16318 r16389  
    107107TEMPLATE_XPCOM_LDFLAGS.amd64       = -m64
    108108TEMPLATE_XPCOM_LDFLAGS.darwin      = $(TEMPLATE_VBOXR3NP_LDFLAGS.darwin) \
    109                                      -fshort-wchar -fno-rtti -fno-exceptions -fpascal-strings \
    110                                      -framework CoreServices -framework CoreFoundation -framework Foundation -framework AppKit -framework Carbon \
    111                                      -current_version $(VBOX_VERSION_MAJOR).$(VBOX_VERSION_MINOR).$(VBOX_VERSION_BUILD)
     109        -fshort-wchar -fno-rtti -fno-exceptions -fpascal-strings \
     110        -current_version $(VBOX_VERSION_MAJOR).$(VBOX_VERSION_MINOR).$(VBOX_VERSION_BUILD) \
     111        -framework CoreServices \
     112        -framework CoreFoundation \
     113        -framework Foundation \
     114        -framework AppKit \
     115        -framework Carbon
     116## @todo wy is -fno-exceptions here.
    112117ifn1of ($(KBUILD_TARGET), os2 win)
    113118 TEMPLATE_XPCOM_CXXFLAGS          += -fPIC
     
    193198# and CXXFLAGS completely at the moment.
    194199#
    195 TEMPLATE_XPCOMBLDPROG                   = XPCOM Build programs executables
    196 TEMPLATE_XPCOMBLDPROG_EXTENDS           = VBOXBLDPROG
     200TEMPLATE_XPCOMBLDPROG                     = XPCOM Build programs executables
     201TEMPLATE_XPCOMBLDPROG_EXTENDS             = VBOXBLDPROG
    197202## @todo Verify that this doesn't blow up because of template inheriance ordering. (we're assuming XPCOMEXE is expanded when this is being used.)
    198 
    199 TEMPLATE_XPCOMBLDPROG_DEFS                       = $(TEMPLATE_BLDPROG_DEFS)                       $(TEMPLATE_XPCOMEXE_DEFS)
    200 TEMPLATE_XPCOMBLDPROG_DEFS.$(KBUILD_TARGET)      = $(TEMPLATE_BLDPROG_DEFS.$(KBUILD_TARGET))      $(TEMPLATE_XPCOMEXE_DEFS.$(KBUILD_TARGET))
    201 TEMPLATE_XPCOMBLDPROG_DEFS.$(KBUILD_TARGET_ARCH) = $(TEMPLATE_BLDPROG_DEFS.$(KBUILD_TARGET_ARCH)) $(TEMPLATE_XPCOMEXE_DEFS.$(KBUILD_TARGET_ARCH))
    202 TEMPLATE_XPCOMBLDPROG_CXXFLAGS          = -ansi -Wall -Wno-non-virtual-dtor
    203 TEMPLATE_XPCOMBLDPROG_CXXFLAGS.$(KBUILD_TARGET_ARCH) = $(TEMPLATE_XPCOMEXE_CXXFLAGS.$(KBUILD_TARGET_ARCH))
    204 TEMPLATE_XPCOMBLDPROG_CXXFLAGS.release  = -O
    205 TEMPLATE_XPCOMBLDPROG_CXXFLAGS.profile  = -O
    206 TEMPLATE_XPCOMBLDPROG_CXXFLAGS.freebsd  = -pthread
    207 TEMPLATE_XPCOMBLDPROG_CXXFLAGS.linux    = -pthread
    208 TEMPLATE_XPCOMBLDPROG_CFLAGS            = -pipe -ansi -Wall -Wno-unused
    209 TEMPLATE_XPCOMBLDPROG_CFLAGS.$(KBUILD_TARGET_ARCH) = $(TEMPLATE_XPCOMEXE_CFLAGS.$(KBUILD_TARGET_ARCH))
    210 TEMPLATE_XPCOMBLDPROG_CFLAGS.release    = -O
    211 TEMPLATE_XPCOMBLDPROG_CFLAGS.profile    = -O
    212 TEMPLATE_XPCOMBLDPROG_CFLAGS.freebsd    = -pthread
    213 TEMPLATE_XPCOMBLDPROG_CFLAGS.linux      = -pthread
    214 TEMPLATE_XPCOMBLDPROG_INCS              = $(VBOX_PATH_SDK)/bindings/xpcom/include \
    215                                           $(VBOX_PATH_SDK)/bindings/xpcom/include/nsprpub \
    216                                           $(VBOX_PATH_SDK)/bindings/xpcom/include/string \
    217                                           $(VBOX_PATH_SDK)/bindings/xpcom/include/xpcom \
    218                                           $(VBOX_PATH_SDK)/bindings/xpcom/include/ipcd
    219 TEMPLATE_XPCOMBLDPROG_INCS.$(KBUILD_TARGET)         = $(TEMPLATE_XPCOMEXE_INCS.$(KBUILD_TARGET))
    220 TEMPLATE_XPCOMBLDPROG_INCS.$(KBUILD_TARGET_ARCH)    = $(TEMPLATE_XPCOMEXE_INCS.$(KBUILD_TARGET_ARCH))
    221 TEMPLATE_XPCOMBLDPROG_LIBPATH.$(KBUILD_TARGET)      = $(TEMPLATE_XPCOMEXE_LIBPATH.$(KBUILD_TARGET))
    222 TEMPLATE_XPCOMBLDPROG_LIBPATH.$(KBUILD_TARGET_ARCH) = $(TEMPLATE_XPCOMEXE_LIBPATH.$(KBUILD_TARGET_ARCH))
    223 ifeq ($(KBUILD_TARGET),darwin)
    224 TEMPLATE_XPCOMBLDPROG_LDFLAGS.$(KBUILD_TARGET)      = $(filter-out $(TEMPLATE_XPCOMEXE_LDFLAGS.$(KBUILD_TARGET)),$(TEMPLATE_VBOXR3NP_LDFLAGS.$(KBUILD_TARGET))) $(TEMPLATE_VBOXBLDPROG_LDFLAGS.darwin)
     203TEMPLATE_XPCOMBLDPROG_DEFS                = $(TEMPLATE_BLDPROG_DEFS)                $(TEMPLATE_XPCOMEXE_DEFS)
     204TEMPLATE_XPCOMBLDPROG_DEFS.$(KBUILD_HOST) = $(TEMPLATE_BLDPROG_DEFS.$(KBUILD_HOST)) $(TEMPLATE_XPCOMEXE_DEFS.$(KBUILD_HOST))
     205TEMPLATE_XPCOMBLDPROG_DEFS.x86            = $(TEMPLATE_BLDPROG_DEFS.x86)            $(TEMPLATE_XPCOMEXE_DEFS.x86)
     206TEMPLATE_XPCOMBLDPROG_DEFS.amd64          = $(TEMPLATE_BLDPROG_DEFS.amd64)          $(TEMPLATE_XPCOMEXE_DEFS.amd64)
     207TEMPLATE_XPCOMBLDPROG_INCS                = \
     208        $(VBOX_PATH_SDK)/bindings/xpcom/include \
     209        $(VBOX_PATH_SDK)/bindings/xpcom/include/nsprpub \
     210        $(VBOX_PATH_SDK)/bindings/xpcom/include/string \
     211        $(VBOX_PATH_SDK)/bindings/xpcom/include/xpcom \
     212        $(VBOX_PATH_SDK)/bindings/xpcom/include/ipcd
     213if1of ($(KBUILD_TARGET).$(KBUILD_TARGET_ARCH), darwin.amd64)
     214 TEMPLATE_XPCOMBLDPROG_CFLAGS             = $(filter-out -pedantic,$(TEMPLATE_BLDPROG_CFLAGS))
     215 TEMPLATE_XPCOMBLDPROG_CXXFLAGS           = $(filter-out -pedantic,$(TEMPLATE_BLDPROG_CXXFLAGS))
     216 TEMPLATE_XPCOMBLDPROG_CXXFLAGS.darwin    = $(TEMPLATE_BLDPROG_CXXFLAGS.darwin)     -fpascal-strings -fshort-wchar -fno-common -fno-rtti
     217 ## @todo ???: TEMPLATE_XPCOMBLDPROG_CFLAGS.darwin      = $(TEMPLATE_BLDPROG_CFLAGS.darwin)       -fpascal-strings -fshort-wchar -fno-common -fno-rtti
     218 TEMPLATE_XPCOMBLDPROG_LDFLAGS.darwin     = $(TEMPLATE_BLDPROG_LDFLAGS.darwin)      -fpascal-strings -fshort-wchar -fno-rtti -fno-exceptions
     219
    225220else
    226 TEMPLATE_XPCOMBLDPROG_LDFLAGS.$(KBUILD_TARGET)      = $(TEMPLATE_XPCOMEXE_LDFLAGS.$(KBUILD_TARGET))
    227 endif
    228 TEMPLATE_XPCOMBLDPROG_LDFLAGS.$(KBUILD_TARGET_ARCH) = $(TEMPLATE_XPCOMEXE_LDFLAGS.$(KBUILD_TARGET_ARCH))
     221 ## @todo This stuff is *really* ugly.
     222 TEMPLATE_XPCOMBLDPROG_CXXFLAGS          = -ansi -Wall -Wno-non-virtual-dtor
     223 TEMPLATE_XPCOMBLDPROG_CXXFLAGS.$(KBUILD_TARGET_ARCH) = $(TEMPLATE_XPCOMEXE_CXXFLAGS.$(KBUILD_TARGET_ARCH))
     224 TEMPLATE_XPCOMBLDPROG_CXXFLAGS.release  = -O
     225 TEMPLATE_XPCOMBLDPROG_CXXFLAGS.profile  = -O
     226 TEMPLATE_XPCOMBLDPROG_CXXFLAGS.freebsd  = -pthread
     227 TEMPLATE_XPCOMBLDPROG_CXXFLAGS.linux    = -pthread
     228 TEMPLATE_XPCOMBLDPROG_CFLAGS            = -pipe -ansi -Wall -Wno-unused
     229 TEMPLATE_XPCOMBLDPROG_CFLAGS.$(KBUILD_TARGET_ARCH) = $(TEMPLATE_XPCOMEXE_CFLAGS.$(KBUILD_TARGET_ARCH))
     230 TEMPLATE_XPCOMBLDPROG_CFLAGS.release    = -O
     231 TEMPLATE_XPCOMBLDPROG_CFLAGS.profile    = -O
     232 TEMPLATE_XPCOMBLDPROG_CFLAGS.freebsd    = -pthread
     233 TEMPLATE_XPCOMBLDPROG_CFLAGS.linux      = -pthread
     234 TEMPLATE_XPCOMBLDPROG_INCS.$(KBUILD_TARGET)         = $(TEMPLATE_XPCOMEXE_INCS.$(KBUILD_TARGET))
     235 TEMPLATE_XPCOMBLDPROG_INCS.$(KBUILD_TARGET_ARCH)    = $(TEMPLATE_XPCOMEXE_INCS.$(KBUILD_TARGET_ARCH))
     236 TEMPLATE_XPCOMBLDPROG_LIBPATH.$(KBUILD_TARGET)      = $(TEMPLATE_XPCOMEXE_LIBPATH.$(KBUILD_TARGET))
     237 TEMPLATE_XPCOMBLDPROG_LIBPATH.$(KBUILD_TARGET_ARCH) = $(TEMPLATE_XPCOMEXE_LIBPATH.$(KBUILD_TARGET_ARCH))
     238 ifeq ($(KBUILD_TARGET),darwin)
     239  TEMPLATE_XPCOMBLDPROG_LDFLAGS.$(KBUILD_TARGET)     = $(filter-out $(TEMPLATE_XPCOMEXE_LDFLAGS.$(KBUILD_TARGET)),$(TEMPLATE_VBOXR3NP_LDFLAGS.$(KBUILD_TARGET))) $(TEMPLATE_VBOXBLDPROG_LDFLAGS.darwin)
     240 else
     241  TEMPLATE_XPCOMBLDPROG_LDFLAGS.$(KBUILD_TARGET)     = $(TEMPLATE_XPCOMEXE_LDFLAGS.$(KBUILD_TARGET))
     242 endif
     243 TEMPLATE_XPCOMBLDPROG_LDFLAGS.$(KBUILD_TARGET_ARCH) = $(TEMPLATE_XPCOMEXE_LDFLAGS.$(KBUILD_TARGET_ARCH))
     244endif # End of ugly stuff.
    229245TEMPLATE_XPCOMBLDPROG_ORDERDEPS         = $(foreach hdrinst, $(filter %-HEADERS, $(INSTALLS)), $(TARGET_$(hdrinst)))
    230246
     
    612628## @todo This assumes HOST == TARGET.
    613629xpidl_INST = $(INST_BIN)
     630ifeq ($(KBUILD_TARGET).$(KBUILD_TARGET_ARCH),darwin.amd64) # HACK ALERT!
     631 xpidl_BLD_TRG_ARCH = x86
     632 ## @todo kBuild ticket 84 workarounds:
     633 xpidl_CFLAGS.x86   = $(TEMPLATE_XPCOMBLDPROG_CFLAGS.x86)
     634 xpidl_CXXFLAGS.x86 = $(TEMPLATE_XPCOMBLDPROG_CXXFLAGS.x86)
     635 xpidl_LDFLAGS.x86  = $(TEMPLATE_XPCOMBLDPROG_LDFLAGS.x86)
     636endif
    614637xpidl_SOURCES = \
    615638        xpcom/typelib/xpidl/xpidl.c \
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette