[PATCH] newlib: merge iconvdata into top-level Makefile
Mike Frysinger
vapier@gentoo.org
Sat Jan 22 06:04:58 GMT 2022
Avoid a recursive make with this tiny subdir to speed things up a bit.
---
NB: I can't easily test this because it's only built for i686-pc-linux,
and I only have GNU C library toolchains using that tuple. My half
attempts at building it *look* like it uses the right flags.
newlib/Makefile.am | 7 +-
newlib/Makefile.in | 186 +-
newlib/configure | 22 +-
newlib/configure.ac | 6 +-
newlib/iconvdata/Makefile.am | 23 -
newlib/iconvdata/Makefile.in | 643 --
newlib/iconvdata/aclocal.m4 | 1178 ---
newlib/iconvdata/configure | 14169 --------------------------------
newlib/iconvdata/configure.ac | 22 -
newlib/iconvdata/local.mk | 20 +
10 files changed, 201 insertions(+), 16075 deletions(-)
delete mode 100644 newlib/iconvdata/Makefile.am
delete mode 100644 newlib/iconvdata/Makefile.in
delete mode 100644 newlib/iconvdata/aclocal.m4
delete mode 100755 newlib/iconvdata/configure
delete mode 100644 newlib/iconvdata/configure.ac
create mode 100644 newlib/iconvdata/local.mk
diff --git a/newlib/Makefile.am b/newlib/Makefile.am
index 6a28215d3620..ee986289a60a 100644
--- a/newlib/Makefile.am
+++ b/newlib/Makefile.am
@@ -6,6 +6,7 @@ ACLOCAL_AMFLAGS = -I . -I .. -I ../config
# Variables that will accumulate in subdirs.
PHONY =
noinst_DATA =
+pkglib_LTLIBRARIES =
# Multilib support variables.
MULTISRCTOP =
@@ -67,8 +68,7 @@ AM_MAKEFLAGS = \
FLAGS_TO_PASS=$(AM_MAKEFLAGS)
-SUBDIRS = libc libm \
- . $(EXTRA_DIRS)
+SUBDIRS = libc libm .
tooldir = $(exec_prefix)/$(host_alias)
toollibdir = $(tooldir)/lib$(MULTISUBDIR)
@@ -539,5 +539,8 @@ clean-local:
if HAVE_DOC
include doc/local.mk
endif
+if HAVE_ICONVDATA
+include iconvdata/local.mk
+endif
.PHONY: $(PHONY)
diff --git a/newlib/configure.ac b/newlib/configure.ac
index 93dde7feb5f7..13f318922605 100644
--- a/newlib/configure.ac
+++ b/newlib/configure.ac
@@ -348,14 +348,14 @@ AM_CONDITIONAL(HAVE_DOC, test x$have_multisubdir = xno)
# subdirectory withing the build directory.
AM_CONDITIONAL(HAVE_MULTISUBDIR, test x$have_multisubdir = xyes)
-EXTRA_DIRS=
+HAVE_ICONVDATA=false
case $host in
i[[34567]]86-pc-linux-*)
AC_CONFIG_SUBDIRS(iconvdata)
- EXTRA_DIRS=iconvdata
+ HAVE_ICONVDATA=true
;;
esac
-AC_SUBST(EXTRA_DIRS)
+AM_CONDITIONAL([HAVE_ICONVDATA], $HAVE_ICONVDATA)
CRT0=
CRT0_DIR=
diff --git a/newlib/iconvdata/local.mk b/newlib/iconvdata/local.mk
new file mode 100644
index 000000000000..31ccbdf278c5
--- /dev/null
+++ b/newlib/iconvdata/local.mk
@@ -0,0 +1,20 @@
+pkglib_LTLIBRARIES += %D%/EUC-JP.la
+
+%C%_EUC_JP_la_SOURCES = %D%/dummy.c
+if !ELIX_LEVEL_1
+%C%_EUC_JP_la_SOURCES += \
+ %D%/euc-jp.c \
+ %D%/jis0201.c \
+ %D%/jis0208.c \
+ %D%/jis0212.c
+endif
+%C%_EUC_JP_la_DEPENDENCIES = $(%C%_EUC_JP_la_LIBADD)
+%C%_EUC_JP_la_CPPFLAGS = \
+ -DNDEBUG \
+ -I$(srcdir)/iconvdata \
+ -I$(srcdir)/libc/sys/linux \
+ $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
+%C%_EUC_JP_la_LDFLAGS = -module -no-undefined -Xcompiler -Wl,-rpath-link=. -Xcompiler -nostdlib -L. -lc
+
+gconvdir = $(pkglibdir)
+gconv_DATA = %D%/gconv-modules
--
2.34.1
More information about the Newlib
mailing list