mk: create separate debug info files

Commit also adapts Qt5 libraries.

Issue #5015
This commit is contained in:
Christian Prochaska 2023-10-18 08:52:24 +02:00 committed by Christian Helmuth
parent d8b87b2593
commit b41df1fb7a
11 changed files with 130 additions and 204 deletions

View File

@ -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)/$< $@

View File

@ -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

View File

@ -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
#

View File

@ -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
#

View File

@ -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

View File

@ -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
@#

View File

@ -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
@#

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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