mirror of
https://github.com/RGBCube/serenity
synced 2025-07-28 13:07:46 +00:00
POSIX compliance: (most) shell scripts converted to generic shell
Ports/.port_include.sh, Toolchain/BuildIt.sh, Toolchain/UseIt.sh have been left largely untouched due to use of Bash-exclusive functions and variables such as $BASH_SOURCE, pushd and popd.
This commit is contained in:
parent
2cc5f3a93f
commit
704f48d7f3
43 changed files with 152 additions and 144 deletions
|
@ -1,4 +1,7 @@
|
|||
#!/bin/bash
|
||||
|
||||
# This file will need to be run in bash, for now.
|
||||
|
||||
if [ -z "$SERENITY_ROOT" ]; then
|
||||
echo "You must source UseIt.sh to build ports."
|
||||
exit 1
|
||||
|
@ -30,19 +33,19 @@ run() {
|
|||
(cd "$workdir" && "$@")
|
||||
}
|
||||
run_replace_in_file(){
|
||||
run perl -p -i -e "$1" $2
|
||||
run perl -p -i -e "$1" "$2"
|
||||
}
|
||||
# Checks if a function is defined. In this case, if the function is not defined in the port's script, then we will use our defaults. This way, ports don't need to include these functions every time, but they can override our defaults if needed.
|
||||
func_defined() {
|
||||
PATH= command -V "$1" > /dev/null 2>&1
|
||||
PATH=$(command -V "$1" > /dev/null 2>&1)
|
||||
}
|
||||
func_defined fetch || fetch() {
|
||||
OLDIFS=$IFS
|
||||
IFS=$'\n'
|
||||
for f in $files; do
|
||||
IFS=$OLDIFS
|
||||
read url filename <<< $(echo "$f")
|
||||
run_nocd curl ${curlopts:-} "$url" -o "$filename"
|
||||
read url filename <<< "$(echo $f)"
|
||||
run_nocd curl "${curlopts:-}" "$url" -o "$filename"
|
||||
case "$filename" in
|
||||
*.tar*|.tbz*|*.txz|*.tgz)
|
||||
run_nocd tar xf "$filename"
|
||||
|
@ -65,13 +68,13 @@ func_defined configure || configure() {
|
|||
run ./"$configscript" --host=i686-pc-serenity $configopts
|
||||
}
|
||||
func_defined build || build() {
|
||||
run make $makeopts
|
||||
run make "$makeopts"
|
||||
}
|
||||
func_defined install || install() {
|
||||
run make DESTDIR="$SERENITY_ROOT"/Root $installopts install
|
||||
}
|
||||
func_defined clean || clean() {
|
||||
rm -rf "$workdir" *.out
|
||||
rm -rf "$workdir" -- *.out
|
||||
}
|
||||
func_defined clean_dist || clean_dist() {
|
||||
OLDIFS=$IFS
|
||||
|
@ -83,7 +86,7 @@ func_defined clean_dist || clean_dist() {
|
|||
done
|
||||
}
|
||||
func_defined clean_all || clean_all() {
|
||||
rm -rf "$workdir" *.out
|
||||
rm -rf "$workdir" -- *.out
|
||||
OLDIFS=$IFS
|
||||
IFS=$'\n'
|
||||
for f in $files; do
|
||||
|
@ -103,7 +106,7 @@ addtodb() {
|
|||
echo "auto $port $version" >> "$prefix"/packages.db
|
||||
else
|
||||
echo "manual $port $version" >> "$prefix"/packages.db
|
||||
if [ ! -z "${dependlist:-}" ]; then
|
||||
if [ -n "${dependlist:-}" ]; then
|
||||
echo "dependency $port$dependlist" >> "$prefix/packages.db"
|
||||
fi
|
||||
fi
|
||||
|
@ -194,10 +197,10 @@ if [ -z "${1:-}" ]; then
|
|||
else
|
||||
case "$1" in
|
||||
fetch|configure|build|install|clean|clean_dist|clean_all|uninstall)
|
||||
do_$1
|
||||
do_"$1"
|
||||
;;
|
||||
--auto)
|
||||
do_all $1
|
||||
do_all "$1"
|
||||
;;
|
||||
*)
|
||||
>&2 echo "I don't understand $1! Supported arguments: fetch, configure, build, install, clean, clean_dist, clean_all, uninstall."
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash ../.port_include.sh
|
||||
#!/bin/sh ../.port_include.sh
|
||||
port=SDL2
|
||||
version=serenity-git
|
||||
workdir=SDL-master-serenity
|
||||
|
@ -8,5 +8,5 @@ files="https://github.com/SerenityOS/SDL/archive/master-serenity.tar.gz SDL2-git
|
|||
configopts="-DCMAKE_TOOLCHAIN_FILE=$SERENITY_ROOT/Toolchain/CMakeToolchain.txt -DPULSEAUDIO=OFF"
|
||||
|
||||
configure() {
|
||||
run cmake $configopts
|
||||
run cmake "$configopts"
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash ../.port_include.sh
|
||||
#!/bin/sh ../.port_include.sh
|
||||
port=bash
|
||||
version=5.0
|
||||
useconfigure=true
|
||||
|
@ -8,5 +8,5 @@ files="https://ftp.gnu.org/gnu/bash/bash-5.0.tar.gz bash-5.0.tar.gz"
|
|||
build() {
|
||||
run_replace_in_file "s/define GETCWD_BROKEN 1/undef GETCWD_BROKEN/" config.h
|
||||
run_replace_in_file "s/define CAN_REDEFINE_GETENV 1/undef CAN_REDEFINE_GETENV/" config.h
|
||||
run make $makeopts
|
||||
run make "$makeopts"
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash ../.port_include.sh
|
||||
#!/bin/sh ../.port_include.sh
|
||||
port=binutils
|
||||
version=2.32
|
||||
useconfigure=true
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash ../.port_include.sh
|
||||
#!/bin/sh ../.port_include.sh
|
||||
port=curl
|
||||
version=7.65.3
|
||||
useconfigure=true
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash ../.port_include.sh
|
||||
#!/bin/sh ../.port_include.sh
|
||||
port=doom
|
||||
workdir=SerenityDOOM-master
|
||||
version=serenity-git
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash ../.port_include.sh
|
||||
#!/bin/sh ../.port_include.sh
|
||||
port=figlet
|
||||
version=2.2.5
|
||||
files="http://ftp.figlet.org/pub/figlet/program/unix/figlet-2.2.5.tar.gz figlet-2.2.5.tar.gz"
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash ../.port_include.sh
|
||||
#!/bin/sh ../.port_include.sh
|
||||
port=gcc
|
||||
version=8.3.0
|
||||
useconfigure=true
|
||||
|
@ -18,10 +18,10 @@ fetch() {
|
|||
done
|
||||
}
|
||||
build() {
|
||||
run make $makeopts
|
||||
run make "$makeopts"
|
||||
run find ./host-i686-pc-serenity/gcc/ -maxdepth 1 -type f -executable -exec strip --strip-debug {} \; || echo
|
||||
}
|
||||
|
||||
install() {
|
||||
run make $installopts
|
||||
run make "$installopts"
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash ../.port_include.sh
|
||||
#!/bin/sh ../.port_include.sh
|
||||
port=less
|
||||
version=530
|
||||
useconfigure="true"
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash ../.port_include.sh
|
||||
#!/bin/sh ../.port_include.sh
|
||||
port=libarchive
|
||||
version=3.4.0
|
||||
useconfigure=true
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash ../.port_include.sh
|
||||
#!/bin/sh ../.port_include.sh
|
||||
port=libexpat
|
||||
version=2.2.9
|
||||
useconfigure=true
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash ../.port_include.sh
|
||||
#!/bin/sh ../.port_include.sh
|
||||
port=libiconv
|
||||
version=1.16
|
||||
useconfigure=true
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash ../.port_include.sh
|
||||
#!/bin/sh ../.port_include.sh
|
||||
port=links
|
||||
version=2.19
|
||||
useconfigure=true
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash ../.port_include.sh
|
||||
#!/bin/sh ../.port_include.sh
|
||||
port=lua
|
||||
version=5.3.5
|
||||
files="http://www.lua.org/ftp/lua-5.3.5.tar.gz lua-5.3.5.tar.gz"
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash ../.port_include.sh
|
||||
#!/bin/sh ../.port_include.sh
|
||||
port=make
|
||||
version=4.2.1
|
||||
useconfigure=true
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash ../.port_include.sh
|
||||
#!/bin/sh ../.port_include.sh
|
||||
port=mbedtls
|
||||
version=2.16.2
|
||||
files="https://tls.mbed.org/download/mbedtls-2.16.2-apache.tgz mbedtls-2.16.2-apache.tgz"
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash ../.port_include.sh
|
||||
#!/bin/sh ../.port_include.sh
|
||||
port=ncurses
|
||||
version=git
|
||||
workdir=ncurses-master
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash ../.port_include.sh
|
||||
#!/bin/sh ../.port_include.sh
|
||||
port=nyancat
|
||||
version=git
|
||||
workdir=nyancat-master
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash ../.port_include.sh
|
||||
#!/bin/sh ../.port_include.sh
|
||||
port=quake
|
||||
version=0.65
|
||||
workdir=SerenityQuake-master
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash ../.port_include.sh
|
||||
#!/bin/sh ../.port_include.sh
|
||||
port=tinycc
|
||||
workdir=tinycc-dev
|
||||
version=dev
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash ../.port_include.sh
|
||||
#!/bin/sh ../.port_include.sh
|
||||
port=vim
|
||||
version=git
|
||||
workdir=vim-master
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash ../.port_include.sh
|
||||
#!/bin/sh ../.port_include.sh
|
||||
port=zlib
|
||||
version=1.2.11
|
||||
useconfigure=true
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue