1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-28 06:17:34 +00:00

Build: Switch to CMake :^)

Closes https://github.com/SerenityOS/serenity/issues/2080
This commit is contained in:
Sergey Bugaev 2020-05-06 18:40:06 +03:00 committed by Andreas Kling
parent 49727ffee4
commit 450a2a0f9c
236 changed files with 1774 additions and 2337 deletions

View file

@ -154,7 +154,7 @@ func_defined build || build() {
run make $makeopts
}
func_defined install || install() {
run make DESTDIR="$SERENITY_ROOT"/Root $installopts install
run make DESTDIR="$SERENITY_ROOT"/Build/Root $installopts install
}
func_defined post_install || post_install() {
echo
@ -216,10 +216,10 @@ uninstall() {
for f in `cat plist`; do
case $f in
*/)
run rmdir "$SERENITY_ROOT/Root/$f" || true
run rmdir "$SERENITY_ROOT/Build/Root/$f" || true
;;
*)
run rm -rf "$SERENITY_ROOT/Root/$f"
run rm -rf "$SERENITY_ROOT/Build/Root/$f"
;;
esac
done

View file

@ -16,6 +16,6 @@ build() {
}
post_install() {
mkdir -p $SERENITY_ROOT/Root/bin
ln -s /usr/local/bin/bash $SERENITY_ROOT/Root/bin/bash
mkdir -p $SERENITY_ROOT/Build/Root/bin
ln -s /usr/local/bin/bash $SERENITY_ROOT/Build/Root/bin/bash
}

View file

@ -2,7 +2,7 @@
port=binutils
version=2.32
useconfigure=true
configopts="--target=i686-pc-serenity --with-sysroot=/ --with-build-sysroot=$SERENITY_ROOT/Root --disable-werror --disable-gdb --disable-nls"
configopts="--target=i686-pc-serenity --with-sysroot=/ --with-build-sysroot=$SERENITY_ROOT/Build/Root --disable-werror --disable-gdb --disable-nls"
files="https://ftp.gnu.org/gnu/binutils/binutils-${version}.tar.xz binutils-${version}.tar.xz
https://ftp.gnu.org/gnu/binutils/binutils-${version}.tar.xz.sig binutils-${version}.tar.xz.sig
https://ftp.gnu.org/gnu/gnu-keyring.gpg gnu-keyring.gpg"

View file

@ -12,6 +12,6 @@ configure() {
}
install() {
mkdir -p $SERENITY_ROOT/Root/home/anon/c-ray
cp -r c-ray-master/* $SERENITY_ROOT/Root/home/anon/c-ray
mkdir -p $SERENITY_ROOT/Build/Root/home/anon/c-ray
cp -r c-ray-master/* $SERENITY_ROOT/Build/Root/home/anon/c-ray
}

View file

@ -10,7 +10,7 @@ build() {
AR=i686-pc-serenity-ar \
RANLIB=i686-pc-serenity-ranlib \
PKG_CONFIG_CURSES=no \
CURSES_CFLAGS="-I${SERENITY_ROOT}/Root/usr/local/include/ncurses" \
CURSES_CFLAGS="-I${SERENITY_ROOT}/Build/Root/usr/local/include/ncurses" \
CURSES_LDFLAGS="-lncurses -ltinfo" \
CURSES=ncurses \
USE_UTF8=no \

View file

@ -2,12 +2,12 @@
port=gcc
version=9.3.0
useconfigure=true
configopts="--target=i686-pc-serenity --with-sysroot=/ --with-build-sysroot=$SERENITY_ROOT/Root --with-newlib --enable-languages=c,c++ --disable-lto --disable-nls"
configopts="--target=i686-pc-serenity --with-sysroot=/ --with-build-sysroot=$SERENITY_ROOT/Build/Root --with-newlib --enable-languages=c,c++ --disable-lto --disable-nls"
files="https://ftp.gnu.org/gnu/gcc/gcc-${version}/gcc-${version}.tar.xz gcc-${version}.tar.xz
https://ftp.gnu.org/gnu/gcc/gcc-${version}/gcc-${version}.tar.xz.sig gcc-${version}.tar.xz.sig
https://ftp.gnu.org/gnu/gnu-keyring.gpg gnu-keyring.gpg"
makeopts="all-gcc all-target-libgcc all-target-libstdc++-v3 -j $(nproc)"
installopts="DESTDIR=$SERENITY_ROOT/Root install-gcc install-target-libgcc install-target-libstdc++-v3"
installopts="DESTDIR=$SERENITY_ROOT/Build/Root install-gcc install-target-libgcc install-target-libstdc++-v3"
depends="binutils"
auth_type="sig"
auth_opts="--keyring ./gnu-keyring.gpg gcc-${version}.tar.xz.sig"

View file

@ -4,7 +4,7 @@ version=5.2.8
useconfigure=true
# Note: gnuplot's source code is hosted on SourceForge, but using the GitHub mirror makes downloading a versioned .tar.gz easier.
files="https://github.com/gnuplot/gnuplot/archive/${version}.tar.gz gnuplot-${version}.tar.gz"
configopts="--prefix=$SERENITY_ROOT/Root/usr/local --with-readline=builtin"
configopts="--prefix=$SERENITY_ROOT/Build/Root/usr/local --with-readline=builtin"
pre_configure() {
run ./prepare

View file

@ -3,4 +3,4 @@ port=lua
version=5.3.5
files="http://www.lua.org/ftp/lua-5.3.5.tar.gz lua-5.3.5.tar.gz 4f4b4f323fd3514a68e0ab3da8ce3455"
makeopts="-j$(nproc) generic"
installopts="INSTALL_TOP=$SERENITY_ROOT/Root/"
installopts="INSTALL_TOP=$SERENITY_ROOT/Build/Root/"

View file

@ -10,5 +10,5 @@ auth_type="sig"
auth_import_key="BFD009061E535052AD0DF2150D28D4D2A0ACE884"
auth_opts="nano-${version}.tar.xz.asc nano-${version}.tar.xz"
export CPPFLAGS=-I${SERENITY_ROOT}/Root/usr/local/include/ncurses
export PKG_CONFIG_PATH=${SERENITY_ROOT}/Root/usr/local/lib/pkgconfig
export CPPFLAGS=-I${SERENITY_ROOT}/Build/Root/usr/local/include/ncurses
export PKG_CONFIG_PATH=${SERENITY_ROOT}/Build/Root/usr/local/lib/pkgconfig

View file

@ -11,7 +11,7 @@ auth_import_key="8657ABB260F056B1E5190839D9C4D26D0E604491"
auth_opts="openssl-${version}.tar.gz.asc openssl-${version}.tar.gz"
depends="zlib"
usr_local=$SERENITY_ROOT/Root/usr/local/
usr_local=$SERENITY_ROOT/Build/Root/usr/local/
configopts="--prefix=$usr_local -DOPENSSL_SYS_SERENITY=1 --openssldir=$usr_local/ssl BSD-x86 zlib no-tests no-threads no-asm"
configure() {

View file

@ -7,4 +7,4 @@ files="https://github.com/SerenityOS/SerenityQuake/archive/master.tar.gz quake.t
makeopts="V=1 SYMBOLS_ON=Y "
depends=SDL2
export PATH=${SERENITY_ROOT}/Root/usr/bin:$PATH
export PATH=${SERENITY_ROOT}/Build/Root/usr/bin:$PATH

View file

@ -6,11 +6,11 @@ files="https://github.com/mtoyoda/sl/archive/master.tar.gz sl-git.tar.gz"
depends="ncurses"
build() {
run ${CC} -I${SERENITY_ROOT}/Root/usr/local/include/ncurses -L${SERENITY_ROOT}/Root/usr/local/lib -o sl sl.c -lncurses -ltinfo
run ${CC} -I${SERENITY_ROOT}/Build/Root/usr/local/include/ncurses -L${SERENITY_ROOT}/Build/Root/usr/local/lib -o sl sl.c -lncurses -ltinfo
}
post_install() {
# Dirty hack that seems to be necessary to make ncurses play nice
mkdir -p ${SERENITY_ROOT}/Root/usr/local/share/terminfo/x
cp ${SERENITY_ROOT}/Root/usr/local/share/terminfo/78/xterm ${SERENITY_ROOT}/Root/usr/local/share/terminfo/x/
mkdir -p ${SERENITY_ROOT}/Build/Root/usr/local/share/terminfo/x
cp ${SERENITY_ROOT}/Build/Root/usr/local/share/terminfo/78/xterm ${SERENITY_ROOT}/Build/Root/usr/local/share/terminfo/x/
}

View file

@ -2,5 +2,5 @@
port=termcap
version=1.3.1
useconfigure=true
configopts="--prefix=$SERENITY_ROOT/Root/usr"
configopts="--prefix=$SERENITY_ROOT/Build/Root/usr"
files="https://ftp.gnu.org/gnu/termcap/termcap-${version}.tar.gz termcap-${version}.tar.gz"