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

more aarch64 packages #1488

Merged
merged 3 commits into from
Jul 16, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions build/aarch64/gcc10/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -72,8 +72,8 @@ export LD=/bin/ld
export LD_FOR_HOST=/bin/ld
export LD_FOR_TARGET=$PREFIX/bin/ld
export AS_FOR_TARGET=$PREFIX/bin/$TRIPLET64-as
export CFLAGS_FOR_TARGET="-mno-outline-atomics -mtls-dialect=trad"
export CXXFLAGS_FOR_TARGET="-mno-outline-atomics -mtls-dialect=trad"
export CFLAGS_FOR_TARGET="-mtls-dialect=trad"
export CXXFLAGS_FOR_TARGET="-mtls-dialect=trad"
export STRIP="/usr/bin/strip -x"
export STRIP_FOR_TARGET="$STRIP"

Expand Down
2 changes: 1 addition & 1 deletion build/cairo/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ pre_configure() {

! cross_arch $arch && return

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

post_install() {
Expand Down
4 changes: 1 addition & 3 deletions build/dav1d/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,6 @@ TESTSUITE_SED='
/^Full log written to/d
'

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

LDFLAGS[i386]+=" -lssp_ns"

pre_configure() {
Expand All @@ -49,7 +47,7 @@ pre_configure() {

! cross_arch $arch && return

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

init
Expand Down
1 change: 1 addition & 0 deletions build/freetype2/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ CONFIGURE_OPTS="
--includedir=$PREFIX/include
--disable-static
--with-png=no
--with-harfbuzz=no
"
CONFIGURE_OPTS[i386]="
--bindir=$PREFIX/bin/i386
Expand Down
2 changes: 1 addition & 1 deletion build/gnutls/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ pre_configure() {
CPPFLAGS+=" -I${SYSROOT[$arch]}/usr/include/gmp"
CPPFLAGS+=" -I${SYSROOT[$arch]}$PREFIX/include"
CPPFLAGS+=" -I${SYSROOT[$arch]}$PREFIX/unbound/include"
CFLAGS[aarch64]+=" -mno-outline-atomics -mtls-dialect=trad"
CFLAGS[aarch64]+=" -mtls-dialect=trad"
LDFLAGS[$arch]+=" -L${SYSROOT[$arch]}$PREFIX/${LIBDIRS[$arch]}"
LDFLAGS[$arch]+=" -L${SYSROOT[$arch]}$PREFIX/unbound/${LIBDIRS[$arch]}"
LDFLAGS[$arch]+=" -R$PREFIX/${LIBDIRS[$arch]}"
Expand Down
2 changes: 1 addition & 1 deletion build/hunspell/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ CONFIGURE_OPTS[aarch64]+="
"

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

post_install() {
[ $1 = i386 ] && return
Expand Down
55 changes: 47 additions & 8 deletions build/icu4c/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -33,15 +33,55 @@ CONFIGURE_OPTS[amd64]+="
--sbindir=$PREFIX/sbin
"

LDFLAGS[i386]+=" -R$PREFIX/lib"
LDFLAGS[amd64]+=" -R$PREFIX/lib/amd64"
CXXFLAGS[aarch64]+=" -mtls-dialect=trad"
LDFLAGS[i386]+=" -R$PREFIX/${LIBDIRS[i386]}"
LDFLAGS[amd64]+=" -R$PREFIX/${LIBDIRS[amd64]}"
LDFLAGS[aarch64]+=" -R$PREFIX/${LIBDIRS[aarch64]}"

# Make ISA binaries for icu-config, to allow software to find the
# right settings for 32/64-bit when pkg-config is not used.
make_isa_stub() {
pre_configure() {
typeset arch=$1

! cross_arch $arch && return

save_variable BUILDARCH
save_buildenv
set_arch $BUILD_ARCH
set_gccver $DEFAULT_GCC_VER

save_builddir __native_tools__
append_builddir "_native_tools"
logcmd $MKDIR -p $TMPDIR/$BUILDDIR || logerr "mkdir failed"
CONFIGURE_CMD=../configure

note -n "-- Building native tools"

# not installing the native tools
pre_install() { false; }

build

set_crossgcc $arch
restore_builddir __native_tools__
restore_buildenv
restore_variable BUILDARCH

unset -f pre_install

CONFIGURE_OPTS[$arch]+="
--with-cross-build=$TMPDIR/$BUILDDIR/_native_tools
"

note -n "-- Building $PROG"
}

post_install() {
[ "$1" != amd64 ] && return

# Make ISA binaries for icu-config, to allow software to find the
# right settings for 32/64-bit when pkg-config is not used.
pushd $DESTDIR$PREFIX/bin >/dev/null
logcmd mkdir -p amd64
logcmd mv icu-config amd64/ || logerr "mv icu-config"
logcmd $MKDIR -p amd64
logcmd $MV icu-config amd64/ || logerr "mv icu-config"
make_isaexec_stub_arch amd64 $PREFIX/bin
popd >/dev/null
}
Expand All @@ -51,7 +91,6 @@ download_source $PROG $PROG-${VER//./_}-src
patch_source
prep_build
build
make_isa_stub
make_package
clean_up

Expand Down
2 changes: 1 addition & 1 deletion build/json-c/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ CONFIGURE_OPTS[amd64]="
"
CONFIGURE_OPTS[aarch64]=

CFLAGS[aarch64]+=" -mno-outline-atomics -mtls-dialect=trad"
CFLAGS[aarch64]+=" -mtls-dialect=trad"

init
download_source $PROG $PROG $VER
Expand Down
2 changes: 1 addition & 1 deletion build/libjpeg-turbo/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ CONFIGURE_OPTS="
-DCMAKE_INSTALL_INCLUDEDIR=$OPREFIX/include
"

CFLAGS[aarch64]+=" -mno-outline-atomics -mtls-dialect=trad"
CFLAGS[aarch64]+=" -mtls-dialect=trad"

pre_build() {
typeset arch=$1
Expand Down
31 changes: 18 additions & 13 deletions build/pango/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 2023 OmniOS Community Edition (OmniOSce) Association.
# Copyright 2024 OmniOS Community Edition (OmniOSce) Association.

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

Expand All @@ -22,6 +22,8 @@ PKG=ooce/library/pango
SUMMARY="pango"
DESC="Pango is a library for laying out and rendering of text"

forgo_isaexec

# Dependencies
HARFBUZZVER=8.2.1
FRIBIDIVER=1.0.13
Expand Down Expand Up @@ -51,7 +53,8 @@ XFORM_ARGS="
pre_configure() {
typeset arch=$1

LDFLAGS[$arch]+=" -L$PREFIX/${LIBDIRS[$arch]} -R$PREFIX/${LIBDIRS[$arch]}"
LDFLAGS[$arch]+=" -L${SYSROOT[$arch]}$PREFIX/${LIBDIRS[$arch]}"
LDFLAGS[$arch]+=" -R$PREFIX/${LIBDIRS[$arch]}"
[ $arch = i386 ] && LDFLAGS[$arch]+=" -lssp_ns"

export MAKE
Expand All @@ -63,6 +66,12 @@ post_configure() {
done
}

# we'd have to check whether the gcc version is lower or equal to 11
# however `set_crossgcc` does not set GCCVER so we cannot check
post_build() {
[ "$1" = aarch64 ] && EXPECTED_BUILD_ERRS=0 || EXPECTED_BUILD_ERRS=2
}

init
prep_build

Expand All @@ -81,7 +90,6 @@ build_dependency -merge -noctf harfbuzz harfbuzz-$HARFBUZZVER \
export CPPFLAGS+=" -I$DEPROOT/$PREFIX/include/harfbuzz"

SKIP_BUILD_ERRCHK=
test_relver '>=' 151044 && EXPECTED_BUILD_ERRS=2

######################################################################

Expand All @@ -92,14 +100,7 @@ export CPPFLAGS+=" -I$DEPROOT/$PREFIX/include/fribidi"

######################################################################

if ((EXTRACT_MODE == 0)); then
logcmd find $DEPROOT -name \*.la -exec rm {} +
logcmd mv $DEPROOT/$PREFIX/bin/amd64/* $DEPROOT/$PREFIX/bin/ \
|| logerr "relocate dependency binaries"
logcmd rm -rf $DEPROOT/$PREFIX/bin/{i386,amd64}
fi

for arch in $DEFAULT_ARCH; do
for arch in $ARCH_LIST; do
LDFLAGS[$arch]+=" -L$DEPROOT/$PREFIX/${LIBDIRS[$arch]}"
addpath PKG_CONFIG_PATH[$arch] $DEPROOT/$PREFIX/${LIBDIRS[$arch]}/pkgconfig
done
Expand All @@ -111,8 +112,12 @@ CONFIGURE_OPTS="
-Dinstall-tests=false
-Dintrospection=disabled
"
CONFIGURE_OPTS[i386]=" --libdir=$PREFIX/lib "
CONFIGURE_OPTS[amd64]=" --libdir=$PREFIX/lib/amd64 "
CONFIGURE_OPTS[i386]=" --libdir=$PREFIX/${LIBDIRS[i386]} "
CONFIGURE_OPTS[amd64]=" --libdir=$PREFIX/${LIBDIRS[amd64]} "
CONFIGURE_OPTS[aarch64]="
--libdir=$PREFIX/${LIBDIRS[aarch64]}
--cross-file $SRCDIR/files/aarch64-gcc.txt
"

EXPECTED_OPTIONS="CAIRO CAIRO_FREETYPE CAIRO_PDF CAIRO_PS CAIRO_PNG FREETYPE"

Expand Down
12 changes: 12 additions & 0 deletions build/pango/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'

2 changes: 1 addition & 1 deletion build/pixman/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ pre_configure() {

! cross_arch $arch && return

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

init
Expand Down
1 change: 0 additions & 1 deletion build/postgresql/build-14.sh
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,6 @@ XFORM_ARGS="
"

CFLAGS+=" -O3"
CFLAGS[aarch64]+=" -mno-outline-atomics"
CPPFLAGS+=" -DWAIT_USE_POLL"
# postgresql has large enumerations
CTF_FLAGS+=" -s"
Expand Down
1 change: 0 additions & 1 deletion build/postgresql/build-16.sh
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,6 @@ XFORM_ARGS="
"

CFLAGS+=" -O3"
CFLAGS[aarch64]+=" -mno-outline-atomics"
CPPFLAGS+=" -DWAIT_USE_POLL"
# postgresql has large enumerations
CTF_FLAGS+=" -s"
Expand Down
1 change: 0 additions & 1 deletion build/x265/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@ CONFIGURE_OPTS="
-DCMAKE_INSTALL_PREFIX=$PREFIX
"

CXXFLAGS[aarch64]+=" -mno-outline-atomics"
LDFLAGS[amd64]+=" -R$PREFIX/${LIBDIRS[amd64]}"
LDFLAGS[aarch64]+=" -R$PREFIX/${LIBDIRS[aarch64]}"

Expand Down
2 changes: 2 additions & 0 deletions doc/baseline.aarch64
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ extra.omnios ooce/library/cairo
extra.omnios ooce/library/fontconfig
extra.omnios ooce/library/freetype2
extra.omnios ooce/library/gnutls
extra.omnios ooce/library/icu4c
extra.omnios ooce/library/json-c
extra.omnios ooce/library/libarchive
extra.omnios ooce/library/libde265
Expand All @@ -37,6 +38,7 @@ extra.omnios ooce/library/mariadb-106
extra.omnios ooce/library/nettle
extra.omnios ooce/library/onig
extra.omnios ooce/library/openldap
extra.omnios ooce/library/pango
extra.omnios ooce/library/pixman
extra.omnios ooce/library/popt
extra.omnios ooce/library/postgresql-14
Expand Down
2 changes: 2 additions & 0 deletions doc/pkglist.aarch64
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@ ooce/editor/joe
ooce/multimedia/x265
ooce/library/libde265
ooce/database/mariadb-common
ooce/library/icu4c
###############################################################################
.SYSROOT
ooce/audio/flac
Expand All @@ -79,6 +80,7 @@ ooce/library/cairo
.SYSROOT
ooce/security/gnupg
ooce/multimedia/ffmpeg
ooce/library/pango
###############################################################################
.SYSROOT
ooce/multimedia/minidlna
Expand Down
Loading