#!/bin/bash

# Slackware build script for easy-rsa 

# Copyright 2025 Frank Honolka <info.snukware@gmail.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
#    notice, this list of conditions and the following disclaimer.
#
#  THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS 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 AUTHOR 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.

cd $(dirname $0) ; CWD=$(pwd)

PRGNAM=easy-rsa			
VERSION=${VERSION:-3.2.4}	
BUILD=${BUILD:-1}
TAG=${TAG:-_snuk}		
PKGTYPE=${PKGTYPE:-txz}

TMP=${TMP:-/var/cache/snukware/tmp}	
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/var/cache/snukware/n}

ARCH=noarch

set -e 

rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/v$VERSION.tar.gz
cd $PRGNAM-$VERSION

install -D -m0755 easyrsa3/easyrsa "${PKG}"/usr/bin/easyrsa || exit 1
install -D -m0644 easyrsa3/openssl-easyrsa.cnf "${PKG}"/etc/easy-rsa/openssl-easyrsa.cnf || exit 1
install -D -m0644 easyrsa3/vars.example "${PKG}"/etc/easy-rsa/vars || exit 1
install -d -m0755 "${PKG}"/etc/easy-rsa/x509-types/ || exit 1
install -m0644 easyrsa3/x509-types/* "${PKG}"/etc/easy-rsa/x509-types/ || exit 1

mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
DOCS="COPYING.md KNOWN_ISSUES README.quickstart.md README.md ChangeLog doc/*"
cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild

mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc

cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
