[Po4a-commits] "po4a changelog, 1.520, 1.521 Build.PL, 1.43, 1.44 MANIFEST, 1.56, 1.57 Makefile, 1.8, 1.9"

Neil Williams codehelp at alioth.debian.org
Thu Nov 12 20:29:55 UTC 2009


Update of /cvsroot/po4a/po4a
In directory alioth:/tmp/cvs-serv22420

Modified Files:
	changelog Build.PL MANIFEST Makefile 
Log Message:
	* Build.PL: Convert to the po4a-build build system.
	* MANIFEST: Add po4a-build support files.
	* Makefile: Generate translated content via po4a-build.
	* changelog: Fold share/Changelog into main changelog.
	* po/bin/LINGUAS: po4a-build support.
	* po/bin/Makefile: copy of the example in share/
	* po/bin/Makevars: based on the example in share/
	* po/bin/POTFILES.in: Scripts with translatable content.
	* po/pod/ca.po: Updated for po4a-build strings.
	* po/pod/es.po: Updated for po4a-build strings.
	* po/pod/fr.po: Updated for po4a-build strings.
	* po/pod/it.po: Updated for po4a-build strings.
	* po/pod/ja.po: Updated for po4a-build strings.
	* po/pod/pl.po: Updated for po4a-build strings.
	* share/ChangeLog: Removed.
	* share/Makefile: Add a clean target.
	* t/.cvsignore: Ignore t/tmp.



Index: Build.PL
===================================================================
RCS file: /cvsroot/po4a/po4a/Build.PL,v
retrieving revision 1.43
retrieving revision 1.44
diff -u -d -r1.43 -r1.44
--- Build.PL	21 Jul 2009 16:38:56 -0000	1.43
+++ Build.PL	12 Nov 2009 20:29:52 -0000	1.44
@@ -13,13 +13,8 @@
 	    $self->depends_on('code');
 	    $self->depends_on('docs');
 	    $self->depends_on('distmeta'); # regenerate META.yml
-	    $self->depends_on('man');
 	    $self->depends_on('postats');
 	}
-	sub perl_scripts {
-	    return ('po4a-gettextize', 'po4a-updatepo', 'po4a-translate',
-	            'po4a-normalize', 'po4a', 'scripts/msguntypot');
-	}
 	sub ACTION_install {
 	    my $self = shift;
 
@@ -31,150 +26,15 @@
 	    my $mandir = $self->install_map->{'blib/bindoc'};
 	    $mandir =~ s/\/man1$//;
 	    $install_map{'blib/man'} = $mandir;
-
-	    my $localedir = $mandir;
-	    $localedir =~ s/\/man$/\/locale/;
-	    $install_map{'blib/po'} = $localedir;
-
-	    ExtUtils::Install::install(\%install_map, 1, 0, $self->{args}{uninst}||0); 
-	}
-	sub ACTION_binpo {
-	    my $self = shift;
-
-	    my @files = sort((perl_scripts(), @{$self->rscan_dir('lib',qr{\.pm$})}));
-
-	    unless ($self->up_to_date(\@files, "po/bin/po4a.pot")) {
-		print "XX Update po/bin/po4a.pot\n";
-		my $podfiles = join ("", map {" ../../".$_ } @files);
-		my $cmd = "cd po/bin; xgettext ";
-		$cmd .= "--from-code=utf-8 ";
-		$cmd .= "-L Perl ";
-		$cmd .= "--msgid-bugs-address po4a-devel\@lists.alioth.debian.org ";
-		$cmd .= "--package-name po4a ";
-		$cmd .= "--package-version ".$self->dist_version()." ";
-		$cmd .= "$podfiles ";
-		$cmd .= "-o po4a.pot.new";
-		system($cmd) && die;
-		if ( -e "po/bin/po4a.pot") {
-		    $diff = qx(diff -q -I'#:' -I'POT-Creation-Date:' -I'PO-Revision-Date:' po/bin/po4a.pot po/bin/po4a.pot.new);
-		    if ( $diff eq "" ) {
-			unlink "po/bin/po4a.pot.new" || die;
-			# touch it
-			my ($atime, $mtime) = (time,time);
-			utime $atime, $mtime, "po/bin/po4a.pot";
-		    } else {
-			rename "po/bin/po4a.pot.new", "po/bin/po4a.pot" || die;
-		    }
-		} else {
-		    rename "po/bin/po4a.pot.new", "po/bin/po4a.pot" || die;
-		}
-	    } else {
-		print "XX po/bin/po4a.pot uptodate.\n";
-	    }
-
-	    # update languages
-	    @files = @{$self->rscan_dir('po/bin',qr{\.po$})};
-	    foreach (@files) {
-		next if m|/.#|;
-		$_ =~ /.*\/(.*)\.po$/;
-		my $lang = $1;
-
-		unless ($self->up_to_date("po/bin/po4a.pot","po/bin/$lang.po")) {
-		    print "XX Sync po/bin/$lang.po: ";
-		    system("msgmerge --previous po/bin/$lang.po po/bin/po4a.pot -o po/bin/$lang.po.new") && die;
-		    # Typically all that changes was a date. I'd
-		    # prefer not to cvs commit such changes, so
-		    # detect and ignore them.
-		    $diff = qx(diff -q -I'#:' -I'POT-Creation-Date:' -I'PO-Revision-Date:' po/bin/$lang.po po/bin/$lang.po.new);
-		    if ($diff eq "") {
-			unlink "po/bin/$lang.po.new" || die;
-			# touch it
-			my ($atime, $mtime) = (time,time);
-			utime $atime, $mtime, "po/bin/$lang.po";
-		    } else {
-			rename "po/bin/$lang.po.new", "po/bin/$lang.po" || die;
-		    }
-		} else {
-		    print "XX po/bin/$lang.po uptodate.\n";
-		}
-		unless ($self->up_to_date("po/bin/$lang.po","blib/po/$lang/LC_MESSAGES/po4a.mo")) {
-		    system("mkdir -p blib/po/$lang/LC_MESSAGES") && die;
-		    system("msgfmt -o blib/po/$lang/LC_MESSAGES/po4a.mo po/bin/$lang.po") && die;
-		} 
-	    }
-
-	}
-	sub ACTION_manpo {
-	    my $self = shift;
-
-	    my $cmd = "PERL5LIB=lib perl po4a "; # Use this version of po4a
-	    $cmd .= "--previous ";
-	    $cmd .= "--no-translations ";
-	    $cmd .= "--msgid-bugs-address po4a-devel\@lists.alioth.debian.org ";
-	    $cmd .= "--package-name po4a ";
-	    $cmd .= "--package-version ".$self->dist_version()." ";
-	    $cmd .= "po/pod.cfg";
-	    system($cmd)
-		and die;
-	}
-	sub ACTION_man {
-	    my $self = shift;
-
-	    use Pod::Man;
-	    use Encode;
-
-	    # Translate binaries manpages
-	    my %options;
-	    $options{utf8} = 1;
-	    my $parser = Pod::Man->new (%options);
-
-	    system("PERL5LIB=lib perl po4a --previous po/pod.cfg") and die;
 	    system("mkdir -p blib/man/man7") and die;
 	    system("mkdir -p blib/man/man1") and die;
-	    system("cp doc/po4a.7.pod blib/man/man7") and die;
-
-	    foreach $file (@{$self->rscan_dir('blib/man',qr{\.pod$})}) {
-		next if $file =~ m/^man7/;
-		my $out = $file;
-		$out =~ s/\.pod$//;
-		$section = $2;
-		$parser->{name} = $out;
-		$parser->{name} =~ s/^.*\///;
-		$parser->{name} =~ s/^(.*).(1p|3pm|7)/$1/;
-		$parser->{section} = $2;
-		if ($parser->{section} ne "3pm") {
-		    $parser->{name} = uc $parser->{name};
-		}
-
-		my $lang = $out;
-		$lang =~ s/^blib\/man\/([^\/]*)\/.*$/$1/;
 
-		if ($lang eq "man7") {
-			$parser->{release} = $parser->{center} = "Po4a Tools";
-		} else {
-			my $command;
-			$command = "msggrep -K -E -e \"Po4a Tools\" po/pod/$lang.po |";
-			$command .= "msgconv -t UTF-8 | ";
-			$command .= "msgexec /bin/sh -c '[ -n \"\$MSGEXEC_MSGID\" ] ";
-			$command .= "&& cat || cat > /dev/null'";
-
-			my $title = `$command 2> /dev/null`;
-			$title = "Po4a Tools" unless length $title;
-			$title = Encode::decode_utf8($title);
-			$parser->{release} = $parser->{center} = $title;
-		}
-		$parser->parse_from_file ($file, $out);
-
-		system("gzip -9 -f $out") and die;
-		system("rm -f $file") and die;
-	    }
-
-	    # Install the manpages of the Shell scripts
-	    system ("cp scripts/po4aman-display-po.1 scripts/po4apod-display-po.1 blib/man/man1/") and die;
-	    foreach $file (@{$self->rscan_dir('blib/man',qr{\.1$})}) {
-		system ("gzip -9 -f $file") and die;
-	    }
+	    ExtUtils::Install::install(\%install_map, 1, 0, $self->{args}{uninst}||0); 
+	    system ("cp -R _build/po4a/man/* $mandir");
+	    system ("find . -name '*.1p' -delete");
+	    system ("find . -name '*.3pm' -delete");
 	}
+
 	sub ACTION_dist {
 	    my ($self) = @_;
 
@@ -193,8 +53,6 @@
 	} 
 	sub ACTION_postats {
 	    my $self = shift;
-	    $self->depends_on('binpo');
-	    $self->depends_on('manpo');
 	    $self->postats("po/bin");
 	    $self->postats("po/pod");
 	}
@@ -235,12 +93,14 @@
                     },
       script_files => ['po4a-gettextize', 'po4a-updatepo',
 	  'po4a-translate', 'po4a-normalize', 'po4a', 'scripts/msguntypot',
-	  'scripts/po4aman-display-po', 'scripts/po4apod-display-po'],
+	  'scripts/po4aman-display-po', 'scripts/po4apod-display-po',
+	  'share/po4a-build'],
       add_to_cleanup => ['t/tmp','messages.mo', 'blib',
-	  'po/pod/po4a-pod.pot~', 'po4a.log'],
+	  'po/pod/po4a-pod.pot~', 'po4a.log', 'po/bin/*.gmo'],
       dist_abstract => 'Tools for helping translation of documentation',
       dist_author => ['Martin Quinson (mquinson#debian.org)',
-	  'Denis Barbier <barbier at linuxfr.org>']
+	  'Denis Barbier <barbier at linuxfr.org>',
+	  'Neil Williams <linux at codehelp.co.uk>']
   );
 
 $b->create_build_script;

Index: changelog
===================================================================
RCS file: /cvsroot/po4a/po4a/changelog,v
retrieving revision 1.520
retrieving revision 1.521
diff -u -d -r1.520 -r1.521
--- changelog	7 Nov 2009 16:03:19 -0000	1.520
+++ changelog	12 Nov 2009 20:29:52 -0000	1.521
@@ -1,3 +1,39 @@
+2009-11-12  Neil Williams  <linux at codehelp.co.uk>
+
+	* Build.PL: Convert to the po4a-build build system.
+	* MANIFEST: Add po4a-build support files.
+	* Makefile: Generate translated content via po4a-build.
+	* changelog: Fold share/Changelog into main changelog.
+	* po/bin/LINGUAS: po4a-build support.
+	* po/bin/Makefile: copy of the example in share/
+	* po/bin/Makevars: based on the example in share/
+	* po/bin/POTFILES.in: Scripts with translatable content.
+	* po/pod/ca.po: Updated for po4a-build strings.
+	* po/pod/es.po: Updated for po4a-build strings.
+	* po/pod/fr.po: Updated for po4a-build strings.
+	* po/pod/it.po: Updated for po4a-build strings.
+	* po/pod/ja.po: Updated for po4a-build strings.
+	* po/pod/pl.po: Updated for po4a-build strings.
+	* share/ChangeLog: Removed.
+	* share/Makefile: Add a clean target.
+	* t/.cvsignore: Ignore t/tmp.
+
+2009-11-11  Neil Williams  <linux at codehelp.co.uk>
+
+	* share/po4a-build: Properly separate man (3) from man (1) XML
+	* share/po4a-build.conf: Update with modified variables.
+	* share/po4a-build.conf.example: Update the example too.
+
+2009-11-10  Neil Williams  <linux at codehelp.co.uk>
+
+	* share/po4a-build: Add support for man (7) and include
+	changes from more testing within the po4a build.
+	* share/doc/po4aman-display-po.xml,
+	* share/doc/po4apod-display-po.xml: Add XML from doclifter
+	so that the manpages can be generated and the XML
+	translated. Add translations to doc/po/.
+	* share/po4a-build.conf: Allow use of internal po4a support.
+
 2009-11-07  Omar Campagne  <ocampagne at gmail.com>
 
 	* po/pod/es.po: Updated to 1248t.
@@ -19,6 +55,34 @@
 
 	* MANIFEST, doc/addendum_man.es: Added addenda for groff manpages.
 
+2009-11-06  Neil Williams  <linux at codehelp.co.uk>
+
+	* share/README: trying to describe what I'm seeking here.
+	* share/doc/po4a-build.xml: Prototype manpage for po4a-build
+	* share/doc/po4a.config: po4a-build config file for it's own
+	manpage translation, in due course.
+	* share/po/.cvsignore: Ignore the POT
+	* share/po4a-build: Switch to po4a-build as the script name and
+	po4a-build.conf as the config file name. Comment out
+	"debianism" of looking for debian/changelog.
+	* share/po4a-build.conf: Internal conf file for eventual manpage
+	generation and translation.
+	* share/po4a-build.conf.example: SCRIPTS= unsupported - better done
+	using the Makefile snippets, see README.
+
+2009-11-06  Neil Williams  <linux at codehelp.co.uk>
+
+	* share/Makevars-perl.example: Example for perl packages.
+	* share/Makevars-shell.example: Example for shell packages.
+	* share/po/Makefile: Copy of po4a-build.make for our translations.
+	* share/po/Makevars: Copy of Makevars-shell.example for po4a-build
+	* share/po/POTFILES.in: po4a-build support.
+	* share/po4a-build: main script to allow translation to be a one-stop
+	process.
+	* share/po4a-build.make: Based on autotools, allows preparation of
+	POT files and updating of PO files for script output translation
+	messages.
+
 2009-11-06  Omar Campagne  <ocampagne at gmail.com>
 
 	* NEWS, po/pod/es.po: Updated to 1239t.

Index: Makefile
===================================================================
RCS file: /cvsroot/po4a/po4a/Makefile,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -d -r1.8 -r1.9
--- Makefile	26 Feb 2005 23:38:15 -0000	1.8
+++ Makefile	12 Nov 2009 20:29:53 -0000	1.9
@@ -1,4 +1,5 @@
 all: Build
+	./share/po4a-build -f po4a-build.conf
 	@./Build
 
 Build: Build.PL
@@ -6,11 +7,16 @@
 
 install: Build
 	@./Build install destdir=$(DESTDIR)
+	make -C po/bin install DESTDIR=$(DESTDIR)
 
 clean: Build
 	@./Build realclean
+	$(MAKE) -C share clean
+	$(MAKE) -C po/bin clean
 
 dist: Build
+	./share/po4a-build --pot-only -f ./po4a-build.conf
+	$(MAKE) -C po/bin pot
 	@./Build dist
 
 stats: Build

Index: MANIFEST
===================================================================
RCS file: /cvsroot/po4a/po4a/MANIFEST,v
retrieving revision 1.56
retrieving revision 1.57
diff -u -d -r1.56 -r1.57
--- MANIFEST	7 Nov 2009 01:08:32 -0000	1.56
+++ MANIFEST	12 Nov 2009 20:29:52 -0000	1.57
@@ -43,6 +43,10 @@
 lib/Locale/Po4a/Xhtml.pm
 lib/Locale/Po4a/Xml.pm
 lib/Locale/Po4a/Wml.pm
+lib/Locale/Po4a/Debconf.pm
+lib/Locale/Po4a/Html.pm
+lib/Locale/Po4a/NewsDebian.pm
+
 po/bin/af.po
 po/bin/ar.po
 po/bin/bn.po
@@ -74,8 +78,13 @@
 po/bin/sv.po
 po/bin/uk.po
 po/bin/uz.po
+po/bin/vi.po
 po/bin/zh_CN.po
 po/bin/zh_HK.po
+po/bin/POTFILES.in
+po/bin/Makevars
+po/bin/Makefile
+po/bin/LINGUAS
 po/pod/ca.po
 po/pod/es.po
 po/pod/fr.po
@@ -91,13 +100,27 @@
 po4a-normalize
 po4a-translate
 po4a-updatepo
+po4a-build.conf
+share/po4a-build
+
+# support files
+share/Makefile
+share/Makevars-perl.example
+share/Makevars-shell.example
+share/po4a-build.make
+share/README
+share/po4a-build.conf.example
+share/doc/po4a-build.xml
+share/doc/po4aman-display-po.xml
+share/doc/po4apod-display-po.xml
+share/po/Makevars
+share/po/POTFILES.in
+share/po/Makefile
 
 # the random additional cool scripts
 scripts/msguntypot
 scripts/po4aman-display-po
-scripts/po4aman-display-po.1
 scripts/po4apod-display-po
-scripts/po4apod-display-po.1
 
 # The tests
 




More information about the Po4a-commits mailing list