VirtualBox

Changeset 83033 in vbox for trunk/Makefile.kmk


Ignore:
Timestamp:
Feb 10, 2020 1:40:54 PM (5 years ago)
Author:
vboxsync
Message:

/Config.kmk,/Makefile.kmk,Installer/darwin,FE/QT,SUPHard: Eliminated the symlinks under Resources/VirtualBoxVM.app to avoid confusing codesign and notarization. bugref:9466
Note! Best to do a clean build on mac (or at a minimum rm -Rf out/darwin.amd64/*/dist/VirtualBox.app/Contents/Frameworks/ out/darwin.amd64/*/dist/VirtualBox.app/Contents/plugins/).

  • SUPHard: Added new location SUPSECMAIN_FLAGS_LOC_OSX_HLP_APP (darwin only) for indicating a helper application and that hardened dylib and the rest of VirtualBox isn't in the executable directory.
  • SUPHard: Added a corresponding internal path ID kSupID_AppMacHelper (darwin only) for finding VirtualBoxVM for verification now that it is no longer in the main app binary directory.
  • /Config.kmk: Run install_name_tool after linking Qt binaries on darwin fix the Qt import paths (@executable_path/../Frameworks/ doesn't work for VirtualBoxVM any more).
  • /Makefile.kmk: Run install_name_tool during installation of Qt frameworks and plugins to use @rpath in non-hardened builds and the absolute paths in hardened ones (latter done by Installer/darwin/Makefile.kmk previously).
  • FE/Qt,Installer/darwin: Adjustments and path hacks.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Makefile.kmk

    r82968 r83033  
    179179        Frameworks/$(qtmod).framework/$(qtmod)=>Versions/5/$(qtmod) \
    180180        Frameworks/$(qtmod).framework/Resources=>Versions/5/Resources)
     181 qt5-bin_INSTALLER = $(INSTALL) $(if $(uid),-o $(uid)) $(if $(gid),-g $(gid)) $(if $(mode),-m $(mode)) $(4) -- \
     182                        "$(1)" "$(2)" $(if-expr "$(source_type_prefix)" == "EXEC_" \
     183                        ,$(NLTAB)install_name_tool \
     184                        $(if-expr "$(suffix $2)" == "", -id "$(if $(VBOX_WITH_HARDENING),/Applications/VirtualBox.app/Contents/Framework,@rpath)/$(notdir $(2)).framework/Version/5/$(notdir $(2))",) \
     185                        $(foreach qtmod, $(VBOX_QT_MOD_NAMES), \
     186                                $(foreach prefix, @executable_path/../Frameworks/ $(VBOX_PATH_QT)/Frameworks/ $(PATH_SDK_QT)/, \
     187                                -change "$(prefix)$(qtmod).framework/Versions/5/$(qtmod)" \
     188                                        "$(if $(VBOX_WITH_HARDENING),/Applications/VirtualBox.app/Contents/Frameworks,@rpath)/$(qtmod).framework/Versions/5/$(qtmod)" ) ) \
     189                        "$(2)",) # HACK ALERT! Using $(source_type_prefix) to detect EXEC_SOURCES.
    181190else # win x11
    182191 if1of ($(KBUILD_TARGET), linux solaris)
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