## ## ksh.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. ## # package versions %define V_pkg 20120801 %define V_ksh 2012-08-01 %define V_init 2012-08-01 # package information Name: ksh Summary: The Original AT&T Korn Shell URL: http://www.kornshell.com/ Vendor: David G. Korn, AT&T Bell Labs Packager: OpenPKG Project Distribution: OpenPKG Community Class: BASE Group: Shell License: EPL Version: %{V_pkg} Release: 20120808 # list of sources Source0: http://I%20accept%20www.opensource.org%2flicenses%2fcpl:.@www.research.att.com/~gsf/download/tgz/ast-ksh.%{V_ksh}.tgz Source1: http://I%20accept%20www.opensource.org%2flicenses%2fcpl:.@www.research.att.com/~gsf/download/tgz/INIT.%{V_init}.tgz Patch0: ksh.patch # build information BuildPreReq: OpenPKG, openpkg >= 20160101, gcc PreReq: OpenPKG, openpkg >= 20160101 Provides: KSH Conflicts: pdksh %description The KornShell language was designed and developed by David G. Korn at AT&T Bell Laboratories. It is an interactive command language that provides access to the UNIX system and to many other systems, on the many different computers and workstations on which it is implemented. This is Ksh93 which is intended to conform to the Shell Language Standard developed by the IEEE POSIX 1003.2 Shell and Utilities Language Committee. %track prog ksh = { version = %{V_init} url = http://www.research.att.com/~gsf/cgi-bin/download.cgi?action=list&name=ast-ksh regex = ast-ksh\.([\d-]+)\.tgz } prog ksh:init = { version = %{V_init} url = http://www.research.att.com/~gsf/cgi-bin/download.cgi?action=list&name=INIT regex = INIT\.([\d-]+)\.tgz } %prep %setup -q -c %setup -q -T -D -a 1 %patch -p0 %build # the supplied Mamfiles work only for standard UNIX environment # because they are no regenerated by us (no "nmake" available) case "%{l_platform -t}" in *-sunos5.6* ) ;; *-sunos* ) %{l_shtool} subst \ -e '/^exec.*-o ksh/s/\(\${mam_libm}\)/\1 -lsecdb/' \ src/cmd/ksh93/Mamfile ;; sparc*-linux* ) %{l_shtool} subst \ -e '/^exec.*-o ksh/s/\(\${mam_libm}\)/\1 -ldll/' \ src/cmd/ksh93/Mamfile ;; sparc64-netbsd* ) %{l_shtool} subst \ -e '/^probe_pic=/s/-fpic/-fPIC -fpic/' \ -e '/^probe_PIC=/s/-fpic -fPIC/-fPIC -fpic/' \ src/cmd/INIT/make.probe ;; esac SHELL=/bin/sh; export SHELL $SHELL -c './bin/package "read" || true' $SHELL -c './bin/package "make" CC="%{l_cc}"' %install %{l_shtool} mkdir -f -p -m 755 \ $RPM_BUILD_ROOT%{l_prefix}/bin \ $RPM_BUILD_ROOT%{l_prefix}/man/man1 %{l_shtool} install -c -s -m 755 \ arch/*/bin/ksh $RPM_BUILD_ROOT%{l_prefix}/bin/ksh %{l_shtool} install -c -m 644 \ arch/*/man/man1/sh.1 $RPM_BUILD_ROOT%{l_prefix}/man/man1/ksh.1 %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std} %files -f files %clean %post if [ ".$1" = .1 ]; then if [ -f /etc/shells ]; then if [ ".`grep $RPM_INSTALL_PREFIX/bin/ksh /etc/shells`" = . ]; then ( echo "Hint: To use $RPM_INSTALL_PREFIX/bin/ksh as the login" echo "shell for users, please add this path to /etc/shells." ) | %{l_rpmtool} msg -b -t notice fi fi fi