* [Buildroot] [PATCH v3 1/2] purge-locales: further refactoring after removing man paths
@ 2015-07-13 23:45 Arnout Vandecappelle
2015-07-13 23:45 ` [Buildroot] [PATCH v3 2/2] purge-locales: fix handling of X11 locale.dir Arnout Vandecappelle
2015-07-14 0:12 ` [Buildroot] [PATCH v3 1/2] purge-locales: further refactoring after removing man paths Thomas Petazzoni
0 siblings, 2 replies; 3+ messages in thread
From: Arnout Vandecappelle @ 2015-07-13 23:45 UTC (permalink / raw
To: buildroot
Since the man paths have been removed, it is no longer necessary to
grep them out and the loop can be simplified.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
v3: Partial rebase, since v1 was already merged.
v2: remove the grep -v man as well, which allows us to use $dir/*
instead of the funky ls construct.
---
Makefile | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/Makefile b/Makefile
index 02a1032..f764ae5 100644
--- a/Makefile
+++ b/Makefile
@@ -546,9 +546,9 @@ define PURGE_LOCALES
for dir in $(wildcard $(addprefix $(TARGET_DIR),/usr/share/locale /usr/share/X11/locale /usr/lib/locale)); \
do \
- for lang in $$(cd $$dir; ls .|grep -v man); \
+ for langdir in $$dir/*; \
do \
- grep -qx $$lang $(LOCALE_WHITELIST) || rm -rf $$dir/$$lang; \
+ grep -qx $${langdir##*/} $(LOCALE_WHITELIST) || rm -rf $$langdir; \
done; \
done
endef
--
2.1.4
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [Buildroot] [PATCH v3 2/2] purge-locales: fix handling of X11 locale.dir
2015-07-13 23:45 [Buildroot] [PATCH v3 1/2] purge-locales: further refactoring after removing man paths Arnout Vandecappelle
@ 2015-07-13 23:45 ` Arnout Vandecappelle
2015-07-14 0:12 ` [Buildroot] [PATCH v3 1/2] purge-locales: further refactoring after removing man paths Thomas Petazzoni
1 sibling, 0 replies; 3+ messages in thread
From: Arnout Vandecappelle @ 2015-07-13 23:45 UTC (permalink / raw
To: buildroot
From: Valentine Barshak <gvaxon@gmail.com>
The /usr/share/X11/locale/locale.dir file is needed by libX11.
Removing it breaks locale support in X11. However, make removes
not only directories but also all files, which are not listed
in the BR2_ENABLE_LOCALE_WHITELIST.
This re-creates locale.dir database file where needed.
Signed-off-by: Valentine Barshak <gvaxon@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
[Arnout: use a separate loop, and add some explanatory comments]
---
v3: No change
v2: [Arnout]: use a separate loop, add explanatory comments
---
Makefile | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/Makefile b/Makefile
index f764ae5..8eb8c6d 100644
--- a/Makefile
+++ b/Makefile
@@ -540,6 +540,11 @@ ifeq ($(BR2_ENABLE_LOCALE_PURGE),y)
LOCALE_WHITELIST = $(BUILD_DIR)/locales.nopurge
LOCALE_NOPURGE = $(call qstrip,$(BR2_ENABLE_LOCALE_WHITELIST))
+# This piece of junk does the following:
+# First collect the whitelist in a file.
+# Then go over all the locale dirs and for each subdir, check if it exists
+# in the whitelist file. If it doesn't, kill it.
+# Finally, specifically for X11, regenerate locale.dir from the whitelist.
define PURGE_LOCALES
rm -f $(LOCALE_WHITELIST)
for i in $(LOCALE_NOPURGE) locale-archive; do echo $$i >> $(LOCALE_WHITELIST); done
@@ -551,6 +556,16 @@ define PURGE_LOCALES
grep -qx $${langdir##*/} $(LOCALE_WHITELIST) || rm -rf $$langdir; \
done; \
done
+ if [ -d $(TARGET_DIR)/usr/share/X11/locale ]; \
+ then \
+ for lang in $(LOCALE_NOPURGE); \
+ do \
+ if [ -f $(TARGET_DIR)/usr/share/X11/locale/$$lang/XLC_LOCALE ]; \
+ then \
+ echo "$$lang/XLC_LOCALE: $$lang"; \
+ fi \
+ done > $(TARGET_DIR)/usr/share/X11/locale/locale.dir; \
+ fi
endef
TARGET_FINALIZE_HOOKS += PURGE_LOCALES
endif
--
2.1.4
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [Buildroot] [PATCH v3 1/2] purge-locales: further refactoring after removing man paths
2015-07-13 23:45 [Buildroot] [PATCH v3 1/2] purge-locales: further refactoring after removing man paths Arnout Vandecappelle
2015-07-13 23:45 ` [Buildroot] [PATCH v3 2/2] purge-locales: fix handling of X11 locale.dir Arnout Vandecappelle
@ 2015-07-14 0:12 ` Thomas Petazzoni
1 sibling, 0 replies; 3+ messages in thread
From: Thomas Petazzoni @ 2015-07-14 0:12 UTC (permalink / raw
To: buildroot
Dear Arnout Vandecappelle (Essensium/Mind),
On Tue, 14 Jul 2015 01:45:27 +0200, Arnout Vandecappelle
(Essensium/Mind) wrote:
> Since the man paths have been removed, it is no longer necessary to
> grep them out and the loop can be simplified.
>
> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
> ---
> v3: Partial rebase, since v1 was already merged.
> v2: remove the grep -v man as well, which allows us to use $dir/*
> instead of the funky ls construct.
> ---
> Makefile | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
Both applied, thanks.
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2015-07-14 0:12 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-07-13 23:45 [Buildroot] [PATCH v3 1/2] purge-locales: further refactoring after removing man paths Arnout Vandecappelle
2015-07-13 23:45 ` [Buildroot] [PATCH v3 2/2] purge-locales: fix handling of X11 locale.dir Arnout Vandecappelle
2015-07-14 0:12 ` [Buildroot] [PATCH v3 1/2] purge-locales: further refactoring after removing man paths Thomas Petazzoni
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.