--- prima-1.28.orig/primguts.c +++ prima-1.28/primguts.c @@ -251,7 +251,7 @@ if ( !( flags & G_EVAL)) { OPEN_G_EVAL; } ret = perl_call_method( methname, flags | G_EVAL); - if ( SvTRUE( GvSV( errgv))) { + if ( SvTRUE( GvSV( PL_errgv))) { PUB_CHECK; if (( flags & (G_SCALAR|G_DISCARD|G_ARRAY)) == G_SCALAR) { dSP; @@ -260,7 +260,7 @@ } if ( flags & G_EVAL) return ret; CLOSE_G_EVAL; - croak( SvPV_nolen( GvSV( errgv))); + croak( SvPV_nolen( GvSV( PL_errgv))); } if ( !( flags & G_EVAL)) { CLOSE_G_EVAL; } @@ -276,7 +276,7 @@ if ( !( flags & G_EVAL)) { OPEN_G_EVAL; } ret = perl_call_pv( subname, flags | G_EVAL); - if ( SvTRUE( GvSV( errgv))) { + if ( SvTRUE( GvSV( PL_errgv))) { PUB_CHECK; if (( flags & (G_SCALAR|G_DISCARD|G_ARRAY)) == G_SCALAR) { dSP; @@ -285,7 +285,7 @@ } if ( flags & G_EVAL) return ret; CLOSE_G_EVAL; - croak( SvPV_nolen( GvSV( errgv))); + croak( SvPV_nolen( GvSV( PL_errgv))); } if ( !( flags & G_EVAL)) { CLOSE_G_EVAL; } @@ -398,7 +398,7 @@ { XPUSHs( sv_mortalcopy((( PAnyObject) _c_apricot_res_)-> mate)); --SvREFCNT( SvRV((( PAnyObject) _c_apricot_res_)-> mate)); - } else XPUSHs( &sv_undef); + } else XPUSHs( &PL_sv_undef); /* push_hv( ax, sp, items, mark, 1, hv); */ sv_free(( SV *) hv); } @@ -882,7 +882,7 @@ if ( c_decl && !query_method ( self, subName, 0)) return toReturn; if ( !c_decl && !sv_query_method(( SV *) self, subName, 0)) - return &sv_undef; + return &PL_sv_undef; } if ( format[ 0] == '<') @@ -977,12 +977,12 @@ perl_call_sv(( SV *) subName, G_SCALAR|G_EVAL) : perl_call_method( subName, G_SCALAR|G_EVAL); SPAGAIN; - if ( SvTRUE( GvSV( errgv))) + if ( SvTRUE( GvSV( PL_errgv))) { (void)POPs; PUB_CHECK; CLOSE_G_EVAL; - croak( SvPV_nolen( GvSV( errgv))); /* propagate */ + croak( SvPV_nolen( GvSV( PL_errgv))); /* propagate */ } CLOSE_G_EVAL; #else @@ -1009,11 +1009,11 @@ OPEN_G_EVAL; if ( coderef) perl_call_sv(( SV *) subName, G_DISCARD|G_EVAL); else perl_call_method( subName, G_DISCARD|G_EVAL); - if ( SvTRUE( GvSV( errgv))) + if ( SvTRUE( GvSV( PL_errgv))) { PUB_CHECK; CLOSE_G_EVAL; - croak( SvPV_nolen( GvSV( errgv))); /* propagate */ + croak( SvPV_nolen( GvSV( PL_errgv))); /* propagate */ } CLOSE_G_EVAL; #else @@ -1190,7 +1190,7 @@ { char * error = apc_last_error(); if ( error == NULL) error = "unknown system error"; - sv_setpv( GvSV( errgv), error); + sv_setpv( GvSV( PL_errgv), error); } Bool appDead = false; @@ -1249,7 +1249,7 @@ #endif prima_init_ok = 0; - ST(0) = &sv_yes; + ST(0) = &PL_sv_yes; XSRETURN(1); } @@ -1313,7 +1313,7 @@ #define TYPECHECK(s1,s2) \ if (sizeof(s1) != (s2)) { \ printf("Error: type %s is %d bytes long (expected to be %d)", #s1, (int)sizeof(s1), s2); \ - ST(0) = &sv_no; \ + ST(0) = &PL_sv_no; \ XSRETURN(1); \ } TYPECHECK( uint8_t, 1); @@ -1365,7 +1365,7 @@ register_Timer_Class(); register_Printer_Class(); - ST(0) = &sv_yes; + ST(0) = &PL_sv_yes; XSRETURN(1); } @@ -1722,7 +1722,7 @@ hv_iterinit( h); while (( he = hv_iternext( h)) != nil) { if ( killAll) free( HeVAL( he)); - HeVAL( he) = &sv_undef; + HeVAL( he) = &PL_sv_undef; } sv_free(( SV *) h); } @@ -1754,7 +1754,7 @@ ksv_check; if ( !he) return nil; val = HeVAL( he); - HeVAL( he) = &sv_undef; + HeVAL( he) = &PL_sv_undef; (void) hv_delete_ent( h, ksv, G_DISCARD, 0); if ( kill) { free( val); @@ -1769,10 +1769,10 @@ HE *he; ksv_check; if ( he) { - HeVAL( he) = &sv_undef; + HeVAL( he) = &PL_sv_undef; (void) hv_delete_ent( h, ksv, G_DISCARD, 0); } - he = hv_store_ent( h, ksv, &sv_undef, 0); + he = hv_store_ent( h, ksv, &PL_sv_undef, 0); HeVAL( he) = ( SV *) val; return true; } @@ -1871,7 +1871,7 @@ while (( he = hv_iternext( hash)) != nil) { DOLBUG( "%s\n", (char *)HeVAL( he)); free( HeVAL( he)); - HeVAL( he) = &sv_undef; + HeVAL( he) = &PL_sv_undef; } DOLBUG( "=========================== Report done ===========================\n"); sv_free(( SV *) hash); --- prima-1.28.orig/Object.c +++ prima-1.28/Object.c @@ -88,12 +88,12 @@ OPEN_G_EVAL; PERL_CALL_METHOD( "init", G_VOID|G_DISCARD|G_EVAL); - if ( SvTRUE( GvSV( errgv))) { + if ( SvTRUE( GvSV( PL_errgv))) { CLOSE_G_EVAL; OPEN_G_EVAL; Object_destroy( self); CLOSE_G_EVAL; - croak( SvPV_nolen( GvSV( errgv))); + croak( SvPV_nolen( GvSV( PL_errgv))); } CLOSE_G_EVAL; SPAGAIN; --- prima-1.28.orig/Utils.c +++ prima-1.28/Utils.c @@ -95,7 +95,7 @@ } plist_destroy( dirlist); } else { - XPUSHs( &sv_undef); + XPUSHs( &PL_sv_undef); } } PUTBACK; --- prima-1.28.orig/Makefile.PL +++ prima-1.28/Makefile.PL @@ -639,7 +639,7 @@ cdebugflags => '-g -O -Wall', clinkprefix => '', clibpathflag => '-L', - ldflags => '', + ldflags => '-Wl,--as-needed', ldoutflag => '-o ', ldlibpathflag => '-L', ldlibflag => '-l', --- prima-1.28.orig/Image.c +++ prima-1.28/Image.c @@ -667,22 +667,22 @@ if (( Handle) o != self) --SvREFCNT( SvRV( o-> mate)); } else { - XPUSHs( &sv_undef); + XPUSHs( &PL_sv_undef); err = true; } } plist_destroy( ret); } else { - XPUSHs( &sv_undef); + XPUSHs( &PL_sv_undef); err = true; } /* This code breaks exception propagation chain since it uses $@ for its own needs */ if ( err) - sv_setpv( GvSV( errgv), error); + sv_setpv( GvSV( PL_errgv), error); else - sv_setsv( GvSV( errgv), nilSV); + sv_setsv( GvSV( PL_errgv), nilSV); PUTBACK; return; @@ -762,9 +762,9 @@ /* This code breaks exception propagation chain since it uses $@ for its own needs */ if ( ret <= 0) - sv_setpv( GvSV( errgv), error); + sv_setpv( GvSV( PL_errgv), error); else - sv_setsv( GvSV( errgv), nilSV); + sv_setsv( GvSV( PL_errgv), nilSV); PUTBACK; return; } --- prima-1.28.orig/Component.c +++ prima-1.28/Component.c @@ -618,7 +618,7 @@ if ( eventHook) XPUSHs( sv_2mortal( newSVsv(( SV *) eventHook))); else - XPUSHs( &sv_undef); + XPUSHs( &PL_sv_undef); PUTBACK; return; } @@ -688,11 +688,11 @@ OPEN_G_EVAL; perl_call_sv( eventHook, G_SCALAR | G_EVAL); SPAGAIN; - if ( SvTRUE( GvSV( errgv))) { + if ( SvTRUE( GvSV( PL_errgv))) { (void)POPs; PUB_CHECK; CLOSE_G_EVAL; - croak( SvPV_nolen( GvSV( errgv))); + croak( SvPV_nolen( GvSV( PL_errgv))); } CLOSE_G_EVAL; SPAGAIN; @@ -806,13 +806,13 @@ PUTBACK; OPEN_G_EVAL; perl_call_sv(( SV*) sequence[ i + 1], G_DISCARD | G_EVAL); - if ( SvTRUE( GvSV( errgv))) { + if ( SvTRUE( GvSV( PL_errgv))) { PUB_CHECK; CLOSE_G_EVAL; if ( privMethod) sv_free( privMethod); free( argsv); free( sequence); - croak( SvPV_nolen( GvSV( errgv))); + croak( SvPV_nolen( GvSV( PL_errgv))); } CLOSE_G_EVAL; SPAGAIN; --- prima-1.28.orig/img/codec_tiff.c +++ prima-1.28/img/codec_tiff.c @@ -44,6 +44,10 @@ extern "C" { #endif +#if !defined(TIFF_VERSION) && defined(TIFF_VERSION_CLASSIC) +# define TIFF_VERSION TIFF_VERSION_CLASSIC +#endif + #ifndef PHOTOMETRIC_DEPTH # define PHOTOMETRIC_DEPTH 32768 #endif --- prima-1.28.orig/debian/copyright +++ prima-1.28/debian/copyright @@ -0,0 +1,134 @@ +Original source may be found at: http://www.prima.eu.org/ +X-Format-Specification: http://wiki.debian.org/Proposals/CopyrightFormat +X-Debianized-By: Bas Zoetekouw +X-Debianized-Date: Sat, 9 Feb 2008 16:13:07 +0000. +X-Source-Downloaded-From: http://www.prima.eu.org/ +X-Upstream-Author: PRIMA mailinglist + +Files: * +Copyright: © 1997-2003 The Protein Laboratory, University of Copenhagen +License: BSD-2 + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + . + THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + SUCH DAMAGE. + +Files: Drawable.c +Copyright: © 1997-2002 The Protein Laboratory, University of Copenhagen; © 1992-1994 The Regents of the University of California; © 1994 Sun Microsystems, Inc. +License: BSD-2, other-BSD + This software is copyrighted by the Regents of the University of + California, Sun Microsystems, Inc., Scriptics Corporation, + and other parties. The following terms apply to all files associated + with the software unless explicitly disclaimed in individual files. + . + The authors hereby grant permission to use, copy, modify, distribute, + and license this software and its documentation for any purpose, provided + that existing copyright notices are retained in all copies and that this + notice is included verbatim in any distributions. No written agreement, + license, or royalty fee is required for any of the authorized uses. + Modifications to this software may be copyrighted by their authors + and need not follow the licensing terms described here, provided that + the new terms are clearly indicated on the first page of each file where + they apply. + . + IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY + FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES + ARISING OUT OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY + DERIVATIVES THEREOF, EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + . + THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE + IS PROVIDED ON AN "AS IS" BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE + NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR + MODIFICATIONS. + . + GOVERNMENT USE: If you are acquiring this software on behalf of the + U.S. government, the Government shall have only "Restricted Rights" + in the software and related documentation as defined in the Federal + Acquisition Regulations (FARs) in Clause 52.227.19 (c) (2). If you + are acquiring the software on behalf of the Department of Defense, the + software shall be classified as "Commercial Computer Software" and the + Government shall have only "Restricted Rights" as defined in Clause + 252.227-7013 (c) (1) of DFARs. Notwithstanding the foregoing, the + authors grant the U.S. Government and others acting in its behalf + permission to use and distribute the software in accordance with the + terms specified in this license. + +Files: Prima/CurvedText.pm, Prima/EventHook.pm, Prima/sys/gtk2/FileDialog.pm, Prima/sys/win32/FileDialog.pm, unix/gtk.c, utils/p-class.pl +Copyright: © 1997-2007 Dmitry Karasik +License: BSD-2 + +Files: include/unix/bsd/queue.h +Copyright: © 1991, 1993 The Regents of the University of California, © 1999 Anton Berezin +License: BSD-4 + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + 3. All advertising materials mentioning features or use of this software + must display the following acknowledgement: + - This product includes software developed by the University of + California, Berkeley and its contributors. + 4. Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + . + THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + SUCH DAMAGE. + +Files: debian/* +Copyright: © 2007 Bas Zoetekouw +License: BSD-2 + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + . + IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY + FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES + ARISING OUT OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY + DERIVATIVES THEREOF, EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + . + THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE + IS PROVIDED ON AN "AS IS" BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE + NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR + MODIFICATIONS. + --- prima-1.28.orig/debian/fix_makefile_linking.sed +++ prima-1.28/debian/fix_makefile_linking.sed @@ -0,0 +1,19 @@ +# +# Remove unnecessary libraries from the linking command line +# +/cc -shared/ { + s/-lgdbm // + s/-lgdbm_compat // + s/-ldb // + s/-ldl // + s/-lcrypt // + s/-lfreetype // + s/-lgdk-x11-[^ ]* // + s/-latk-[^ ]* // + s/-lgdk_pixbuf-[^ ]* // + s/-lpango-[^ ]* // + s/-lpangocairo-[^ ]* // + s/-lcairo // + s/-lgmodule-[^ ]* // +} + --- prima-1.28.orig/debian/changelog +++ prima-1.28/debian/changelog @@ -0,0 +1,46 @@ +prima (1.28-1.1ubuntu1) quantal; urgency=low + + * Build-depend on libtiff-dev rather than libtiff4-dev. + * Define TIFF_VERSION to TIFF_VERSION_CLASSIC if only the latter is + defined. + + -- Colin Watson Sun, 09 Sep 2012 09:42:05 +0100 + +prima (1.28-1.1) unstable; urgency=medium + + * Non-maintainer upload. + * Fix "FTBFS with perl 5.14: error: 'sv_undef' undeclared": + replace all occurences of sv_yes, sv_no, sv_undef, errgv with PL_*. + The former relies on PERL_POLLUTE which was removed in perl 5.13.3; cf. + http://perl5.git.perl.org/perl.git/commitdiff/cfef31b + This is the same change as in upstream 1.30. + Closes: #628500 + * Set urgency to medium (RC bug fix, perl 5.14 transition). + + -- gregor herrmann Wed, 16 Nov 2011 20:16:45 +0100 + +prima (1.28-1) unstable; urgency=low + + * New upstream release: + - Support JPEG comments and metadata. Save multiframe images. + - Abandond prigraph, adopt libjpeg/libpng/etc cohort instead. + - Develop gif animation features. + - Closes: #527687 + * Increase standards-version to 3.8.2: + - Added Homepage field to control file + * Fix dependency on linungif4-dev (now libgif-dev) + * Work around pod2man weirdness involving spaced-only S< > statements in + ./pod/Prima/Widget/place.pod./pod/Prima/Widget/place.pod + * Link with --as-needed to get rid of unnecessary dependencies + * Fix pod/Prima/Printer.pod to not generate warnings when converted to a man + page + + -- Bas Zoetekouw Wed, 01 Jul 2009 10:32:44 +0200 + +prima (1.24-1) unstable; urgency=low + + * Initial release (Closes: #464857) + - Fix linkage against indirect dependencies + + -- Bas Zoetekouw Sat, 09 Feb 2008 14:07:10 +0100 + --- prima-1.28.orig/debian/watch +++ prima-1.28/debian/watch @@ -0,0 +1,5 @@ +version=3 + +http://search.cpan.org/~karasik/ \ + .*/Prima-([\d.]+).tar.gz + --- prima-1.28.orig/debian/fix_makefile_gzip.sed +++ prima-1.28/debian/fix_makefile_gzip.sed @@ -0,0 +1,5 @@ +# +# Always compress with max compression +# +s/ gzip / &-9 / + --- prima-1.28.orig/debian/prima.substvars +++ prima-1.28/debian/prima.substvars @@ -0,0 +1,2 @@ +perl:Depends=perlapi-5.8.8, perl (>= 5.8.8-12) +shlibs:Depends=libfontconfig1 (>= 2.4.0), libgtk2.0-0 (>= 2.12.0), libxrender1, libpng12-0 (>= 1.2.13-4), libxext6, libtiff4, libc6 (>= 2.7-1), libgif4 (>= 4.1.6), libjpeg62, libxpm4, libx11-6, libxft2 (>> 2.1.1), libglib2.0-0 (>= 2.12.0) --- prima-1.28.orig/debian/control +++ prima-1.28/debian/control @@ -0,0 +1,34 @@ +Source: prima +Section: perl +Priority: extra +Maintainer: Ubuntu Developers +XSBC-Original-Maintainer: Bas Zoetekouw +Build-Depends: + debhelper (>= 5), + perl (>= 5.8), + libx11-dev, + libxrender-dev, + libxft-dev, + libfontconfig-dev, + libgtk2.0-dev, + libgif-dev (>=4.1) | libungif4-dev, + libpng-dev, + libxpm-dev, + libjpeg-dev, + libtiff-dev +Standards-Version: 3.8.2 +Homepage: http://search.cpan.org/dist/Prima/ + +Package: libprima-perl +Architecture: any +Depends: ${shlibs:Depends}, ${perl:Depends} +Description: multi-platform GUI development toolkit for Perl + Prima is an extensible Perl toolkit for multi-platform GUI development. + Platforms supported include Linux, Windows NT/9x/2K, OS/2 and UNIX/X11 + workstations (FreeBSD, IRIX, SunOS, Solaris and others). + . + The toolkit contains a rich set of standard widgets and has emphasis on 2D + image processing tasks. A Perl program using PRIMA looks and behaves + identically on X, Win32 and OS/2 PM. + . + The toolkit includes a visual builder. --- prima-1.28.orig/debian/rules +++ prima-1.28/debian/rules @@ -0,0 +1,137 @@ +#!/usr/bin/make -f + +DEST = $(CURDIR)/debian/libprima-perl + +ifneq ($(findstring parallel=,$(DEB_BUILD_OPTIONS)),) + PARALLEL = -j$(subst parallel=,,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) +endif + +clean: + dh_testdir + dh_testroot + rm -f build-stamp configure-stamp + + ####################################################################### + # Clean up + # + test -e Makefile && $(MAKE) clean || true + test -e Prima/Config.pm.eerst && mv -f Prima/Config.pm.eerst Prima/Config.pm || true + test -e img/codecs.c.eerst && mv -f img/codecs.c.eerst img/codecs.c || true + rm -f makefile.log Makefile .packlist + rm -rf auto include/generic + + dh_clean + +build: build-stamp +build-stamp: + dh_testdir + + # DEST=$(DEST) + # PARALLEL=$(PARALLEL) + + cp img/codecs.c img/codecs.c.eerst + cp Prima/Config.pm Prima/Config.pm.eerst + + ####################################################################### + # Create Makefile + # + perl Makefile.PL PREFIX=$(DEST) + + ####################################################################### + # Fix Makefile + # + sed -i -f debian/fix_makefile_linking.sed Makefile + sed -i -f debian/fix_makefile_gzip.sed Makefile + + ####################################################################### + # Build + # + make $(PARALLEL) + + touch $@ + +install: build + dh_testdir + dh_testroot + dh_clean -k + + ####################################################################### + # Upstream install + # + $(MAKE) install + + ####################################################################### + # Fix the messed up paths + # + cd $(DEST) && \ + mkdir -p usr/share/doc/prima usr/lib/perl5 usr/share/perl5/Prima/VB && \ + mv local/lib/perl/*/Prima/*.pod usr/share/perl5/Prima/ && \ + mv local/lib/perl/*/Prima/*.gif usr/share/perl5/Prima/ && \ + mv local/lib/perl/*/Prima/VB/*.gif usr/share/perl5/Prima/VB/ && \ + mv local/lib/perl/*/* usr/lib/perl5/ && \ + mv bin usr/ && \ + mv usr/lib/perl5/man usr/share/ && \ + mv usr/lib/perl5/Prima/tutorial usr/share/doc/prima/ && \ + mv usr/lib/perl5/Prima/examples usr/share/doc/prima/ && \ + mv usr/lib/perl5/Prima/VB/examples usr/share/doc/prima/examples/VB + + cd $(DEST) && \ + rmdir local/lib/perl/* local/lib/perl local/lib/ local/ && \ + rm usr/lib/perl5/auto/Prima/.packlist && \ + rm -r usr/lib/perl5/Prima/sys/win32 + + ####################################################################### + # Fix overly generic names of binaries + # + cd $(DEST)/usr/bin && \ + mv VB prima-VB && \ + mv cfgmaint prima-cfgmaint && \ + mv gencls prima-gencls && \ + mv tmlink prima-tmlink + + cd $(DEST)/usr/bin && rm p-class podview fmview + + cd $(DEST)/usr/share/man/man1 && \ + mv VB.1.gz prima-VB.1.gz && \ + mv cfgmaint.1.gz prima-cfgmaint.1.gz && \ + mv gencls.1.gz prima-gencls.1.gz && \ + ln -s prima-gencls.1.gz prima-tmlink.1.gz + + +# Build architecture-independent files here. +binary-indep: build install +# We have nothing to do by default. + +# Build architecture-dependent files here. +binary-arch: build install + dh_testdir + dh_testroot + dh_installchangelogs + dh_installdocs + dh_installexamples +# dh_install +# dh_installmenu +# dh_installdebconf +# dh_installlogrotate +# dh_installemacsen +# dh_installpam +# dh_installmime +# dh_python +# dh_installinit +# dh_installcron +# dh_installinfo + dh_installman + dh_link + dh_strip + dh_compress + dh_fixperms + dh_perl + dh_makeshlibs + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install --- prima-1.28.orig/debian/compat +++ prima-1.28/debian/compat @@ -0,0 +1 @@ +5 --- prima-1.28.orig/include/guts.h +++ prima-1.28/include/guts.h @@ -45,10 +45,10 @@ #define dG_EVAL_ARGS SV * errSave = nil #define OPEN_G_EVAL \ - errSave = SvTRUE( GvSV( errgv)) ? newSVsv( GvSV( errgv)) : nil;\ - sv_setsv( GvSV( errgv), nilSV) + errSave = SvTRUE( GvSV( PL_errgv)) ? newSVsv( GvSV( PL_errgv)) : nil;\ + sv_setsv( GvSV( PL_errgv), nilSV) #define CLOSE_G_EVAL \ - if ( errSave) sv_catsv( GvSV( errgv), errSave);\ + if ( errSave) sv_catsv( GvSV( PL_errgv), errSave);\ if ( errSave) sv_free( errSave) extern long apcError; --- prima-1.28.orig/include/apricot.h +++ prima-1.28/include/apricot.h @@ -417,7 +417,7 @@ #define nil Null(void*) #endif #define nilHandle Null(Handle) -#define nilSV &sv_undef +#define nilSV &PL_sv_undef #define true TRUE #define false FALSE @@ -1321,7 +1321,7 @@ #define pexist( key) hv_exists( profile, # key, strlen( #key)) #define pdelete( key) (void) hv_delete( profile, # key, strlen( #key), G_DISCARD) #define dPROFILE SV ** temporary_prf_Sv -#define pget_sv( key) ((( temporary_prf_Sv = hv_fetch( profile, # key, strlen( # key), 0)) == nil) ? croak( "Panic: bad profile key (``%s'') requested in ``%s'', line %d\n", # key, __FILE__, __LINE__ ), &sv_undef : *temporary_prf_Sv) +#define pget_sv( key) ((( temporary_prf_Sv = hv_fetch( profile, # key, strlen( # key), 0)) == nil) ? croak( "Panic: bad profile key (``%s'') requested in ``%s'', line %d\n", # key, __FILE__, __LINE__ ), &PL_sv_undef : *temporary_prf_Sv) #define pget_i( key) ( pget_sv( key), SvIV( *temporary_prf_Sv)) #define pget_f( key) ( pget_sv( key), SvNV( *temporary_prf_Sv)) #define pget_c( key) ( pget_sv( key), SvPV_nolen( *temporary_prf_Sv)) --- prima-1.28.orig/Prima/Gencls.pm +++ prima-1.28/Prima/Gencls.pm @@ -1179,7 +1179,7 @@ if ( ref $type) { return "sv_$type->[PROPS]->{name}2HV(&($name))"; } elsif ( $type eq 'Handle') { - return "( $name ? (( $incInst)$name)-> $hMate : &sv_undef)"; + return "( $name ? (( $incInst)$name)-> $hMate : &PL_sv_undef)"; } elsif ( $type eq 'SV*') { return $name; } else { @@ -1867,7 +1867,7 @@ print HEADER "\t\tif ( $incRes && (( $incInst) $incRes)-> $hMate && ((( $incInst) $incRes)-> $hMate != nilSV))\n"; print HEADER "\t\t{\n"; print HEADER "\t\t\tXPUSHs( sv_mortalcopy((( $incInst) $incRes)-> $hMate));\n"; - print HEADER "\t\t} else XPUSHs( &sv_undef);\n"; + print HEADER "\t\t} else XPUSHs( &PL_sv_undef);\n"; } elsif ($resSub eq "SV*") { print HEADER "\t\tXPUSHs( sv_2mortal( $incRes));\n"; } else { --- prima-1.28.orig/pod/Prima/internals.pod +++ prima-1.28/pod/Prima/internals.pod @@ -342,7 +342,7 @@ The caller checks if the exception was taken place by evaluating - SvTRUE( GvSV( errgv)) + SvTRUE( GvSV( PL_errgv)) statement. It is guaranteed to be false if there was no exception condition. But in some situations, namely, @@ -355,16 +355,16 @@ OPEN_G_EVAL; // open brackets // call code perl_call_method( ... | G_EVAL); // G_EVAL is necessary - if ( SvTRUE( GvSV( errgv)) { + if ( SvTRUE( GvSV( PL_errgv)) { CLOSE_G_EVAL; // close brackets - croak( SvPV_nolen( GvSV( errgv)));// propagate exception + croak( SvPV_nolen( GvSV( PL_errgv)));// propagate exception // no code is executed after croak } CLOSE_G_EVAL; // close brackets ... This technique provides workaround to a "false alarm" situation, if -SvTRUE( GvSV( errgv)) is true before perl_call_method(). +SvTRUE( GvSV( PL_errgv)) is true before perl_call_method(). =head2 Object protection --- prima-1.28.orig/pod/Prima/Printer.pod +++ prima-1.28/pod/Prima/Printer.pod @@ -186,9 +186,24 @@ successfully set. The compatibility between options and values used by different OSes is low here. -The only fully compatible options are C[C], -C[C], C[C], and -C[C|BI|Executive|Folio|Ledger|Legal|Letter|Tabloid>]. +The only fully compatible options are + +=over 1 + +=item - +C[C] + +=item - +C[C] + +=item - +C[C] + +=item - +C[C | BI | Executive | Folio | Ledger | Legal | Letter | Tabloid>]. + +=back + The other options are OS-dependant. For win32, consult Microsoft manual on DEVMODE structure L; for Prima's own PostScript printer, consult L. --- prima-1.28.orig/pod/Prima/Widget/place.pod +++ prima-1.28/pod/Prima/Widget/place.pod @@ -226,7 +226,7 @@ be positioned centered just below one of its siblings by specifying the configuration -S< >B=>I<$sibling>, B=>0.5, B=>1.0, +S< E<32>>B=>I<$sibling>, B=>0.5, B=>1.0, B=>'n' Whenever the I<$sibling> widget is repositioned in the future, the slave