|
@@ -0,0 +1,170 @@
|
|
|
+##
|
|
|
+## perl-curses.spec -- OpenPKG RPM Specification
|
|
|
+## Copyright (c) 2000-2002 Cable & Wireless Deutschland GmbH
|
|
|
+## Copyright (c) 2000-2002 The OpenPKG Project <http://www.openpkg.org/>
|
|
|
+## Copyright (c) 2000-2002 Ralf S. Engelschall <rse@engelschall.com>
|
|
|
+##
|
|
|
+## Permission to use, copy, modify, and distribute this software for
|
|
|
+## any purpose with or without fee is hereby granted, provided that
|
|
|
+## the above copyright notice and this permission notice appear in all
|
|
|
+## copies.
|
|
|
+##
|
|
|
+## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED 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 AUTHORS AND COPYRIGHT HOLDERS AND THEIR
|
|
|
+## 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.
|
|
|
+##
|
|
|
+
|
|
|
+# versions of individual parts
|
|
|
+%define V_curses 1.06
|
|
|
+%define V_curses_ui 0.63
|
|
|
+%define V_curses_widgets 1.992
|
|
|
+%define V_cdk_perl 20010421
|
|
|
+
|
|
|
+# package information
|
|
|
+Name: perl-curses
|
|
|
+Summary: Perl Modules for use with Curses
|
|
|
+URL: http://www.cpan.org/
|
|
|
+Vendor: Perl Community
|
|
|
+Packager: The OpenPKG Project
|
|
|
+Distribution: OpenPKG [EXP]
|
|
|
+Group: Language
|
|
|
+License: GPL/Artistic
|
|
|
+Version: 20020117
|
|
|
+Release: 20020117
|
|
|
+
|
|
|
+# list of sources
|
|
|
+Source0: http://www.cpan.org/modules/by-module/Curses/Curses-%{V_curses}.tar.gz
|
|
|
+Source1: http://www.cpan.org/modules/by-module/Curses/Curses-UI-%{V_curses_ui}.tar.gz
|
|
|
+Source2: http://www.cpan.org/modules/by-module/Curses/CursesWidgets-%{V_curses_widgets}.tar.gz
|
|
|
+Source3: ftp://invisible-island.net/cdk/cdk-perl-%{V_cdk_perl}.tgz
|
|
|
+
|
|
|
+# build information
|
|
|
+Prefix: %{l_prefix}
|
|
|
+BuildRoot: %{l_buildroot}
|
|
|
+BuildPreReq: OpenPKG, openpkg >= 20011227, perl, ncurses, cdk
|
|
|
+PreReq: OpenPKG, openpkg >= 20011227, perl, ncurses, cdk
|
|
|
+AutoReq: no
|
|
|
+AutoReqProv: no
|
|
|
+
|
|
|
+%description
|
|
|
+ Various modules for using the Curses library from within the Perl
|
|
|
+ language plus additional widgets.
|
|
|
+
|
|
|
+%prep
|
|
|
+ %setup0 -q -c -n %{name}-%{version}
|
|
|
+ %setup1 -q -T -D -a 1
|
|
|
+ %setup2 -q -T -D -a 2
|
|
|
+ %setup3 -q -T -D -a 3
|
|
|
+
|
|
|
+%build
|
|
|
+
|
|
|
+%install
|
|
|
+ rm -rf $RPM_BUILD_ROOT
|
|
|
+ %{l_shtool} mkdir -f -p -m 755 \
|
|
|
+ $RPM_BUILD_ROOT%{l_prefix}/lib/perl5 \
|
|
|
+ $RPM_BUILD_ROOT%{l_prefix}/man/man3
|
|
|
+
|
|
|
+ # create a wrapper script which finds the includes
|
|
|
+ eval `$perl -V:archname`
|
|
|
+ perl=$RPM_BUILD_ROOT/perl
|
|
|
+ echo "#!/bin/sh" >$perl
|
|
|
+ echo "exec %{l_prefix}/bin/perl \\" >>$perl
|
|
|
+ echo " -I$RPM_BUILD_ROOT%{l_prefix}/lib/perl5/%{version} \\" >>$perl
|
|
|
+ echo " -I$RPM_BUILD_ROOT%{l_prefix}/lib/perl5/%{version}/${archname} \\" >>$perl
|
|
|
+ echo " -I$RPM_BUILD_ROOT%{l_prefix}/lib/perl5/site_perl \\" >>$perl
|
|
|
+ echo " -I$RPM_BUILD_ROOT%{l_prefix}/lib/perl5/site_perl/%{version} \\" >>$perl
|
|
|
+ echo " -I$RPM_BUILD_ROOT%{l_prefix}/lib/perl5/site_perl/%{version}/${archname} \\" >>$perl
|
|
|
+ echo " \"\$@\"" >>$perl
|
|
|
+ chmod a+x $perl
|
|
|
+
|
|
|
+ # determine general tools and arguments
|
|
|
+ perlargs="PREFIX=$RPM_BUILD_ROOT%{l_prefix} PERL=$perl FULLPERL=$perl"
|
|
|
+ make="%{l_make} %{l_mflags}"
|
|
|
+ makeargs="PERL=$perl FULLPERL=$perl"
|
|
|
+
|
|
|
+ # make sure our Perl is used
|
|
|
+ chmod -R u+w .
|
|
|
+ %{l_rpmtool} subst \
|
|
|
+ "s:\$^X:'$perl':g" \
|
|
|
+ -- `find . -name Makefile.PL -print`
|
|
|
+
|
|
|
+ # build Curses
|
|
|
+ ( cd Curses-%{V_curses}
|
|
|
+ hint="unknown"
|
|
|
+ case "%{l_target}" in
|
|
|
+ *-freebsd* ) hint="freebsd.ncurses" ;;
|
|
|
+ *-linux* ) hint="linux.ncurses" ;;
|
|
|
+ *-solaris* ) hint="solaris" ;;
|
|
|
+ esac
|
|
|
+ if [ -f hints/c-$hint.h ]; then
|
|
|
+ cp hints/c-$hint.h c-config.h
|
|
|
+ fi
|
|
|
+ %{l_rpmtool} subst \
|
|
|
+ 's:my $inc;:my $inc = "-I%{l_prefix}/include -I%{l_prefix}/include/ncurses";:' \
|
|
|
+ 's:my $libs;:my $libs = "-L%{l_prefix}/lib -lpanel -lmenu -lform -lncurses";:' \
|
|
|
+ -- Makefile.PL
|
|
|
+ $perl Makefile.PL $perlargs PANELS MENUS FORMS
|
|
|
+ $make $makeargs all
|
|
|
+ $make $makeargs install
|
|
|
+ )
|
|
|
+
|
|
|
+ # build Curses::UI
|
|
|
+ ( cd Curses-UI-%{V_curses_ui}
|
|
|
+ $perl Makefile.PL $perlargs
|
|
|
+ $make $makeargs all
|
|
|
+ $make $makeargs install
|
|
|
+ )
|
|
|
+
|
|
|
+ # build Curses::Widgets
|
|
|
+ ( cd CursesWidgets-%{V_curses_widgets}
|
|
|
+ $perl Makefile.PL $perlargs
|
|
|
+ $make $makeargs all
|
|
|
+ $make $makeargs install
|
|
|
+ )
|
|
|
+
|
|
|
+ # build Cdk
|
|
|
+ ( cd cdk-perl-%{V_cdk_perl}
|
|
|
+ %{l_rpmtool} subst \
|
|
|
+ 's;-L/usr/local/lib;-L%{l_prefix}/lib;' \
|
|
|
+ 's;-I/usr/include/ncurses;-I%{l_prefix}/include/ncurses;' \
|
|
|
+ 's;-I/usr/local/include/cdk;-I%{l_prefix}/include/cdk;' \
|
|
|
+ -- Makefile.PL
|
|
|
+ $perl Makefile.PL $perlargs
|
|
|
+ $make $makeargs all
|
|
|
+ $make $makeargs install
|
|
|
+ )
|
|
|
+
|
|
|
+ # strip down installation tree
|
|
|
+ find $RPM_BUILD_ROOT%{l_prefix} -name perllocal.pod -print | xargs rm -f
|
|
|
+ find $RPM_BUILD_ROOT%{l_prefix} -name .packlist -print | xargs rm -f
|
|
|
+ find $RPM_BUILD_ROOT%{l_prefix} -type d -depth -print | (xargs rmdir >/dev/null 2>&1 || true)
|
|
|
+
|
|
|
+ # determine installed files
|
|
|
+ eval `$perl -V:installarchlib -V:installprivlib -V:installsitearch -V:installsitelib`
|
|
|
+ %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \
|
|
|
+ %{l_files_std} \
|
|
|
+ '%not %dir %{l_prefix}/lib/perl5' \
|
|
|
+ '%not %dir %{l_prefix}/lib/perl5/*' \
|
|
|
+ "%not %dir $installarchlib" \
|
|
|
+ "%not %dir $installprivlib" \
|
|
|
+ "%not %dir $installsitearch" \
|
|
|
+ "%not %dir $installsitelib" \
|
|
|
+ "%not %dir $installarchlib/auto" \
|
|
|
+ "%not %dir $installprivlib/auto" \
|
|
|
+ "%not %dir $installsitearch/auto" \
|
|
|
+ "%not %dir $installsitelib/auto"
|
|
|
+
|
|
|
+%files -f files
|
|
|
+
|
|
|
+%clean
|
|
|
+ rm -rf $RPM_BUILD_ROOT
|
|
|
+
|