]> git.pld-linux.org Git - packages/mksh.git/blame - mksh.spec
- non-interactive mksh can inherit COLUMNS and LINES from parent process;
[packages/mksh.git] / mksh.spec
CommitLineData
d979d194 1%bcond_without static
abf806a4 2%bcond_without tests
d979d194 3#
5cba9227 4Summary: MirBSD Korn Shell
246a15d9 5Summary(pl.UTF-8): Powłoka Korna z MirBSD
5cba9227 6Name: mksh
471d39af 7Version: 40d
a17f3b77 8Release: 3
5cba9227 9License: BSD
10Group: Applications/Shells
11Source0: http://www.mirbsd.org/MirOS/dist/mir/mksh/%{name}-R%{version}.cpio.gz
471d39af 12# Source0-md5: c6428401103367730a95b99284bf47dc
bbdaf468
KK
13Source1: %{name}-mkshrc
14Patch0: %{name}-mkshrc_support.patch
118a1201 15Patch1: %{name}-circumflex.patch
d4eb7072 16Patch2: %{name}-no_stop_alias.patch
7de9f5a1 17Patch3: %{name}-distro.patch
cc1ba712 18Patch4: %{name}-cmdline-length.patch
a17f3b77 19Patch5: %{name}-columns.patch
15b50001
KK
20URL: https://www.mirbsd.org/mksh.htm
21%if %{with tests}
22BuildRequires: ed
23BuildRequires: perl-base
24%endif
d979d194 25%{?with_static:BuildRequires: glibc-static}
64114d19 26BuildRequires: rpmbuild(macros) >= 1.462
d979d194
AM
27# is needed for /etc directory existence
28Requires(pre): FHS
29Requires: setup >= 2.4.6-2
30Obsoletes: pdksh
5cba9227 31BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
32
33%define _bindir /bin
34
35%description
36mksh is the MirBSD enhanced version of the Public Domain Korn shell
246a15d9 37(pdksh), a Bourne-compatible shell which is largely similar to the
5cba9227 38original AT&T Korn shell. It includes bug fixes and feature
39improvements in order to produce a modern, robust shell good for
40interactive and especially script use. It has UTF-8 support in the
5110d1d3 41emacs command line editing mode; corresponds to OpenBSD 4.2-current
5cba9227 42ksh sans GNU bash-like $PS1; the build environment requirements are
43autoconfigured; throughout code simplification/bugfix/enhancement has
44been done, and the shell has extended compatibility to other modern
45shells.
46
246a15d9
JB
47%description -l pl.UTF-8
48mksh to pochodząca z MirBSD rozszerzona wersja powłoki Public Domain
49Korn Shell (pdksh) - kompatybilnej z powłoką Bourne'a, w większości
50zbliżonej do oryginalnej powłoki Korna z AT&T. Zawiera poprawki błędów
51i rozszerzenia mające na celu stworzenie współczesnej powłoki o
52bogatych możliwościach do użytku interaktywnego i (zwłaszcza) w
53skryptach. Ma obsługę UTF-8 w trybie edycji linii poleceń w stylu
54emacsa; $PS1 odpowiada temu z ksh obecnym w OpenBSD 4.2-current;
55środowisko budowania jest automatycznie konfigurowane; dzięki
56wykonanym uproszczeniom kodu, poprawkom i rozszerzeniom powłoka ma
57rozszerzoną kompatybilność z innymi współczesnymi powłokami.
58
d979d194
AM
59%package static
60Summary: Statically linked the MirBSD enhanced version of pdksh
61Summary(pl.UTF-8): Skonsolidowana statycznie powłoka mksh
62Group: Applications/Shells
63# requires base for /etc/mkshrc?
64Requires: %{name} = %{version}-%{release}
65
66%description static
67mksh is the MirBSD enhanced version of the Public Domain Korn shell
68(pdksh), a Bourne-compatible shell which is largely similar to the
69original AT&T Korn shell.
70
71This packege contains statically linked version of mksh.
72
73%description static -l pl.UTF-8
74mksh to pochodząca z MirBSD rozszerzona wersja powłoki Public Domain
75Korn Shell (pdksh) - kompatybilnej z powłoką Bourne'a, w większości
76zbliżonej do oryginalnej powłoki Korna z AT&T.
77
7a5709f6 78W tym pakiecie jest mksh skonsolidowany statycznie.
d979d194 79
5cba9227 80%prep
5110d1d3 81%setup -qcT
5cba9227 82gzip -dc %{SOURCE0} | cpio -mid
64114d19 83mv mksh/* .; rmdir mksh
5cba9227 84
bbdaf468 85%patch0 -p0
118a1201 86%patch1 -p1
d4eb7072 87%patch2 -p1
53554a18 88%patch3 -p1
cc1ba712 89%patch4 -p1
a17f3b77 90%patch5 -p0
a56c2c0a 91
e38ec2b8 92sed -i -e 's#@DISTRO@#PLD/Linux 3.0#g' check.t sh.h
bbdaf468 93
5cba9227 94%build
d979d194
AM
95install -d out
96
97CC="%{__cc}" \
3ee71a53 98CFLAGS="%{rpmcflags}" \
d979d194 99LDFLAGS="%{rpmldflags}" \
eec2ce74 100CPPFLAGS="%{rpmcppflags}" \
a06946c0 101sh ./Build.sh -Q -r -j -c lto
abf806a4 102
1281d680
AM
103# skip some tests if not on terminal
104if ! tty -s; then
e14f3193 105 skip_tests="-C regress:no-ctty"
1281d680
AM
106fi
107
e14f3193 108%{?with_tests:./test.sh -v $skip_tests}
d979d194
AM
109mv mksh out/mksh.dynamic
110
111%if %{with static}
112CC="%{__cc}" \
3ee71a53 113CFLAGS="%{rpmcflags}" \
d979d194 114LDFLAGS="%{rpmldflags} -static" \
eec2ce74 115CPPFLAGS="%{rpmcppflags}" \
a06946c0 116sh ./Build.sh -Q -r -j -c lto
d979d194 117
e14f3193 118%{?with_tests:./test.sh -v $skip_tests}
d979d194
AM
119mv mksh out/mksh.static
120%endif
121
5cba9227 122%install
123rm -rf $RPM_BUILD_ROOT
64114d19 124install -d $RPM_BUILD_ROOT{%{_bindir},%{_mandir}/man1}
d979d194
AM
125install -p out/mksh.dynamic $RPM_BUILD_ROOT%{_bindir}/mksh
126%{?with_static:install -p out/mksh.static $RPM_BUILD_ROOT%{_bindir}/mksh.static}
127
64114d19 128cp -a mksh.1 $RPM_BUILD_ROOT%{_mandir}/man1/mksh.1
d979d194
AM
129echo ".so mksh.1" > $RPM_BUILD_ROOT%{_mandir}/man1/sh.1
130
bbdaf468 131install -D %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/mkshrc
d76a7e70 132ln -sf mksh $RPM_BUILD_ROOT%{_bindir}/sh
5cba9227 133
53554a18
AM
134# some pdksh scripts used that
135ln -sf mksh $RPM_BUILD_ROOT%{_bindir}/ksh
136
5cba9227 137%clean
138rm -rf $RPM_BUILD_ROOT
139
b4c63cbb
AM
140%post -p %add_etc_shells -p /bin/sh /bin/ksh /bin/mksh
141%preun -p %remove_etc_shells -p /bin/sh /bin/ksh /bin/mksh
142
143%posttrans -p %add_etc_shells -p /bin/sh /bin/ksh
5cba9227 144
53bc9e9e 145
d979d194
AM
146%post static -p %add_etc_shells -p /bin/mksh.static
147%preun static -p %remove_etc_shells -p /bin/mksh.static
5cba9227 148
149%files
150%defattr(644,root,root,755)
151%doc dot.mkshrc
bbdaf468 152%config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/mkshrc
5cba9227 153%attr(755,root,root) %{_bindir}/mksh
53554a18 154%attr(755,root,root) %{_bindir}/ksh
7a5709f6 155%attr(755,root,root) %{_bindir}/sh
64114d19 156%{_mandir}/man1/mksh.1*
d979d194
AM
157%{_mandir}/man1/sh.1*
158
159%if %{with static}
160%files static
161%defattr(644,root,root,755)
162%attr(755,root,root) %{_bindir}/mksh.static
163%endif
This page took 0.097883 seconds and 4 git commands to generate.