6892885 sync SUNWlocaledefsrc with latest locale sources
authorjenda
Thu, 22 Oct 2009 10:09:58 +0200
changeset 88 a661c82f242f
parent 87 be85760b115e
child 89 ba8fcb128d7f
6892885 sync SUNWlocaledefsrc with latest locale sources
Makefile
misc/mk/cldr.mk
misc/mk/common.mk
misc/mk/locale.mk
misc/mk/pkgs.mk
misc/mk/spec.mk
misc/templates/prototype/localedefsrc
misc/unicode.ctype
--- a/Makefile	Tue Oct 20 13:45:43 2009 +0200
+++ b/Makefile	Thu Oct 22 10:09:58 2009 +0200
@@ -32,6 +32,7 @@
 UNZIP		?= unzip
 GNU_GREP	?= ggrep
 PERL		?= perl
+BZIP2		?= bzip2
 
 ifeq ($(origin CC),default)
   CC = /opt/SUNWspro/bin/cc
@@ -128,7 +129,7 @@
 doc: build/report_diff.html
 
 clean: 
-	rm -Rf build
+	rm -Rf build pkgmaps proto
 
 
 include misc/mk/common.mk
--- a/misc/mk/cldr.mk	Tue Oct 20 13:45:43 2009 +0200
+++ b/misc/mk/cldr.mk	Thu Oct 22 10:09:58 2009 +0200
@@ -40,14 +40,22 @@
 
 build/UTF-8.cm: $(CLDR_TOOLS_DEPS) build/.dir build/.dtd_cache/.src
 	$(call cmd,gencharmap_utf8)
+
 build/%.cm: $(CLDR_TOOLS_DEPS) build/.dir build/.dtd_cache/.src
 	$(call cmd,gencharmap)
 	$(Q)[ "$(call charmap,$*)" = "$(call charmap_cldr,$*)" ] || mv build/$(call charmap_cldr,$*).cm $@
 
+build/%.cm.bz2: build/%.cm
+	$(call cmd,bzip2)
+
+
 
 $(LOCALES:%=build/%/posix.src): build/%/posix.src: build/%/cldr_variant $(CLDR_TOOLS_DEPS) build/.dtd_cache/.src
 	$(call cmd,genposix)
 
+$(LOCALES:%=build/%/posix.src.bz2): build/%/posix.src.bz2: build/%/posix.src
+	$(call cmd,bzip2)
+
 $(LOCALES:%=build/%/locale_desc): build/%/locale_desc: locale/%.spec $(CLDR_TOOLS_DEPS) build/%/cldr_variant build/.dtd_cache/.src
 	$(call cmd,gendesc)
 
--- a/misc/mk/common.mk	Tue Oct 20 13:45:43 2009 +0200
+++ b/misc/mk/common.mk	Thu Oct 22 10:09:58 2009 +0200
@@ -40,7 +40,8 @@
 
 quiet_cmd_clean = CLEAN
       cmd_clean = $(RM) -Rf $(CLEAN)
-
+quiet_cmd_bzip2 = BZIP2 $<
+      cmd_bzip2 = $(BZIP2) -c $< > $@
 
 %/.dir:
 	$(Q)mkdir -p "$*"
--- a/misc/mk/locale.mk	Tue Oct 20 13:45:43 2009 +0200
+++ b/misc/mk/locale.mk	Thu Oct 22 10:09:58 2009 +0200
@@ -33,12 +33,3 @@
 	$(call cmd,localedef32)
 $(LOCALES:%=build/%/64bit.so.3): build/%/64bit.so.3: build/%/posix.src build/%/64bit/.dir
 	$(call cmd,localedef64)
-
-
-$(LOCALES:%=build/%/.installed): build/%/.installed: build/%/32bit.so.3 build/%/64bit.so.3 build/%/locale_desc build/%/locale_map
-	$(Q)[ -d $(FILEROOT)/usr/lib/locale/$*/$(MACH64) ] || mkdir -p $(FILEROOT)/usr/lib/locale/$*/$(MACH64)
-	$(Q)cp build/$*/32bit.so.3 $(FILEROOT)/usr/lib/locale/$*/$*.so.3
-	$(Q)cp build/$*/64bit.so.3 $(FILEROOT)/usr/lib/locale/$*/$(MACH64)/$*.so.3
-	$(Q)cp build/$*/locale_desc $(FILEROOT)/usr/lib/locale/$*/locale_description
-	$(Q)cp build/$*/locale_map $(FILEROOT)/usr/lib/locale/$*/locale_map
-	$(Q)touch $@
--- a/misc/mk/pkgs.mk	Tue Oct 20 13:45:43 2009 +0200
+++ b/misc/mk/pkgs.mk	Thu Oct 22 10:09:58 2009 +0200
@@ -24,6 +24,7 @@
 
 -include build/pkgs.d
 
+
 .PHONY: install_svr4 install_ips
 install_svr4: build/pkgs.d $(PKGS:%=build/%/.installed_prototype)
 install_ips: build/pkgs.d $(PKGS:%=build/%/.installed_manifest)
@@ -50,9 +51,41 @@
 	cp $< $@
 
 
+$(LOCALES:%=build/%/.installed_locale): build/%/.installed_locale: build/%/32bit.so.3 build/%/64bit.so.3 build/%/locale_desc build/%/locale_map 
+	$(Q)[ -d $(FILEROOT)/usr/lib/locale/$*/$(MACH64) ] || mkdir -p $(FILEROOT)/usr/lib/locale/$*/$(MACH64)
+	$(Q)cp build/$*/32bit.so.3 $(FILEROOT)/usr/lib/locale/$*/$*.so.3
+	$(Q)cp build/$*/64bit.so.3 $(FILEROOT)/usr/lib/locale/$*/$(MACH64)/$*.so.3
+	$(Q)cp build/$*/locale_desc $(FILEROOT)/usr/lib/locale/$*/locale_description
+	$(Q)cp build/$*/locale_map $(FILEROOT)/usr/lib/locale/$*/locale_map
+	$(Q)touch $@
+
+$(LOCALES:%=build/%/.installed_localesrc): build/%/.installed_localesrc: build/%/posix.src.bz2
+	$(Q)[ -d $(FILEROOT)/usr/lib/localedef/src/locales ] || mkdir -p $(FILEROOT)/usr/lib/localedef/src/locales
+	$(Q)cp build/$*/posix.src.bz2 $(FILEROOT)/usr/lib/localedef/src/locales/$*.src.bz2
+	$(Q)touch $@
+
+build/SUNWlocaledefsrc/.installed_charmap.%: build/%.cm.bz2
+	$(Q)[ -d $(FILEROOT)/usr/lib/localedef/src/charmaps ] || mkdir -p $(FILEROOT)/usr/lib/localedef/src/charmaps
+	$(Q)cp build/$*.cm.bz2 $(FILEROOT)/usr/lib/localedef/src/charmaps/$*.cm.bz2
+	$(Q)touch $@
+
+
+
 # dependecies (little woo-doo, %pkg is hash of arrays, key is pkg_name, values are locales; look to the 'build/pkgs.d')
 build/pkgs.d: $(LOCALES:%=build/%/pkg_name)
 	$(Q)$(PERL) -e 'push @{$$pkg{substr(`cat $$_`,0,-1)}},m!build/(.*)/pkg_name! foreach (glob "build/*/pkg_name"); \
-		 print "PKGS ?= " . join(" ", keys %pkg) . "\n"; \
-		 print "build/$$_/prototype: " . join(" ", map { "build/$$_/prototype build/$$_/.installed" } @{$$pkg{$$_}}) ."\n" foreach (keys %pkg); \
-		 print "build/$$_/manifest: " . join(" ", map { "build/$$_/manifest build/$$_/.installed" } @{$$pkg{$$_}}) ."\n" foreach (keys %pkg); ' > $@
+		 print "PKGS ?= SUNWlocaledefsrc " . join(" ", keys %pkg) . "\n"; \
+		 print "build/$$_/prototype: " . join(" ", map { "build/$$_/prototype build/$$_/.installed_locale" } @{$$pkg{$$_}}) ."\n" foreach (keys %pkg); \
+		 print "build/$$_/manifest: " . join(" ", map { "build/$$_/manifest build/$$_/.installed_locale" } @{$$pkg{$$_}}) ."\n" foreach (keys %pkg); ' > $@
+
+# SUNWlocaledefsrc
+build/SUNWlocaledefsrc/prototype.src: build/SUNWlocaledefsrc/.dir $(LOCALES:%=build/%/.installed_localesrc) installed_charmaps
+	$(Q)cat misc/templates/prototype/localedefsrc > $@
+	$(Q)echo $(LOCALES)| $(PERL) -npe 's!\s*(\S+)!f none usr/lib/localedef/src/locales/\1.src.bz2 0644 root bin\n!g' >> $@
+
+build/SUNWlocaledefsrc/manifest.src: build/SUNWlocaledefsrc/.dir $(LOCALES:%=build/%/.installed_localesrc) installed_charmaps
+	$(Q)cat misc/templates/manifest/localedefsrc > $@
+	$(Q)echo $(LOCALES)| $(PERL) -npe 's!\s*(\S+)!file usr/lib/localedef/src/locales/\1.src.bz2 mode=0644 owner=root group=bin path=usr/lib/localedef/src/locales/\1.src.bz2\n!g' >> $@
+
+build/SUNWlocaledefsrc/prototype: build/SUNWlocaledefsrc/prototype.src 
+build/SUNWlocaledefsrc/manifest: build/SUNWlocaledefsrc/manifest.src
--- a/misc/mk/spec.mk	Tue Oct 20 13:45:43 2009 +0200
+++ b/misc/mk/spec.mk	Thu Oct 22 10:09:58 2009 +0200
@@ -72,6 +72,7 @@
 	$(Q)$(PERL) -e 'my %loc = map { m!build/(.*)/cldr_variant! => `cat $$_` =~ m!.*copy_ctype=([^,\n]*).*! } qw($^); \
 		print "build/$$k/posix.src: $$v\n" while(($$k,$$v) = each %loc); %loc = map { $$_ => m!\.([^@]*)! } keys %loc; \
 		print "build/$$k/32bit.so.3 build/$$k/64bit.so.3: build/$$v.cm misc/$$v.x\n" while(($$k,$$v) = each %loc); \
+		print "installed_charmaps: " . join(" ", map { "build/SUNWlocaledefsrc/.installed_charmap.$$_" } grep { ! $$seen{$$_}++ } values %loc) . "\n"; \
 		print "build/cmap.c: " . join(" ", map { "build/$$_.cm" } grep { ! $$seen{$$_}++ } values %loc) . "\n";' > $@
 
 -include build/cldr.d
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/misc/templates/prototype/localedefsrc	Thu Oct 22 10:09:58 2009 +0200
@@ -0,0 +1,47 @@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").  
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
+# Use is subject to license terms.
+#
+
+d none usr 0755 root sys
+d none usr/lib 0755 root bin
+d none usr/lib/localedef 0755 root bin
+d none usr/lib/localedef/src 0755 root bin
+d none usr/lib/localedef/src/charmaps 0755 root bin
+
+f none usr/lib/localedef/src/charmaps/charmap.ansi-1251.bz2=usr/lib/localedef/src/charmaps/ANSI1251.cm.bz2 0644 root bin
+f none usr/lib/localedef/src/charmaps/charmap.iso-8859-1.bz2=usr/lib/localedef/src/charmaps/ISO8859-1.cm.bz2 0644 root bin
+f none usr/lib/localedef/src/charmaps/charmap.iso-8859-13.bz2=usr/lib/localedef/src/charmaps/ISO8859-13.cm.bz2 0644 root bin
+f none usr/lib/localedef/src/charmaps/charmap.iso-8859-15.bz2=usr/lib/localedef/src/charmaps/ISO8859-15.cm.bz2 0644 root bin
+f none usr/lib/localedef/src/charmaps/charmap.iso-8859-2.bz2=usr/lib/localedef/src/charmaps/ISO8859-2.cm.bz2 0644 root bin
+f none usr/lib/localedef/src/charmaps/charmap.iso-8859-5.bz2=usr/lib/localedef/src/charmaps/ISO8859-5.cm.bz2 0644 root bin
+f none usr/lib/localedef/src/charmaps/charmap.iso-8859-7.bz2=usr/lib/localedef/src/charmaps/ISO8859-7.cm.bz2 0644 root bin
+f none usr/lib/localedef/src/charmaps/charmap.iso-8859-8.bz2=usr/lib/localedef/src/charmaps/ISO8859-8.cm.bz2 0644 root bin
+f none usr/lib/localedef/src/charmaps/charmap.iso-8859-9.bz2=usr/lib/localedef/src/charmaps/ISO8859-9.cm.bz2 0644 root bin
+f none usr/lib/localedef/src/charmaps/charmap.koi8-r.bz2=usr/lib/localedef/src/charmaps/KOI8-R.cm.bz2 0644 root bin
+f none usr/lib/localedef/src/charmaps/charmap.utf-8.bz2=usr/lib/localedef/src/charmaps/UTF-8.cm.bz2 0644 root bin
+s none usr/lib/localedef/src/charmaps/charmap.ar.bz2=./charmap.iso-8859-6.bz2
+s none usr/lib/localedef/src/charmaps/charmap.he.bz2=./charmap.iso-8859-8.bz2
+
+d none usr/lib/localedef/src/locales 0755 root bin
+
+d none usr/lib/localedef/src/extensions 0755 root bin
--- a/misc/unicode.ctype	Tue Oct 20 13:45:43 2009 +0200
+++ b/misc/unicode.ctype	Thu Oct 22 10:09:58 2009 +0200
@@ -21,7 +21,7 @@
 *
 ***************************************************************************************
 *
-* Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
+* Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
 * Use is subject to license terms.
 *
 ***************************************************************************************