Handle the case of no shared libgcc -- sh4 for instance.
This commit is contained in:
parent
2c4877ced6
commit
4a66db29af
@ -302,16 +302,19 @@ ifneq ($(TARGET_DIR),)
|
|||||||
$(TARGET_DIR)/lib/libstdc++.so.5.0.5: $(GCC_BUILD_DIR2)/.installed
|
$(TARGET_DIR)/lib/libstdc++.so.5.0.5: $(GCC_BUILD_DIR2)/.installed
|
||||||
cp -a $(STAGING_DIR)/lib/libstdc++.so* $(TARGET_DIR)/lib/
|
cp -a $(STAGING_DIR)/lib/libstdc++.so* $(TARGET_DIR)/lib/
|
||||||
|
|
||||||
$(TARGET_DIR)/lib/libgcc_s.so.0.9.9: $(GCC_BUILD_DIR2)/.installed
|
$(GCC_BUILD_DIR2)/.shared_libgcc: $(GCC_BUILD_DIR2)/.installed
|
||||||
cp -a $(STAGING_DIR)/lib/libgcc_s.so* $(TARGET_DIR)/lib/
|
|
||||||
# Let applications link with the shared libgcc.
|
# Let applications link with the shared libgcc.
|
||||||
mkdir -p $(STAGING_DIR)/usr/lib/gcc-lib/$(ARCH)-linux/$(GCC_VERSION)/
|
if [ -f $(STAGING_DIR)/lib/libgcc_s.so.0.9.9 ] ; then \
|
||||||
ln -sf $(STAGING_DIR)/lib/libgcc_s.so $(STAGING_DIR)/usr/lib/gcc-lib/$(ARCH)-linux/$(GCC_VERSION)/libgcc.so
|
cp -a $(STAGING_DIR)/lib/libgcc_s.so* $(TARGET_DIR)/lib/ ; \
|
||||||
|
mkdir -p $(STAGING_DIR)/usr/lib/gcc-lib/$(ARCH)-linux/$(GCC_VERSION)/ ; \
|
||||||
|
ln -sf $(STAGING_DIR)/lib/libgcc_s.so $(STAGING_DIR)/usr/lib/gcc-lib/$(ARCH)-linux/$(GCC_VERSION)/libgcc.so ; \
|
||||||
|
fi
|
||||||
|
touch $(GCC_BUILD_DIR2)/.shared_libgcc
|
||||||
|
|
||||||
ifeq ($(INSTALL_LIBSTDCPP),true)
|
ifeq ($(INSTALL_LIBSTDCPP),true)
|
||||||
GCC_TARGETS= $(TARGET_DIR)/lib/libgcc_s.so.0.9.9 $(TARGET_DIR)/lib/libstdc++.so.5.0.5
|
GCC_TARGETS= $(GCC_BUILD_DIR2)/.shared_libgcc $(TARGET_DIR)/lib/libstdc++.so.5.0.5
|
||||||
else
|
else
|
||||||
GCC_TARGETS= $(TARGET_DIR)/lib/libgcc_s.so.0.9.9
|
GCC_TARGETS= $(GCC_BUILD_DIR2)/.shared_libgcc
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@ -457,9 +460,11 @@ $(TARGET_DIR)/usr/bin/gcc: $(GCC_BUILD_DIR3)/.compiled
|
|||||||
$(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc
|
$(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc
|
||||||
# Work around problem of missing syslimits.h
|
# Work around problem of missing syslimits.h
|
||||||
cp -f $(STAGING_DIR)/usr/lib/gcc-lib/$(ARCH)-linux/$(GCC_VERSION)/include/syslimits.h $(TARGET_DIR)/usr/lib/gcc-lib/$(ARCH)-linux/$(GCC_VERSION)/include/
|
cp -f $(STAGING_DIR)/usr/lib/gcc-lib/$(ARCH)-linux/$(GCC_VERSION)/include/syslimits.h $(TARGET_DIR)/usr/lib/gcc-lib/$(ARCH)-linux/$(GCC_VERSION)/include/
|
||||||
# Enable applications to find the shared libgcc when linking (on target).
|
# Enable applications to find the shared libgcc when linking on target.
|
||||||
ln -sf $(TARGET_DIR)/lib/libgcc_s.so $(TARGET_DIR)/usr/lib/gcc-lib/$(ARCH)-linux/$(GCC_VERSION)/libgcc.so
|
if [ -f $(TARGET_DIR)/usr/lib/gcc-lib/$(ARCH)-linux/$(GCC_VERSION)/libgcc.so ] ; then \
|
||||||
(cd $(TARGET_DIR)/usr/lib/gcc-lib/$(ARCH)-linux/$(GCC_VERSION) ; ln -sf /lib/libgcc_s.so libgcc.so)
|
ln -sf $(TARGET_DIR)/lib/libgcc_s.so $(TARGET_DIR)/usr/lib/gcc-lib/$(ARCH)-linux/$(GCC_VERSION)/libgcc.so ; \
|
||||||
|
(cd $(TARGET_DIR)/usr/lib/gcc-lib/$(ARCH)-linux/$(GCC_VERSION) ; ln -sf /lib/libgcc_s.so libgcc.so); \
|
||||||
|
fi
|
||||||
# These are in /lib, so...
|
# These are in /lib, so...
|
||||||
rm -rf $(TARGET_DIR)/usr/lib/libgcc_s.so*
|
rm -rf $(TARGET_DIR)/usr/lib/libgcc_s.so*
|
||||||
touch -c $(TARGET_DIR)/usr/bin/gcc
|
touch -c $(TARGET_DIR)/usr/bin/gcc
|
||||||
|
Loading…
Reference in New Issue
Block a user