## ## perl-curses.spec -- OpenPKG RPM Package Specification ## Copyright (c) 2000-2022 OpenPKG Project ## ## 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_perl 5.22 %define V_curses 1.32 %define V_curses_ui 0.9609 %define V_curses_ui_dtv 0.10 %define V_curses_widgets 1.997 %define V_curses_forms 1.997 %define V_cdk_perl 20211216 # package information Name: perl-curses Summary: Perl Modules for use with Curses URL: http://www.cpan.org/ Vendor: Perl Community Packager: OpenPKG Project Distribution: OpenPKG Community Class: BASE Group: Perl License: GPL/Artistic Version: %{V_perl} Release: 20211217 # list of sources Source0: http://www.cpan.org/modules/by-module/Curses/Curses-%{V_curses}.tgz Source1: http://www.cpan.org/authors/id/M/MD/MDXI/Curses-UI-%{V_curses_ui}.tar.gz Source2: http://www.cpan.org/authors/id/G/GS/GSAINIO/Curses-UI-DelimitedTextViewer-%{V_curses_ui_dtv}.tar.gz Source3: http://www.cpan.org/authors/id/C/CO/CORLISS/CursesWidgets-%{V_curses_widgets}.tar.gz Source4: http://www.cpan.org/authors/id/C/CO/CORLISS/CursesForms-%{V_curses_forms}.tar.gz Source5: ftp://ftp.invisible-island.net/cdk/cdk-perl-%{V_cdk_perl}.tgz # build information BuildPreReq: OpenPKG, openpkg >= 20160101, perl >= %{V_perl}, perl-openpkg >= %{V_perl}-20040126 PreReq: OpenPKG, openpkg >= 20160101, perl >= %{V_perl} BuildPreReq: ncurses, cdk >= 4.9.11.20031210, perl-term PreReq: ncurses, cdk >= 4.9.11.20031210, perl-term %description Various modules for using the Curses library from within the Perl language plus additional widgets: - Curses (%{V_curses}) - Curses::UI (%{V_curses_ui}) - Curses::UI::DelimitedTextViewer (%{V_curses_ui_dtv}) - Curses::Widgets (%{V_curses_widgets}) - Curses::Forms (%{V_curses_forms}) - Cdk (%{V_cdk_perl}) %track prog perl-curses:cdk-perl = { version = %{V_cdk_perl} url = ftp://ftp.invisible-island.net/cdk/ regex = cdk-perl-(__VER__)\.tgz } prog perl-curses:Curses = { version = %{V_curses} url = http://www.cpan.org/modules/by-module/Curses/ regex = Curses-(__VER__)\.tgz } prog perl-curses:Curses-UI = { version = %{V_curses_ui} url = http://www.cpan.org/authors/id/M/MD/MDXI/ regex = Curses-UI-(__VER__)\.tar\.gz } prog perl-curses:Curses-UI-DelimitedTextViewer = { version = %{V_curses_ui_dtv} url = http://www.cpan.org/authors/id/G/GS/GSAINIO/ regex = Curses-UI-DelimitedTextViewer-(__VER__)\.tar\.gz } prog perl-curses:CursesForms = { version = %{V_curses_forms} url = http://www.cpan.org/authors/id/C/CO/CORLISS/ regex = CursesForms-(__VER__)\.tar\.gz } prog perl-curses:CursesWidgets = { version = %{V_curses_widgets} url = http://www.cpan.org/authors/id/C/CO/CORLISS/ regex = CursesWidgets-(__VER__)\.tar\.gz } %prep %setup -q -c %setup -q -T -D -a 1 %setup -q -T -D -a 2 %setup -q -T -D -a 3 %setup -q -T -D -a 4 %setup -q -T -D -a 5 %build %install %{l_prefix}/bin/perl-openpkg prepare # build Curses ( cd Curses-%{V_curses} hint="unknown" case "%{l_platform -t}" in *-freebsd* ) hint="freebsd.ncurses" ;; *-linux* ) hint="linux.ncurses" ;; *-sunos* ) hint="solaris" ;; esac if [ -f hints/c-$hint.h ]; then cp hints/c-$hint.h c-config.h fi ) || exit $? CURSES_CFLAGS="%{l_cppflags ncurses}" \ CURSES_LDFLAGS="%{l_ldflags} -lncurses" \ CURSES_PANEL_CFLAGS="%{l_cppflags ncurses}" \ CURSES_PANEL_LDFLAGS="%{l_ldflags} -lncurses" \ CURSES_MENU_CFLAGS="%{l_cppflags ncurses}" \ CURSES_MENU_LDFLAGS="%{l_ldflags} -lncurses" \ CURSES_FORM_CFLAGS="%{l_cppflags ncurses}" \ CURSES_FORM_LDFLAGS="%{l_ldflags} -lncurses" \ %{l_prefix}/bin/perl-openpkg -d Curses-%{V_curses} \ --args "PANELS MENUS FORMS" \ configure build install %{l_prefix}/bin/perl-openpkg -d Curses-UI-%{V_curses_ui} \ configure build install %{l_prefix}/bin/perl-openpkg -d Curses-UI-DelimitedTextViewer-%{V_curses_ui_dtv} \ configure build install %{l_prefix}/bin/perl-openpkg -d CursesWidgets-%{V_curses_widgets} \ configure build install %{l_prefix}/bin/perl-openpkg -d CursesForms-%{V_curses_forms} \ configure build install # build Cdk ( cd cdk-perl-%{V_cdk_perl} %{l_shtool} subst \ -e 's;-L/usr/local/lib;%{l_ldflags};' \ -e 's;-I/usr/include/ncurses;%{l_cppflags ncurses};' \ -e 's;-I/usr/local/include/cdk;%{l_cppflags cdk};' \ Makefile.PL.in CC="%{l_cc}" \ CFLAGS="%{l_cflags -O}" \ CPPFLAGS="%{l_cppflags cdk .}" \ LDFLAGS="%{l_ldflags}" \ LIBS="-lncurses" \ ./configure \ --prefix=%{l_prefix} ) || exit $? %{l_prefix}/bin/perl-openpkg -d cdk-perl-%{V_cdk_perl} configure build install %{l_prefix}/bin/perl-openpkg -F perl-openpkg-files fixate cleanup %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std} `cat perl-openpkg-files` %files -f files %clean