[libmarpa-r2-perl] 03/06: Packaging

Jonas Smedegaard dr at jones.dk
Sat May 17 21:24:18 UTC 2014


This is an automated email from the git hooks/post-receive script.

js pushed a commit to annotated tag Marpa-R2-2.085_005
in repository libmarpa-r2-perl.

commit a8f2f07ef91c6b3fd06b88861491a6ca965aa54d
Author: Jeffrey Kegler <JKEGL at cpan.org>
Date:   Sun Apr 27 21:27:01 2014 -0700

    Packaging
---
 cpan/MANIFEST                                      |   3 +
 cpan/libmarpa/Makefile                             | 169 ++-------------------
 cpan/libmarpa/ac/Makefile.am                       |   3 +-
 cpan/libmarpa/bin/to_stage.pl                      |  88 +++++++++++
 .../notes/shared_test.txt}                         |  15 ++
 5 files changed, 118 insertions(+), 160 deletions(-)

diff --git a/cpan/MANIFEST b/cpan/MANIFEST
index b48595d..eb73427 100644
--- a/cpan/MANIFEST
+++ b/cpan/MANIFEST
@@ -140,6 +140,7 @@ libmarpa/avl/marpa_avl.c
 libmarpa/avl/marpa_avl.h
 libmarpa/bin/cppwrap.pl
 libmarpa/bin/texi2proto.pl
+libmarpa/bin/to_stage.pl
 libmarpa/bin/too_long.pl
 libmarpa/dev/.gitignore
 libmarpa/dev/Makefile
@@ -149,6 +150,7 @@ libmarpa/dev/internal.texi
 libmarpa/dev/legacy.w
 libmarpa/dev/marpa.w
 libmarpa/dev/w2private_h.pl
+libmarpa/notes/shared_test.txt
 libmarpa/obs/marpa_obs.c
 libmarpa/obs/marpa_obs.h
 libmarpa/public/.gitignore
@@ -223,6 +225,7 @@ libmarpa_dist/marpa_slif.h
 libmarpa_dist/marpa_tavl.c
 libmarpa_dist/marpa_tavl.h
 libmarpa_dist/missing
+libmarpa_dist/notes/shared_test.txt
 libmarpa_dist/stamp-h1
 libmarpa_dist/win32/do_config_h.pl
 libmarpa_dist/win32/marpa.def
diff --git a/cpan/libmarpa/Makefile b/cpan/libmarpa/Makefile
index c93c33a..69588f2 100644
--- a/cpan/libmarpa/Makefile
+++ b/cpan/libmarpa/Makefile
@@ -13,164 +13,12 @@
 # General Public License along with Marpa::R2.  If not, see
 # http://www.gnu.org/licenses/.
 
-.PHONY: install docs sources
-
-# Order matters -- configure.ac must be first
-DOC_SOURCE_FILES = \
-    doc/configure.ac \
-    doc/Makefile.am \
-    doc/fdl-1.3.texi \
-    doc/lgpl-3.0.texi \
-    doc/api.texi \
-    doc/internal.texi \
-    doc/NEWS \
-    doc/README \
-    doc/ChangeLog \
-    doc/COPYING.LESSER \
-    doc/AUTHORS
-
-# Order matters -- configure.ac must be first
-CONFIGURE_FILES = \
-    stage/configure.ac \
-    stage/Makefile.am
-
-STAGE_FILES = \
-    $(CONFIGURE_FILES) \
-    stage/AUTHORS \
-    stage/ChangeLog \
-    stage/COPYING.LESSER \
-    stage/Makefile.win32 \
-    stage/marpa_ami.c \
-    stage/marpa_ami.h \
-    stage/marpa_avl.c \
-    stage/marpa_avl.h \
-    stage/marpa.c \
-    stage/marpa_codes.c \
-    stage/marpa.h \
-    stage/marpa_obs.c \
-    stage/marpa_obs.h \
-    stage/marpa_slif.c \
-    stage/marpa_slif.h \
-    stage/marpa_tavl.c \
-    stage/marpa_tavl.h \
-    stage/NEWS \
-    stage/README \
-    stage/VERSION.in \
-    stage/win32/do_config_h.pl \
-    stage/win32/marpa.def
+.PHONY: install docs sources stage_copy
 
 dummy:
 	@echo install is the main target
 
-doc/configure.ac: ac_doc/configure.ac
-	test -d doc || mkdir doc
-	cp $? $@
-
-doc/Makefile.am: ac_doc/Makefile.am
-	cp $? $@
-
-stage/configure.ac: ac/configure.ac
-	test -d stage || mkdir stage
-	cp $? $@
-
-stage/Makefile.am: ac/Makefile.am
-	cp $? $@
-
-stage/Makefile.win32: win32/Makefile.win32
-	cp $? $@
-
-stage/win32/do_config_h.pl: win32/do_config_h.pl
-	test -d stage/win32 || mkdir stage/win32
-	cp $? $@
-
-stage/marpa.c: dev/marpa.c
-	cp $? $@
-
-stage/win32/marpa.def: dev/marpa.def
-	cp $? $@
-
-stage/marpa.h: public/marpa.h
-	cp $? $@
-
-stage/marpa_slif.h: public/marpa_slif.h
-	cp $? $@
-
-stage/marpa_obs.c: obs/marpa_obs.c
-	cp $? $@
-
-stage/marpa_obs.h: obs/marpa_obs.h
-	cp $? $@
-
-stage/marpa_ami.c: ami/marpa_ami.c
-	cp $? $@
-
-stage/marpa_codes.c: public/marpa_codes.c
-	cp $? $@
-
-stage/marpa_slif.c: slif/marpa_slif.c
-	cp $? $@
-
-stage/marpa_ami.h: ami/marpa_ami.h
-	cp $? $@
-
-stage/marpa_avl.c: avl/marpa_avl.c
-	cp $? $@
-
-stage/marpa_avl.h: avl/marpa_avl.h
-	cp $? $@
-
-stage/marpa_tavl.h: tavl/marpa_tavl.h
-	cp $? $@
-
-stage/marpa_tavl.c: tavl/marpa_tavl.c
-	cp $? $@
-
-stage/AUTHORS: ac/AUTHORS
-	cp $? $@
-
-stage/COPYING.LESSER: ac/COPYING.LESSER
-	cp $? $@
-
-stage/ChangeLog: ac/ChangeLog
-	cp $? $@
-
-stage/NEWS: ac/NEWS
-	cp $? $@
-
-stage/README: ac/README
-	cp $? $@
-
-stage/VERSION.in: public/VERSION.in
-	cp $? $@
-
-doc/README: ac_doc/README
-	cp $? $@
-
-doc/NEWS: ac_doc/NEWS
-	cp $? $@
-
-doc/AUTHORS: ac_doc/AUTHORS
-	cp $? $@
-
-doc/COPYING.LESSER: ac_doc/COPYING.LESSER
-	cp $? $@
-
-doc/ChangeLog: ac_doc/ChangeLog
-	cp $? $@
-
-doc/fdl-1.3.texi: ac_doc/fdl-1.3.texi
-	cp $? $@
-
-doc/lgpl-3.0.texi: ac_doc/lgpl-3.0.texi
-	cp $? $@
-
-doc/api.texi: dev/api.texi
-	cp $? $@
-
-doc/internal.texi: dev/internal.texi
-	cp $? $@
-
-stage/configure: $(STAGE_FILES)
+stage/configure: stage_copy
 	test -d stage || mkdir stage
 	test -d stage/m4 || mkdir stage/m4
 	cd stage && autoreconf -iv
@@ -178,18 +26,21 @@ stage/configure: $(STAGE_FILES)
 stage/Makefile: stage/configure
 	cd stage && ./configure
 
-doc/api.pdf: doc/Makefile doc/api.texi
+doc/api.pdf: stage_copy doc/Makefile doc/api.texi
 	cd doc && make pdf
 
-doc/api.html/index.html: doc/Makefile doc/api.texi
+doc/api.html/index.html: stage_copy doc/Makefile doc/api.texi
 	cd doc && make html
 
-doc/internal.pdf: doc/Makefile doc/internal.texi
+doc/internal.pdf: stage_copy doc/Makefile doc/internal.texi
 	cd doc && make pdf
 
-doc/internal.html/index.html: doc/Makefile doc/internal.texi
+doc/internal.html/index.html: stage_copy doc/Makefile doc/internal.texi
 	cd doc && make html
 
+stage_copy:
+	perl bin/to_stage.pl
+
 install: sources stage/stamp-h1 doc/stamp-h1
 
 MAKEABLE_DIR = ami dev slif tavl public
@@ -201,7 +52,7 @@ sources:
 clean:
 	for d in $(CLEANABLE_DIR); do (cd $$d; make clean); done
 
-stage/stamp-h1: stage/Makefile $(STAGE_FILES)
+stage/stamp-h1: stage/Makefile stage_copy
 	(cd stage; make dist)
 	date > $@
 
diff --git a/cpan/libmarpa/ac/Makefile.am b/cpan/libmarpa/ac/Makefile.am
index a1f78bc..87c9444 100644
--- a/cpan/libmarpa/ac/Makefile.am
+++ b/cpan/libmarpa/ac/Makefile.am
@@ -26,7 +26,8 @@ libmarpa_la_SOURCES = marpa.c marpa.h \
     marpa_ami.c marpa_ami.h \
     marpa_codes.c marpa_slif.c
 EXTRA_DIST = VERSION \
-  win32/marpa.def Makefile.win32 win32/do_config_h.pl
+  win32/marpa.def Makefile.win32 win32/do_config_h.pl \
+  notes/shared_test.txt
 libmarpa_la_LIBADD = $(LIBOBJS)
 libmarpa_la_LDFLAGS = -release $(MARPA_MAJOR_VERSION).$(MARPA_MINOR_VERSION).$(MARPA_MICRO_VERSION)
 include_HEADERS = marpa.h \
diff --git a/cpan/libmarpa/bin/to_stage.pl b/cpan/libmarpa/bin/to_stage.pl
new file mode 100644
index 0000000..570182d
--- /dev/null
+++ b/cpan/libmarpa/bin/to_stage.pl
@@ -0,0 +1,88 @@
+#!perl
+# Copyright 2014 Jeffrey Kegler
+# This file is part of Marpa::R2.  Marpa::R2 is free software: you can
+# redistribute it and/or modify it under the terms of the GNU Lesser
+# General Public License as published by the Free Software Foundation,
+# either version 3 of the License, or (at your option) any later version.
+#
+# Marpa::R2 is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser
+# General Public License along with Marpa::R2.  If not, see
+# http://www.gnu.org/licenses/.
+
+# Copy things into stage/
+# It makes more sense to do this in Perl than in the Makefile
+
+use 5.010;
+use File::Spec;
+use File::Copy;
+use Getopt::Long;
+use autodie;    # Portability not essential in this script
+
+my $verbose;
+GetOptions( "verbose|v" => \$verbose )
+    or die("Error in command line arguments\n");
+
+FILE: while ( my $copy = <DATA> ) {
+    chomp $copy;
+    my ( $to, $from ) = $copy =~ m/\A (.*) [:] \s+ (.*) \z/xms;
+    die "Bad copy spec: $copy" if not defined $to;
+    next FILE if -e $to and ( -M $to <= -M $from );
+    my ( undef, $to_dirs, $to_file ) = File::Spec->splitpath($to);
+    my @to_dirs = File::Spec->splitdir($to_dirs);
+    my @dir_found_so_far = ();
+    # Make the directories we do not find
+    DIR_PIECE: for my $dir_piece (@to_dirs) {
+	push @dir_found_so_far, $dir_piece;
+	my $dir_so_far = File::Spec->catdir(@dir_found_so_far);
+        next DIR_PIECE if -e $dir_so_far;
+	mkdir $dir_so_far;
+    }
+    File::Copy::copy($from, $to) or die "Cannot copy $from -> $to";
+    say "Copied $from -> $to" if $verbose;
+} ## end FILE: while ( my $copy = <DATA> )
+
+# Note that order DOES matter here -- the configure.ac files
+# MUST be FIRST
+
+__DATA__
+doc/configure.ac: ac_doc/configure.ac
+stage/configure.ac: ac/configure.ac
+doc/Makefile.am: ac_doc/Makefile.am
+stage/Makefile.am: ac/Makefile.am
+stage/Makefile.win32: win32/Makefile.win32
+stage/win32/do_config_h.pl: win32/do_config_h.pl
+stage/marpa.c: dev/marpa.c
+stage/win32/marpa.def: dev/marpa.def
+stage/marpa.h: public/marpa.h
+stage/marpa_slif.h: public/marpa_slif.h
+stage/marpa_obs.c: obs/marpa_obs.c
+stage/marpa_obs.h: obs/marpa_obs.h
+stage/marpa_ami.c: ami/marpa_ami.c
+stage/marpa_codes.c: public/marpa_codes.c
+stage/marpa_slif.c: slif/marpa_slif.c
+stage/marpa_ami.h: ami/marpa_ami.h
+stage/marpa_avl.c: avl/marpa_avl.c
+stage/marpa_avl.h: avl/marpa_avl.h
+stage/marpa_tavl.h: tavl/marpa_tavl.h
+stage/marpa_tavl.c: tavl/marpa_tavl.c
+stage/AUTHORS: ac/AUTHORS
+stage/COPYING.LESSER: ac/COPYING.LESSER
+stage/ChangeLog: ac/ChangeLog
+stage/NEWS: ac/NEWS
+stage/README: ac/README
+stage/VERSION.in: public/VERSION.in
+doc/README: ac_doc/README
+doc/NEWS: ac_doc/NEWS
+doc/AUTHORS: ac_doc/AUTHORS
+doc/COPYING.LESSER: ac_doc/COPYING.LESSER
+doc/ChangeLog: ac_doc/ChangeLog
+doc/fdl-1.3.texi: ac_doc/fdl-1.3.texi
+doc/lgpl-3.0.texi: ac_doc/lgpl-3.0.texi
+doc/api.texi: dev/api.texi
+doc/internal.texi: dev/internal.texi
+stage/notes/shared_test.txt: notes/shared_test.txt
diff --git a/cpan/etc/README_shared_test.txt b/cpan/libmarpa/notes/shared_test.txt
similarity index 81%
rename from cpan/etc/README_shared_test.txt
rename to cpan/libmarpa/notes/shared_test.txt
index 8e9b963..c6a66c7 100644
--- a/cpan/etc/README_shared_test.txt
+++ b/cpan/libmarpa/notes/shared_test.txt
@@ -1,3 +1,18 @@
+# Copyright 2014 Jeffrey Kegler
+# This file is part of Marpa::R2.  Marpa::R2 is free software: you can
+# redistribute it and/or modify it under the terms of the GNU Lesser
+# General Public License as published by the Free Software Foundation,
+# either version 3 of the License, or (at your option) any later version.
+#
+# Marpa::R2 is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser
+# General Public License along with Marpa::R2.  If not, see
+# http://www.gnu.org/licenses/.
+
 I've added the ability to test external shared libraries to Marpa::R2.
 
 Note the primary intent is to test *external* shared libraries in

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/libmarpa-r2-perl.git



More information about the Pkg-perl-cvs-commits mailing list