ifeq "$(ROOT)" ""
TARGET = $(DIR_INFO)/$(THISAPP)
EXTRA_CONFIG = \
+ --build=$(BUILDTARGET) \
--prefix=/usr \
--libexecdir=/usr/lib/glibc
EXTRA_MAKE =
endif
# Enable some extra optimization for the glibc code.
-export CFLAGS := -O3 -DNDEBUG -fasynchronous-unwind-tables -fPIC -DPIC
+CFLAGS = -O3 -DNDEBUG -fasynchronous-unwind-tables -fPIC -DPIC \
+ -DNO_CTORS_DTORS_SECTIONS
ifeq "$(MACHINE)" "i586"
CFLAGS += -march=i586 -mtune=generic -mno-tls-direct-seg-refs
endif
-
ifeq "$(MACHINE_TYPE)" "arm"
# Disable hardware FP for ARM.
EXTRA_CONFIG += \
@rm -rf $(DIR_APP) $(DIR_SRC)/glibc-build && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
@mkdir $(DIR_SRC)/glibc-build
+ifeq "$(MACHINE_TYPE)" "arm"
+ cd $(DIR_APP) && tar jxf $(DIR_DL)/glibc-ports-$(PORTS_VER).tar.bz2
+ cd $(DIR_APP) && mv -v glibc-ports-$(PORTS_VER) ports
+
+ # http://sourceware.org/bugzilla/show_bug.cgi?id=12354
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc-cfi-entry-not-closed.patch
+endif
+
# Apply all patches.
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc/glibc-aliasing.patch
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc/glibc-fedora.patch
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc/glibc-rh837026.patch
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc-resolv-stack_chk_fail.patch
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc-remove-ctors-dtors-output-sections.patch
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc-test-installation.pl-nss_test1.patch
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/glibc-test-installation.pl-libgcc_s.patch
# Fixes:
# Makefile:235: *** mixed implicit and normal rules. Stop.
cd $(DIR_APP) && sed -i 's/ot \$$/ot:\n\ttouch $$@\n$$/' manual/Makefile
- # Fix an issue when building glibc with gcc 4.7.
- cd $(DIR_APP) && sed -i "s/ -lgcc_s//" Makeconfig
-
-ifeq "$(MACHINE_TYPE)" "arm"
- cd $(DIR_APP) && tar jxf $(DIR_DL)/glibc-ports-$(PORTS_VER).tar.bz2
- cd $(DIR_APP) && mv -v glibc-ports-$(PORTS_VER) ports
-endif
-
ifeq "$(ROOT)" ""
ifeq "$(MACHINE_TYPE)" "arm"
cd $(DIR_APP) && sed -i 's|libs -o|libs -L/usr/lib -Wl,-dynamic-linker=/lib/ld-linux.so.3 -o|' \
CFLAGS="$(CFLAGS) -fno-asynchronous-unwind-tables" \
$(DIR_APP)/configure $(EXTRA_CONFIG)
cd $(DIR_SRC)/glibc-build && make PARALLELMFLAGS=$(MAKETUNING) \
- CFLAFS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)"
+ CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)"
cd $(DIR_SRC)/glibc-build && make $(EXTRA_INSTALL) install
ifeq "$(ROOT)" ""
mkdir -p /usr/lib/locale
cd $(DIR_SRC)/glibc-build && localedef -i en_US -f ISO-8859-1 en_US
cd $(DIR_SRC)/glibc-build && localedef -i en_US -f UTF-8 en_US.utf8
+
+ # Timezone data will be shipped by tzdata.
+ rm -rfv /usr/share/zoneinfo
endif
@rm -rf $(DIR_APP) $(DIR_SRC)/glibc-build
@$(POSTBUILD)