Improved install script

This commit is contained in:
Carsten Sonne Larsen 2021-01-12 14:31:35 +01:00
parent 2164e79aef
commit 65fafb750f
5 changed files with 120 additions and 32 deletions

1
.gitignore vendored
View File

@ -17,3 +17,4 @@ doxygen.warn
*.deb *.deb
*.zip *.zip
Makefile Makefile
/dist

32
build/doc Executable file
View File

@ -0,0 +1,32 @@
#! /bin/sh
# This file is in the public domain, so clarified as of
# 2009-05-17 by Arthur David Olson.
# Tell groff not to emit SGR escape sequences (ANSI color escapes).
GROFF_NO_SGR=1
export GROFF_NO_SGR
echo ".am TH
.hy 0
.na
..
.rm }H
.rm }F" | nroff -man - ${1+"$@"} | perl -ne '
binmode STDIN, '\'':encoding(utf8)'\'';
binmode STDOUT, '\'':encoding(utf8)'\'';
chomp;
s/.\010//g;
s/\s*$//;
if (/^$/) {
$sawblank = 1;
next;
} else {
if ($sawblank && $didprint) {
print "\n";
$sawblank = 0;
}
print "$_\n";
$didprint = 1;
}
'

103
builddist
View File

@ -1,5 +1,6 @@
#!/bin/sh #!/bin/sh
# #
# Build Classic AmigaOS distribtion package
# This file is public domain # This file is public domain
# #
# Project homepage: # Project homepage:
@ -11,62 +12,116 @@
set -e set -e
rm -f amath.lha distdir="dist"
rm -Rf amath builddir="tmp"
rm -Rf dist bindir="bin"
mkdir dist stamp="202101120000"
rm -Rf ${distdir}
rm -Rf ${builddir}
mkdir -p ${builddir}
# Build binaries
./configure --disable-test --disable-pic --cross-compile="m68k-amigaos" CFLAGS="-m68000 -noixemul" ./configure --disable-test --disable-pic --cross-compile="m68k-amigaos" CFLAGS="-m68000 -noixemul"
make clean make clean
make static make static
mv amath dist/amath.000 mv amath ${builddir}/amath
make clean make clean
./configure --disable-test --disable-pic --cross-compile="m68k-amigaos" CFLAGS="-m68020 -noixemul" ./configure --disable-test --disable-pic --cross-compile="m68k-amigaos" CFLAGS="-m68020 -noixemul"
make static make static
mv amath dist/amath.020 mv amath ${builddir}/amath.020
make clean make clean
./configure --disable-test --disable-pic --cross-compile="m68k-amigaos" CFLAGS="-m68030 -noixemul" ./configure --disable-test --disable-pic --cross-compile="m68k-amigaos" CFLAGS="-m68030 -noixemul"
make static make static
mv amath dist/amath.030 mv amath ${builddir}/amath.030
make clean make clean
# Build test binaries
./configure --enable-test --disable-pic --cross-compile="m68k-amigaos" CFLAGS="-m68000 -noixemul" ./configure --enable-test --disable-pic --cross-compile="m68k-amigaos" CFLAGS="-m68000 -noixemul"
make static make static
mv amath dist/amath-test.000 mv amath ${builddir}/amath-test
make clean make clean
./configure --enable-test --disable-pic --cross-compile="m68k-amigaos" CFLAGS="-m68020 -noixemul" ./configure --enable-test --disable-pic --cross-compile="m68k-amigaos" CFLAGS="-m68020 -noixemul"
make static make static
mv amath dist/amath-test.020 mv amath ${builddir}/amath-test.020
make clean make clean
./configure --enable-test --disable-pic --cross-compile="m68k-amigaos" CFLAGS="-m68030 -noixemul" ./configure --enable-test --disable-pic --cross-compile="m68k-amigaos" CFLAGS="-m68030 -noixemul"
make static make static
mv amath dist/amath-test.030 mv amath ${builddir}/amath-test.030
make clean make clean
cd dist # Build catalogs
make catalogs
# Build documentation
#./build/doc >${builddir}/amath.doc amath.1
groff >${builddir}/amath.html amath.1 -mandoc -Thtml
# Generate hashkeys
cd ${builddir}
touch hashkeys touch hashkeys
sha1sum amath.000 >>hashkeys sha1sum amath >>hashkeys
sha1sum amath.020 >>hashkeys sha1sum amath.020 >>hashkeys
sha1sum amath.030 >>hashkeys sha1sum amath.030 >>hashkeys
sha1sum amath-test.000 >>hashkeys sha1sum amath-test >>hashkeys
sha1sum amath-test.020 >>hashkeys sha1sum amath-test.020 >>hashkeys
sha1sum amath-test.030 >>hashkeys sha1sum amath-test.030 >>hashkeys
sha256sum amath.000 >>hashkeys sha256sum amath >>hashkeys
sha256sum amath.020 >>hashkeys sha256sum amath.020 >>hashkeys
sha256sum amath.030 >>hashkeys sha256sum amath.030 >>hashkeys
sha256sum amath-test.000 >>hashkeys sha256sum amath-test >>hashkeys
sha256sum amath-test.020 >>hashkeys sha256sum amath-test.020 >>hashkeys
sha256sum amath-test.030 >>hashkeys sha256sum amath-test.030 >>hashkeys
cd .. cd ..
make catalogs # Build distribution directory structure
cp LICENSE dist/ mkdir -m 775 ${distdir}
cp HISTORY dist/ mkdir -m 775 ${distdir}/amath
mkdir -m 775 ${distdir}/amath/ARexx
mkdir -m 775 ${distdir}/amath/Catalog
mkdir -m 775 ${distdir}/amath/Catalog/english
mkdir -m 775 ${distdir}/amath/Script
mkdir -m 775 ${distdir}/amath/Test
mkdir dist/script # Install icons
cp script/* dist/script/ install -m 664 ${bindir}/root/*.info ${distdir}/
date -Ru >dist/build_date install -m 664 ${bindir}/prog/*.info ${distdir}/amath/
#uname -srmo >dist/build_host install -m 664 ${bindir}/catalog/*.info ${distdir}/amath/Catalog/
install -m 664 ${bindir}/script/*.info ${distdir}/amath/Script/
mv dist amath # Install documentation
#lha-ac a amath.lha amath install -m 664 HISTORY ${distdir}/amath/
install -m 664 LICENSE ${distdir}/amath/
install -m 664 ${builddir}/hashkeys ${distdir}/amath/
install -m 664 ${builddir}/amath.html ${distdir}/amath/
install -m 664 ${bindir}/amath.doc ${distdir}/amath/
install -m 664 ${bindir}/amath.readme ${distdir}/amath/
# Install scripts
install -m 755 arexx/* ${distdir}/amath/ARexx/
install -m 755 script/* ${distdir}/amath/Script/
# Install binaries
install -m 755 ${builddir}/amath ${distdir}/amath/
install -m 755 ${builddir}/amath.020 ${distdir}/amath/
install -m 755 ${builddir}/amath.030 ${distdir}/amath/
install -m 755 ${builddir}/amath-test ${distdir}/amath/Test/
install -m 755 ${builddir}/amath-test.020 ${distdir}/amath/Test/
install -m 755 ${builddir}/amath-test.030 ${distdir}/amath/Test/
# Install catalogs
install -m 755 distcat/catalog/english/*.catalog ${distdir}/amath/Catalog/english/
# Sign build with date
date -Ru >${distdir}/amath/build_date
#uname -srmo >${distdir}/amath/build_host
for f in $(find ${distdir} -name '*'); do touch -amt ${stamp}.00 $f; done
# Cleanup
rm -Rf distcat
rm -Rf ${builddir}
# Install source
./buildsrc
mv amath-1.9.0 ${distdir}/

View File

@ -1,5 +1,6 @@
#!/bin/sh #!/bin/sh
# #
# Build source distribtion package
# This file is public domain # This file is public domain
# #
# Project homepage: # Project homepage:
@ -9,13 +10,12 @@
# DO NOT USE THIS SCRIPT UNLESS YOU KNOW WHAT YOU ARE DOING ! # DO NOT USE THIS SCRIPT UNLESS YOU KNOW WHAT YOU ARE DOING !
version='1.9.0' version='1.9.0'
stamp="202101110000" stamp="202101120000"
srcdir="amath-rc" srcdir="."
distdir="amath-${version}" distdir="amath-${version}"
cd ..
rm -f amath-${version}.tar.gz rm -f amath-${version}.tar.gz
rm -Rf amath-${version} rm -Rf ${distdir}
mkdir -m 775 ${distdir} mkdir -m 775 ${distdir}
mkdir -m 775 ${distdir}/src/ mkdir -m 775 ${distdir}/src/

8
configure vendored
View File

@ -1194,10 +1194,10 @@ echo " cd src/cplex && \${MAKE} doc"
echo echo
echo "catalogs:" echo "catalogs:"
echo " cd build/flexcat && \${MAKE}" echo " cd build/flexcat && \${MAKE}"
echo " \${MKDIR} dist/catalog/english" echo " \${MKDIR} distcat/catalog/english"
echo " \${FLXCAT} text/help.cd catalog/english/amath-help.ct CATALOG dist/catalog/english/amath-help.catalog" echo " \${FLXCAT} text/help.cd catalog/english/amath-help.ct CATALOG distcat/catalog/english/amath-help.catalog"
echo " \${FLXCAT} text/ident.cd catalog/english/amath-ident.ct CATALOG dist/catalog/english/amath-ident.catalog" echo " \${FLXCAT} text/ident.cd catalog/english/amath-ident.ct CATALOG distcat/catalog/english/amath-ident.catalog"
echo " \${FLXCAT} text/text.cd catalog/english/amath-text.ct CATALOG dist/catalog/english/amath-text.catalog" echo " \${FLXCAT} text/text.cd catalog/english/amath-text.ct CATALOG distcat/catalog/english/amath-text.catalog"
echo echo
echo "shared-libs:" echo "shared-libs:"
echo " cd src/lib && \${MAKE} shared" echo " cd src/lib && \${MAKE} shared"