source: npl/system/openssh/openssh.SlackBuild @ ca72aba

Last change on this file since ca72aba was c5c522c, checked in by Edwin Eefting <edwin@datux.nl>, 8 years ago

initial commit, transferred from cleaned syn3 svn tree

  • Property mode set to 100755
File size: 4.6 KB
RevLine 
[c5c522c]1#!/bin/sh
2#DEP:openssl
3#DEP:zlib
4# Modified by DatuX for Syn-3 build system
5
6# Copyright 2000 BSDi, Inc. Concord, CA, USA
7# Copyright 2001, 2002, 2003, 2004  Slackware Linux, Inc. Concord, CA, USA
8# All rights reserved.
9#
10# Redistribution and use of this script, with or without modification, is
11# permitted provided that the following conditions are met:
12#
13# 1. Redistributions of this script must retain the above copyright
14#    notice, this list of conditions and the following disclaimer.
15#
16#  THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
17#  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18#  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO
19#  EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
20#  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
21#  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
22#  OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
23#  WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
24#  OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
25#  ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
27NAME=openssh
28VERSION=6.8p1
29ARCH=${ARCH:-i486}
30#BUILD=1 gaat bij ons via SVN
31
32CWD=`pwd`
33PKG=/tmp/package-openssh
34
35if [ "$ARCH" = "i386" ]; then
36  SLKCFLAGS="-O2 -march=i386 -mcpu=i686"
37elif [ "$ARCH" = "i486" ]; then
38  SLKCFLAGS="-O2 -march=i486 -mcpu=i686"
39elif [ "$ARCH" = "s390" ]; then
40  SLKCFLAGS="-O2"
41elif [ "$ARCH" = "x86_64" ]; then
42  SLKCFLAGS="-O2"
43fi
44
45# Clean target location:
46rm -rf $PKG
47mkdir -p $PKG || exit 1
48
49
50# Prepare the framework and extract the package:
51cd /tmp
52rm -rf openssh-$VERSION
53tar xzvf $CWD/openssh-$VERSION.tar.gz
54cd openssh-$VERSION
55chown -R root.root .
56
57#Zodat we commands kunnen zien voor icon debugging
58#patch session.c < $CWD/DatuX_execdebug.patch || exit 1
59
60# Compile package:
61CFLAGS="-fgnu89-inline $SLKCFLAGS" \
62./configure \
63  --prefix=/usr \
64  --sysconfdir=/etc/ssh \
65  --without-pam \
66  --with-md5-passwords \
67  --without-tcp-wrappers \
68  --with-default-path=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin \
69  --with-ipv4-default \
70  --with-privsep-path=/var/empty \
71  --with-privsep-user=sshd \
72  $ARCH-slackware-linux || exit 1
73
74make || exit 1
75
76# Install the package:
77make install DESTDIR=$PKG || exit 1
78
79( cd $PKG
80  find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
81  find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
82)
83
84# Compress the installed manpages:
85find $PKG/usr/man -type f -exec gzip -9 {} \;
86
87# Relink the slogin(1) man page
88( cd $PKG/usr/man/man1
89  rm -f slogin.1
90  ln -sf ssh.1.gz slogin.1.gz
91)
92
93# Install directory used with PrivilegeSeparation option:
94mkdir -p $PKG/var/empty
95chmod 755 $PKG/var/empty
96
97# Install docs:
98mkdir -p $PKG/usr/doc/openssh-$VERSION
99cp -a \
100  CREDITS ChangeLog INSTALL LICENCE OVERVIEW README README.privsep README.smartcard RFC.nroff TODO WARNING.RNG \
101  $PKG/usr/doc/openssh-$VERSION
102chmod 644 $PKG/usr/doc/openssh-$VERSION/*
103
104# Install also 'ssh-copy-id' and its manpage from contrib:
105( cd contrib
106  cp -a ssh-copy-id $PKG/usr/bin/ssh-copy-id
107  chown root.bin $PKG/usr/bin/ssh-copy-id
108  chmod 755 $PKG/usr/bin/ssh-copy-id
109  cat ssh-copy-id.1 | gzip -9c > $PKG/usr/man/man1/ssh-copy-id.1.gz
110)
111
112#bop tenslotte de postinstall der nog ff in.
113mkdir -p $PKG/etc/postinst.d
114cp $CWD/post.openssh $PKG/etc/postinst.d/post.openssh || exit 1
115
116
117# Fix some ownerships per FSSTND:
118chown -R root.bin $PKG/usr/bin $PKG/usr/sbin
119
120( cd $PKG
121
122  # Ditch the new host keys, since these have to be uniquely prepared on each machine:
123  rm -f etc/ssh/ssh_host_dsa_key
124  rm -f etc/ssh/ssh_host_dsa_key.pub
125  rm -f etc/ssh/ssh_host_rsa_key
126  rm -f etc/ssh/ssh_host_rsa_key.pub
127  rm -f etc/ssh/ssh_host_key
128  rm -f etc/ssh/ssh_host_key.pub
129
130  # Set up the config script installation:
131  mv etc/ssh/ssh_config etc/ssh/ssh_config.new
132  mv etc/ssh/sshd_config etc/ssh/sshd_config.new
133
134  # Add the init script:
135  #mkdir -p etc/rc.d
136  #cat $CWD/rc.sshd > etc/rc.d/rc.sshd
137  #chmod 755 etc/rc.d/rc.sshd
138 
139  mkdir -p service/sshd
140  cp $CWD/run service/sshd
141  chmod 755 service/sshd/run
142  chown root:root service/sshd/run
143
144  # Copy runtime installation files:
145  mkdir -p install
146  cat $CWD/doinst.sh > install/doinst.sh
147  #cat $CWD/slack-desc > install/slack-desc
148)
149
150# Create the package itself:
151cd $PKG
152#makepkg -l y -c n /tmp/openssh-$VERSION-$ARCH-$BUILD.tgz
153makepkg -l y -c n $CWD/$NAME.pkg > /dev/null &&
154echo $VERSION > $CWD/$NAME.version &&
155echo $ARCH > $CWD/$NAME.arch
156
Note: See TracBrowser for help on using the repository browser.