Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build more aarch64 packages #1320

Merged
merged 19 commits into from
Jul 7, 2023
Merged
27 changes: 11 additions & 16 deletions build/bdb/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
# }}}

# Copyright 2011-2012 OmniTI Computer Consulting, Inc. All rights reserved.
# Copyright 2020 OmniOS Community Edition (OmniOSce) Association.
# Copyright 2023 OmniOS Community Edition (OmniOSce) Association.

. ../../lib/build.sh

Expand All @@ -28,11 +28,11 @@ SKIP_LICENCES="Sleepycat"

set_builddir db-$VER/build_unix

forgo_isaexec

OPREFIX=$PREFIX
PREFIX+="/$PROG-$VER"

forgo_isaexec

XFORM_ARGS="
-DPREFIX=${PREFIX#/}
-DOPREFIX=${OPREFIX#/}
Expand All @@ -42,28 +42,23 @@ XFORM_ARGS="

CONFIGURE_CMD="../dist/configure"
CONFIGURE_OPTS="
--prefix=$PREFIX
--includedir=$OPREFIX/include
--enable-compat185
--disable-static
"
CONFIGURE_OPTS[i386]="
--libdir=$OPREFIX/lib
"
CONFIGURE_OPTS[amd64]="
--libdir=$OPREFIX/lib/amd64
"

LDFLAGS[i386]+=" -L$OPREFIX/lib -R$OPREFIX/lib"
LDFLAGS[i386]+=" -lssp_ns"
LDFLAGS[amd64]+=" -L$OPREFIX/lib/amd64 -R$OPREFIX/lib/amd64"

export EXTLIBS=-lm

save_function build64 _build64
build64() {
export DLDFLAGS=${LDFLAGS[amd64]}
_build64
pre_configure() {
typeset arch=$1

CONFIGURE_OPTS[$arch]+=" --libdir=$OPREFIX/${LIBDIRS[$arch]}"
LDFLAGS[$arch]+=" -L${SYSROOT[$arch]}$OPREFIX/${LIBDIRS[$arch]}"
LDFLAGS[$arch]+=" -R$OPREFIX/${LIBDIRS[$arch]}"

export DLDFLAGS=${LDFLAGS[$arch]}
}

init
Expand Down
19 changes: 7 additions & 12 deletions build/cups/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,8 @@ OPREFIX=$PREFIX
PREFIX+="/$PROG"
VARDIR="/var$PREFIX"

forgo_isaexec

XFORM_ARGS="
-DPREFIX=${PREFIX#/}
-DOPREFIX=${OPREFIX#/}
Expand All @@ -39,7 +41,6 @@ XFORM_ARGS="
"

CONFIGURE_OPTS="
--prefix=$PREFIX
--sysconfdir=/etc$OPREFIX
--includedir=$OPREFIX/include
--localstatedir=$VARDIR
Expand Down Expand Up @@ -67,19 +68,14 @@ CONFIGURE_OPTS="
# this currently fails in zones as it uses libdevinfo
CONFIGURE_OPTS+=" --disable-libusb"

CONFIGURE_OPTS[i386]="
--libdir=$OPREFIX/lib
"
CONFIGURE_OPTS[amd64]="
--libdir=$OPREFIX/lib/amd64
"

LDFLAGS[i386]+=" -L$OPREFIX/lib -Wl,-R$OPREFIX/lib -lsocket"
LDFLAGS[amd64]+=" -L$OPREFIX/lib/amd64 -Wl,-R$OPREFIX/lib/amd64 -lsocket"

pre_configure() {
typeset arch=$1

CONFIGURE_OPTS[$arch]+=" --libdir=$OPREFIX/${LIBDIRS[$arch]}"
LDFLAGS[$arch]+=" -L${SYSROOT[$arch]}/usr/${LIBDIRS[$arch]}"
LDFLAGS[$arch]+=" -Wl,-R$OPREFIX/${LIBDIRS[$arch]}"
LDFLAGS[$arch]+=" -lsocket"

export DSOFLAGS="$LDFLAGS ${LDFLAGS[$arch]}"
}

Expand All @@ -89,7 +85,6 @@ patch_source
prep_build
run_autoconf -f
build
strip_install
VER=${VER//op/.} make_package
clean_up

Expand Down
18 changes: 17 additions & 1 deletion build/dav1d/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,24 @@ TESTSUITE_SED='
/^Full log written to/d
'

CFLAGS[aarch64]+=" -mno-outline-atomics"

LDFLAGS[i386]+=" -lssp_ns"
LDFLAGS[amd64]+=" -R$PREFIX/lib/amd64"

pre_configure() {
typeset arch=$1

CONFIGURE_OPTS[$arch]="
--prefix=$PREFIX
--libdir=$PREFIX/${LIBDIRS[$arch]}
"

LDFLAGS[$arch]+=" -R$PREFIX/${LIBDIRS[$arch]}"

! cross_arch $arch && return

CONFIGURE_CMD+=" --cross-file $SRCDIR/files/aarch64-gcc.txt"
}

init
download_source $PROG $PROG $VER
Expand Down
12 changes: 12 additions & 0 deletions build/dav1d/files/aarch64-gcc.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
[binaries]
c = '/opt/cross/aarch64/bin/aarch64-unknown-solaris2.11-gcc'
cpp = '/opt/cross/aarch64/bin/aarch64-unknown-solaris2.11-g++'
ar = '/opt/cross/aarch64/bin/aarch64-unknown-solaris2.11-ar'
pkgconfig = 'pkg-config'

[host_machine]
system = 'sunos'
cpu_family = 'aarch64'
cpu = 'aarch64'
endian = 'little'

49 changes: 35 additions & 14 deletions build/ffmpeg/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -27,14 +27,7 @@ DESC+="convert and stream audio and video."
# software may depend on it.
PVERS="4.4.3 5.1.2"

if test_relver '>=' 151041; then
set_clangver

CONFIGURE_OPTS="
--cc=$CC
--cxx=$CXX
"
fi
test_relver '>=' 151041 && set_clangver

OPREFIX=$PREFIX
PREFIX+="/$PROG"
Expand All @@ -49,7 +42,7 @@ XFORM_ARGS="
# ffmpeg contains BMI instructions even when built on an older CPU
BMI_EXPECTED=1

CONFIGURE_OPTS+="
CONFIGURE_OPTS="
--prefix=$PREFIX
--incdir=$OPREFIX/include
--disable-static
Expand All @@ -63,26 +56,53 @@ CONFIGURE_OPTS+="
--enable-libwebp
--enable-gpl
--enable-libx264
--enable-libx265
--enable-gnutls
"
CONFIGURE_OPTS[i386]="
--enable-libx265
--disable-librav1e
--libdir=$OPREFIX/lib
"
CONFIGURE_OPTS[amd64]="
--enable-libx265
--enable-librav1e
--libdir=$OPREFIX/lib/amd64
"
CONFIGURE_OPTS[aarch64]="
--enable-cross-compile
--disable-asm
--disable-libx265
--disable-librav1e
--libdir=$OPREFIX/lib
"

# to find x264.h for builtin check
CPPFLAGS+=" -I$OPREFIX/include"
LDFLAGS[i386]+=" -Wl,-R$OPREFIX/lib"
LDFLAGS[amd64]+=" -Wl,-R$OPREFIX/lib/amd64"
pre_configure() {
typeset arch=$1

CONFIGURE_OPTS+="
--cc=$CC
--cxx=$CXX
"

# to find x264.h for builtin check
CPPFLAGS+=" -I${SYSROOT[$arch]}$OPREFIX/include"

LDFLAGS[$arch]+=" -Wl,-R$OPREFIX/${LIBDIRS[$arch]}"

! cross_arch $arch && return

CONFIGURE_OPTS[$arch]+="
--sysroot=${SYSROOT[$arch]}
--host-cc=/opt/gcc-$DEFAULT_GCC_VER/bin/gcc
"
}

init
prep_build autoconf-like

# Skip previous versions for cross compilation
pre_build() { ! cross_arch $1; }

# Build previous versions
for pver in $PVERS; do
note -n "Building previous version: $pver"
Expand All @@ -94,6 +114,7 @@ for pver in $PVERS; do
build
restore_variable CONFIGURE_OPTS
done
unset -f pre_build

note -n "Building current version: $VER"

Expand Down
17 changes: 12 additions & 5 deletions build/fontconfig/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -60,25 +60,32 @@ CONFIGURE_OPTS[amd64]="
--sbindir=$PREFIX/sbin
--libdir=$OPREFIX/lib/amd64
"
CONFIGURE_OPTS[aarch64]+="
--bindir=$PREFIX/bin
--sbindir=$PREFIX/sbin
--libdir=$OPREFIX/lib
"

# The build framework expects GNU tools
export PATH="/usr/gnu/bin:$PATH"
pre_configure() {
# The build framework expects GNU tools
export PATH="$GNUBIN:$PATH"
}

rem_abs_symlinks() {
post_install() {
logmsg "--- removing absolute symlinks"
logcmd rm -f $DESTDIR/etc$PREFIX/fonts/conf.d/*.conf
}

LDFLAGS[i386]+=" -L$OPREFIX/lib -R$OPREFIX/lib"
LDFLAGS[amd64]+=" -L$OPREFIX/lib/amd64 -R$OPREFIX/lib/amd64"
LDFLAGS[aarch64]+=" -L$OPREFIX/lib -R$OPREFIX/lib"

init
download_source $PROG $PROG $VER
prep_build
patch_source
run_autoreconf -fi
build -ctf
rem_abs_symlinks
build
make_package
clean_up

Expand Down
10 changes: 7 additions & 3 deletions build/hunspell/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -25,12 +25,12 @@ DESC="$PROG - spell checker"
# https://github.com/fin-w/LibreOffice-Geiriadur-Cymraeg-Welsh-Dictionary
CYVER=1.2

forgo_isaexec
set_clangver

OPREFIX=$PREFIX
PREFIX+=/$PROG

forgo_isaexec
set_clangver

XFORM_ARGS="
-DOPREFIX=${OPREFIX#/}
-DPREFIX=${PREFIX#/}
Expand All @@ -49,8 +49,12 @@ CONFIGURE_OPTS[i386]="
CONFIGURE_OPTS[amd64]="
--libdir=$OPREFIX/lib/amd64
"
CONFIGURE_OPTS[aarch64]+="
--libdir=$OPREFIX/lib
"

CPPFLAGS+=" -I/usr/include/ncurses"
CXXFLAGS[aarch64]+=" -mno-outline-atomics -mtls-dialect=trad"

post_install() {
[ $1 = i386 ] && return
Expand Down
9 changes: 6 additions & 3 deletions build/liberation-fonts/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,12 @@ DESC+="as usage of Times New Roman, Arial, Courier New."
SKIP_LICENCES=SILv1.1
set_builddir $PROG-ttf-$VER

copy_fonts() {
dst=$DESTDIR$PREFIX/share/fonts/truetype/liberation
pre_package() {
typeset arch=$1

dst=$DESTDIR
cross_arch $arch && dst+=".$arch"
dst+=$PREFIX/share/fonts/truetype/liberation

logcmd mkdir -p $dst || logerr "--- mkdir failed"

Expand All @@ -40,7 +44,6 @@ init
download_source $PROG $BUILDDIR
patch_source
prep_build
copy_fonts
make_package
clean_up

Expand Down
8 changes: 6 additions & 2 deletions build/libexif/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
# http://www.illumos.org/license/CDDL.
# }}}

# Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
# Copyright 2023 OmniOS Community Edition (OmniOSce) Association.

. ../../lib/build.sh

Expand All @@ -38,7 +38,11 @@ CONFIGURE_OPTS[i386]="
CONFIGURE_OPTS[amd64]="
--libdir=$OPREFIX/lib/amd64
"
[ $RELVER -ge 151037 ] && LDFLAGS[i386]+=" -lssp_ns"
CONFIGURE_OPTS[aarch64]+="
--libdir=$OPREFIX/lib
"

LDFLAGS[i386]+=" -lssp_ns"

init
download_source $PROG $PROG $VER
Expand Down
13 changes: 11 additions & 2 deletions build/libid3tag/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
# http://www.illumos.org/license/CDDL.
# }}}

# Copyright 2021 OmniOS Community Edition (OmniOSce) Association.
# Copyright 2023 OmniOS Community Edition (OmniOSce) Association.

. ../../lib/build.sh

Expand All @@ -27,7 +27,16 @@ test_relver '>=' 151041 && set_clangver
CONFIGURE_OPTS="
--disable-static
"
[ $RELVER -ge 151037 ] && LDFLAGS[i386]+=" -lssp_ns"

LDFLAGS[i386]+=" -lssp_ns"

pre_configure() {
typeset arch=$1

! cross_arch $arch && return

LDFLAGS[$arch]+=" -L${SYSROOT[$arch]}/usr/${LIBDIRS[$arch]}"
}

init
download_source $PROG $PROG $VER
Expand Down
Loading