diff --git a/repos/base/mk/lib.mk b/repos/base/mk/lib.mk index 2f2c071264..cadb574106 100644 --- a/repos/base/mk/lib.mk +++ b/repos/base/mk/lib.mk @@ -131,9 +131,11 @@ include $(BASE_DIR)/mk/generic.mk # ifdef SHARED_LIB ifneq ($(sort $(OBJECTS) $(LIBS)),) - LIB_SO := $(addsuffix .lib.so,$(LIB)) - INSTALL_SO := $(INSTALL_DIR)/$(LIB_SO) - DEBUG_SO := $(DEBUG_DIR)/$(LIB_SO) + LIB_SO := $(addsuffix .lib.so,$(LIB)) + INSTALL_SO := $(INSTALL_DIR)/$(LIB_SO) + DEBUG_SO := $(DEBUG_DIR)/$(LIB_SO) + LIB_SO_DEBUG := $(LIB_SO).debug + DEBUG_SO_DEBUG := $(DEBUG_SO).debug endif else LIB_A := $(addsuffix .lib.a,$(LIB)) @@ -170,7 +172,7 @@ $(LIB_TAG) $(OBJECTS): $(HOST_TOOLS) # $(LIB_TAG): $(CUSTOM_TARGET_DEPS) -$(LIB_TAG): $(LIB_A) $(LIB_SO) $(LIB_CHECKED) $(ABI_SO) $(INSTALL_SO) $(DEBUG_SO) +$(LIB_TAG): $(LIB_A) $(LIB_SO) $(LIB_CHECKED) $(ABI_SO) $(INSTALL_SO) $(DEBUG_SO) $(DEBUG_SO_DEBUG) @touch $@ # @@ -243,11 +245,18 @@ $(ABI_SO): $(LIB).symbols.o $(LIB_CHECKED): $(LIB_SO) $(SYMBOLS) $(VERBOSE)$(BASE_DIR)/../../tool/check_abi $(LIB_SO) $(SYMBOLS) && touch $@ -$(LIB_SO).stripped: $(LIB_SO) - $(VERBOSE)$(STRIP) -o $@ $< +$(LIB_SO_DEBUG): $(LIB_SO) + $(VERBOSE)$(OBJCOPY) --only-keep-debug $< $@ -$(DEBUG_SO): $(LIB_SO) - $(VERBOSE)ln -sf $(CURDIR)/$< $@ +$(LIB_SO).stripped: $(LIB_SO) $(LIB_SO_DEBUG) + $(VERBOSE)$(STRIP) -o $@ $< + $(VERBOSE)$(OBJCOPY) --add-gnu-debuglink=$(LIB_SO_DEBUG) $@ $(INSTALL_SO): $(LIB_SO).stripped $(VERBOSE)ln -sf $(CURDIR)/$< $@ + +$(DEBUG_SO): $(LIB_SO).stripped + $(VERBOSE)ln -sf $(CURDIR)/$< $@ + +$(DEBUG_SO_DEBUG): $(LIB_SO_DEBUG) + $(VERBOSE)ln -sf $(CURDIR)/$< $@ diff --git a/repos/base/mk/prg.mk b/repos/base/mk/prg.mk index 3285274a33..fc02fb12c5 100644 --- a/repos/base/mk/prg.mk +++ b/repos/base/mk/prg.mk @@ -77,7 +77,7 @@ all: message $(TARGET) ifneq ($(INSTALL_DIR),) ifneq ($(DEBUG_DIR),) -all: message $(INSTALL_DIR)/$(TARGET) $(DEBUG_DIR)/$(TARGET) +all: message $(INSTALL_DIR)/$(TARGET) $(DEBUG_DIR)/$(TARGET) $(DEBUG_DIR)/$(TARGET).debug endif endif @@ -219,8 +219,12 @@ $(TARGET): $(LINK_ITEMS) $(wildcard $(LD_SCRIPTS)) $(LIB_SO_DEPS) STRIP_TARGET_CMD ?= $(STRIP) -o $@ $< -$(TARGET).stripped: $(TARGET) +$(TARGET).debug: $(TARGET) + $(VERBOSE)$(OBJCOPY) --only-keep-debug $< $@ + +$(TARGET).stripped: $(TARGET) $(TARGET).debug $(VERBOSE)$(STRIP_TARGET_CMD) + $(VERBOSE)$(OBJCOPY) --add-gnu-debuglink=$(TARGET).debug $@ $(INSTALL_DIR)/$(TARGET): $(TARGET).stripped $(VERBOSE)ln -sf $(CURDIR)/$< $@ @@ -230,7 +234,9 @@ ifeq ($(COVERAGE),yes) endif ifneq ($(DEBUG_DIR),) -$(DEBUG_DIR)/$(TARGET): $(TARGET) +$(DEBUG_DIR)/$(TARGET): $(TARGET).stripped + $(VERBOSE)ln -sf $(CURDIR)/$< $@ +$(DEBUG_DIR)/$(TARGET).debug: $(TARGET).debug $(VERBOSE)ln -sf $(CURDIR)/$< $@ endif @@ -238,12 +244,13 @@ else $(TARGET): $(INSTALL_DIR)/$(TARGET): $(TARGET) $(DEBUG_DIR)/$(TARGET): $(TARGET) +$(DEBUG_DIR)/$(TARGET).debug: $(TARGET) endif clean_prg_objects: $(MSG_CLEAN)$(PRG_REL_DIR) - $(VERBOSE)$(RM) -f $(OBJECTS) $(OBJECTS:.o=.d) $(TARGET) $(TARGET).stripped $(BINDER_SRC) + $(VERBOSE)$(RM) -f $(OBJECTS) $(OBJECTS:.o=.d) $(TARGET) $(TARGET).stripped $(TARGET).debug $(BINDER_SRC) $(VERBOSE)$(RM) -f *.d *.i *.ii *.s *.ali *.lib.so clean: clean_prg_objects diff --git a/repos/libports/lib/import/import-qt5_cmake.mk b/repos/libports/lib/import/import-qt5_cmake.mk index 15eddf6862..09e2fa195b 100644 --- a/repos/libports/lib/import/import-qt5_cmake.mk +++ b/repos/libports/lib/import/import-qt5_cmake.mk @@ -197,9 +197,12 @@ ifneq ($(findstring install/,$(CMAKE_TARGET_BINARIES)),) endif $(VERBOSE)for cmake_target_binary in $(CMAKE_TARGET_BINARIES); do \ + $(OBJCOPY) --only-keep-debug $${cmake_target_binary} $${cmake_target_binary}.debug; \ $(STRIP) $${cmake_target_binary} -o $${cmake_target_binary}.stripped; \ + $(OBJCOPY) --add-gnu-debuglink=$${cmake_target_binary}.debug $${cmake_target_binary}.stripped; \ ln -sf $(CURDIR)/$${cmake_target_binary}.stripped $(PWD)/bin/`basename $${cmake_target_binary}`; \ - ln -sf $(CURDIR)/$${cmake_target_binary} $(PWD)/debug/; \ + ln -sf $(CURDIR)/$${cmake_target_binary}.stripped $(PWD)/debug/`basename $${cmake_target_binary}`; \ + ln -sf $(CURDIR)/$${cmake_target_binary}.debug $(PWD)/debug/; \ done # diff --git a/repos/libports/lib/import/import-qt5_qmake.mk b/repos/libports/lib/import/import-qt5_qmake.mk index d5c039aa3b..204bcbb436 100644 --- a/repos/libports/lib/import/import-qt5_qmake.mk +++ b/repos/libports/lib/import/import-qt5_qmake.mk @@ -202,9 +202,12 @@ build_with_qmake: qmake_prepared.tag $(VERBOSE)source env.sh && $(MAKE) $(QT5_OUTPUT_FILTER) $(VERBOSE)for qmake_target_binary in $(QMAKE_TARGET_BINARIES); do \ + $(OBJCOPY) --only-keep-debug $${qmake_target_binary} $${qmake_target_binary}.debug; \ $(STRIP) $${qmake_target_binary} -o $${qmake_target_binary}.stripped; \ + $(OBJCOPY) --add-gnu-debuglink=$${qmake_target_binary}.debug $${qmake_target_binary}.stripped; \ ln -sf $(CURDIR)/$${qmake_target_binary}.stripped $(PWD)/bin/$${qmake_target_binary}; \ - ln -sf $(CURDIR)/$${qmake_target_binary} $(PWD)/debug/; \ + ln -sf $(CURDIR)/$${qmake_target_binary}.stripped $(PWD)/debug/$${qmake_target_binary}; \ + ln -sf $(CURDIR)/$${qmake_target_binary}.debug $(PWD)/debug/; \ done # diff --git a/repos/libports/lib/mk/qt5_base.mk b/repos/libports/lib/mk/qt5_base.mk index 098cc7a4e7..c139f0df97 100644 --- a/repos/libports/lib/mk/qt5_base.mk +++ b/repos/libports/lib/mk/qt5_base.mk @@ -2,6 +2,18 @@ include $(call select_from_repositories,lib/import/import-qt5_qmake.mk) LIBS = base libc libm stdcxx qt5_component egl mesa qoost +INSTALL_LIBS = lib/libQt5Core.lib.so \ + lib/libQt5Gui.lib.so \ + lib/libQt5Network.lib.so \ + lib/libQt5PrintSupport.lib.so \ + lib/libQt5Sql.lib.so \ + lib/libQt5Test.lib.so \ + lib/libQt5Widgets.lib.so \ + lib/libQt5Xml.lib.so \ + plugins/platforms/libqgenode.lib.so \ + plugins/imageformats/libqjpeg.lib.so \ + plugins/sqldrivers/libqsqlite.lib.so + built.tag: qmake_prepared.tag qmake_root/lib/ld.lib.so @# @@ -44,59 +56,18 @@ built.tag: qmake_prepared.tag qmake_root/lib/ld.lib.so $(VERBOSE) ln -sf .$(CURDIR)/qmake_root install/qt @# - @# create stripped versions + @# strip libs and create symlinks in 'bin' and 'debug' directories @# - $(VERBOSE)cd $(CURDIR)/install/qt/lib && \ - $(STRIP) libQt5Core.lib.so -o libQt5Core.lib.so.stripped && \ - $(STRIP) libQt5Gui.lib.so -o libQt5Gui.lib.so.stripped && \ - $(STRIP) libQt5Network.lib.so -o libQt5Network.lib.so.stripped && \ - $(STRIP) libQt5PrintSupport.lib.so -o libQt5PrintSupport.lib.so.stripped && \ - $(STRIP) libQt5Sql.lib.so -o libQt5Sql.lib.so.stripped && \ - $(STRIP) libQt5Test.lib.so -o libQt5Test.lib.so.stripped && \ - $(STRIP) libQt5Widgets.lib.so -o libQt5Widgets.lib.so.stripped && \ - $(STRIP) libQt5Xml.lib.so -o libQt5Xml.lib.so.stripped - - $(VERBOSE)cd $(CURDIR)/install/qt/plugins/platforms && \ - $(STRIP) libqgenode.lib.so -o libqgenode.lib.so.stripped - - $(VERBOSE)cd $(CURDIR)/install/qt/plugins/imageformats && \ - $(STRIP) libqjpeg.lib.so -o libqjpeg.lib.so.stripped - - $(VERBOSE)cd $(CURDIR)/install/qt/plugins/sqldrivers && \ - $(STRIP) libqsqlite.lib.so -o libqsqlite.lib.so.stripped - - @# - @# create symlinks in 'bin' directory - @# - - $(VERBOSE)ln -sf $(CURDIR)/install/qt/lib/libQt5Core.lib.so.stripped $(PWD)/bin/libQt5Core.lib.so - $(VERBOSE)ln -sf $(CURDIR)/install/qt/lib/libQt5Gui.lib.so.stripped $(PWD)/bin/libQt5Gui.lib.so - $(VERBOSE)ln -sf $(CURDIR)/install/qt/lib/libQt5Network.lib.so.stripped $(PWD)/bin/libQt5Network.lib.so - $(VERBOSE)ln -sf $(CURDIR)/install/qt/lib/libQt5PrintSupport.lib.so.stripped $(PWD)/bin/libQt5PrintSupport.lib.so - $(VERBOSE)ln -sf $(CURDIR)/install/qt/lib/libQt5Sql.lib.so.stripped $(PWD)/bin/libQt5Sql.lib.so - $(VERBOSE)ln -sf $(CURDIR)/install/qt/lib/libQt5Test.lib.so.stripped $(PWD)/bin/libQt5Test.lib.so - $(VERBOSE)ln -sf $(CURDIR)/install/qt/lib/libQt5Widgets.lib.so.stripped $(PWD)/bin/libQt5Widgets.lib.so - $(VERBOSE)ln -sf $(CURDIR)/install/qt/lib/libQt5Xml.lib.so.stripped $(PWD)/bin/libQt5Xml.lib.so - $(VERBOSE)ln -sf $(CURDIR)/install/qt/plugins/platforms/libqgenode.lib.so.stripped $(PWD)/bin/libqgenode.lib.so - $(VERBOSE)ln -sf $(CURDIR)/install/qt/plugins/imageformats/libqjpeg.lib.so.stripped $(PWD)/bin/libqjpeg.lib.so - $(VERBOSE)ln -sf $(CURDIR)/install/qt/plugins/sqldrivers/libqsqlite.lib.so.stripped $(PWD)/bin/libqsqlite.lib.so - - @# - @# create symlinks in 'debug' directory - @# - - $(VERBOSE)ln -sf $(CURDIR)/install/qt/lib/libQt5Core.lib.so $(PWD)/debug/ - $(VERBOSE)ln -sf $(CURDIR)/install/qt/lib/libQt5Gui.lib.so $(PWD)/debug/ - $(VERBOSE)ln -sf $(CURDIR)/install/qt/lib/libQt5Network.lib.so $(PWD)/debug/ - $(VERBOSE)ln -sf $(CURDIR)/install/qt/lib/libQt5PrintSupport.lib.so $(PWD)/debug/ - $(VERBOSE)ln -sf $(CURDIR)/install/qt/lib/libQt5Sql.lib.so $(PWD)/debug/ - $(VERBOSE)ln -sf $(CURDIR)/install/qt/lib/libQt5Test.lib.so $(PWD)/debug/ - $(VERBOSE)ln -sf $(CURDIR)/install/qt/lib/libQt5Widgets.lib.so $(PWD)/debug/ - $(VERBOSE)ln -sf $(CURDIR)/install/qt/lib/libQt5Xml.lib.so $(PWD)/debug/ - $(VERBOSE)ln -sf $(CURDIR)/install/qt/plugins/platforms/libqgenode.lib.so $(PWD)/debug/libqgenode.lib.so - $(VERBOSE)ln -sf $(CURDIR)/install/qt/plugins/imageformats/libqjpeg.lib.so $(PWD)/debug/libqjpeg.lib.so - $(VERBOSE)ln -sf $(CURDIR)/install/qt/plugins/sqldrivers/libqsqlite.lib.so $(PWD)/debug/libqsqlite.lib.so + for LIB in $(INSTALL_LIBS); do \ + cd $(CURDIR)/install/qt/$$(dirname $${LIB}) && \ + $(OBJCOPY) --only-keep-debug $$(basename $${LIB}) $$(basename $${LIB}).debug && \ + $(STRIP) $$(basename $${LIB}) -o $$(basename $${LIB}).stripped && \ + $(OBJCOPY) --add-gnu-debuglink=$$(basename $${LIB}).debug $$(basename $${LIB}); \ + ln -sf $(CURDIR)/install/qt/$${LIB}.stripped $(PWD)/bin/$$(basename $${LIB}); \ + ln -sf $(CURDIR)/install/qt/$${LIB}.stripped $(PWD)/debug/$$(basename $${LIB}); \ + ln -sf $(CURDIR)/install/qt/$${LIB}.debug $(PWD)/debug/; \ + done @# @# create tar archives diff --git a/repos/libports/lib/mk/qt5_declarative.mk b/repos/libports/lib/mk/qt5_declarative.mk index ac2ecac6aa..993b49e223 100644 --- a/repos/libports/lib/mk/qt5_declarative.mk +++ b/repos/libports/lib/mk/qt5_declarative.mk @@ -63,9 +63,12 @@ built.tag: qmake_prepared.tag for LIB in $(INSTALL_LIBS); do \ cd $(CURDIR)/install/qt/$$(dirname $${LIB}) && \ - $(STRIP) $$(basename $${LIB}) -o $$(basename $${LIB}).stripped; \ + $(OBJCOPY) --only-keep-debug $$(basename $${LIB}) $$(basename $${LIB}).debug && \ + $(STRIP) $$(basename $${LIB}) -o $$(basename $${LIB}).stripped && \ + $(OBJCOPY) --add-gnu-debuglink=$$(basename $${LIB}).debug $$(basename $${LIB}); \ ln -sf $(CURDIR)/install/qt/$${LIB}.stripped $(PWD)/bin/$$(basename $${LIB}); \ - ln -sf $(CURDIR)/install/qt/$${LIB} $(PWD)/debug/; \ + ln -sf $(CURDIR)/install/qt/$${LIB}.stripped $(PWD)/debug/$$(basename $${LIB}); \ + ln -sf $(CURDIR)/install/qt/$${LIB}.debug $(PWD)/debug/; \ done @# diff --git a/repos/libports/lib/mk/qt5_graphicaleffects.mk b/repos/libports/lib/mk/qt5_graphicaleffects.mk index 412633b2f1..992908bf8b 100644 --- a/repos/libports/lib/mk/qt5_graphicaleffects.mk +++ b/repos/libports/lib/mk/qt5_graphicaleffects.mk @@ -39,9 +39,12 @@ built.tag: qmake_prepared.tag for LIB in $(INSTALL_LIBS); do \ cd $(CURDIR)/install/qt/$$(dirname $${LIB}) && \ - $(STRIP) $$(basename $${LIB}) -o $$(basename $${LIB}).stripped; \ + $(OBJCOPY) --only-keep-debug $$(basename $${LIB}) $$(basename $${LIB}).debug && \ + $(STRIP) $$(basename $${LIB}) -o $$(basename $${LIB}).stripped && \ + $(OBJCOPY) --add-gnu-debuglink=$$(basename $${LIB}).debug $$(basename $${LIB}); \ ln -sf $(CURDIR)/install/qt/$${LIB}.stripped $(PWD)/bin/$$(basename $${LIB}); \ - ln -sf $(CURDIR)/install/qt/$${LIB} $(PWD)/debug/; \ + ln -sf $(CURDIR)/install/qt/$${LIB}.stripped $(PWD)/debug/$$(basename $${LIB}); \ + ln -sf $(CURDIR)/install/qt/$${LIB}.debug $(PWD)/debug/; \ done @# diff --git a/repos/libports/lib/mk/qt5_quickcontrols.mk b/repos/libports/lib/mk/qt5_quickcontrols.mk index c980e41a44..27eecf6005 100644 --- a/repos/libports/lib/mk/qt5_quickcontrols.mk +++ b/repos/libports/lib/mk/qt5_quickcontrols.mk @@ -5,6 +5,8 @@ QT5_PORT_LIBS += libQt5Qml libQt5QmlModels libQt5Quick LIBS = libc libm mesa stdcxx $(QT5_PORT_LIBS) +INSTALL_LIBS = qml/QtQuick/Controls/libqtquickcontrolsplugin.lib.so + built.tag: qmake_prepared.tag @# @@ -31,22 +33,18 @@ built.tag: qmake_prepared.tag $(VERBOSE)ln -sf .$(CURDIR)/qmake_root install/qt @# - @# create stripped version + @# strip libs and create symlinks in 'bin' and 'debug' directories @# - $(VERBOSE)cd $(CURDIR)/install/qt/qml/QtQuick/Controls && $(STRIP) libqtquickcontrolsplugin.lib.so -o libqtquickcontrolsplugin.lib.so.stripped - - @# - @# create symlinks in 'bin' directory - @# - - $(VERBOSE)ln -sf $(CURDIR)/install/qt/qml/QtQuick/Controls/libqtquickcontrolsplugin.lib.so.stripped $(PWD)/bin/libqtquickcontrolsplugin.lib.so - - @# - @# create symlinks in 'debug' directory - @# - - $(VERBOSE)ln -sf $(CURDIR)/install/qt/qml/QtQuick/Controls/libqtquickcontrolsplugin.lib.so $(PWD)/debug/ + for LIB in $(INSTALL_LIBS); do \ + cd $(CURDIR)/install/qt/$$(dirname $${LIB}) && \ + $(OBJCOPY) --only-keep-debug $$(basename $${LIB}) $$(basename $${LIB}).debug && \ + $(STRIP) $$(basename $${LIB}) -o $$(basename $${LIB}).stripped && \ + $(OBJCOPY) --add-gnu-debuglink=$$(basename $${LIB}).debug $$(basename $${LIB}); \ + ln -sf $(CURDIR)/install/qt/$${LIB}.stripped $(PWD)/bin/$$(basename $${LIB}); \ + ln -sf $(CURDIR)/install/qt/$${LIB}.stripped $(PWD)/debug/$$(basename $${LIB}); \ + ln -sf $(CURDIR)/install/qt/$${LIB}.debug $(PWD)/debug/; \ + done @# @# create tar archives diff --git a/repos/libports/lib/mk/qt5_quickcontrols2.mk b/repos/libports/lib/mk/qt5_quickcontrols2.mk index c7937b01fe..f0a8d1ce82 100644 --- a/repos/libports/lib/mk/qt5_quickcontrols2.mk +++ b/repos/libports/lib/mk/qt5_quickcontrols2.mk @@ -5,6 +5,17 @@ QT5_PORT_LIBS += libQt5Qml libQt5QmlModels libQt5Quick LIBS = libc libm mesa stdcxx $(QT5_PORT_LIBS) +INSTALL_LIBS = lib/libQt5QuickControls2.lib.so \ + lib/libQt5QuickTemplates2.lib.so \ + qml/Qt/labs/calendar/libqtlabscalendarplugin.lib.so \ + qml/Qt/labs/platform/libqtlabsplatformplugin.lib.so \ + qml/QtQuick/Controls.2/libqtquickcontrols2plugin.lib.so \ + qml/QtQuick/Controls.2/Fusion/libqtquickcontrols2fusionstyleplugin.lib.so \ + qml/QtQuick/Controls.2/Imagine/libqtquickcontrols2imaginestyleplugin.lib.so \ + qml/QtQuick/Controls.2/Material/libqtquickcontrols2materialstyleplugin.lib.so \ + qml/QtQuick/Controls.2/Universal/libqtquickcontrols2universalstyleplugin.lib.so \ + qml/QtQuick/Templates.2/libqtquicktemplates2plugin.lib.so + built.tag: qmake_prepared.tag @# @@ -31,68 +42,18 @@ built.tag: qmake_prepared.tag $(VERBOSE)ln -sf .$(CURDIR)/qmake_root install/qt @# - @# create stripped versions + @# strip libs and create symlinks in 'bin' and 'debug' directories @# - $(VERBOSE)cd $(CURDIR)/install/qt/lib && \ - $(STRIP) libQt5QuickControls2.lib.so -o libQt5QuickControls2.lib.so.stripped && \ - $(STRIP) libQt5QuickTemplates2.lib.so -o libQt5QuickTemplates2.lib.so.stripped - - $(VERBOSE)cd $(CURDIR)/install/qt/qml/Qt/labs/calendar && \ - $(STRIP) libqtlabscalendarplugin.lib.so -o libqtlabscalendarplugin.lib.so.stripped - - $(VERBOSE)cd $(CURDIR)/install/qt/qml/Qt/labs/platform && \ - $(STRIP) libqtlabsplatformplugin.lib.so -o libqtlabsplatformplugin.lib.so.stripped - - $(VERBOSE)cd $(CURDIR)/install/qt/qml/QtQuick/Controls.2 && \ - $(STRIP) libqtquickcontrols2plugin.lib.so -o libqtquickcontrols2plugin.lib.so.stripped - - $(VERBOSE)cd $(CURDIR)/install/qt/qml/QtQuick/Controls.2/Fusion && \ - $(STRIP) libqtquickcontrols2fusionstyleplugin.lib.so -o libqtquickcontrols2fusionstyleplugin.lib.so.stripped - - $(VERBOSE)cd $(CURDIR)/install/qt/qml/QtQuick/Controls.2/Imagine && \ - $(STRIP) libqtquickcontrols2imaginestyleplugin.lib.so -o libqtquickcontrols2imaginestyleplugin.lib.so.stripped - - $(VERBOSE)cd $(CURDIR)/install/qt/qml/QtQuick/Controls.2/Material && \ - $(STRIP) libqtquickcontrols2materialstyleplugin.lib.so -o libqtquickcontrols2materialstyleplugin.lib.so.stripped - - $(VERBOSE)cd $(CURDIR)/install/qt/qml/QtQuick/Controls.2/Universal && \ - $(STRIP) libqtquickcontrols2universalstyleplugin.lib.so -o libqtquickcontrols2universalstyleplugin.lib.so.stripped - - $(VERBOSE)cd $(CURDIR)/install/qt/qml/QtQuick/Templates.2 && \ - $(STRIP) libqtquicktemplates2plugin.lib.so -o libqtquicktemplates2plugin.lib.so.stripped - - @# - @# create symlinks in 'bin' directory - @# - - $(VERBOSE)ln -sf $(CURDIR)/install/qt/lib/libQt5QuickControls2.lib.so.stripped $(PWD)/bin/libQt5QuickControls2.lib.so - $(VERBOSE)ln -sf $(CURDIR)/install/qt/lib/libQt5QuickTemplates2.lib.so.stripped $(PWD)/bin/libQt5QuickTemplates2.lib.so - - $(VERBOSE)ln -sf $(CURDIR)/install/qt/qml/Qt/labs/calendar/libqtlabscalendarplugin.lib.so.stripped $(PWD)/bin/libqtlabscalendarplugin.lib.so - $(VERBOSE)ln -sf $(CURDIR)/install/qt/qml/Qt/labs/platform/libqtlabsplatformplugin.lib.so.stripped $(PWD)/bin/libqtlabsplatformplugin.lib.so - $(VERBOSE)ln -sf $(CURDIR)/install/qt/qml/QtQuick/Controls.2/libqtquickcontrols2plugin.lib.so.stripped $(PWD)/bin/libqtquickcontrols2plugin.lib.so - $(VERBOSE)ln -sf $(CURDIR)/install/qt/qml/QtQuick/Controls.2/Fusion/libqtquickcontrols2fusionstyleplugin.lib.so.stripped $(PWD)/bin/libqtquickcontrols2fusionstyleplugin.lib.so - $(VERBOSE)ln -sf $(CURDIR)/install/qt/qml/QtQuick/Controls.2/Imagine/libqtquickcontrols2imaginestyleplugin.lib.so.stripped $(PWD)/bin/libqtquickcontrols2imaginestyleplugin.lib.so - $(VERBOSE)ln -sf $(CURDIR)/install/qt/qml/QtQuick/Controls.2/Material/libqtquickcontrols2materialstyleplugin.lib.so.stripped $(PWD)/bin/libqtquickcontrols2materialstyleplugin.lib.so - $(VERBOSE)ln -sf $(CURDIR)/install/qt/qml/QtQuick/Controls.2/Universal/libqtquickcontrols2universalstyleplugin.lib.so.stripped $(PWD)/bin/libqtquickcontrols2universalstyleplugin.lib.so - $(VERBOSE)ln -sf $(CURDIR)/install/qt/qml/QtQuick/Templates.2/libqtquicktemplates2plugin.lib.so.stripped $(PWD)/bin/libqtquicktemplates2plugin.lib.so - - @# - @# create symlinks in 'debug' directory - @# - - $(VERBOSE)ln -sf $(CURDIR)/install/qt/lib/libQt5QuickControls2.lib.so $(PWD)/debug/ - $(VERBOSE)ln -sf $(CURDIR)/install/qt/lib/libQt5QuickTemplates2.lib.so $(PWD)/debug/ - - $(VERBOSE)ln -sf $(CURDIR)/install/qt/qml/Qt/labs/calendar/libqtlabscalendarplugin.lib.so $(PWD)/debug/ - $(VERBOSE)ln -sf $(CURDIR)/install/qt/qml/Qt/labs/platform/libqtlabsplatformplugin.lib.so $(PWD)/debug/ - $(VERBOSE)ln -sf $(CURDIR)/install/qt/qml/QtQuick/Controls.2/libqtquickcontrols2plugin.lib.so $(PWD)/debug/ - $(VERBOSE)ln -sf $(CURDIR)/install/qt/qml/QtQuick/Controls.2/Fusion/libqtquickcontrols2fusionstyleplugin.lib.so $(PWD)/debug/ - $(VERBOSE)ln -sf $(CURDIR)/install/qt/qml/QtQuick/Controls.2/Imagine/libqtquickcontrols2imaginestyleplugin.lib.so $(PWD)/debug/ - $(VERBOSE)ln -sf $(CURDIR)/install/qt/qml/QtQuick/Controls.2/Material/libqtquickcontrols2materialstyleplugin.lib.so $(PWD)/debug/ - $(VERBOSE)ln -sf $(CURDIR)/install/qt/qml/QtQuick/Controls.2/Universal/libqtquickcontrols2universalstyleplugin.lib.so $(PWD)/debug/ - $(VERBOSE)ln -sf $(CURDIR)/install/qt/qml/QtQuick/Templates.2/libqtquicktemplates2plugin.lib.so $(PWD)/debug/ + for LIB in $(INSTALL_LIBS); do \ + cd $(CURDIR)/install/qt/$$(dirname $${LIB}) && \ + $(OBJCOPY) --only-keep-debug $$(basename $${LIB}) $$(basename $${LIB}).debug && \ + $(STRIP) $$(basename $${LIB}) -o $$(basename $${LIB}).stripped && \ + $(OBJCOPY) --add-gnu-debuglink=$$(basename $${LIB}).debug $$(basename $${LIB}); \ + ln -sf $(CURDIR)/install/qt/$${LIB}.stripped $(PWD)/bin/$$(basename $${LIB}); \ + ln -sf $(CURDIR)/install/qt/$${LIB}.stripped $(PWD)/debug/$$(basename $${LIB}); \ + ln -sf $(CURDIR)/install/qt/$${LIB}.debug $(PWD)/debug/; \ + done @# @# create tar archives diff --git a/repos/libports/lib/mk/qt5_svg.mk b/repos/libports/lib/mk/qt5_svg.mk index 34325ae79c..9608aa9c72 100644 --- a/repos/libports/lib/mk/qt5_svg.mk +++ b/repos/libports/lib/mk/qt5_svg.mk @@ -4,6 +4,9 @@ QT5_PORT_LIBS = libQt5Core libQt5Gui libQt5Widgets LIBS = libc libm mesa stdcxx $(QT5_PORT_LIBS) +INSTALL_LIBS = lib/libQt5Svg.lib.so \ + plugins/imageformats/libqsvg.lib.so + built.tag: qmake_prepared.tag @# @@ -30,30 +33,18 @@ built.tag: qmake_prepared.tag $(VERBOSE)ln -sf .$(CURDIR)/qmake_root install/qt @# - @# create stripped versions + @# strip libs and create symlinks in 'bin' and 'debug' directories @# - $(VERBOSE)cd $(CURDIR)/install/qt/lib && \ - $(STRIP) libQt5Svg.lib.so -o libQt5Svg.lib.so.stripped - - $(VERBOSE)cd $(CURDIR)/install/qt/plugins/imageformats && \ - $(STRIP) libqsvg.lib.so -o libqsvg.lib.so.stripped - - @# - @# create symlinks in 'bin' directory - @# - - $(VERBOSE)ln -sf $(CURDIR)/install/qt/lib/libQt5Svg.lib.so.stripped $(PWD)/bin/libQt5Svg.lib.so - - $(VERBOSE)ln -sf $(CURDIR)/install/qt/plugins/imageformats/libqsvg.lib.so.stripped $(PWD)/bin/libqsvg.lib.so - - @# - @# create symlinks in 'debug' directory - @# - - $(VERBOSE)ln -sf $(CURDIR)/install/qt/lib/libQt5Svg.lib.so $(PWD)/debug/ - - $(VERBOSE)ln -sf $(CURDIR)/install/qt/plugins/imageformats/libqsvg.lib.so $(PWD)/debug/ + for LIB in $(INSTALL_LIBS); do \ + cd $(CURDIR)/install/qt/$$(dirname $${LIB}) && \ + $(OBJCOPY) --only-keep-debug $$(basename $${LIB}) $$(basename $${LIB}).debug && \ + $(STRIP) $$(basename $${LIB}) -o $$(basename $${LIB}).stripped && \ + $(OBJCOPY) --add-gnu-debuglink=$$(basename $${LIB}).debug $$(basename $${LIB}); \ + ln -sf $(CURDIR)/install/qt/$${LIB}.stripped $(PWD)/bin/$$(basename $${LIB}); \ + ln -sf $(CURDIR)/install/qt/$${LIB}.stripped $(PWD)/debug/$$(basename $${LIB}); \ + ln -sf $(CURDIR)/install/qt/$${LIB}.debug $(PWD)/debug/; \ + done @# @# create tar archives diff --git a/repos/libports/lib/mk/qt5_virtualkeyboard.mk b/repos/libports/lib/mk/qt5_virtualkeyboard.mk index 2a57a037ae..16087c0fee 100644 --- a/repos/libports/lib/mk/qt5_virtualkeyboard.mk +++ b/repos/libports/lib/mk/qt5_virtualkeyboard.mk @@ -6,6 +6,12 @@ QT5_PORT_LIBS += libQt5Svg LIBS = libc libm mesa stdcxx $(QT5_PORT_LIBS) +INSTALL_LIBS = lib/libQt5VirtualKeyboard.lib.so \ + plugins/platforminputcontexts/libqtvirtualkeyboardplugin.lib.so \ + qml/QtQuick/VirtualKeyboard/libqtquickvirtualkeyboardplugin.lib.so \ + qml/QtQuick/VirtualKeyboard/Settings/libqtquickvirtualkeyboardsettingsplugin.lib.so \ + qml/QtQuick/VirtualKeyboard/Styles/libqtquickvirtualkeyboardstylesplugin.lib.so + built.tag: qmake_prepared.tag @# @@ -32,47 +38,18 @@ built.tag: qmake_prepared.tag $(VERBOSE)ln -sf .$(CURDIR)/qmake_root install/qt @# - @# create stripped versions + @# strip libs and create symlinks in 'bin' and 'debug' directories @# - $(VERBOSE)cd $(CURDIR)/install/qt/lib && \ - $(STRIP) libQt5VirtualKeyboard.lib.so -o libQt5VirtualKeyboard.lib.so.stripped - - $(VERBOSE)cd $(CURDIR)/install/qt/plugins/platforminputcontexts && \ - $(STRIP) libqtvirtualkeyboardplugin.lib.so -o libqtvirtualkeyboardplugin.lib.so.stripped - - $(VERBOSE)cd $(CURDIR)/install/qt/qml/QtQuick/VirtualKeyboard && \ - $(STRIP) libqtquickvirtualkeyboardplugin.lib.so -o libqtquickvirtualkeyboardplugin.lib.so.stripped - - $(VERBOSE)cd $(CURDIR)/install/qt/qml/QtQuick/VirtualKeyboard/Settings && \ - $(STRIP) libqtquickvirtualkeyboardsettingsplugin.lib.so -o libqtquickvirtualkeyboardsettingsplugin.lib.so.stripped - - $(VERBOSE)cd $(CURDIR)/install/qt/qml/QtQuick/VirtualKeyboard/Styles && \ - $(STRIP) libqtquickvirtualkeyboardstylesplugin.lib.so -o libqtquickvirtualkeyboardstylesplugin.lib.so.stripped - - @# - @# create symlinks in 'bin' directory - @# - - $(VERBOSE)ln -sf $(CURDIR)/install/qt/lib/libQt5VirtualKeyboard.lib.so.stripped $(PWD)/bin/libQt5VirtualKeyboard.lib.so - - $(VERBOSE)ln -sf $(CURDIR)/install/qt/plugins/platforminputcontexts/libqtvirtualkeyboardplugin.lib.so.stripped $(PWD)/bin/libqtvirtualkeyboardplugin.lib.so - - $(VERBOSE)ln -sf $(CURDIR)/install/qt/qml/QtQuick/VirtualKeyboard/libqtquickvirtualkeyboardplugin.lib.so.stripped $(PWD)/bin/libqtquickvirtualkeyboardplugin.lib.so - $(VERBOSE)ln -sf $(CURDIR)/install/qt/qml/QtQuick/VirtualKeyboard/Settings/libqtquickvirtualkeyboardsettingsplugin.lib.so.stripped $(PWD)/bin/libqtquickvirtualkeyboardsettingsplugin.lib.so - $(VERBOSE)ln -sf $(CURDIR)/install/qt/qml/QtQuick/VirtualKeyboard/Styles/libqtquickvirtualkeyboardstylesplugin.lib.so.stripped $(PWD)/bin/libqtquickvirtualkeyboardstylesplugin.lib.so - - @# - @# create symlinks in 'debug' directory - @# - - $(VERBOSE)ln -sf $(CURDIR)/install/qt/lib/libQt5VirtualKeyboard.lib.so $(PWD)/debug/ - - $(VERBOSE)ln -sf $(CURDIR)/install/qt/plugins/platforminputcontexts/libqtvirtualkeyboardplugin.lib.so $(PWD)/debug/ - - $(VERBOSE)ln -sf $(CURDIR)/install/qt/qml/QtQuick/VirtualKeyboard/libqtquickvirtualkeyboardplugin.lib.so $(PWD)/debug/ - $(VERBOSE)ln -sf $(CURDIR)/install/qt/qml/QtQuick/VirtualKeyboard/Settings/libqtquickvirtualkeyboardsettingsplugin.lib.so $(PWD)/debug/ - $(VERBOSE)ln -sf $(CURDIR)/install/qt/qml/QtQuick/VirtualKeyboard/Styles/libqtquickvirtualkeyboardstylesplugin.lib.so $(PWD)/debug/ + for LIB in $(INSTALL_LIBS); do \ + cd $(CURDIR)/install/qt/$$(dirname $${LIB}) && \ + $(OBJCOPY) --only-keep-debug $$(basename $${LIB}) $$(basename $${LIB}).debug && \ + $(STRIP) $$(basename $${LIB}) -o $$(basename $${LIB}).stripped && \ + $(OBJCOPY) --add-gnu-debuglink=$$(basename $${LIB}).debug $$(basename $${LIB}); \ + ln -sf $(CURDIR)/install/qt/$${LIB}.stripped $(PWD)/bin/$$(basename $${LIB}); \ + ln -sf $(CURDIR)/install/qt/$${LIB}.stripped $(PWD)/debug/$$(basename $${LIB}); \ + ln -sf $(CURDIR)/install/qt/$${LIB}.debug $(PWD)/debug/; \ + done @# @# create tar archives