Compare commits

..

No commits in common. "main" and "0.0.4-alpha" have entirely different histories.

353 changed files with 1376 additions and 7990 deletions

View file

@ -1,8 +0,0 @@
root = true
[*]
insert_final_newline = true
trim_trailing_whitespace = true
[*.{c,h,sh}]
indent_style = tab
tab_width = 4

View file

@ -1,70 +0,0 @@
# Iglunix Installation Guide
## Getting an installation image
There are two ways of getting hold of an install image: From the releases tab on
GitHub and with [iglunix-autobuild](https://github.com/iglunix/iglunix-autobuild).
### Using Autobuild
```
git clone https://github.com/iglunix/iglunix-autobuild
cd iglunix-autobuild
./autobuild.sh
./chroot.sh
./img.sh
```
### Writing the image
Write the image to a USB to boot on the target computer.
Make sure to triple check which disk you're writing to.
```
dd if=build/iglunix.img of=/dev/sdX bs=64M
```
## Disk Partitioning
Iglunix recommends a two partition layout with an MBR partition table, a FAT
formatted boot partition and an EXT4 formated root partition. The following
is a guide on how to do it where `/dev/disk` is the target install disk.
```
fdisk /dev/disk
>o
>n
>p
>1
>2048
>+512M
>t
>ef
>n
>p
>2
>
>
>w
mkfs.vfat -n BOOT /dev/disk1
mkfs.ext4 -L ROOT /dev/disk2
mkdir /install_root
mount /dev/disk2 /install_root
mkdir /install_root/boot
mount /dev/disk1 /install_root/boot
```
## Extracting Packages
For any packages you want to install
```
tar -I zstd -xf /mnt/<pkgname>.<pkgver>.tar.zst -C /install_root
```
## The init system
Use https://github.com/iglunix/iglunix/tree/main/init not https://github.com/iglunix/init
## Installing Bootloaders
```
limine-deploy /dev/disk
cp /usr/share/limine/limine.sys /install_root/boot
# If the oslo package wasn't installed earlier and you want UEFI support
cp /usr/share/limine/BOOTX64.EFI /install_root/boot/efi/boot/bootx64.efi
```
Edit `/install_root/boot/efi/oslo/entries.ini` and `/install_root/boot/limine.cfg`
accordingly

View file

@ -3,24 +3,12 @@ Unix like software distribution with no GNU components
All build scripts are 0BSD Licensed. All build scripts are 0BSD Licensed.
To create an ISO from a non-iglunix OS please see https://github.com/iglunix/iglunix-autobuild To create an ISO from a non-iglunix OS please see https://github.com/iglunix/iglunix-autobuild
## Is this GNU/Linux
No, GNU currently contributes roughly 10 MiB of code in the base system whilst,
LLVM and Linux both contribute approximately 1 GiB each. Instead we suggest that
one should refer to Igluinx running on the Linux kernel as LLVM/Musl/Linux.
LLVM and Linux because they are the two largest packages and make up the
majority of the base system, and Musl to be explicit about the C library,
target triple and to differentiate it from any system using LLVM's libc
(which will may very well likely use in the future).
## Instalation
See [INSTALL.md](INSTALL.md)
## Discord ## Discord
Join us at [link](https://discord.gg/NKB9qD2bMx) Join us at [link](https://discord.gg/NKB9qD2bMx)
<!--
## Status of Other Kernels ## Status of Other Kernels
### FreeBSD ### FreeBSD
@ -36,32 +24,16 @@ otherwise the toolchain breaks).
I have found no easy way of building libc on Darwin platforms as on yet. I have found no easy way of building libc on Darwin platforms as on yet.
Because of this I haven't got far at all porting Iglunix to Darwin Because of this I haven't got far at all porting Iglunix to Darwin
based systems such as MacOS and PureDarwin. based systems such as MacOS and PureDarwin.
-->
## Web Browsers ## Web Browsers
Iglunix has Firefox ESR packaged requiring 2 extra GNU packages: `gm4` and Iglunix doesn't currently have any working web browsers yet however we do have
`autoconf`. Iglunix may switch to using a patched version of webkit gtk with a WIP WebKit port (WPM or WebKit Platform for Minimal systems). Currently
openssl and maybe ffmpeg replacing gstreamer. WebKit builds with all our work and we're currently working on exposing an API
to use it. JavaScriptCore API works perfectly and example programs run with no
issue.
## Replacements LUT ## TODO
- Wayland Compositors - Velox works fine for now
|standard tool | iglunix tool | use | - LLVM (Work out how to split packages)
|--------------|--------------------|----------------------------------| - Init system (currently we're just leaving this up to the user)
|glibc | musl | libc | - QEMU for multiarch (need lots of work on glibr to get this to build)
|glibc | libexecinfo | Backtrace functions |
|libstdc++ | libc++ | C++ standard library |
|libgcc | libunwind | Stack unwinding |
|libgcc | compiler-rt | Compiler builtins |
|bison | byacc | POSIX yacc |
|coreutils | toybox+busybox | POSIX utilities |
|gcc | clang | C++ compiler |
|zlib | zlib-ng | Compression library |
|gmake | bmake, others | POSIX Make implementation |
|ninja | samurai | Ninja build implementation |
|GNU M4 | OpenBSD M4 | POSIX M4 implementation |
|ncurses | netbsd-curses | X/Open Curses implementation |
|bash | mksh | Shell |
|Linux PAM | Open PAM | Pluggable Authentication Modules |
|sudo | doas | Privilege escalation |
|pkg-config | pkgconf | Package configuration tool |
|e2fsprogs | make_ext4fs | Make an ext4 file system |

View file

@ -1,7 +0,0 @@
# Bad Packages
Bad packages are packages included that we want
to remove our dependency on. All of these packages
should eventually be removed.
- `autoconf` is required for building `firefox`
- `gmake` is required for building a number of packages

View file

@ -1,23 +0,0 @@
--- a/autoconf.sh
+++ b/autoconf.sh
@@ -115,13 +115,14 @@
# Use the frozen version of Autoconf if available.
r= f=
# Some non-GNU m4's don't reject the --help option, so give them /dev/null.
-case `$M4 --help < /dev/null 2>&1` in
-*reload-state*) test -r $AC_MACRODIR/autoconf.m4f && { r=--reload f=f; } ;;
-*traditional*) ;;
-*) echo Autoconf requires GNU m4 1.1 or later >&2; rm -f $tmpin; exit 1 ;;
-esac
+# case `$M4 --help < /dev/null 2>&1` in
+# *reload-state*) test -r $AC_MACRODIR/autoconf.m4f && { r=--reload f=f; } ;;
+# *traditional*) ;;
+# *) echo Autoconf requires GNU m4 1.1 or later >&2; rm -f $tmpin; exit 1 ;;
+# esac
-$M4 -I$AC_MACRODIR $use_localdir $r autoconf.m4$f $infile > $tmpout ||
+# $M4 -I$AC_MACRODIR $use_localdir $r autoconf.m4$f $infile > $tmpout ||
+$M4 -g -D__GNU__ -I$AC_MACRODIR $use_localdir autoconf.m4 $infile -> $tmpout ||
{ rm -f $tmpin $tmpout; exit 2; }
# You could add your own prefixes to pattern if you wanted to check for

View file

@ -1,11 +0,0 @@
--- autoconf-2.13/autoheader.sh
+++ old/autoheader.sh
@@ -122,7 +122,7 @@
# Extract assignments of SYMS, TYPES, FUNCS, HEADERS, and LIBS from the
# modified autoconf processing of the input file. The sed hair is
# necessary to win for multi-line macro invocations.
-eval "`$M4 -I$AC_MACRODIR $use_localdir $r autoheader.m4$f $infile |
+eval "`$M4 -g -D__gnu__ -I$AC_MACRODIR $use_localdir autoheader.m4 $infile |
sed -n -e '
: again
/^@@@.*@@@$/s/^@@@\(.*\)@@@$/\1/p

View file

@ -1,31 +0,0 @@
pkgname=autoconf
pkgver=2.13
fetch() {
curl "https://ftp.gnu.org/gnu/autoconf/autoconf-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz
tar -xf $pkgname-$pkgver.tar.gz
cd $pkgname-$pkgver
patch -p1 < ../../makefile-m4f.patch
patch -p1 < ../../autoconf.sh.patch
patch -p1 < ../../autoheader.sh.patch
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr/bad/autoconf/ \
--build=$TRIPLE \
--host=$TRIPLE
make
}
package() {
cd $pkgname-$pkgver
make install DESTDIR=$pkgdir
}
license() {
cd $pkgname-$pkgver
cat COPYING
}

View file

@ -1,70 +0,0 @@
--- src/autoconf-2.13/Makefile.in
+++ Makefile.in
@@ -33,8 +33,8 @@
# Programs that are ALWAYS installed (and are created in the build dir).
ASCRIPTS = autoconf autoheader autoreconf autoupdate ifnames
-# M4 input that is frozen.
-M4FROZEN = autoconf.m4f autoheader.m4f
+# Don't freeze anything with OpenBSD m4
+M4FROZEN =
# All programs, including those only installed if you have perl.
SCRIPTS = $(ASCRIPTS) @SCRIPTS@
--- a/Makefile.in
+++ b/Makefile.in
@@ -137,23 +137,23 @@
cd testsuite && ${MAKE} AUTOCONF=${bindir}/autoconf $@
installdirs:
- $(SHELL) ${srcdir}/mkinstalldirs $(bindir) $(infodir) $(acdatadir)
+ $(SHELL) ${srcdir}/mkinstalldirs $(DESTDIR)/$(bindir) $(DESTDIR)/$(acdatadir)
install: all $(M4FILES) acconfig.h installdirs install-info
for p in $(ASCRIPTS); do \
- $(INSTALL_PROGRAM) $$p $(bindir)/`echo $$p|sed '$(transform)'`; \
+ $(INSTALL_PROGRAM) $$p $(DESTDIR)/$(bindir)/`echo $$p|sed '$(transform)'`; \
done
for i in $(M4FROZEN); do \
- $(INSTALL_DATA) $$i $(acdatadir)/$$i; \
+ $(INSTALL_DATA) $$i $(DESTDIR)/$(acdatadir)/$$i; \
done
for i in $(M4FILES) acconfig.h; do \
- $(INSTALL_DATA) $(srcdir)/$$i $(acdatadir)/$$i; \
+ $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)/$(acdatadir)/$$i; \
done
-if test -f autoscan; then \
- $(INSTALL_PROGRAM) autoscan $(bindir)/`echo autoscan|sed '$(transform)'`; \
+ $(INSTALL_PROGRAM) autoscan $(DESTDIR)/$(bindir)/`echo autoscan|sed '$(transform)'`; \
for i in acfunctions acheaders acidentifiers acprograms \
acmakevars; do \
- $(INSTALL_DATA) $(srcdir)/$$i $(acdatadir)/$$i; \
+ $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)/$(acdatadir)/$$i; \
done; \
else :; fi
@@ -161,11 +161,11 @@
install-info: info installdirs
if test -f autoconf.info; then \
for i in *.info*; do \
- $(INSTALL_DATA) $$i $(infodir)/$$i; \
+ $(INSTALL_DATA) $$i $(DESTDIR)/$(infodir)/$$i; \
done; \
else \
for i in $(srcdir)/*.info*; do \
- $(INSTALL_DATA) $$i $(infodir)/`echo $$i | sed 's|^$(srcdir)/||'`; \
+ $(INSTALL_DATA) $$i $(DESTDIR)/$(infodir)/`echo $$i | sed 's|^$(srcdir)/||'`; \
done; \
fi
--- a/Makefile.in
+++ b/Makefile.in
@@ -139,7 +139,7 @@
installdirs:
$(SHELL) ${srcdir}/mkinstalldirs $(DESTDIR)/$(bindir) $(DESTDIR)/$(infodir) $(DESTDIR)/$(acdatadir)
-install: all $(M4FILES) acconfig.h installdirs install-info
+install: all $(M4FILES) acconfig.h installdirs
for p in $(ASCRIPTS); do \
$(INSTALL_PROGRAM) $$p $(DESTDIR)/$(bindir)/`echo $$p|sed '$(transform)'`; \
done

View file

@ -1,28 +0,0 @@
pkgname=bad
pkgver=main
fetch() {
curl -L "https://github.com/iglunix/bad/archive/refs/heads/main.tar.gz" -o $pkgname-$pkgver.tar.gz
tar -xf $pkgname-$pkgver.tar.gz
}
build() {
cd $pkgname-$pkgver
[ -z "$WITH_CROSS" ] || export CFLAGS="$CFLAGS --target=$TRIPLE --sysroot=$WITH_CROSS_DIR"
make
}
package() {
cd $pkgname-$pkgver
make install DESTDIR=$pkgdir PREFIX=/usr
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}
backup() {
return
}

View file

@ -1,31 +0,0 @@
pkgname=gm4
pkgver=1.4.19
fetch() {
curl "http://ftp.gnu.org/pub/gnu/m4/m4-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
mv m4-$pkgver gm4-$pkgver
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr \
--build=$TRIPLE \
--program-prefix=g \
--host=$TRIPLE \
--disable-nls
make
}
package() {
cd $pkgname-$pkgver
make install DESTDIR=$pkgdir
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,54 +0,0 @@
pkgver=4.3
pkgname=gmake
pkgrel=1
deps="musl"
bad="gmake"
ext="doc:dev"
auto_cross
fetch() {
curl "https://ftp.gnu.org/gnu/make/make-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz
tar -xf $pkgname-$pkgver.tar.gz
mv make-$pkgver $pkgname-$pkgver
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr/bad/gmake \
--program-prefix=g \
--disable-nls \
--build=$HOST_TRIPLE \
--host=$TRIPLE
make
}
package() {
cd $pkgname-$pkgver
make install DESTDIR=$pkgdir
rm -r $pkgdir/usr/bad/gmake/share
rm -r $pkgdir/usr/bad/gmake/include
}
package_doc() {
cd $pkgname-$pkgver
make install DESDIR=$pkgdir
rm -r $pkgdir/usr/bad/gmake/bin
rm -r $pkgdir/usr/bad/gmake/share/info
rm -r $pkgdir/usr/bad/gmake/include
}
package_dev() {
cd $pkgname-$pkgver
make install DESTDIR=$pkgdir
rm -r $pkgdir/usr/bad/gmake/bin
rm -r $pkgdir/usr/bad/gmake/share
}
license() {
cd $pkgname-$pkgver
cat COPYING
}
backup() {
return
}

View file

@ -1,3 +0,0 @@
# Base Packages
These packages make up the base Iglunix system and are
included in all kernels

View file

@ -1,11 +0,0 @@
--- a/boot-strap
+++ b/boot-strap
@@ -420,7 +420,7 @@
op_test() {
[ -x bmake ] || op_build
- Bmake test "$@" || exit 1
+ #Bmake test "$@" || exit 1
}
op_clean() {

View file

@ -1,59 +0,0 @@
pkgver=3.23.1
pkgname=cmake
pkgrel=1
mkdeps="samurai"
deps=""
bad=""
ext=""
fetch() {
curl "https://cmake.org/files/v3.23/cmake-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz
tar -xf $pkgname-$pkgver.tar.gz
}
build() {
cd $pkgname-$pkgver
if [ -z "$WITH_CROSS" ]; then
./bootstrap \
--prefix=/usr \
--mandir=/share/man \
--datadir=/share/$pkgname \
--docdir=/share/doc/$pkgname \
--generator=Ninja \
--no-system-libs
else
mkdir -p build
cd build
cmake -G Ninja .. \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_SYSTEM_NAME=Linux \
-DCMAKE_SYSROOT=$WITH_CROSS_DIR \
-DCMAKE_C_COMPILER_TARGET=$TRIPLE \
-DCMAKE_CXX_COMPILER_TARGET=$TRIPLE \
-DCMAKE_ASM_COMPILER_TARGET=$TRIPLE \
-DHAVE_POLL_FINE_EXITCODE=OFF \
-DHAVE_POLL_FINE_EXITCODE__TRYRUN_OUTPUT=OFF \
-DCMAKE_PREFIX_PATH=$WITH_CROSS_DIR \
-DBUILD_CursesDialog=OFF
fi
samu
}
package() {
cd $pkgname-$pkgver
if [ ! -z "$WITH_CROSS" ]; then
cd build
fi
DESTDIR=$pkgdir samu install
}
backup() {
return
}
license() {
cd $pkgname-$pkgver
cat Copyright.txt
}

View file

@ -1,71 +0,0 @@
pkgname=compiler-rt
pkgver=14.0.1
deps=linux
fetch() {
curl -L "https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver/compiler-rt-$pkgver.src.tar.xz" -o $pkgname-$pkgver.tar.xz
# for c++ headers
# curl -L "https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver/libcxx-$pkgver.src.tar.xz" -o libcxx-$pkgver.tar.xz
# musl required for C headers
curl -O "http://musl.libc.org/releases/musl-1.2.2.tar.gz"
tar -xf $pkgname-$pkgver.tar.xz
mv $pkgname-$pkgver.src $pkgname-$pkgver
# tar -xf libcxx-$pkgver.tar.xz
# mv libcxx-$pkgver.src libcxx-$pkgver
# cp ../__config_site libcxx-$pkgver/include
mkdir $pkgname-$pkgver/build
tar -xf musl-1.2.2.tar.gz
cd musl-1.2.2
CFLAGS="--sysroot=/usr/$ARCH-linux-musl --target=$TRIPLE" ./configure --prefix=$(pwd)/../libc --target=$TRIPLE
bad --gmake gmake install-headers
}
build() {
cd $pkgname-$pkgver
cd build
cmake -G Ninja ../ \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr/lib/clang/$pkgver/ \
-DCMAKE_INSTALL_LIBDIR=lib \
-DCMAKE_C_COMPILER_TARGET=$TRIPLE \
-DCMAKE_CXX_COMPILER_TARGET=$TRIPLE \
-DCMAKE_ASM_COMPILER_TARGET=$TRIPLE \
-DCMAKE_C_COMPILER_WORKS=ON \
-DCMAKE_CXX_COMPILER_WORKS=ON \
-DCMAKE_SYSROOT=/usr/$ARCH-linux-musl \
-DCMAKE_C_FLAGS_INIT="-I $(pwd)/../../libc/include " \
-DCMAKE_C_FLAGS="-I $(pwd)/../../libc/include" \
-DCMAKE_CXX_FLAGS_INIT="-I $(pwd)/../../libc/include" \
-DCMAKE_CXX_FLAGS="-I $(pwd)/../../libc/include" \
-DCOMPILER_RT_USE_BUILTINS_LIBRARY=OFF \
-DCOMPILER_RT_DEFAULT_TARGET_ONLY=OFF \
-DCOMPILER_RT_INCLUDE_TESTS=OFF \
-DCOMPILER_RT_BUILD_SANITIZERS=OFF \
-DCOMPILER_RT_BUILD_XRAY=OFF \
-DCOMPILER_RT_BUILD_MEMPROF=OFF \
-DCOMPILER_RT_BUILD_ORC=OFF \
-DCOMPILER_RT_INCLUDE_TESTS=OFF \
-DCOMPILER_RT_BUILD_LIBFUZZER=OFF \
-DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON \
-DCOMPILER_RT_BUILD_PROFILE=OFF \
-DCAN_TARGET_$ARCH=ON \
-DCMAKE_SIZEOF_VOID_P=8
samu
}
package() {
cd $pkgname-$pkgver
cd build
DESTDIR=$pkgdir samu install
}
backup() {
return
}
license() {
cd $pkgname-$pkgver
cat LICENSE.TXT
}

View file

@ -1,36 +0,0 @@
pkgver=7.81.0
pkg_ver=$(echo $pkgver | tr '.' '_')
pkgname=curl
pkgrel=1
mkdeps=""
deps="openssl"
bad=""
auto_cross
fetch() {
curl -L "https://github.com/curl/curl/releases/download/curl-$pkg_ver/curl-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.gz
tar -xf $pkgname-$pkgver.tar.gz
}
build() {
cd $pkgname-$pkgver
./configure --prefix=/usr \
--build=$HOST_TRIPLE \
--host=$TRIPLE \
--with-openssl
make
}
package() {
cd $pkgname-$pkgver
make DESTDIR=$pkgdir install
}
backup() {
return
}
license() {
cd $pkgname-$pkgver
cat COPYING
}

View file

@ -1,30 +0,0 @@
pkgname=fakeroot
pkgver=1.26
fetch() {
curl "https://deb.debian.org/debian/pool/main/f/fakeroot/fakeroot_$pkgver.orig.tar.gz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
patch -p1 < ../../no64.patch
patch -p1 < ../../stdint.patch
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr \
--build=$TRIPLE \
--host=$TRIPLE
bad --gmake gmake
}
package() {
cd $pkgname-$pkgver
bad --gmake gmake install DESTDIR=$pkgdir
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,17 +0,0 @@
--- a/libfakeroot.c
+++ b/libfakeroot.c
@@ -81,12 +81,14 @@
#define SEND_STAT64(a,b,c) send_stat64(a,b,c)
#define SEND_GET_STAT(a,b) send_get_stat(a,b)
#define SEND_GET_STAT64(a,b) send_get_stat64(a,b)
+#define SEND_GET_XATTR(a,b,c) send_get_xattr(a,b,c)
#define SEND_GET_XATTR64(a,b,c) send_get_xattr64(a,b,c)
#else
#define SEND_STAT(a,b,c) send_stat(a,b)
#define SEND_STAT64(a,b,c) send_stat64(a,b)
#define SEND_GET_STAT(a,b) send_get_stat(a)
#define SEND_GET_STAT64(a,b) send_get_stat64(a)
+#define SEND_GET_XATTR(a,b,c) send_get_xattr(a,b)
#define SEND_GET_XATTR64(a,b,c) send_get_xattr64(a,b)
#endif

View file

@ -1,34 +0,0 @@
--- a/faked.c
+++ b/faked.c
@@ -514,11 +514,11 @@
#ifdef FAKEROOT_DB_PATH
if (find_path(i->buf.dev, i->buf.ino, roots, path))
- fprintf(f,"mode=%llo,uid=%llu,gid=%llu,nlink=%llu,rdev=%llu %s\n",
+ fprintf(f,"mode=%"PRIo64",uid=%"PRIu64",gid=%"PRIu64",nlink=%"PRIu64",rdev=%"PRIu64" %s\n",
(uint64_t) i->buf.mode,(uint64_t) i->buf.uid,(uint64_t) i->buf.gid,
(uint64_t) i->buf.nlink,(uint64_t) i->buf.rdev,path);
#else
- fprintf(f,"dev=%llx,ino=%llu,mode=%llo,uid=%llu,gid=%llu,nlink=%llu,rdev=%llu\n",
+ fprintf(f,"dev=%"PRIx64",ino=%"PRIu64",mode=%"PRIo64",uid=%"PRIu64",gid=%"PRIu64",nlink=%"PRIu64",rdev=%"PRIu64"\n",
(uint64_t) i->buf.dev,(uint64_t) i->buf.ino,(uint64_t) i->buf.mode,
(uint64_t) i->buf.uid,(uint64_t) i->buf.gid,(uint64_t) i->buf.nlink,
(uint64_t) i->buf.rdev);
@@ -544,7 +544,7 @@
while(1){
#ifdef FAKEROOT_DB_PATH
- r=scanf("mode=%llo,uid=%llu,gid=%llu,nlink=%llu,rdev=%llu "DB_PATH_SCAN"\n",
+ r=scanf("mode=%"PRIo64",uid=%"PRIu64",gid=%"PRIu64",nlink=%"PRIu64",rdev=%"PRIu64" "DB_PATH_SCAN"\n",
&stmode, &stuid, &stgid, &stnlink, &strdev, &path);
if (r != 6)
break;
@@ -559,7 +559,7 @@
stdev = path_st.st_dev;
stino = path_st.st_ino;
#else
- r=scanf("dev=%llx,ino=%llu,mode=%llo,uid=%llu,gid=%llu,nlink=%llu,rdev=%llu\n",
+ r=scanf("dev=%"PRIx64",ino=%"PRIu64",mode=%"PRIo64",uid=%"PRIu64",gid=%"PRIu64",nlink=%"PRIu64",rdev=%"PRIu64"\n",
&stdev, &stino, &stmode, &stuid, &stgid, &stnlink, &strdev);
if (r != 7)
break;

View file

@ -1,36 +0,0 @@
pkgname=flex
pkgver=2.6.4
auto_cross
fetch() {
curl -L "https://github.com/westes/flex/releases/download/v2.6.4/flex-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz
tar -xf $pkgname-$pkgver.tar.gz
}
build() {
cd $pkgname-$pkgver
[ -z "$WITH_CROSS" ] || extra_flags=--disable-bootstrap
./configure \
--prefix=/usr \
--build=$HOST_TRIPLE \
--host=$TRIPLE \
$extra_flags
make
}
package() {
cd $pkgname-$pkgver
make install DESTDIR=$pkgdir
ln -sr $pkgdir/usr/bin/flex $pkgdir/usr/bin/lex
}
license() {
cd $pkgname-$pkgver
cat COPYING
}
backup() {
return
}

View file

@ -1,38 +0,0 @@
pkgver=2.32.0
pkgname=git
pkgrel=1
mkdeps="zlib-ng-dev:curl-dev:gmake"
deps="zlib-ng:curl"
bad="gmake"
ext="doc"
fetch() {
curl "https://mirrors.edge.kernel.org/pub/software/scm/git/git-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
}
build() {
cd $pkgname-$pkgver
# gmake NO_PERL=1 NO_REGEX=NeedsStartEnd NO_TCLTK=1 NO_MSGFMT_EXTENDED_OPTIONS=1 prefix=/usr gitexecdir=lib/gitcore INSTALL_SYMLINKS=1
bad --gmake gmake NO_REGEX=NeedsStartEnd NO_TCLTK=1 NO_MSGFMT_EXTENDED_OPTIONS=1 prefix=/usr gitexecdir=lib/gitcore INSTALL_SYMLINKS=1
# Need to run twice for it to work ¯\_(ツ)_/¯
# Some issue with `msgfmt` 'cause I'm using gettext-tiny but idk why it works on the second run
# gmake NO_PERL=1 NO_REGEX=NeedsStartEnd NO_TCLTK=1 NO_MSGFMT_EXTENDED_OPTIONS=1 prefix=/usr gitexecdir=lib/gitcore INSTALL_SYMLINKS=1
bad --gmake gmake NO_REGEX=NeedsStartEnd NO_TCLTK=1 NO_MSGFMT_EXTENDED_OPTIONS=1 prefix=/usr gitexecdir=lib/gitcore INSTALL_SYMLINKS=1
}
package() {
cd $pkgname-$pkgver
# gmake NO_PERL=1 NO_REGEX=NeedsStartEnd NO_TCLTK=1 NO_MSGFMT_EXTENDED_OPTIONS=1 install prefix=/usr gitexecdir=lib/gitcore DESTDIR=$pkgdir INSTALL_SYMLINKS=1
bad --gmake gmake NO_REGEX=NeedsStartEnd NO_TCLTK=1 NO_MSGFMT_EXTENDED_OPTIONS=1 install prefix=/usr gitexecdir=lib/gitcore DESTDIR=$pkgdir INSTALL_SYMLINKS=1
}
package_doc() {
# gmake NO_PERL=1 NO_REGEX=NeedsStartEnd NO_TCLTK=1 NO_MSGFMT_EXTENDED_OPTIONS=1 install-man prefix=/usr DESTDIR=$pkgdir INSTALL_SYMLINKS=1
bad --gmake gmake NO_REGEX=NeedsStartEnd NO_TCLTK=1 NO_MSGFMT_EXTENDED_OPTIONS=1 install-man prefix=/usr DESTDIR=$pkgdir INSTALL_SYMLINKS=1
}
license() {
cd $pkgname-$pkgver
cat COPYING
}

View file

@ -1,25 +0,0 @@
pkgname=iglupkg
pkgver=main
fetch() {
curl -L "https://github.com/iglunix/iglupkg/archive/refs/heads/main.tar.gz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
}
build() {
return
}
package() {
cd $pkgname-$pkgver
make install DESTDIR=$pkgdir PREFIX=/usr
}
license() {
cd $pkgname-$pkgver
return
}
backup() {
return
}

View file

@ -1,63 +0,0 @@
pkgver=14.0.1
pkgname=libcxx
bad=""
ext="dev"
fetch() {
curl -L "https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver/llvm-project-$pkgver.src.tar.xz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
mv llvm-project-$pkgver.src $pkgname-$pkgver
}
build() {
cd $pkgname-$pkgver
PREFIX=/usr
[ -z "$FOR_CROSS" ] || PREFIX=$FOR_CROSS_DIR
[ -z "$WITH_CROSS" ] || cmake_extra_flags=-DCMAKE_SYSROOT=$WITH_CROSS_DIR
mkdir -p build
cd build
cmake -G Ninja -Wno-dev \
-DLLVM_ENABLE_RUNTIMES="libcxx;libcxxabi" \
-DLIBCXX_ENABLE_FILESYSTEM=ON \
-DLIBCXX_USE_COMPILER_RT=ON \
-DLIBCXX_HAS_MUSL_LIBC=ON \
-DLIBCXXABI_USE_COMPILER_RT=ON \
-DLIBCXXABI_USE_LLVM_UNWINDER=ON \
-DLIBCXX_ENABLE_STATIC=OFF \
-DLIBCXX_HAS_ATOMIC_LIB=OFF \
-DCMAKE_C_COMPILER=$CC \
-DCMAKE_CXX_COMPILER=$CXX \
-DCMAKE_C_COMPILER_TARGET=$ARCH-linux-musl \
-DCMAKE_CXX_COMPILER_TARGET=$ARCH-linux-musl \
-DCMAKE_C_FLAGS="$CFLAGS" \
-DCMAKE_CXX_FLAGS="$CXXFLAGS" \
$cmake_extra_flags \
-DCMAKE_INSTALL_PREFIX=$PREFIX \
-DCMAKE_CXX_COMPILER_WORKS=1 \
-DCMAKE_SKIP_BUILD_RPATH=0 \
-DCMAKE_BUILD_WITH_INSTALL_RPATH=1 \
-DCMAKE_INSTALL_RPATH='${ORIGIN}/../lib' \
../runtimes
samu -j$JOBS
}
package() {
cd $pkgname-$pkgver
cd build
DESTDIR=$pkgdir samu install
}
backup() {
return
}
package_dev() {
echo "No... Shut"
}
license() {
cd $pkgname-$pkgver
cat */LICENSE.TXT
}

View file

@ -1,47 +0,0 @@
pkgname=libelf
pkgver=0.186
auto_cross
fetch() {
curl -LO "https://sourceware.org/elfutils/ftp/$pkgver/elfutils-$pkgver.tar.bz2"
tar -xf elfutils-$pkgver.tar.bz2
cd elfutils-$pkgver
patch -p1 < ../../musl.patch
}
if [ -z "$FOR_CROSS" ]; then
PREFIX=/usr
else
PREFIX=$FOR_CROSS_DIR
fi
build() {
cd elfutils-$pkgver
export CFLAGS="$CFLAGS -Wno-error"
./configure \
--prefix=$PREFIX \
--sysconfdir=/etc \
--build=$HOST_TRIPLE \
--host=$TRIPLE \
--disable-symbol-versioning \
--disable-debuginfod \
--disable-libdebuginfod \
--disable-nls \
ac_cv_c99=yes
bad --gmake gmake -C lib
bad --gmake gmake -C libelf
}
package() {
cd elfutils-$pkgver
bad --gmake gmake -C libelf install DESTDIR=$pkgdir
}
backup() {
return
}
license() {
return
}

View file

@ -1,59 +0,0 @@
diff --git a/configure b/configure
index d03dab4..7fc88bd 100755
--- a/configure
+++ b/configure
@@ -7758,7 +7758,7 @@ LIBS="$saved_LIBS"
case "$ac_cv_search_argp_parse" in
no) { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "failed to find argp_parse
+: $? "failed to find argp_parse
See \`config.log' for more details" "$LINENO" 5; } ;;
-l*) argp_LDADD="$ac_cv_search_argp_parse" ;;
*) argp_LDADD= ;;
@@ -7826,7 +7826,7 @@ LIBS="$saved_LIBS"
case "$ac_cv_search_fts_close" in
no) { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "failed to find fts_close
+: $? "failed to find fts_close
See \`config.log' for more details" "$LINENO" 5; } ;;
-l*) fts_LIBS="$ac_cv_search_fts_close" ;;
*) fts_LIBS= ;;
@@ -7894,7 +7894,7 @@ LIBS="$saved_LIBS"
case "$ac_cv_search__obstack_free" in
no) { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "failed to find _obstack_free
+: $? "failed to find _obstack_free
See \`config.log' for more details" "$LINENO" 5; } ;;
-l*) obstack_LIBS="$ac_cv_search__obstack_free" ;;
*) obstack_LIBS= ;;
diff --git a/lib/Makefile.in b/lib/Makefile.in
index 41ff5f7..0c81496 100644
--- a/lib/Makefile.in
+++ b/lib/Makefile.in
@@ -117,8 +117,8 @@ libeu_a_AR = $(AR) $(ARFLAGS)
libeu_a_LIBADD =
am_libeu_a_OBJECTS = xasprintf.$(OBJEXT) xstrdup.$(OBJEXT) \
xstrndup.$(OBJEXT) xmalloc.$(OBJEXT) next_prime.$(OBJEXT) \
- crc32.$(OBJEXT) crc32_file.$(OBJEXT) color.$(OBJEXT) \
- error.$(OBJEXT) printversion.$(OBJEXT)
+ crc32.$(OBJEXT) crc32_file.$(OBJEXT) \
+ error.$(OBJEXT)
libeu_a_OBJECTS = $(am_libeu_a_OBJECTS)
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
@@ -406,10 +406,10 @@ textrel_check = if $(READELF) -d $@ | fgrep -q TEXTREL; then $(textrel_found); f
noinst_LIBRARIES = libeu.a
libeu_a_SOURCES = xasprintf.c xstrdup.c xstrndup.c xmalloc.c next_prime.c \
crc32.c crc32_file.c \
- color.c error.c printversion.c
+ error.c
noinst_HEADERS = fixedsizehash.h libeu.h system.h dynamicsizehash.h list.h \
- eu-config.h color.h printversion.h bpf.h \
+ eu-config.h bpf.h \
atomics.h stdatomic-fbsd.h dynamicsizehash_concurrent.h
EXTRA_DIST = dynamicsizehash.c dynamicsizehash_concurrent.c

View file

@ -1,70 +0,0 @@
pkgver=14.0.1
pkgname=libunwind
bad=""
ext="dev"
fetch() {
curl -L "https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver/llvm-project-$pkgver.src.tar.xz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
mv llvm-project-$pkgver.src $pkgname-$pkgver
}
build() {
cd $pkgname-$pkgver
PREFIX=/usr
[ -z "$FOR_CROSS" ] || PREFIX=$FOR_CROSS_DIR
if [ ! -z "$WITH_CROSS" ]; then
cmake_extra_flags=-DCMAKE_SYSROOT=$WITH_CROSS_DIR
fi
mkdir -p build
cd build
cmake -G Ninja -Wno-dev \
-DLLVM_ENABLE_RUNTIMES="libunwind" \
-DLIBUNWIND_USE_COMPILER_RT=ON \
-DLIBUNWIND_SUPPORTS_FNO_EXCEPTIONS_FLAG=1 \
-DLIBCXXABI_USE_LLVM_UNWINDER=YES \
-DLIBCXX_HAS_MUSL_LIBC=ON \
-DCMAKE_ASM_COMPILER=$CC \
-DCMAKE_C_COMPILER=$CC \
-DCMAKE_CXX_COMPILER=$CXX \
-DCMAKE_ASM_COMPILER_TARGET=$ARCH-linux-musl \
-DCMAKE_C_COMPILER_TARGET=$ARCH-linux-musl \
-DCMAKE_CXX_COMPILER_TARGET=$ARCH-linux-musl \
-DCMAKE_C_FLAGS="$CFLAGS" \
-DCMAKE_CXX_FLAGS="$CXXFLAGS" \
-DCMAKE_ASM_FLAGS="$CFLAGS" \
-DCMAKE_SHARED_LINKER_FLAGS="$LDFLAGS -unwindlib=none" \
$cmake_extra_flags \
-DCMAKE_INSTALL_PREFIX=$PREFIX \
-DCMAKE_C_COMPILER_WORKS=1 \
-DCMAKE_CXX_COMPILER_WORKS=1 \
-DCMAKE_SKIP_BUILD_RPATH=0 \
-DCMAKE_BUILD_WITH_INSTALL_RPATH=1 \
-DCMAKE_INSTALL_RPATH='${ORIGIN}/../lib' \
../runtimes
samu -j$JOBS
}
package() {
cd $pkgname-$pkgver
cd build
DESTDIR=$pkgdir samu install
}
backup() {
return
}
package_dev() {
echo "No... Shut"
}
license() {
cd $pkgname-$pkgver
cat */LICENSE.TXT
}

View file

@ -1,150 +0,0 @@
pkgver=14.0.1
pkgname=llvm
bad=""
ext="dev"
fetch() {
curl -L "https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver/llvm-project-$pkgver.src.tar.xz" -o $pkgname-$pkgver.tar.gz
tar -xf $pkgname-$pkgver.tar.gz
mv llvm-project-$pkgver.src $pkgname-$pkgver
cd $pkgname-$pkgver
patch -p1 < ../../riscv-relax.patch
}
build() {
cd $pkgname-$pkgver
if [ ! -z "$WITH_CROSS" ]; then
EXTRA_ARGS="-DCMAKE_SYSROOT=$WITH_CROSS_DIR \
-DCMAKE_C_COMPILER_WORKS=ON \
-DCMAKE_CXX_COMPILER_WORKS=ON \
-DCMAKE_SYSTEM_NAME=Linux \
-DLLVM_TABLEGEN=$(pwd)/host-build/bin/llvm-tblgen \
-DCLANG_TABLEGEN=$(pwd)/host-build/bin/clang-tblgen \
-DLLVM_CONFIG_PATH=/usr/bin/llvm-config \
-DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER \
-DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY \
-DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY"
mkdir -p host-build
cd host-build
cmake -G Ninja -Wno-dev \
-DLLVM_ENABLE_PROJECTS='clang' \
-DCMAKE_C_COMPILER=cc \
-DCMAKE_CXX_COMPILER=c++ \
../llvm
samu llvm-tblgen clang-tblgen
cd ..
fi
mkdir -p build
cd build
cmake -G Ninja -Wno-dev \
-DCMAKE_C_COMPILER_TARGET=$TRIPLE \
-DCMAKE_CXX_COMPILER_TARGET=$TRIPLE \
-DCMAKE_C_COMPILER=$CC \
-DCMAKE_CXX_COMPILER=$CXX \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release \
-DLLVM_VERSION_SUFFIX="" \
-DLLVM_APPEND_VC_REV=OFF \
-DLLVM_ENABLE_PROJECTS="llvm;lld;clang" \
-DLLVM_ENABLE_LLD=ON \
-DLLVM_TARGETS_TO_BUILD="all" \
-DLLVM_INSTALL_BINUTILS_SYMLINKS=ON \
-DLLVM_INSTALL_CCTOOLS_SYMLINKS=ON \
-DLLVM_INCLUDE_EXAMPLES=OFF \
-DLLVM_ENABLE_PIC=ON \
-DLLVM_ENABLE_LTO=OFF \
-DLLVM_INCLUDE_GO_TESTS=OFF \
-DLLVM_INCLUDE_TESTS=OFF \
-DLLVM_HOST_TRIPLE=$TRIPLE \
-DLLVM_DEFAULT_TARGET_TRIPLE=$TRIPLE \
-DLLVM_ENABLE_LIBXML2=OFF \
-DLLVM_ENABLE_ZLIB=OFF\
-DLLVM_BUILD_LLVM_DYLIB=ON \
-DLLVM_LINK_LLVM_DYLIB=ON \
-DLLVM_OPTIMIZED_TABLEGEN=ON \
-DLLVM_INCLUDE_BENCHMARKS=OFF \
-DLLVM_INCLUDE_DOCS=ON \
-DLLVM_TOOL_LLVM_ITANIUM_DEMANGLE_FUZZER_BUILD=OFF \
-DLLVM_TOOL_LLVM_MC_ASSEMBLE_FUZZER_BUILD=OFF \
-DLLVM_TOOL_LLVM_MC_DISASSEMBLE_FUZZER_BUILD=OFF \
-DLLVM_TOOL_LLVM_OPT_FUZZER_BUILD=OFF \
-DLLVM_TOOL_LLVM_MICROSOFT_DEMANGLE_FUZZER_BUILD=OFF \
-DLLVM_TOOL_LLVM_GO_BUILD=OFF \
-DLLVM_INSTALL_UTILS=ON \
-DLLVM_ENABLE_LIBCXX=ON \
-DLLVM_STATIC_LINK_CXX_STDLIB=ON \
-DLLVM_ENABLE_LIBEDIT=OFF \
-DLLVM_ENABLE_TERMINFO=OFF \
-DLIBCXX_ENABLE_FILESYSTEM=ON \
-DLIBCXX_USE_COMPILER_RT=ON \
-DLIBCXX_HAS_MUSL_LIBC=ON \
-DLIBCXX_ENABLE_STATIC_ABI_LIBRARY=ON \
-DLIBCXX_STATICALLY_LINK_ABI_IN_SHARED_LIBRARY=ON \
-DLIBCXX_STATICALLY_LINK_ABI_IN_STATIC_LIBRARY=ON \
-DLIBCXX_INSTALL_LIBRARY=ON \
-DLIBCXXABI_ENABLE_ASSERTIONS=ON \
-DLIBCXXABI_USE_COMPILER_RT=ON \
-DLIBCXXABI_USE_LLVM_UNWINDER=ON \
-DLIBCXXABI_ENABLE_STATIC_UNWINDER=ON \
-DLIBCXXABI_STATICALLY_LINK_UNWINDER_IN_SHARED_LIBRARY=YES \
-DLIBCXXABI_ENABLE_SHARED=OFF \
-DLIBCXXABI_ENABLE_STATIC=ON \
-DLIBCXXABI_INSTALL_LIBRARY=ON \
-DLIBUNWIND_ENABLE_SHARED=ON \
-DLIBUNWIND_ENABLE_STATIC=ON \
-DLIBUNWIND_INSTALL_LIBRARY=ON \
-DLIBUNWIND_USE_COMPILER_RT=ON \
-DCLANG_DEFAULT_LINKER=lld \
-DCLANG_DEFAULT_CXX_STDLIB='libc++' \
-DCLANG_DEFAULT_RTLIB=compiler-rt \
-DCLANG_DEFAULT_UNWINDLIB=libunwind \
-DCLANG_VENDOR="Iglunix" \
-DCLANG_ENABLE_STATIC_ANALYZER=OFF \
-DCLANG_ENABLE_ARCMT=OFF \
-DCLANG_LINK_CLANG_DYLIB=OFF \
-DCLANG_TOOLING_BUILD_AST_INTROSPECTION=OFF \
-DCOMPILER_RT_USE_BUILTINS_LIBRARY=OFF \
-DCOMPILER_RT_DEFAULT_TARGET_ONLY=OFF \
-DCOMPILER_RT_INCLUDE_TESTS=OFF \
-DCOMPILER_RT_BUILD_SANITIZERS=OFF \
-DCOMPILER_RT_BUILD_XRAY=OFF \
-DCOMPILER_RT_BUILD_MEMPROF=OFF \
-DCOMPILER_RT_INCLUDE_TESTS=OFF \
-DCOMPILER_RT_BUILD_LIBFUZZER=OFF \
-DENABLE_EXPERIMENTAL_NEW_PASS_MANAGER=TRUE \
$EXTRA_ARGS \
-DHAVE_CXX_ATOMICS_WITHOUT_LIB=ON \
-DHAVE_CXX_ATOMICS64_WITHOUT_LIB=ON \
../llvm
samu -j$JOBS
}
package() {
cd $pkgname-$pkgver
cd build
DESTDIR=$pkgdir samu install
ln -s clang $pkgdir/usr/bin/cc
ln -s clang $pkgdir/usr/bin/c89
ln -s clang $pkgdir/usr/bin/c99
ln -s clang++ $pkgdir/usr/bin/c++
ln -s ld.lld $pkgdir/usr/bin/ld
}
backup() {
return
}
package_dev() {
echo "No... Shut"
}
license() {
cd $pkgname-$pkgver
cat */LICENSE.TXT
}

View file

@ -1,17 +0,0 @@
diff --git a/clang/lib/Driver/ToolChains/Arch/RISCV.cpp b/clang/lib/Driver/ToolChains/Arch/RISCV.cpp
index 8c343b869..65c357e86 100644
--- a/clang/lib/Driver/ToolChains/Arch/RISCV.cpp
+++ b/clang/lib/Driver/ToolChains/Arch/RISCV.cpp
@@ -426,11 +426,7 @@ void riscv::getRISCVTargetFeatures(const Driver &D, const llvm::Triple &Triple,
if (Args.hasArg(options::OPT_ffixed_x31))
Features.push_back("+reserve-x31");
- // -mrelax is default, unless -mno-relax is specified.
- if (Args.hasFlag(options::OPT_mrelax, options::OPT_mno_relax, true))
- Features.push_back("+relax");
- else
- Features.push_back("-relax");
+ Features.push_back("-relax");
// GCC Compatibility: -mno-save-restore is default, unless -msave-restore is
// specified...

View file

@ -1,32 +0,0 @@
pkgver=master
pkgname=netbsd-curses
bad="gmake"
deps="musl"
ext="doc:dev"
auto_cross
fetch() {
curl -L "https://github.com/sabotage-linux/netbsd-curses/archive/master.tar.gz" -o $pkgname-$pkgver.tar.gz
tar -xf $pkgname-$pkgver.tar.gz
cd $pkgname-$pkgver
patch -p1 < ../../cross.patch
}
build() {
cd $pkgname-$pkgver
bad --gmake gmake PREFIX=/usr HOSTCC=cc CROSSCOMPILING=1 LDFLAGS_HOST= CFLAGS_HOST=
}
package() {
cd $pkgname-$pkgver
bad --gmake gmake install DESTDIR=$pkgdir PREFIX=/usr HOSTCC=cc CROSSCOMPILING=1 LDFLAGS_HOST= CFLAGS_HOST=
}
backup() {
return
}
license() {
cd $pkgname-$pkgver
cat COPYING
}

View file

@ -1,47 +0,0 @@
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -477,7 +477,7 @@
$(RANLIB) $@
$(TI_LIBSO): $(TI_LOBJS)
- $(CC) -shared -o $@ $^ -Wl,-soname=$(notdir $@)
+ $(CC) $(LDFLAGS) -shared -o $@ $^ -Wl,-soname=$(notdir $@)
libterminfo/hash.c: libterminfo/genhash libterminfo/term.h
@echo "Generating terminfo hash"
@@ -514,7 +514,7 @@
$(CU_LIBSO): $(TI_LIBSO)
$(CU_LIBSO): $(CU_LOBJS)
- $(CC) -shared -o $@ $^ -Wl,-soname=$(notdir $@)
+ $(CC) $(LDFLAGS) -shared -o $@ $^ -Wl,-soname=$(notdir $@)
libcurses/fileio.h: libcurses/shlib_version libcurses/genfileioh.awk
$(AWK) -f ./genfileioh.awk < ./shlib_version > ./fileio.h
@@ -526,7 +526,7 @@
$(PA_LIBSO): $(CU_LIBSO)
$(PA_LIBSO): $(PA_LOBJS)
- $(CC) -shared -o $@ $^ -Wl,-soname=$(notdir $@)
+ $(CC) $(LDFLAGS) -shared -o $@ $^ -Wl,-soname=$(notdir $@)
$(ME_LIBA): $(ME_OBJS)
rm -f $@
@@ -535,7 +535,7 @@
$(ME_LIBSO): $(CU_LIBSO)
$(ME_LIBSO): $(ME_LOBJS)
- $(CC) -shared -o $@ $^ -Wl,-soname=$(notdir $@)
+ $(CC) $(LDFLAGS) -shared -o $@ $^ -Wl,-soname=$(notdir $@)
$(FO_LIBA): $(FO_OBJS)
rm -f $@
@@ -544,7 +544,7 @@
$(FO_LIBSO): $(CU_LIBSO)
$(FO_LIBSO): $(FO_LOBJS)
- $(CC) -shared -o $@ $^ -Wl,-soname=$(notdir $@)
+ $(CC) $(LDFLAGS) -shared -o $@ $^ -Wl,-soname=$(notdir $@)
# Allow terminfo descriptions to be compiled into libterminfo
${TERMINFODIR}/terminfo.cdb: $(TOOL_TIC) ${TERMINFODIR}/terminfo

View file

@ -1,21 +0,0 @@
--- a/configure
+++ b/configure
@@ -10,16 +10,8 @@
EOF
$CC -o conftest conftest.c > /dev/null 2>&1
if [ $? -eq 0 ] ; then
+ cc="$CC"
+ return 0
- ./conftest
- if [ $? -eq 0 ] ; then
- rm -f conftest conftest.c
- cc="$CC"
- return 0
- else
- echo "could not build working executables"
- echo "Please ensure your C compiler is a native compiler"
- exit 1
- fi
else
rm -f conftest conftest.c
fi

View file

@ -1,327 +0,0 @@
From edf250c633bef40e7e37dafc9fc393dd2ad9074f Mon Sep 17 00:00:00 2001
From: Michael Forney <mforney@mforney.org>
Date: Tue, 10 Apr 2018 13:37:14 -0700
Subject: [PATCH] m4: Use hand-written lexer to avoid cycle in bootstrap
---
tokenizer.c | 191 +++++++++++++++++++++++++++++++++++++++++
tokenizer.l | 109 -----------------------
2 files changed, 191 insertions(+), 109 deletions(-)
create mode 100644 tokenizer.c
delete mode 100644 tokenizer.l
diff --git a/tokenizer.c b/tokenizer.c
new file mode 100644
index 00000000000..fa19fc65035
--- /dev/null
+++ b/tokenizer.c
@@ -0,0 +1,191 @@
+/* $OpenBSD: tokenizer.l,v 1.10 2017/06/17 01:55:16 bcallah Exp $ */
+/*
+ * Copyright (c) 2004 Marc Espie <espie@cvs.openbsd.org>
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+#include "parser.h"
+#include <assert.h>
+#include <ctype.h>
+#include <errno.h>
+#include <limits.h>
+#include <stdbool.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdint.h>
+
+extern void m4_warnx(const char *, ...);
+extern int mimic_gnu;
+extern int32_t yylval;
+static const char *yypos;
+
+void
+yy_scan_string(const char *s)
+{
+ yypos = s;
+}
+
+static int32_t
+number(const char *yytext, size_t yylen)
+{
+ long l;
+
+ errno = 0;
+ l = strtol(yytext, NULL, 0);
+ if (((l == LONG_MAX || l == LONG_MIN) && errno == ERANGE) ||
+ l > INT32_MAX || l < INT32_MIN)
+ m4_warnx("numeric overflow in expr: %.*s", (int)yylen, yytext);
+ return l;
+}
+
+static int32_t
+parse_radix(const char *yytext, size_t yylen)
+{
+ long base;
+ char *next;
+ long l;
+ int d;
+
+ l = 0;
+ base = strtol(yytext+2, &next, 0);
+ if (base > 36 || next == NULL) {
+ m4_warnx("error in number %.*s", (int)yylen, yytext);
+ } else {
+ next++;
+ while (*next != 0) {
+ if (*next >= '0' && *next <= '9')
+ d = *next - '0';
+ else if (*next >= 'a' && *next <= 'z')
+ d = *next - 'a' + 10;
+ else {
+ assert(*next >= 'A' && *next <= 'Z');
+ d = *next - 'A' + 10;
+ }
+ if (d >= base) {
+ m4_warnx("error in number %.*s", (int)yylen, yytext);
+ return 0;
+ }
+ l = base * l + d;
+ next++;
+ }
+ }
+ return l;
+}
+
+static int
+isodigit(int c)
+{
+ return c >= '0' && c <= '7';
+}
+
+int yylex(void)
+{
+ const char *start;
+
+next:
+ start = yypos;
+ switch (*yypos) {
+ case ' ':
+ case '\t':
+ case '\n':
+ ++yypos;
+ goto next;
+ case '<':
+ switch (yypos[1]) {
+ case '=':
+ yypos += 2;
+ return LE;
+ case '<':
+ yypos += 2;
+ return LSHIFT;
+ }
+ break;
+ case '>':
+ switch (yypos[1]) {
+ case '=':
+ yypos += 2;
+ return GE;
+ case '>':
+ yypos += 2;
+ return RSHIFT;
+ }
+ break;
+ case '=':
+ if (yypos[1] != '=')
+ break;
+ yypos += 2;
+ return EQ;
+ case '!':
+ if (yypos[1] != '=')
+ break;
+ yypos += 2;
+ return NE;
+ case '&':
+ if (yypos[1] != '&')
+ break;
+ yypos += 2;
+ return LAND;
+ case '|':
+ if (yypos[1] != '|')
+ break;
+ yypos += 2;
+ return LOR;
+ case '*':
+ if (!mimic_gnu || yypos[1] != '*')
+ break;
+ yypos += 2;
+ return EXPONENT;
+ case '0':
+ switch (*++yypos) {
+ case 'x':
+ case 'X':
+ if (!isxdigit(*++yypos))
+ return ERROR;
+ do ++yypos;
+ while (isxdigit(*yypos));
+ break;
+ case 'r':
+ case 'R':
+ if (!mimic_gnu)
+ break;
+ if (!isdigit(*++yypos))
+ return ERROR;
+ do ++yypos;
+ while (isdigit(*yypos));
+ if (*yypos != ':')
+ return ERROR;
+ if (!isalnum(*++yypos))
+ return ERROR;
+ do ++yypos;
+ while (isalnum(*yypos));
+ yylval = parse_radix(start, yypos - start);
+ return NUMBER;
+ default:
+ do ++yypos;
+ while (isodigit(*yypos));
+ break;
+ }
+ yylval = number(start, yypos - start);
+ return NUMBER;
+ case '\0':
+ return '\0';
+ }
+ if (isdigit(*yypos)) {
+ do ++yypos;
+ while (isdigit(*yypos));
+ yylval = number(start, yypos - start);
+ return NUMBER;
+ }
+
+ return *yypos++;
+}
diff --git a/tokenizer.l b/tokenizer.l
deleted file mode 100644
index 94f02fb6085..00000000000
--- a/tokenizer.l
+++ /dev/null
@@ -1,109 +0,0 @@
-%{
-/* $OpenBSD: tokenizer.l,v 1.10 2017/06/17 01:55:16 bcallah Exp $ */
-/*
- * Copyright (c) 2004 Marc Espie <espie@cvs.openbsd.org>
- *
- * Permission to use, copy, modify, and distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- */
-#include "parser.h"
-#include <assert.h>
-#include <stdlib.h>
-#include <errno.h>
-#include <stdint.h>
-#include <limits.h>
-
-extern void m4_warnx(const char *, ...);
-extern int mimic_gnu;
-extern int32_t yylval;
-
-int32_t number(void);
-int32_t parse_radix(void);
-%}
-
-delim [ \t\n]
-ws {delim}+
-hex 0[xX][0-9a-fA-F]+
-oct 0[0-7]*
-dec [1-9][0-9]*
-radix 0[rR][0-9]+:[0-9a-zA-Z]+
-
-%option noyywrap
-
-%%
-{ws} {/* just skip it */}
-{hex}|{oct}|{dec} { yylval = number(); return(NUMBER); }
-{radix} { if (mimic_gnu) {
- yylval = parse_radix(); return(NUMBER);
- } else {
- return(ERROR);
- }
- }
-"<=" { return(LE); }
-">=" { return(GE); }
-"<<" { return(LSHIFT); }
-">>" { return(RSHIFT); }
-"==" { return(EQ); }
-"!=" { return(NE); }
-"&&" { return(LAND); }
-"||" { return(LOR); }
-"**" { if (mimic_gnu) { return (EXPONENT); } }
-. { return yytext[0]; }
-%%
-
-int32_t
-number()
-{
- long l;
-
- errno = 0;
- l = strtol(yytext, NULL, 0);
- if (((l == LONG_MAX || l == LONG_MIN) && errno == ERANGE) ||
- l > INT32_MAX || l < INT32_MIN)
- m4_warnx("numeric overflow in expr: %s", yytext);
- return l;
-}
-
-int32_t
-parse_radix()
-{
- long base;
- char *next;
- long l;
- int d;
-
- l = 0;
- base = strtol(yytext+2, &next, 0);
- if (base > 36 || next == NULL) {
- m4_warnx("error in number %s", yytext);
- } else {
- next++;
- while (*next != 0) {
- if (*next >= '0' && *next <= '9')
- d = *next - '0';
- else if (*next >= 'a' && *next <= 'z')
- d = *next - 'a' + 10;
- else {
- assert(*next >= 'A' && *next <= 'Z');
- d = *next - 'A' + 10;
- }
- if (d >= base) {
- m4_warnx("error in number %s", yytext);
- return 0;
- }
- l = base * l + d;
- next++;
- }
- }
- return l;
-}
-
--
2.17.0

View file

@ -1,55 +0,0 @@
pkgname=openssl
pkgver=3.0.0
ext="dev"
auto_cross
fetch() {
curl "https://www.openssl.org/source/openssl-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
}
PREFIX=/usr
[ -z "$FOR_CROSS" ] || PREFIX=$FOR_CROSS_DIR
build() {
cd $pkgname-$pkgver
./Configure \
--prefix=/$PREFIX \
--openssldir=/etc/ssl \
--libdir=lib \
linux-generic64 \
shared no-zlib no-async \
no-comp no-idea no-mdc2 \
no-rc5 no-ec2m no-sm2 \
no-sm4 -no-ssl2 no-ssl3 \
no-seed no-weak-ssl-ciphers \
-Wa,--noexecstack
make
}
package() {
cd $pkgname-$pkgver
make install_sw DESTDIR=$pkgdir
if [ -z "$FOR_CROSS" ]; then
install -d $pkgdir/usr/sbin
install -Dm755 ../../update-ca.sh $pkgdir/usr/sbin/update-ca
else
rm -rf $pkgdir/$PREFIX/bin
fi
}
backup() {
return
}
license() {
cd $pkgname-$pkgver
echo 'Copyright 20xx-20yy The OpenSSL Project Authors. All Rights Reserved.'
echo
echo 'Licensed under the Apache License 2.0 (the "License"). You may not use'
echo 'this file except in compliance with the License. You can obtain a copy'
echo 'in the file LICENSE in the source distribution or at'
echo 'https://www.openssl.org/source/license.html'
}

View file

@ -1,2 +0,0 @@
#!/bin/sh
curl -L https://curl.haxx.se/ca/cacert.pem -o /etc/ssl/cert.pem

View file

@ -1,39 +0,0 @@
pkgname=oslo
pkgver=main
fetch() {
curl -L "https://github.com/iglunix/oslo/archive/refs/heads/main.tar.gz" -o $pkgname-$pkgver.tar.gz
tar -xf $pkgname-$pkgver.tar.gz
}
build() {
cd $pkgname-$pkgver
make ARCH=$ARCH
}
case $ARCH in
aarch64)
_a=aa64
;;
x86_64)
_a=x64
;;
*)
exit 1
;;
esac
package() {
cd $pkgname-$pkgver
install -Dm755 oslo.efi $pkgdir/boot/efi/boot/boot$_a.efi
install -Dm644 efi/oslo/entries.ini $pkgdir/boot/efi/oslo/entries.ini
}
license() {
cd $pkgname-$pkgver
cat license.txt
}
backup() {
echo boot/efi/oslo/entries.ini
}

View file

@ -1,55 +0,0 @@
pkgname=python
pkgver=3.10.4
bad=""
ext="doc"
auto_cross
fetch() {
curl "https://www.python.org/ftp/python/$pkgver/Python-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
mv Python-$pkgver $pkgname-$pkgver
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr \
--build=$HOST_TRIPLE \
--host=$TRIPLE \
--with-system-ffi=true \
--with-ssl-default-suites=openssl \
--without-ensure-pip \
ax_cv_c_float_words_bigendian=no \
ac_cv_buggy_getaddrinfo=no \
ac_cv_file__dev_ptmx=yes \
ac_cv_file__dev_ptc=no
make
}
package() {
cd $pkgname-$pkgver
make install DESTDIR=$pkgdir
rm -r $pkgdir/usr/lib/python3.10/test
rm -r $pkgdir/usr/lib/python3.10/ctypes/test
rm -r $pkgdir/usr/lib/python3.10/distutils/tests
rm -r $pkgdir/usr/lib/python3.10/idlelib/idle_test
rm -r $pkgidr/usr/lib/python3.10/lib2to3/tests
rm -r $pkgidr/usr/lib/python3.10/sqlite3/test
rm -r $pkgdir/usr/lib/python3.10/tkinter/test
rm -r $pkgdir/usr/lib/python3.10/unittest/test
rm -r $pkgdir/usr/share
ln -sr $pkgdir/usr/bin/python3 $pkgdir/usr/bin/python
}
package_doc() {
cd $pkgname-$pkgver
make install DESTDIR=$pkgdir
rm -r $pkgdir/lib
rm -r $pkgdir/bin
rm -r $pkgdir/include
}
license() {
cd $pkgname-$pkgver
cat LICENSE
}

View file

@ -1,51 +0,0 @@
pkgver=0.8.7
pkgname=toybox
pkgrel=1
deps="musl"
fetch() {
curl -O "https://landley.net/toybox/downloads/toybox-$pkgver.tar.gz"
tar -xf $pkgname-$pkgver.tar.gz
curl "https://pci-ids.ucw.cz/v2.2/pci.ids" -o pci.ids
cd $pkgname-$pkgver
patch -p1 < ../../ls-colour.patch
patch -p1 < ../../mksh.patch
patch -p1 < ../../xxd-i.patch
}
build() {
cd $pkgname-$pkgver
CPUS=1 bad --gmake gmake defconfig
sed 's|# CONFIG_SH is not set|CONFIG_SH=y|' .config > /tmp/_
mv /tmp/_ .config
CPUS=1 bad --gmake gmake
}
backup() {
return
}
package() {
install -d $pkgdir/usr/share/misc
install -Dm 644 pci.ids $pkgdir/usr/share/misc
cd $pkgname-$pkgver
bad --gmake gmake PREFIX=$pkgdir install
# Provided by NetBSD Curses
rm $pkgdir/usr/bin/clear
rm $pkgdir/usr/bin/reset
# LLVM Provides this
rm $pkgdir/usr/bin/readelf
# rm $pkgdir/usr/bin/tar
# MKSH provides this
rm $pkgdir/bin/sh
rm $pkgdir/bin/bash
}
license() {
cd $pkgname-$pkgver
cat LICENSE
}

View file

@ -1,55 +0,0 @@
--- a/toys/other/lspci.c
+++ b/toys/other/lspci.c
@@ -78,18 +78,45 @@
fseek(TT.db, 0, SEEK_SET);
while (!vbig || !dbig) {
+ int tc = 0; // tab count
s = p;
if (!fgets(s, sizeof(toybuf)-(p-toybuf)-1, TT.db)) break;
- while (isspace(*s)) s++;
+ while (*s == ' ') s++;
if (*s == '#') continue;
- if (vbig && s == p) break;
- if (strstart(&s, vbig ? device : vendor)) {
- if (vbig) dbig = s+2;
- else vbig = s+2;
- s += strlen(s);
- s[-1] = 0; // trim ending newline
- p = s + 1;
+ while (*s == '\t') { s++; tc++; }
+ switch (tc) {
+ case 0:
+ if (strstart(&s, vendor)) {
+ vbig = s + 2;
+ s += strlen(s);
+ s[-1] = 0;
+ p = s + 1;
+ }
+ break;
+ case 1:
+ if (vbig && strstart(&s, device)) {
+ dbig = s + 2;
+ s += strlen(s);
+ s[-1] = 0;
+ p = s + 1;
+ }
+ break;
+ case 2:
+ if (strstart(&s, vendor)) {
+ s+=5;
+ if (strstart(&s, device))
+ printf("subven: %s\n", s);
+ }
+ break;
}
+
+ // if (strstart(&s, vbig ? device : vendor)) {
+ // if (vbig) dbig = s+2;
+ // else vbig = s+2;
+ // s += strlen(s);
+ // s[-1] = 0; // trim ending newline
+ // p = s + 1;
+ // }
}
}

View file

@ -1,35 +0,0 @@
--- a/scripts/genconfig.sh
+++ b/scripts/genconfig.sh
@@ -16,7 +16,7 @@
# Symbol name is first argument, flags second, feed C file to stdin
probesymbol()
{
- probecc "${@:2}" 2>/dev/null && DEFAULT=y || DEFAULT=n
+ probecc "$2" 2>/dev/null && DEFAULT=y || DEFAULT=n
rm a.out 2>/dev/null
echo -e "config $1\n\tbool\n\tdefault $DEFAULT\n" || exit 1
}
--- a/scripts/portability.sh
+++ b/scripts/portability.sh
@@ -35,7 +35,7 @@
fi
# Centos 7 bug workaround, EOL June 30 2024. TODO
-DASHN=-n; wait -n 2>/dev/null; [ $? -eq 2 ] && unset DASHN
+# DASHN=-n; wait -n 2>/dev/null; [ $? -eq 2 ] && unset DASHN
# If the build is using gnu tools, make them behave less randomly.
export LANG=c
--- a/scripts/make.sh
+++ b/scripts/make.sh
@@ -76,8 +76,8 @@
echo -e "\$BUILD lib/*.c $TOYFILES \$LINK -o $OUTNAME"
}
-if ! cmp -s <(genbuildsh 2>/dev/null | head -n 5) \
- <(head -n 5 "$GENDIR"/build.sh 2>/dev/null | $SED '5s/ -o .*//')
+if [ "$(genbuildsh 2>/dev/null | head -n 5)" != \
+ "$(head -n 5 "$GENDIR"/build.sh 2>/dev/null | $SED '5s/ -o .*//')" ]
then
echo -n "Library probe"

View file

@ -1,46 +0,0 @@
--- a/toys/other/xxd.c
+++ b/toys/other/xxd.c
@@ -77,11 +77,13 @@ static void do_xxd(int fd, char *name)
static void do_xxd_include(int fd, char *name)
{
+ long long total = 0;
int c = 1, i, len;
// The original xxd outputs a header/footer if given a filename (not stdin).
// We don't, which means that unlike the original we can implement -ri.
while ((len = read(fd, toybuf, sizeof(toybuf))) > 0) {
+ total += len;
for (i = 0; i < len; ++i) {
printf("%s%#.02x", c > 1 ? ", " : " ", toybuf[i]);
if (c++ == TT.c) {
--- a/toys/other/xxd.c
+++ b/toys/other/xxd.c
@@ -80,7 +80,12 @@
int c = 1, i, len;
// The original xxd outputs a header/footer if given a filename (not stdin).
- // We don't, which means that unlike the original we can implement -ri.
+ // We don't, which means that unlike the original we can implement -ri
+ printf("unsigned char %s", isdigit(name[0]) ? "__": "");
+ for (char *n = name; *n; n++)
+ putchar(*n == '.' ? '_' : *n);
+ puts("[] = {");
+
while ((len = read(fd, toybuf, sizeof(toybuf))) > 0) {
total += len;
for (i = 0; i < len; ++i) {
@@ -91,6 +96,13 @@
}
}
}
+ puts("};");
+ printf("unsigned int %s", isdigit(name[0]) ? "__": "");
+ for (char *n = name; *n; n++)
+ putchar(*n == '.' ? '_' : *n);
+
+ printf("_len = %lld;\n", total);
+
if (len < 0) perror_msg_raw(name);
if (c > 1) xputc('\n');
}

View file

@ -1,44 +0,0 @@
pkgname=zlib-ng
pkgver=2.0.5
fetch() {
curl -L "https://github.com/zlib-ng/zlib-ng/archive/refs/tags/$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
mkdir $pkgname-$pkgver/build
}
build() {
cd $pkgname-$pkgver
cd build
PREFIX=/usr
[ -z "$WITH_CROSS" ] || cmake_extra_flags="-DCMAKE_CROSSCOMPILING=ON \
-DCMAKE_SYSROOT=$WITH_CROSS_DIR \
-DCMAKE_C_COMPILER_TARGET=$ARCH-linux-musl"
[ -z "$FOR_CROSS" ] || PREFIX=$FOR_CROSS_DIR
cmake -G Ninja ../ \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=$PREFIX \
-DCMAKE_INSTALL_LIBDIR=lib \
-DZLIB_COMPAT=ON \
$cmake_extra_flags
samu
}
package() {
cd $pkgname-$pkgver
cd build
DESTDIR=$pkgdir samu install
}
license() {
cd $pkgname-$pkgver
cat LICENSE.md
}
backup() {
return
}

View file

@ -1,3 +0,0 @@
# Bootstrap
These packages are not meant to be used in a complete Iglunix system but are
ment as a stepping stone to build the full packages.

View file

@ -1,33 +0,0 @@
pkgname=rust
pkgver=beta
fetch() {
curl "https://static.rust-lang.org/dist/rust-$pkgver-$ARCH-unknown-linux-musl.tar.gz" -o rust.tar.gz
tar -xf rust.tar.gz
}
build() {
[ -f libgcc_s.so ] \
|| clang -shared -o libgcc_s.so \
-Wl,--allow-multiple-definition -Wl,--whole-archive \
$(clang -print-libgcc-file-name) -lunwind
}
package() {
[ -f $pkgdir/opt/rust/lib/rustlib/uninstall.sh ] \
|| ./rust-$pkgver-$ARCH-unknown-linux-musl/install.sh \
--disable-ldconfig \
--destdir=$pkgdir \
--prefix=/opt/rust
[ -f $pkgdir/opt/rust/lib/libgcc_s.so.1 ] \
|| cp ./libgcc_s.so $pkgdir/opt/rust/lib/libgcc_s.so.1
}
backup() {
return
}
license() {
return
}

View file

@ -18,9 +18,9 @@ cp_packages (){
fi fi
echo "Going to copy: $pkg to $1" echo "Going to copy: $pkg to $1"
tar -xf pkgs/${pkg}/out/${pkg}.*.tar.zst -I zstd -C $1 tar -xf pkgs/${pkg}/out/${pkg}.*.tar.xz -C $1
tar -xf pkgs/${pkg}/out/${pkg}-dev.*.tar.zst -I zstd -C $1 2> /dev/null tar -xf pkgs/${pkg}/out/${pkg}-dev.*.tar.xz -C $1 2> /dev/null
tar -xf pkgs/${pkg}/out/${pkg}-doc.*.tar.zst -I zstd -C $1 2> /dev/null tar -xf pkgs/${pkg}/out/${pkg}-doc.*.tar.xz -C $1 2> /dev/null
done done
} }

22
example.build.sh Normal file
View file

@ -0,0 +1,22 @@
fetch() {
# in ./src
# for fetching and patching source files
}
build() {
# in ./src
# configure and build
./configure --prefix=/
# make is bmake
make
}
package() {
# in ./src
# make is bmake
make install DESTDIR=$pkgdir
# samurai is the default ninja implementation
DESTDIR=$pkgdir samu install
# for rust programs we just do this
install -Dm755 target/release/$pkgname $pkgdir/bin
}

View file

@ -1,34 +0,0 @@
pkgname=autossh
pkgver=1.4g
fetch() {
curl "https://www.harding.motd.ca/autossh/autossh-$pkgver.tgz" -LO
tar -xf $pkgname-$pkgver.tgz
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--mandir=/usr/share/man \
--build=$TRIPLE \
--host=$TRIPLE
make
}
package() {
cd $pkgname-$pkgver
make install DESTDIR=$pkgdir
}
backup() {
return
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,52 +0,0 @@
pkgname=bzip2
pkgver=1.0.8
ext=dev
fetch() {
curl "https://sourceware.org/pub/bzip2/$pkgname-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
}
build() {
cd $pkgname-$pkgver
make -f Makefile-libbz2_so CC=cc
}
package() {
cd $pkgname-$pkgver
install -d $pkgdir/usr/lib/
install -Dm755 ./libbz2.so.$pkgver $pkgdir/usr/lib/
ln -sr $pkgdir/usr/lib/libbz2.so.$pkgver $pkgdir/usr/lib/libbz2.so
ln -sr $pkgdir/usr/lib/libbz2.so.$pkgver $pkgdir/usr/lib/libbz2.so.1
ln -sr $pkgdir/usr/lib/libbz2.so.$pkgver $pkgdir/usr/lib/libbz2.so.1.0
}
package_dev() {
cd $pkgname-$pkgver
install -d $pkgdir/usr/include/
install -Dm644 ./bzlib.h $pkgdir/usr/include/
install -d $pkgdir/usr/share/pkgconfig/
cat > $pkgdir/usr/share/pkgconfig/bzip2.pc << EOF
prefix=/usr
exec_prefix=/usr
bindir=${exec_prefix}/bin
libdir=${exec_prefix}/lib
includedir=${prefix}/include
Name: bzip2
Description: A file compression library
Version: @VERSION@
Libs: -L${libdir} -lbz2
Cflags: -I${includedir}
EOF
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,30 +0,0 @@
pkgname=cbindgen
pkgver=0.20.0
_clear_vendor_checksums() {
sed -i 's/\("files":{\)[^}]*/\1/' vendor/$1/.cargo-checksum.json
}
fetch() {
curl -L "https://github.com/eqrion/cbindgen/archive/refs/tags/v$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
cd $pkgname-$pkgver
mkdir -p .cargo
cargo vendor > .cargo/config
}
build() {
cd $pkgname-$pkgver
cargo build --release --locked --all-features
}
package() {
cd $pkgname-$pkgver
install -Dm755 target/release/$pkgname $pkgdir/usr/bin/$pkgname
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,30 +0,0 @@
pkgname=editorconfig-core-c
pkgver=0.12.5
fetch() {
curl -L "https://github.com/editorconfig/editorconfig-core-c/archive/refs/tags/v$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
mkdir $pkgname-$pkgver/build
}
build() {
cd $pkgname-$pkgver
cd build
cmake -G Ninja ../ \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib
samu
}
package() {
cd $pkgname-$pkgver
cd build
DESTDIR=$pkgdir samu install
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,23 +0,0 @@
pkgname=gyp
pkgver=master
fetch() {
curl -L "https://github.com/chromium/gyp/archive/refs/heads/master.tar.gz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
}
build() {
cd $pkgname-$pkgver
python setup.py build
}
package() {
cd $pkgname-$pkgver
python setup.py install --root=$pkgdir
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,30 +0,0 @@
pkgname=json-c
pkgver=0.15
fetch() {
curl -L "https://s3.amazonaws.com/json-c_releases/releases/json-c-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
mkdir $pkgname-$pkgver/build
}
build() {
cd $pkgname-$pkgver
cd build
cmake -G Ninja ../ \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib
samu
}
package() {
cd $pkgname-$pkgver
cd build
DESTDIR=$pkgdir samu install
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,24 +0,0 @@
pkgname=kak-lsp
pkgver=9.0.0
fetch() {
curl -L "https://github.com/kak-lsp/kak-lsp/archive/v$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
}
build() {
cd $pkgname-$pkgver
cargo build --release --locked --all-features
}
package() {
cd $pkgname-$pkgver
install -Dm755 target/release/$pkgname $pkgdir/usr/bin/
install -Dm644 rc/lsp.kak $pkgdir/usr/share/kak-lsp/rc/
install -Dm644 kak-lsp.toml $pkgdir/usr/share/kak-lsp/examples/
}
license() {
cd $pkgname-$pkgver
cat UNLICENSE
}

View file

@ -1,28 +0,0 @@
pkgname=libarchive
pkgver=3.5.1
fetch() {
curl "http://libarchive.org/downloads/libarchive-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr \
--build=$TRIPLE \
--host=$TRIPLE
make
}
package() {
cd $pkgname-$pkgver
make install DESTDIR=$pkgdir
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,29 +0,0 @@
pkgname=libevent
pkgver=2.1.12
fetch() {
curl -L "https://github.com/libevent/libevent/releases/download/release-$pkgver-stable/libevent-$pkgver-stable.tar.gz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
mv libevent-$pkgver-stable $pkgname-$pkgver
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr \
--build=$TRIPLE \
--host=$TRIPLE
make
}
package() {
cd $pkgname-$pkgver
make install DESTDIR=$pkgdir
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,28 +0,0 @@
pkgname=lua
pkgver=5.4.3
fetch() {
curl "http://www.lua.org/ftp/lua-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz
tar -xf $pkgname-$pkgver.tar.gz
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr \
--build=$TRIPLE \
--host=$TRIPLE
make CC=cc
}
package() {
cd $pkgname-$pkgver
make install INSTALL_TOP=$pkgdir/usr
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,38 +0,0 @@
pkgname=nodejs
pkgver=16.6.1
fetch() {
curl -L "https://nodejs.org/dist/v$pkgver/node-v$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
mv node-v$pkgver $pkgname-$pkgver
cd $pkgname-$pkgver
sed -i 's/-latomic//' node.gyp
}
build() {
cd $pkgname-$pkgver
./configure \
--shared-zlib \
--shared-openssl \
--with-intl=none \
--without-etw \
--without-dtrace \
--without-report \
--without-node-snapshot \
--without-node-code-cache \
--ninja
samu -C out/Release
}
package() {
cd $pkgname-$pkgver
./tools/install.py install $pkgdir /usr
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,27 +0,0 @@
From 8dbc49deefb50f4af05710d3e6ad1ca7ff6dbfac Mon Sep 17 00:00:00 2001
From: Ishimoto Shinobu <nagakamira@gmail.com>
Date: Sun, 21 Feb 2021 09:43:21 +0900
Subject: [PATCH] remove -latomic library
Signed-off-by: Ishimoto Shinobu <nagakamira@gmail.com>
---
node.gyp | 3 ---
1 file changed, 3 deletions(-)
diff --git a/node.gyp b/node.gyp
index 131461de..051d2816 100644
--- a/node.gyp
+++ b/node.gyp
@@ -343,9 +343,6 @@
'-Wl,-bnoerrmsg',
],
}],
- ['OS == "linux" and llvm_version != "0.0"', {
- 'libraries': ['-latomic'],
- }],
],
},
--
2.29.2

View file

@ -1,86 +0,0 @@
pkgname=nss
pkgver=3.69
fetch() {
curl "https://ftp.mozilla.org/pub/security/nss/releases/NSS_3_69_RTM/src/nss-3.69-with-nspr-4.32.tar.gz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
}
build() {
cd $pkgname-$pkgver
cd $pkgname
sed -i '/-no-integrated-as/d' ./lib/freebl/Makefile
sed -i '/-no-integrated-as/d' ./lib/freebl/freebl.gyp
sed -i '/-no-integrated-as/d' ./lib/freebl/freebl_base.gypi
sed -i 's/bash/zsh/g' build.sh
./build.sh --opt --disable-tests
}
package() {
srcdir=$(pwd)/..
cd $pkgname-$pkgver
install -m755 -d "$pkgdir"/usr/lib/pkgconfig
install -m755 -d "$pkgdir"/usr/bin
install -m755 -d "$pkgdir"/usr/include/nss/private
NSS_VMAJOR=$(awk '/#define.*NSS_VMAJOR/ {print $3}' nss/lib/nss/nss.h)
NSS_VMINOR=$(awk '/#define.*NSS_VMINOR/ {print $3}' nss/lib/nss/nss.h)
NSS_VPATCH=$(awk '/#define.*NSS_VPATCH/ {print $3}' nss/lib/nss/nss.h)
# pkgconfig files
local _pc; for _pc in nss.pc nss-util.pc nss-softokn.pc; do
sed "$srcdir"/$_pc.in \
-e "s,%libdir%,/usr/lib,g" \
-e "s,%prefix%,/usr,g" \
-e "s,%exec_prefix%,/usr/bin,g" \
-e "s,%includedir%,/usr/include/nss,g" \
-e "s,%SOFTOKEN_VERSION%,$pkgver,g" \
-e "s,%NSPR_VERSION%,$pkgver,g" \
-e "s,%NSS_VERSION%,$pkgver,g" \
-e "s,%NSSUTIL_VERSION%,$pkgver,g" \
> "$pkgdir"/usr/lib/pkgconfig/$_pc
done
ln -sf nss.pc "$pkgdir"/usr/lib/pkgconfig/mozilla-nss.pc
chmod 644 "$pkgdir"/usr/lib/pkgconfig/*.pc
# nss-config
sed "$srcdir"/nss-config.in \
-e "s,@libdir@,/usr/lib,g" \
-e "s,@prefix@,/usr/bin,g" \
-e "s,@exec_prefix@,/usr/bin,g" \
-e "s,@includedir@,/usr/include/nss,g" \
-e "s,@MOD_MAJOR_VERSION@,${NSS_VMAJOR},g" \
-e "s,@MOD_MINOR_VERSION@,${NSS_VMINOR},g" \
-e "s,@MOD_PATCH_VERSION@,${NSS_VPATCH},g" \
> "$pkgdir"/usr/bin/nss-config
chmod 755 "$pkgdir"/usr/bin/nss-config
local minor=${pkgver#*.}
minor=${minor%.*}
for file in $(find dist/Release/lib -name "*.so"); do
install -m755 $file \
"$pkgdir"/usr/lib/${file##*/}.$minor
ln -s ${file##*/}.$minor "$pkgdir"/usr/lib/${file##*/}
done
install -m644 dist/Release/lib/*.a "$pkgdir"/usr/lib/
install -m644 dist/Release/lib/*.chk "$pkgdir"/usr/lib/
for file in certutil cmsutil crlutil modutil pk12util shlibsign \
signtool signver ssltap; do
install -m755 dist/Release/bin/$file "$pkgdir"/usr/bin/
done
install -m644 dist/public/nss/*.h "$pkgdir"/usr/include/nss/
install -m644 dist/private/nss/blapi.h dist/private/nss/alghmac.h "$pkgdir"/usr/include/nss/private/
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,144 +0,0 @@
#!/bin/sh
prefix=@prefix@
major_version=@MOD_MAJOR_VERSION@
minor_version=@MOD_MINOR_VERSION@
patch_version=@MOD_PATCH_VERSION@
usage()
{
cat <<EOF
Usage: nss-config [OPTIONS] [LIBRARIES]
Options:
[--prefix[=DIR]]
[--exec-prefix[=DIR]]
[--includedir[=DIR]]
[--libdir[=DIR]]
[--version]
[--libs]
[--cflags]
Dynamic Libraries:
nss
nssutil
ssl
smime
EOF
exit $1
}
if test $# -eq 0; then
usage 1 1>&2
fi
lib_ssl=yes
lib_smime=yes
lib_nss=yes
lib_nssutil=yes
while test $# -gt 0; do
case "$1" in
-*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
*) optarg= ;;
esac
case $1 in
--prefix=*)
prefix=$optarg
;;
--prefix)
echo_prefix=yes
;;
--exec-prefix=*)
exec_prefix=$optarg
;;
--exec-prefix)
echo_exec_prefix=yes
;;
--includedir=*)
includedir=$optarg
;;
--includedir)
echo_includedir=yes
;;
--libdir=*)
libdir=$optarg
;;
--libdir)
echo_libdir=yes
;;
--version)
echo ${major_version}.${minor_version}.${patch_version}
;;
--cflags)
echo_cflags=yes
;;
--libs)
echo_libs=yes
;;
ssl)
lib_ssl=yes
;;
smime)
lib_smime=yes
;;
nss)
lib_nss=yes
;;
nssutil)
lib_nssutil=yes
;;
*)
usage 1 1>&2
;;
esac
shift
done
# Set variables that may be dependent upon other variables
if test -z "$exec_prefix"; then
exec_prefix=`pkg-config --variable=exec_prefix nss`
fi
if test -z "$includedir"; then
includedir=`pkg-config --variable=includedir nss`
fi
if test -z "$libdir"; then
libdir=`pkg-config --variable=libdir nss`
fi
if test "$echo_prefix" = "yes"; then
echo $prefix
fi
if test "$echo_exec_prefix" = "yes"; then
echo $exec_prefix
fi
if test "$echo_includedir" = "yes"; then
echo $includedir
fi
if test "$echo_libdir" = "yes"; then
echo $libdir
fi
if test "$echo_cflags" = "yes"; then
echo -I$includedir
fi
if test "$echo_libs" = "yes"; then
libdirs="-Wl,-rpath-link,$libdir -L$libdir"
if test -n "$lib_ssl"; then
libdirs="$libdirs -lssl${major_version}"
fi
if test -n "$lib_smime"; then
libdirs="$libdirs -lsmime${major_version}"
fi
if test -n "$lib_nss"; then
libdirs="$libdirs -lnss${major_version}"
fi
if test -n "$lib_nssutil"; then
libdirs="$libdirs -lnssutil${major_version}"
fi
echo $libdirs
fi

View file

@ -1,11 +0,0 @@
prefix=%prefix%
exec_prefix=%exec_prefix%
libdir=%libdir%
includedir=%includedir%
Name: NSS-SOFTOKN
Description: Network Security Services Softoken PKCS #11 Module
Version: %SOFTOKEN_VERSION%
Requires: nspr >= %NSPR_VERSION%, nss-util >= %NSSUTIL_VERSION%
Libs: -lfreebl3 -lnssdbm3 -lsoftokn3
Cflags: -I${includedir}/private

View file

@ -1,10 +0,0 @@
_prefix=%exec_prefix%
libdir=%libdir%
includedir=%includedir%
Name: NSS-UTIL
Description: Network Security Services Utility Library
Version: %NSSUTIL_VERSION%
Requires: nspr >= %NSPR_VERSION%
Libs: -L${libdir} -lnssutil3
Cflags: -I${includedir}

View file

@ -1,10 +0,0 @@
prefix=%exec_prefix%
libdir=%libdir%
includedir=%includedir%
Name: NSS
Description: Network Security Services
Version: %NSS_VERSION%
Requires: nspr >= %NSPR_VERSION%
Libs: -lssl3 -lsmime3 -lnss3 -lnssutil3
Cflags: -I${includedir}

View file

@ -1,31 +0,0 @@
pkgname=pcre2
pkgver=10.39
fetch() {
curl -L "https://github.com/PhilipHazel/pcre2/releases/download/pcre2-10.39/pcre2-$pkgver.tar.bz2" -o $pkgname-$pkgver.tar.gz
tar -xf $pkgname-$pkgver.tar.gz
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr \
--build=$TRIPLE \
--host=$TRIPLE
make
}
package() {
cd $pkgname-$pkgver
make install DESTDIR=$pkgdir
}
backup() {
return
}
license() {
cd $pkgname-$pkgver
cat COPYING
}

View file

@ -1,22 +0,0 @@
pkgname=pfetch
pkgver=master
fetch() {
curl -L "https://github.com/dylanaraps/pfetch/archive/refs/heads/$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz
tar -xf $pkgname-$pkgver.tar.gz
}
build() {
cd $pkgname-$pkgver
echo "Nothing to do"
}
package() {
cd $pkgname-$pkgver
install -Dm755 pfetch $pkgdir/usr/bin/
}
license() {
cd $pkgname-$pkgver
cat LICENSE.md
}

View file

@ -1,100 +0,0 @@
# Based on Abyss OS phase1/devel/rust APKBUILD:
#
# Copyright (c) 2019 by the Abyss Authors
#
# Permission to use, copy, modify, and/or distribute this software for any
# purpose with or without fee is hereby granted, provided that the above
# copyright notice and this permission notice appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
pkgname=rust
pkgver=beta
_clear_vendor_checksums() {
sed -i 's/\("files":{\)[^}]*/\1/' vendor/$1/.cargo-checksum.json
}
export RUSTROOT="/opt/rust/"
fetch() {
curl "https://static.rust-lang.org/dist/rustc-$pkgver-src.tar.gz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
mv rustc-$pkgver-src $pkgname-$pkgver
cp ../*.patch .
cd $pkgname-$pkgver
patch -p1 < ../alpine-crt.patch
patch -p1 < ../libexec.patch
patch -p1 < ../fix-curl.patch
sed -i /LD_LIBRARY_PATH/d src/bootstrap/bootstrap.py
_clear_vendor_checksums curl
_clear_vendor_checksums curl-sys
}
build() {
cd $pkgname-$pkgver
# --tools="cargo,rls,rustfmt,src" \
OPENSSL_LIB_DIR=/usr/lib/ ./configure \
--build="$TRIPLE" \
--host="$TRIPLE" \
--target="$TRIPLE" \
--prefix="/usr" \
--musl-root="/usr" \
--release-channel="nightly" \
--enable-local-rust \
--local-rust-root=$RUSTROOT \
--disable-docs \
--enable-extended \
--tools="cargo,rustfmt,rls,src" \
--enable-vendor \
--disable-locked-deps \
--enable-option-checking \
--python="python" \
--llvm-root="/usr" \
--llvm-libunwind="system" \
--enable-llvm-link-shared \
--set="target.$TRIPLE.llvm-config=/usr/bin/llvm-config" \
--set="rust.musl-root=/usr" \
--set="target.$TRIPLE.musl-root=/usr" \
--set="target.$TRIPLE.crt-static=false" \
--set="target.$TRIPLE.cc=cc" \
--set="target.$TRIPLE.cxx=c++" \
--set="target.$TRIPLE.ar=ar" \
--set="target.$TRIPLE.linker=cc" \
--set="target.$TRIPLE.crt-static=false" \
--set="target.$TRIPLE.cc=cc" \
--set="target.$TRIPLE.cxx=c++" \
--set="target.$TRIPLE.ar=ar" \
--set="target.$TRIPLE.linker=cc" \
--disable-llvm-static-stdcpp
sed 's/#deny-warnings = .*/deny-warnings = false/' -i config.toml
# sed 's|deny(warnings,|deny(|' -i src/bootstrap/lib.rs
./x.py build
}
package() {
cd $pkgname-$pkgver
DESTDIR="$pkgdir" ./x.py install
}
backup() {
return
}
license() {
cd $pkgname-$pkgver
cat LICENSE-MIT
# cat COPYING
}

View file

@ -1,13 +0,0 @@
diff --git a/vendor/curl-sys/build.rs b/vendor/curl-sys/build.rs
index 24475cc..3249440 100644
--- a/vendor/curl-sys/build.rs
+++ b/vendor/curl-sys/build.rs
@@ -111,6 +111,8 @@ fn main() {
.include("curl/lib")
.include("curl/include")
.define("BUILDING_LIBCURL", None)
+ .define("CURL_CA_BUNDLE", "\"/etc/ssl/cert.pem\"")
+ .define("CURL_CA_PATH", "\"/etc/ssl/certs\"")
.define("CURL_DISABLE_DICT", None)
.define("CURL_DISABLE_GOPHER", None)
.define("CURL_DISABLE_IMAP", None)

View file

@ -1,32 +0,0 @@
pkgname=yasm
pkgver=1.3.0
fetch() {
curl -L "https://github.com/yasm/yasm/releases/download/v$pkgver/yasm-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr \
--sysconfdir=/etc \
# --build=$TRIPLE \
# --host=$TRIPLE
make
}
package() {
cd $pkgname-$pkgver
make install DESTDIR=$pkgdir
}
backup() {
return
}
license() {
cd $pkgname-$pkgver
cat COPYING
}

View file

@ -1,29 +0,0 @@
pkgname=zip
pkgver=30
fetch() {
curl "https://fossies.org/linux/misc/zip$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
mv zip$pkgver $pkgname-$pkgver
}
build() {
cd $pkgname-$pkgver
make -f unix/Makefile generic
}
package() {
cd $pkgname-$pkgver
make -f unix/Makefile install prefix=$pkgdir/usr
}
backup() {
return
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,36 +0,0 @@
pkgname=atk
_pkgver=2.36
pkgver=$_pkgver.0
fetch() {
curl -L "https://download.gnome.org/sources/atk/$_pkgver/atk-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
mkdir $pkgname-$pkgver/build
}
build() {
cd $pkgname-$pkgver
cd build
meson .. \
--buildtype=release \
--prefix=/usr \
--libexecdir=lib \
-Dintrospection=false \
-Ddocs=false
samu
}
package() {
cd $pkgname-$pkgver
cd build
DESTDIR=$pkgdir samu install
}
backup() {
return
}
license() {
cd $pkgname-$pkgver
cat COPYING
}

View file

@ -1,36 +0,0 @@
pkgname=dbus-glib
pkgver=0.112
fetch() {
curl "https://dbus.freedesktop.org/releases/dbus-glib/dbus-glib-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz
tar -xf $pkgname-$pkgver.tar.gz
mkdir $pkgname-$pkgver/build
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--build=$TRIPLE \
--host=$TRIPLE
bad --gmake gmake
}
package() {
cd $pkgname-$pkgver
bad --gmake gmake install DESTDIR=$pkgdir
rm -rf $pkgdir/etc
rm -rf $pkgdir/usr/libexec
rm -rf $pkgdir/usr/share/gtk-doc
}
license() {
cd $pkgname-$pkgver
cat COPYING
}
backup() {
return
}

View file

@ -1,45 +0,0 @@
pkgname=gdk-pixbuf
_pkgver=2.42
pkgver=$_pkgver.6
fetch() {
curl -L "https://download.gnome.org/sources/gdk-pixbuf/$_pkgver/gdk-pixbuf-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
mkdir $pkgname-$pkgver/build
rm $pkgdir-$pkgver/subprojects/*.wrap
}
build() {
cd $pkgname-$pkgver
cd build
meson .. \
--buildtype=release \
--prefix=/usr \
--libexecdir=lib \
-Ddebug=false \
-Djpeg=true \
-Dpng=true \
-Dtiff=false \
-Ddocs=false \
-Dman=false \
-Dgio_sniffing=false \
-Dinstalled_tests=false \
-Dbuiltin_loaders=all
samu
}
package() {
cd $pkgname-$pkgver
cd build
DESTDIR=$pkgdir samu install
}
backup() {
return
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,38 +0,0 @@
pkgname=glib
_pkgver=2.68
pkgver=$_pkgver.4
fetch() {
curl -L "https://download.gnome.org/sources/glib/$_pkgver/glib-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
mkdir $pkgname-$pkgver/build
}
build() {
cd $pkgname-$pkgver
cd build
meson .. \
--buildtype=release \
--prefix=/usr \
--libexecdir=lib \
-Dtests=false \
-Dnls=disabled
samu
}
package() {
cd $pkgname-$pkgver
cd build
DESTDIR=$pkgdir samu install
rm -rf $pkgdir/usr/share/bash-completion
rm -rf $pkgdir/usr/share/gdb
rm -rf $pkgdir/usr/bin/gdbus*
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,62 +0,0 @@
pkgname=gtk+
_pkgver=3.24
pkgver=$_pkgver.31
fetch() {
curl -L "https://download.gnome.org/sources/gtk+/$_pkgver/gtk%2B-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
mkdir -p $pkgname-$pkgver/build
cd $pkgname-$pkgver
patch -p1 < ../../no-fribidi.patch
# Remove 'atk-bridge' dependency which removes the 'dbus' dependency.
sed '/atkbridge_dep/d;/atk-bridge-2.0/d' meson.build > _
mv -f _ meson.build
sed '/atkbridge_dep,/d' gtk/meson.build > _
mv -f _ gtk/meson.build
sed '/<atk-bridge.h>/d;/atk_bridge_adaptor_init/d' \
gtk/a11y/gtkaccessibility.c > _
mv -f _ gtk/a11y/gtkaccessibility.c
}
build() {
cd $pkgname-$pkgver
cd build
meson .. \
--buildtype=release \
--prefix=/usr \
--libexecdir=lib \
--localstatedir=/var \
-Dx11_backend=false \
-Dprint_backends=auto \
-Dwayland_backend=true \
-Dwin32_backend=false \
-Dquartz_backend=false \
-Dcolord=no \
-Ddemos=false \
-Dexamples=false \
-Dtests=false \
-Dinstalled_tests=false \
-Dgtk_doc=false \
-Dintrospection=false
samu
}
package() {
cd $pkgname-$pkgver
cd build
DESTDIR=$pkgdir samu install
}
backup() {
return
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,60 +0,0 @@
diff --git a/gdk/gdk.c b/gdk/gdk.c
index f0869a6..2f3c039 100644
--- a/gdk/gdk.c
+++ b/gdk/gdk.c
@@ -44,7 +44,6 @@
#include <string.h>
#include <stdlib.h>
-#include <fribidi.h>
/**
@@ -1118,17 +1117,6 @@ gdk_disable_multidevice (void)
PangoDirection
gdk_unichar_direction (gunichar ch)
{
- FriBidiCharType fribidi_ch_type;
-
- G_STATIC_ASSERT (sizeof (FriBidiChar) == sizeof (gunichar));
-
- fribidi_ch_type = fribidi_get_bidi_type (ch);
-
- if (!FRIBIDI_IS_STRONG (fribidi_ch_type))
- return PANGO_DIRECTION_NEUTRAL;
- else if (FRIBIDI_IS_RTL (fribidi_ch_type))
- return PANGO_DIRECTION_RTL;
- else
return PANGO_DIRECTION_LTR;
}
diff --git a/gtk/gtkpango.c b/gtk/gtkpango.c
index aaac4cc..a76ad57 100644
--- a/gtk/gtkpango.c
+++ b/gtk/gtkpango.c
@@ -25,7 +25,6 @@
#include "config.h"
#include "gtkpango.h"
#include <pango/pangocairo.h>
-#include <fribidi.h>
#include "gtkintl.h"
#define GTK_TYPE_FILL_LAYOUT_RENDERER (_gtk_fill_layout_renderer_get_type())
@@ -1326,17 +1325,6 @@ _gtk_pango_attr_list_merge (PangoAttrList *into,
PangoDirection
_gtk_pango_unichar_direction (gunichar ch)
{
- FriBidiCharType fribidi_ch_type;
-
- G_STATIC_ASSERT (sizeof (FriBidiChar) == sizeof (gunichar));
-
- fribidi_ch_type = fribidi_get_bidi_type (ch);
-
- if (!FRIBIDI_IS_STRONG (fribidi_ch_type))
- return PANGO_DIRECTION_NEUTRAL;
- else if (FRIBIDI_IS_RTL (fribidi_ch_type))
- return PANGO_DIRECTION_RTL;
- else
return PANGO_DIRECTION_LTR;
}

View file

@ -1,3 +0,0 @@
# GUI Packages
These packages provide anything specific to a graphical system focusing
mainly on the desktop.

View file

@ -1,23 +0,0 @@
pkgname=alsa-sndio
pkgver=0.2
fetch() {
curl -L "https://github.com/Duncaen/alsa-sndio/archive/refs/tags/$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz
tar -xf $pkgname-$pkgver.tar.gz
}
build() {
cd $pkgname-$pkgver
bad --gmake gmake PREFIX=/usr
}
package() {
cd $pkgname-$pkgver
bad --gmake gmake install DESTDIR=$pkgdir PREFIX=/usr
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,30 +0,0 @@
pkgname=autotiling-rs
pkgver=0.1.3
_clear_vendor_checksums() {
sed -i 's/\("files":{\)[^}]*/\1/' vendor/$1/.cargo-checksum.json
}
fetch() {
curl -L "https://github.com/ammgws/autotiling-rs/archive/refs/tags/v$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
cd $pkgname-$pkgver
mkdir -p .cargo
/usr/src/rust-bootstrap/build/rust-root/bin/cargo vendor > .cargo/config
}
build() {
cd $pkgname-$pkgver
cargo build --release --locked --all-features
}
package() {
cd $pkgname-$pkgver
install -Dm755 target/release/$pkgname $pkgdir/usr/bin/$pkgname
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,15 +0,0 @@
Author: Rasmus Thomsen <oss@cogitri.dev>
Reason: FF is mixing userspace net headers (net/if.h) and kernelspace ones
(linux/if.h), leading to redefinitions. We need to include net/if.h before
linux/if.h because linux/if.h has redifinition guards whereas net/if.h doesnt
Upstream: No
--- a/dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs-netlink.c.orig 2020-07-28 19:24:32.359751046 +0200
+++ b/dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs-netlink.c 2020-07-28 19:24:37.856343751 +0200
@@ -31,6 +31,7 @@
*/
#if defined(LINUX)
+#include <net/if.h>
#include "addrs-netlink.h"
#include <csi_platform.h>
#include <assert.h>

View file

@ -1,95 +0,0 @@
pkgname=firefox
pkgver=101.0
mkdeps="cbindgen:rust"
fetch() {
#curl "https://ftp.mozilla.org/pub/firefox/releases/${pkgver}esr/source/firefox-${pkgver}esr.source.tar.xz" -o $pkgname-$pkgver.tar.xz
#curl "https://hg.mozilla.org/mozilla-unified/archive/26726cd430955db041e5de33d9792bb816c57608.zip" -o $pkgname-$pkgver.zip
curl "https://archive.mozilla.org/pub/firefox/releases/${pkgver}b3/source/firefox-${pkgver}b3.source.tar.xz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
cd $pkgname-$pkgver
# patch -p1 < ../../no-x11.patch
# patch -p1 < ../../fix-clang-as.patch
patch -p1 < ../../avoid-redefinition.patch
patch -p1 < ../../libcxx.patch
patch -p1 < ../../grefptr.patch
patch -p1 < ../../sandbox-allow-select.patch
# patch -p1 < ../../sandbox-fork.patch
# patch -p1 < ../../sandbox-sched.patch
}
build() {
cd $pkgname-$pkgver
ulimit -n 4096
export MACH_USE_SYSTEM_PYTHON=1
export CXXSTDLIB=c++
export LDFLAGS="$LDFLAGS -Wl,-rpath=/usr/lib/firefox/,--enable-new-dtags"
cat > .mozconfig << EOF
ac_add_options --enable-default-toolkit=cairo-gtk3-wayland
ac_add_options --prefix=/usr
ac_add_options --libdir=/usr/lib
ac_add_options --disable-alsa
ac_add_options --enable-dbus
ac_add_options --enable-strip
ac_add_options --enable-release
ac_add_options --enable-rust-simd
ac_add_options --enable-install-strip
ac_add_options --enable-official-branding
ac_add_options --enable-application=browser
ac_add_options --enable-optimize="-O3 -w"
ac_add_options --without-system-libvpx
ac_add_options --without-system-ffi
ac_add_options --without-system-png
ac_add_options --without-system-jpeg
ac_add_options --without-system-zlib
ac_add_options --without-system-pixman
ac_add_options --without-system-nss
ac_add_options --without-system-nspr
ac_add_options --enable-linker=lld
ac_add_options --disable-tests
ac_add_options --disable-vtune
ac_add_options --disable-updater
ac_add_options --disable-jemalloc
ac_add_options --disable-callgrind
ac_add_options --disable-profiling
ac_add_options --disable-necko-wifi
ac_add_options --disable-crashreporter
ac_add_options --enable-pulseaudio
ac_add_options --disable-accessibility
ac_add_options --disable-debug
ac_add_options --disable-debug-symbols
ac_add_options --disable-parental-controls
ac_add_options --disable-system-extension-dirs
ac_add_options --enable-webrtc
ac_add_options --disable-elf-hack
ac_add_options --without-wasm-sandboxed-libraries
#ac_add_options MOZ_PGO=1
EOF
# bad --gmake --gm4 --autoconf ./mach clobber
bad --gmake --gm4 --autoconf ./mach build
}
package() {
cd $pkgname-$pkgver
export MACH_USE_SYSTEM_PYTHON=1
export CXXSTDLIB=c++
export RUSTFLAGS='-C target-feature=-crt-static'
export LDFLAGS="$LDFLAGS -Wl,-rpath=/usr/lib/firefox/,--enable-new-dtags"
DESTDIR=$pkgdir bad --gmake --gm4 --autoconf ./mach install
}
backup() {
return
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,10 +0,0 @@
--- a/widget/gtk/nsClipboard.cpp
+++ b/widget/gtk/nsClipboard.cpp
@@ -31,6 +31,7 @@
#include "nsIObserverService.h"
#include "mozilla/Services.h"
#include "mozilla/RefPtr.h"
+#include "GRefPtr.h"
#include "mozilla/SchedulerGroup.h"
#include "mozilla/StaticPrefs_widget.h"
#include "mozilla/TimeStamp.h"

View file

@ -1,69 +0,0 @@
--- a/memory/mozalloc/throw_gcc.h
+++ b/memory/mozalloc/throw_gcc.h
@@ -74,50 +74,66 @@ __throw_bad_function_call(void) {
mozalloc_abort("fatal: STL threw bad_function_call");
}
+#if !defined(_LIBCPP_VERSION)
MOZ_THROW_NORETURN MOZ_THROW_EXPORT MOZ_THROW_INLINE void __throw_logic_error(
const char* msg) {
mozalloc_abort(msg);
}
+#endif // _LIBCPP_VERSION
+#if !defined(_LIBCPP_VERSION)
MOZ_THROW_NORETURN MOZ_THROW_EXPORT MOZ_THROW_INLINE void __throw_domain_error(
const char* msg) {
mozalloc_abort(msg);
}
+#endif // _LIBCPP_VERSION
+#if !defined(_LIBCPP_VERSION)
MOZ_THROW_NORETURN MOZ_THROW_EXPORT MOZ_THROW_INLINE void
__throw_invalid_argument(const char* msg) {
mozalloc_abort(msg);
}
+#endif // _LIBCPP_VERSION
+#if !defined(_LIBCPP_VERSION)
MOZ_THROW_NORETURN MOZ_THROW_EXPORT MOZ_THROW_INLINE void __throw_length_error(
const char* msg) {
mozalloc_abort(msg);
}
+#endif // _LIBCPP_VERSION
+#if !defined(_LIBCPP_VERSION)
MOZ_THROW_NORETURN MOZ_THROW_EXPORT MOZ_THROW_INLINE void __throw_out_of_range(
const char* msg) {
mozalloc_abort(msg);
}
+#endif // _LIBCPP_VERSION
MOZ_THROW_NORETURN MOZ_THROW_EXPORT MOZ_THROW_INLINE void __throw_runtime_error(
const char* msg) {
mozalloc_abort(msg);
}
+#if !defined(_LIBCPP_VERSION)
MOZ_THROW_NORETURN MOZ_THROW_EXPORT MOZ_THROW_INLINE void __throw_range_error(
const char* msg) {
mozalloc_abort(msg);
}
+#endif // _LIBCPP_VERSION
+#if !defined(_LIBCPP_VERSION)
MOZ_THROW_NORETURN MOZ_THROW_EXPORT MOZ_THROW_INLINE void
__throw_overflow_error(const char* msg) {
mozalloc_abort(msg);
}
+#endif // _LIBCPP_VERSION
+#if !defined(_LIBCPP_VERSION)
MOZ_THROW_NORETURN MOZ_THROW_EXPORT MOZ_THROW_INLINE void
__throw_underflow_error(const char* msg) {
mozalloc_abort(msg);
}
+#endif // _LIBCPP_VERSION
MOZ_THROW_NORETURN MOZ_THROW_EXPORT MOZ_THROW_INLINE void __throw_ios_failure(
const char* msg) {

View file

@ -1,26 +0,0 @@
--- a/security/sandbox/linux/SandboxFilter.cpp
+++ b/security/sandbox/linux/SandboxFilter.cpp
@@ -1992,20 +1992,23 @@
Arg<uintptr_t> new_limit(2);
return If(AllOf(pid == 0, new_limit == 0), Allow())
.Else(InvalidSyscall());
}
#endif // DESKTOP
// Bug 1640612
case __NR_uname:
return Allow();
+ CASES_FOR_select:
+ return Allow();
+
default:
return SandboxPolicyCommon::EvaluateSyscall(sysno);
}
}
};
UniquePtr<sandbox::bpf_dsl::Policy> GetSocketProcessSandboxPolicy(
SandboxBrokerClient* aMaybeBroker) {
return UniquePtr<sandbox::bpf_dsl::Policy>(
new SocketProcessSandboxPolicy(aMaybeBroker));

View file

@ -1,38 +0,0 @@
pkgname=fontconfig
pkgver=2.13.94
fetch() {
curl "https://www.freedesktop.org/software/fontconfig/release/$pkgname-$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
cp ../fcobjshash.h $pkgname-$pkgver/src
mkdir $pkgname-$pkgver/build
cd $pkgname-$pkgver
sed -i 's/fcobjshash\.h/fcjunk.h/' src/meson.build
sed -i "s/find_program(\'gperf/find_program(\'true/" meson.build
}
build() {
cd $pkgname-$pkgver
cd build
meson .. \
--buildtype=release \
--prefix=/usr \
--libexecdir=lib \
-Ddocs=disabled \
-Dnls=disabled \
-Dtests=disabled
samu
}
package() {
cd $pkgname-$pkgver
cd build
DESTDIR=$pkgdir samu install
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,42 +0,0 @@
pkgname=foot
pkgver=1.10.3
fetch() {
curl -L "https://codeberg.org/dnkl/foot/archive/$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz
curl -L "https://codeberg.org/dnkl/fcft/archive/2.4.5.tar.gz" -o fcft.tar.gz
curl -L "https://codeberg.org/dnkl/tllist/archive/1.0.5.tar.gz" -o tllist.tar.gz
tar -xf $pkgname-$pkgver.tar.gz
mv $pkgname $pkgname-$pkgver
mkdir $pkgname-$pkgver/build
tar -xf fcft.tar.gz -C $pkgname-$pkgver/subprojects
tar -xf tllist.tar.gz -C $pkgname-$pkgver/subprojects
cd $pkgname-$pkgver
patch -p1 < ../../netbsd-tic.patch
}
build() {
cd $pkgname-$pkgver
cd build
meson .. \
--buildtype=release \
--prefix=/usr \
--libexecdir=lib \
-Dterminfo=enabled \
-Ddefault-terminfo=foot
samu
}
backup() {
return
}
package() {
cd $pkgname-$pkgver
cd build
DESTDIR=$pkgdir samu install
}
license() {
cd $pkgname-$pkgver
cat LICENSE
}

View file

@ -1,23 +0,0 @@
--- a/meson.build
+++ b/meson.build
@@ -43,7 +43,7 @@
join_paths(get_option('prefix'), terminfo_install_location))],
language: 'c')
else
- terminfo_install_location = join_paths(get_option('datadir'), 'terminfo')
+ terminfo_install_location = get_option('datadir')
endif
# Compute the relative path used by compiler invocations.
@@ -262,9 +262,9 @@
)
custom_target(
'terminfo',
- output: get_option('default-terminfo')[0],
+ output: 'terminfo.cdb',
input: preprocessed,
- command: [tic, '-x', '-o', '@OUTDIR@', '-e', '@0@,@0@-direct'.format(get_option('default-terminfo')), '@INPUT@'],
+ command: [tic, '-x', '-o', '@OUTPUT@', '@INPUT@'],
install: true,
install_dir: terminfo_install_location
)

View file

@ -1,98 +0,0 @@
f_pkgver=2.11.0
h_pkgver=3.0.0
pkgname=freetype-harfbuzz
pkgver=$f_pkgver+$h_pkgver
fetch() {
curl "https://download-mirror.savannah.gnu.org/releases/freetype/freetype-$f_pkgver.tar.xz" \
-o freetype-$f_pkgver.tar.xz
tar -xf freetype-$f_pkgver.tar.xz
mkdir -p freetype-$f_pkgver/build
curl -L "https://github.com/harfbuzz/harfbuzz/releases/download/$h_pkgver/harfbuzz-$h_pkgver.tar.xz" \
-o harfbuzz-$h_pkgver.tar.xz
tar -xf harfbuzz-$h_pkgver.tar.xz
mkdir -p harfbuzz-$h_pkgver/build
}
build() {
mkdir tmp_install
export DESTDIR=$(pwd)/tmp_install
mkdir -p $DESTDIR/usr/include/harfbuzz
# cp harfbuzz-$h_pkgver/src/hb-ft.h $DESTDIR/usr/include/harfbuzz
# Point Freetype to the Harfbuzz files.
export CFLAGS="$CFLAGS -I$DESTDIR/usr/include/harfbuzz"
export CFLAGS="$CFLAGS -L$DESTDIR/usr/lib "
export PKG_CONFIG_PATH=$DESTDIR/usr/lib/pkgconfig
# Point Harfbuzz to the Freetype files.
export CXXFLAGS="$CXXFLAGS -I$DESTDIR/usr/include/freetype2"
export CXXFLAGS="$CXXFLAGS -L$DESTDIR/usr/lib"
cd freetype-$f_pkgver/build
meson .. \
--buildtype=release \
--prefix=/usr \
--libexecdir=lib \
-Dbzip2=disabled \
-Dzlib=disabled \
-Dharbuzz=disabled
samu
samu install
cd ../../
cd harfbuzz-$h_pkgver/
./configure \
--prefix=/usr \
--with-bzip2=no \
--with-png=no \
--with-brotli=no
bad --gmake gmake
bad --gmake gmake install
cd ..
cd freetype-$f_pkgver/build
meson .. \
--buildtype=release \
--prefix=/usr \
--libexecdir=lib \
-Dbzip2=disabled \
-Dzlib=disabled \
-Dharfbuzz=enabled
--reconfigure
samu
}
package() {
cd freetype-$f_pkgver
cd build
DESTDIR=$pkgdir samu install
cd ../../
cd harfbuzz-$h_pkgver
cd build
DESTDIR=$pkgdir samu install
}
backup() {
return
}
license() {
cd freetype-$f_pkgver
cat LICENSE
cd harfbuzz-$h_pkgver
cat COPYING
}

View file

@ -1,11 +0,0 @@
--- src/freetype-2.11.0/meson.build
+++ meson.build
@@ -276,6 +276,8 @@
if libpng_dep.found()
ftoption_command += ['--enable=FT_CONFIG_OPTION_USE_PNG']
ft2_deps += [libpng_dep]
+else
+ ftoption_command += ['--disable=FT_CONFIG_OPTION_USE_PNG']
endif
# Harfbuzz support

View file

@ -1,411 +0,0 @@
#
# Meson project file for FreeType 2
#
# Copyright (C) 2020-2021 by
# David Turner, Robert Wilhelm, and Werner Lemberg.
#
# This file is part of the FreeType project, and may only be used, modified,
# and distributed under the terms of the FreeType project license,
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
# indicate that you have read the license and understand and accept it
# fully.
#
# Say
#
# meson configure
#
# to see all configuration options and their default values. For example,
# to build only a shared version of FreeType, override the default value
# with
#
# meson setup -Ddefault_library=shared
#
project('freetype2', 'c',
meson_version: '>= 0.55.0',
default_options: ['default_library=both'],
version: run_command('builds/meson/extract_freetype_version.py',
'include/freetype/freetype.h').stdout().strip(),
)
# Only meson >= 0.57 can read a file and assign its contents to a
# variable; we thus use an external command to have this functionality
# with older versions, too.
python = import('python')
python_exe = python.find_installation(required: true)
ft2_so_version = run_command(python_exe,
files('builds/meson/extract_libtool_version.py'),
'--soversion',
files('builds/unix/configure.raw')).stdout().strip()
ft2_pkgconfig_version = run_command(python_exe,
files('builds/meson/extract_libtool_version.py'),
files('builds/unix/configure.raw')).stdout().strip()
ft2_includes = include_directories('include')
# Generate a custom `ftmodule.h` version based on the content of
# `modules.cfg`.
ftmodule_h = custom_target('ftmodule.h',
output: 'ftmodule.h',
input: 'modules.cfg',
command: [python_exe, files('builds/meson/parse_modules_cfg.py'),
'--format=ftmodule.h', '@INPUT@', '--output', '@OUTPUT@'],
install: true,
install_dir: 'include/freetype2/freetype/config',
)
ft2_sources = [ftmodule_h]
# FreeType 2 modules.
ft_main_modules = run_command(python_exe,
files('builds/meson/parse_modules_cfg.py'),
'--format=main-modules',
files('modules.cfg')).stdout().strip().split()
ft2_sources += files([
'src/base/ftbase.c',
'src/base/ftinit.c',
])
foreach mod: ft_main_modules
source = mod
if mod == 'winfonts'
source = 'winfnt'
elif mod == 'cid'
source = 'type1cid'
endif
ft2_sources += 'src/@0@/@1@.c'.format(mod, source)
endforeach
# NOTE: The `gzip` and `bzip2` aux modules are handled through options.
ft_aux_modules = run_command(python_exe,
files('builds/meson/parse_modules_cfg.py'),
'--format=aux-modules',
files('modules.cfg')).stdout().strip().split()
foreach auxmod: ft_aux_modules
source = auxmod
# Most sources are named `src/<module>/<module>.c`, but there are a few
# exceptions handled here.
if auxmod == 'cache'
source = 'ftcache'
elif auxmod == 'lzw'
source = 'ftlzw'
elif auxmod == 'gzip' or auxmod == 'bzip2'
# Handled through options instead, see below.
continue
endif
ft2_sources += 'src/@0@/@1@.c'.format(auxmod, source)
endforeach
# FreeType 2 base extensions.
# To be configured in `modules.cfg`.
base_extensions = run_command(python_exe,
files('builds/meson/parse_modules_cfg.py'),
'--format=base-extensions-list',
files('modules.cfg')).stdout().split()
foreach ext: base_extensions
ft2_sources += files('src/base/' + ext)
endforeach
# Header files.
ft2_public_headers = files([
'include/freetype/freetype.h',
'include/freetype/ftadvanc.h',
'include/freetype/ftbbox.h',
'include/freetype/ftbdf.h',
'include/freetype/ftbitmap.h',
'include/freetype/ftbzip2.h',
'include/freetype/ftcache.h',
'include/freetype/ftchapters.h',
'include/freetype/ftcid.h',
'include/freetype/ftcolor.h',
'include/freetype/ftdriver.h',
'include/freetype/fterrdef.h',
'include/freetype/fterrors.h',
'include/freetype/ftfntfmt.h',
'include/freetype/ftgasp.h',
'include/freetype/ftglyph.h',
'include/freetype/ftgxval.h',
'include/freetype/ftgzip.h',
'include/freetype/ftimage.h',
'include/freetype/ftincrem.h',
'include/freetype/ftlcdfil.h',
'include/freetype/ftlist.h',
'include/freetype/ftlzw.h',
'include/freetype/ftmac.h',
'include/freetype/ftmm.h',
'include/freetype/ftmodapi.h',
'include/freetype/ftmoderr.h',
'include/freetype/ftotval.h',
'include/freetype/ftoutln.h',
'include/freetype/ftparams.h',
'include/freetype/ftpfr.h',
'include/freetype/ftrender.h',
'include/freetype/ftsizes.h',
'include/freetype/ftsnames.h',
'include/freetype/ftstroke.h',
'include/freetype/ftsynth.h',
'include/freetype/ftsystem.h',
'include/freetype/fttrigon.h',
'include/freetype/fttypes.h',
'include/freetype/ftwinfnt.h',
'include/freetype/t1tables.h',
'include/freetype/ttnameid.h',
'include/freetype/tttables.h',
'include/freetype/tttags.h',
])
ft2_config_headers = files([
'include/freetype/config/ftconfig.h',
'include/freetype/config/ftheader.h',
'include/freetype/config/ftstdlib.h',
'include/freetype/config/integer-types.h',
'include/freetype/config/mac-support.h',
'include/freetype/config/public-macros.h',
])
ft2_defines = ['-DFT2_BUILD_LIBRARY=1']
# System support file.
cc = meson.get_compiler('c')
# NOTE: msys2 on Windows has `unistd.h` and `fcntl.h` but not `sys/mman.h`!
has_unistd_h = cc.has_header('unistd.h')
has_fcntl_h = cc.has_header('fcntl.h')
has_sys_mman_h = cc.has_header('sys/mman.h')
mmap_option = get_option('mmap')
use_unix_ftsystem_c = false
if mmap_option.disabled()
ft2_sources += files(['src/base/ftsystem.c',])
elif host_machine.system() == 'windows'
ft2_sources += files(['builds/windows/ftsystem.c',])
else
if has_unistd_h and has_fcntl_h and has_sys_mman_h
# This version of `ftsystem.c` uses `mmap` to read input font files.
ft2_sources += files(['builds/unix/ftsystem.c',])
use_unix_ftsystem_c = true
elif mmap_option.enabled()
error('mmap was enabled via options but is not available,'
+ ' required headers were not found!')
else
ft2_sources += files(['src/base/ftsystem.c',])
endif
endif
# Debug support file
#
# NOTE: Some specialized versions exist for other platforms not supported by
# Meson. Most implementation differences are extremely minor, i.e., in the
# implementation of `FT_Message` and `FT_Panic`, and getting the `FT2_DEBUG`
# value from the environment, when this is supported. A smaller refactor
# might make these platform-specific files much smaller, and could be moved
# into `ftsystem.c` as well.
#
if host_machine.system() == 'windows'
winmod = import('windows')
ft2_sources += [
'builds/windows/ftdebug.c',
winmod.compile_resources('src/base/ftver.rc'),
]
else
ft2_sources += 'src/base/ftdebug.c'
endif
ft2_deps = []
# Generate `ftoption.h` based on available dependencies.
process_header_command = [python_exe,
files('builds/meson/process_ftoption_h.py'),
'@INPUT@', '--output=@OUTPUT@']
ftoption_command = process_header_command
# GZip support
zlib_dep = dependency('zlib',
required: get_option('zlib'),
fallback: 'zlib')
if zlib_dep.found()
ftoption_command += [
'--enable=FT_CONFIG_OPTION_USE_ZLIB',
'--enable=FT_CONFIG_OPTION_SYSTEM_ZLIB',
]
ft2_sources += files(['src/gzip/ftgzip.c',])
ft2_deps += [zlib_dep]
else
ftoption_command += ['--disable=FT_CONFIG_OPTION_USE_ZLIB']
endif
# BZip2 support
bzip2_dep = cc.find_library('bz2',
required: get_option('bzip2'))
if bzip2_dep.found()
ftoption_command += ['--enable=FT_CONFIG_OPTION_USE_BZIP2']
ft2_sources += files(['src/bzip2/ftbzip2.c',])
ft2_deps += [bzip2_dep]
endif
# PNG support
libpng_dep = dependency('libpng',
required: get_option('png'),
fallback: 'libpng')
if libpng_dep.found()
ftoption_command += ['--enable=FT_CONFIG_OPTION_USE_PNG']
ft2_deps += [libpng_dep]
else
ftoption_command += ['--disable=FT_CONFIG_OPTION_USE_PNG']
endif
# Harfbuzz support
harfbuzz_dep = dependency('harfbuzz',
version: '>= 2.0.0',
required: get_option('harfbuzz'))
if harfbuzz_dep.found()
ftoption_command += ['--enable=FT_CONFIG_OPTION_USE_HARFBUZZ']
ft2_deps += [harfbuzz_dep]
endif
# Brotli decompression support
brotli_dep = dependency('libbrotlidec',
required: get_option('brotli'))
if brotli_dep.found()
ftoption_command += ['--enable=FT_CONFIG_OPTION_USE_BROTLI']
ft2_deps += [brotli_dep]
endif
# We can now generate `ftoption.h`.
ftoption_h = custom_target('ftoption.h',
input: 'include/freetype/config/ftoption.h',
output: 'ftoption.h',
command: ftoption_command,
install: true,
install_dir: 'include/freetype2/freetype/config',
)
ft2_sources += ftoption_h
ft2_defines += ['-DFT_CONFIG_OPTIONS_H=<ftoption.h>']
if host_machine.system() == 'windows'
ft2_defines += ['-DDLL_EXPORT=1']
endif
# Generate `ftconfig.h`.
ftconfig_command = process_header_command
if has_unistd_h
ftconfig_command += '--enable=HAVE_UNISTD_H'
endif
if has_fcntl_h
ftconfig_command += '--enable=HAVE_FCNTL_H'
endif
if use_unix_ftsystem_c
ftconfig_h_in = files('builds/unix/ftconfig.h.in')
ftconfig_h = custom_target('ftconfig.h',
input: ftconfig_h_in,
output: 'ftconfig.h',
command: ftconfig_command,
install: true,
install_dir: 'include/freetype2/freetype/config',
)
ft2_sources += ftconfig_h
ft2_defines += ['-DFT_CONFIG_CONFIG_H=<ftconfig.h>']
endif
ft2_lib = library('freetype',
sources: ft2_sources + [ftmodule_h],
c_args: ft2_defines,
gnu_symbol_visibility: 'hidden',
include_directories: ft2_includes,
dependencies: ft2_deps,
install: true,
version: ft2_so_version,
)
# To be used by other projects including this one through `subproject`.
freetype_dep = declare_dependency(
include_directories: ft2_includes,
link_with: ft2_lib,
version: ft2_pkgconfig_version)
meson.override_dependency('freetype2', freetype_dep)
# NOTE: Using both `install_dir` and `subdir` doesn't seem to work below,
# i.e., the subdir value seems to be ignored, contrary to examples in the
# Meson documentation.
install_headers('include/ft2build.h',
install_dir: 'include/freetype2')
install_headers(ft2_public_headers,
install_dir: 'include/freetype2/freetype')
install_headers(ft2_config_headers,
install_dir: 'include/freetype2/freetype/config')
pkgconfig = import('pkgconfig')
pkgconfig.generate(ft2_lib,
filebase: 'freetype2',
name: 'FreeType 2',
description: 'A free, high-quality, and portable font engine.',
url: 'https://freetype.org',
subdirs: 'freetype2',
version: ft2_pkgconfig_version,
)
if get_option('tests').enabled()
subdir('tests')
endif
# NOTE: Unlike the old `make refdoc` command, this generates the
# documentation under `$BUILD/docs/` since Meson doesn't support modifying
# the source root directory (which is a good thing).
gen_docs = custom_target('freetype2 reference documentation',
output: 'docs',
input: ft2_public_headers + ft2_config_headers,
command: [python_exe,
files('builds/meson/generate_reference_docs.py'),
'--version=' + meson.project_version(),
'--input-dir=' + meson.source_root(),
'--output-dir=@OUTPUT@'
],
)
summary({'OS': host_machine.system(),
'Zlib': zlib_dep.found() ? 'yes' : 'no',
'Bzip2': bzip2_dep.found() ? 'yes' : 'no',
'Png': libpng_dep.found() ? 'yes' : 'no',
'Harfbuzz': harfbuzz_dep.found() ? 'yes' : 'no',
'Brotli': brotli_dep.found() ? 'yes' : 'no',
}, section: 'Configuration Options Summary:')
# EOF

View file

@ -1,33 +0,0 @@
pkgname=glm
pkgver=0.9.9.8
fetch() {
curl -L "https://github.com/g-truc/glm/archive/refs/tags/$pkgver.tar.gz" -o $pkgname-$pkgver.tar.gz
tar -xf $pkgname-$pkgver.tar.gz
mkdir $pkgname-$pkgver/build
}
build() {
cd $pkgname-$pkgver
cd build
cmake -G Ninja ../ \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DCMAKE_CXX_FLAGS='-Wno-implicit-int-float-conversion -Wno-implicit-int-conversion'
samu
}
package() {
cd $pkgname-$pkgver
install -d $pkgdir/usr/include
cp -r ./glm $pkgdir/usr/include/
install -d $pkgdir/usr/lib/pkgconfig
cp ../../glm.pc $pkgdir/usr/lib/pkgconfig
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,7 +0,0 @@
prefix=/usr
includedir=${prefix}/include
Name: GLM
Description: OpenGL Mathematics
Version: 0.9.9
Cflags: -I${includedir}

View file

@ -1,30 +0,0 @@
pkgname=i3status-rust
pkgver=0.20.4
_clear_vendor_checksums() {
sed -i 's/\("files":{\)[^}]*/\1/' vendor/$1/.cargo-checksum.json
}
fetch() {
curl -L "https://github.com/greshake/i3status-rust/archive/refs/tags/v$pkgver.tar.gz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
cd $pkgname-$pkgver
mkdir -p .cargo
/usr/src/rust-bootstrap/build/rust-root/bin/cargo vendor > .cargo/config
}
build() {
cd $pkgname-$pkgver
cargo build --release --locked --all-features
}
package() {
cd $pkgname-$pkgver
install -Dm755 target/release/i3status-rs $pkgdir/usr/bin/i3status-rs
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,31 +0,0 @@
pkgname=libglvnd
pkgver=master
fetch() {
curl -L "https://github.com/NVIDIA/libglvnd/archive/refs/heads/master.tar.gz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
mkdir $pkgname-$pkgver/build
}
build() {
cd $pkgname-$pkgver
cd build
meson .. \
--buildtype=release \
--prefix=/usr \
--libexecdir=lib \
-Dtls=disabled
samu
}
package() {
cd $pkgname-$pkgver
cd build
DESTDIR=$pkgdir samu install
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,33 +0,0 @@
pkgname=libpng
pkgver=1.6.37
fetch() {
curl -L "https://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
}
build() {
cd $pkgname-$pkgver
./configure \
--prefix=/usr \
--with-zlib-prefix=/usr \
--build=$TRIPLE \
--host=$TRIPLE
make
}
package() {
cd $pkgname-$pkgver
make install DESTDIR=$pkgdir
}
backup() {
return
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,10 +0,0 @@
--- a/src/gallium/drivers/v3d/v3dx_format_table.c
+++ b/src/gallium/drivers/v3d/v3dx_format_table.c
@@ -70,6 +70,7 @@
FORMAT(R8G8B8A8_SNORM, NO, RGBA8_SNORM, SWIZ_XYZW, 16, 0),
FORMAT(R8G8B8X8_SNORM, NO, RGBA8_SNORM, SWIZ_XYZ1, 16, 0),
FORMAT(R10G10B10A2_UNORM, RGB10_A2, RGB10_A2, SWIZ_XYZW, 16, 0),
+ FORMAT(R10G10B10X2_UNORM, RGB10_A2, RGB10_A2, SWIZ_XYZW, 16, 0),
FORMAT(R10G10B10A2_UINT, RGB10_A2UI, RGB10_A2UI, SWIZ_XYZW, 16, 0),
FORMAT(A4B4G4R4_UNORM, ABGR4444, RGBA4, SWIZ_XYZW, 16, 0),

View file

@ -1,364 +0,0 @@
/*
* Copyright © 2014-2018 Broadcom
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice (including the next
* paragraph) shall be included in all copies or substantial portions of the
* Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
* IN THE SOFTWARE.
*/
#include "util/format/u_format.h"
#include "v3d_context.h"
#include "broadcom/cle/v3dx_pack.h"
#include "broadcom/common/v3d_macros.h"
#include "v3d_format_table.h"
#define SWIZ(x,y,z,w) { \
PIPE_SWIZZLE_##x, \
PIPE_SWIZZLE_##y, \
PIPE_SWIZZLE_##z, \
PIPE_SWIZZLE_##w \
}
#define FORMAT(pipe, rt, tex, swiz, return_size, return_channels) \
[PIPE_FORMAT_##pipe] = { \
true, \
V3D_OUTPUT_IMAGE_FORMAT_##rt, \
TEXTURE_DATA_FORMAT_##tex, \
swiz, \
return_size, \
return_channels, \
}
#define SWIZ_X001 SWIZ(X, 0, 0, 1)
#define SWIZ_XY01 SWIZ(X, Y, 0, 1)
#define SWIZ_XYZ1 SWIZ(X, Y, Z, 1)
#define SWIZ_XYZW SWIZ(X, Y, Z, W)
#define SWIZ_YZWX SWIZ(Y, Z, W, X)
#define SWIZ_YZW1 SWIZ(Y, Z, W, 1)
#define SWIZ_ZYXW SWIZ(Z, Y, X, W)
#define SWIZ_ZYX1 SWIZ(Z, Y, X, 1)
#define SWIZ_XXXY SWIZ(X, X, X, Y)
#define SWIZ_XXX1 SWIZ(X, X, X, 1)
#define SWIZ_XXXX SWIZ(X, X, X, X)
#define SWIZ_000X SWIZ(0, 0, 0, X)
static const struct v3d_format format_table[] = {
FORMAT(B8G8R8A8_UNORM, RGBA8, RGBA8, SWIZ_ZYXW, 16, 0),
FORMAT(B8G8R8X8_UNORM, RGBA8, RGBA8, SWIZ_ZYX1, 16, 0),
FORMAT(B8G8R8A8_SRGB, SRGB8_ALPHA8, RGBA8, SWIZ_ZYXW, 16, 0),
FORMAT(B8G8R8X8_SRGB, SRGB8_ALPHA8, RGBA8, SWIZ_ZYX1, 16, 0),
FORMAT(R8G8B8A8_UNORM, RGBA8, RGBA8, SWIZ_XYZW, 16, 0),
FORMAT(R8G8B8X8_UNORM, RGBA8, RGBA8, SWIZ_XYZ1, 16, 0),
FORMAT(R8G8B8A8_SRGB, SRGB8_ALPHA8, RGBA8, SWIZ_XYZW, 16, 0),
FORMAT(R8G8B8X8_SRGB, SRGB8_ALPHA8, RGBA8, SWIZ_XYZ1, 16, 0),
FORMAT(R8G8B8A8_SNORM, NO, RGBA8_SNORM, SWIZ_XYZW, 16, 0),
FORMAT(R8G8B8X8_SNORM, NO, RGBA8_SNORM, SWIZ_XYZ1, 16, 0),
FORMAT(R10G10B10A2_UNORM, RGB10_A2, RGB10_A2, SWIZ_XYZW, 16, 0),
FORMAT(R10G10B10X2_UNORM, RGB10_A2, RGB10_A2, SWIZ_XYZW, 16, 0),
FORMAT(R10G10B10A2_UINT, RGB10_A2UI, RGB10_A2UI, SWIZ_XYZW, 16, 0),
FORMAT(A4B4G4R4_UNORM, ABGR4444, RGBA4, SWIZ_XYZW, 16, 0),
FORMAT(A1B5G5R5_UNORM, ABGR1555, RGB5_A1, SWIZ_XYZW, 16, 0),
FORMAT(X1B5G5R5_UNORM, ABGR1555, RGB5_A1, SWIZ_XYZ1, 16, 0),
FORMAT(B5G6R5_UNORM, BGR565, RGB565, SWIZ_XYZ1, 16, 0),
FORMAT(R8_UNORM, R8, R8, SWIZ_X001, 16, 0),
FORMAT(R8_SNORM, NO, R8_SNORM, SWIZ_X001, 16, 0),
FORMAT(R8G8_UNORM, RG8, RG8, SWIZ_XY01, 16, 0),
FORMAT(R8G8_SNORM, NO, RG8_SNORM, SWIZ_XY01, 16, 0),
FORMAT(R16_UNORM, NO, R16, SWIZ_X001, 32, 1),
FORMAT(R16_SNORM, NO, R16_SNORM, SWIZ_X001, 32, 1),
FORMAT(R16_FLOAT, R16F, R16F, SWIZ_X001, 16, 0),
FORMAT(R32_FLOAT, R32F, R32F, SWIZ_X001, 32, 1),
FORMAT(R16G16_UNORM, NO, RG16, SWIZ_XY01, 32, 2),
FORMAT(R16G16_SNORM, NO, RG16_SNORM, SWIZ_XY01, 32, 2),
FORMAT(R16G16_FLOAT, RG16F, RG16F, SWIZ_XY01, 16, 0),
FORMAT(R32G32_FLOAT, RG32F, RG32F, SWIZ_XY01, 32, 2),
FORMAT(R16G16B16A16_UNORM, NO, RGBA16, SWIZ_XYZW, 32, 4),
FORMAT(R16G16B16A16_SNORM, NO, RGBA16_SNORM, SWIZ_XYZW, 32, 4),
FORMAT(R16G16B16A16_FLOAT, RGBA16F, RGBA16F, SWIZ_XYZW, 16, 0),
FORMAT(R32G32B32A32_FLOAT, RGBA32F, RGBA32F, SWIZ_XYZW, 32, 4),
/* If we don't have L/A/LA16, mesa/st will fall back to RGBA16. */
FORMAT(L16_UNORM, NO, R16, SWIZ_XXX1, 32, 1),
FORMAT(L16_SNORM, NO, R16_SNORM, SWIZ_XXX1, 32, 1),
FORMAT(I16_UNORM, NO, R16, SWIZ_XXXX, 32, 1),
FORMAT(I16_SNORM, NO, R16_SNORM, SWIZ_XXXX, 32, 1),
FORMAT(A16_UNORM, NO, R16, SWIZ_000X, 32, 1),
FORMAT(A16_SNORM, NO, R16_SNORM, SWIZ_000X, 32, 1),
FORMAT(L16A16_UNORM, NO, RG16, SWIZ_XXXY, 32, 2),
FORMAT(L16A16_SNORM, NO, RG16_SNORM, SWIZ_XXXY, 32, 2),
FORMAT(A8_UNORM, NO, R8, SWIZ_000X, 16, 0),
FORMAT(L8_UNORM, NO, R8, SWIZ_XXX1, 16, 0),
FORMAT(I8_UNORM, NO, R8, SWIZ_XXXX, 16, 0),
FORMAT(L8A8_UNORM, NO, RG8, SWIZ_XXXY, 16, 0),
FORMAT(R8_SINT, R8I, R8I, SWIZ_X001, 16, 0),
FORMAT(R8_UINT, R8UI, R8UI, SWIZ_X001, 16, 0),
FORMAT(R8G8_SINT, RG8I, RG8I, SWIZ_XY01, 16, 0),
FORMAT(R8G8_UINT, RG8UI, RG8UI, SWIZ_XY01, 16, 0),
FORMAT(R8G8B8A8_SINT, RGBA8I, RGBA8I, SWIZ_XYZW, 16, 0),
FORMAT(R8G8B8A8_UINT, RGBA8UI, RGBA8UI, SWIZ_XYZW, 16, 0),
FORMAT(R16_SINT, R16I, R16I, SWIZ_X001, 16, 0),
FORMAT(R16_UINT, R16UI, R16UI, SWIZ_X001, 16, 0),
FORMAT(R16G16_SINT, RG16I, RG16I, SWIZ_XY01, 16, 0),
FORMAT(R16G16_UINT, RG16UI, RG16UI, SWIZ_XY01, 16, 0),
FORMAT(R16G16B16A16_SINT, RGBA16I, RGBA16I, SWIZ_XYZW, 16, 0),
FORMAT(R16G16B16A16_UINT, RGBA16UI, RGBA16UI, SWIZ_XYZW, 16, 0),
FORMAT(R32_SINT, R32I, R32I, SWIZ_X001, 32, 1),
FORMAT(R32_UINT, R32UI, R32UI, SWIZ_X001, 32, 1),
FORMAT(R32G32_SINT, RG32I, RG32I, SWIZ_XY01, 32, 2),
FORMAT(R32G32_UINT, RG32UI, RG32UI, SWIZ_XY01, 32, 2),
FORMAT(R32G32B32A32_SINT, RGBA32I, RGBA32I, SWIZ_XYZW, 32, 4),
FORMAT(R32G32B32A32_UINT, RGBA32UI, RGBA32UI, SWIZ_XYZW, 32, 4),
FORMAT(A8_SINT, R8I, R8I, SWIZ_000X, 16, 0),
FORMAT(A8_UINT, R8UI, R8UI, SWIZ_000X, 16, 0),
FORMAT(A16_SINT, R16I, R16I, SWIZ_000X, 16, 0),
FORMAT(A16_UINT, R16UI, R16UI, SWIZ_000X, 16, 0),
FORMAT(A32_SINT, R32I, R32I, SWIZ_000X, 32, 1),
FORMAT(A32_UINT, R32UI, R32UI, SWIZ_000X, 32, 1),
FORMAT(R11G11B10_FLOAT, R11F_G11F_B10F, R11F_G11F_B10F, SWIZ_XYZ1, 16, 0),
FORMAT(R9G9B9E5_FLOAT, NO, RGB9_E5, SWIZ_XYZ1, 16, 0),
#if V3D_VERSION >= 40
FORMAT(S8_UINT_Z24_UNORM, D24S8, DEPTH24_X8, SWIZ_XXXX, 32, 1),
FORMAT(X8Z24_UNORM, D24S8, DEPTH24_X8, SWIZ_XXXX, 32, 1),
FORMAT(S8X24_UINT, S8, RGBA8UI, SWIZ_XXXX, 16, 1),
FORMAT(Z32_FLOAT, D32F, DEPTH_COMP32F, SWIZ_XXXX, 32, 1),
FORMAT(Z16_UNORM, D16, DEPTH_COMP16,SWIZ_XXXX, 32, 1),
/* Pretend we support this, but it'll be separate Z32F depth and S8. */
FORMAT(Z32_FLOAT_S8X24_UINT, D32F, DEPTH_COMP32F, SWIZ_XXXX, 32, 1),
FORMAT(X32_S8X24_UINT, S8, R8UI, SWIZ_XXXX, 16, 1),
#else
FORMAT(S8_UINT_Z24_UNORM, ZS_DEPTH24_STENCIL8, DEPTH24_X8, SWIZ_XXXX, 32, 1),
FORMAT(X8Z24_UNORM, ZS_DEPTH24_STENCIL8, DEPTH24_X8, SWIZ_XXXX, 32, 1),
FORMAT(S8X24_UINT, NO, R32F, SWIZ_XXXX, 32, 1),
FORMAT(Z32_FLOAT, ZS_DEPTH_COMPONENT32F, R32F, SWIZ_XXXX, 32, 1),
FORMAT(Z16_UNORM, ZS_DEPTH_COMPONENT16, DEPTH_COMP16, SWIZ_XXXX, 32, 1),
/* Pretend we support this, but it'll be separate Z32F depth and S8. */
FORMAT(Z32_FLOAT_S8X24_UINT, ZS_DEPTH_COMPONENT32F, R32F, SWIZ_XXXX, 32, 1),
#endif
FORMAT(ETC2_RGB8, NO, RGB8_ETC2, SWIZ_XYZ1, 16, 0),
FORMAT(ETC2_SRGB8, NO, RGB8_ETC2, SWIZ_XYZ1, 16, 0),
FORMAT(ETC2_RGB8A1, NO, RGB8_PUNCHTHROUGH_ALPHA1, SWIZ_XYZW, 16, 0),
FORMAT(ETC2_SRGB8A1, NO, RGB8_PUNCHTHROUGH_ALPHA1, SWIZ_XYZW, 16, 0),
FORMAT(ETC2_RGBA8, NO, RGBA8_ETC2_EAC, SWIZ_XYZW, 16, 0),
FORMAT(ETC2_SRGBA8, NO, RGBA8_ETC2_EAC, SWIZ_XYZW, 16, 0),
FORMAT(ETC2_R11_UNORM, NO, R11_EAC, SWIZ_X001, 16, 0),
FORMAT(ETC2_R11_SNORM, NO, SIGNED_R11_EAC, SWIZ_X001, 16, 0),
FORMAT(ETC2_RG11_UNORM, NO, RG11_EAC, SWIZ_XY01, 16, 0),
FORMAT(ETC2_RG11_SNORM, NO, SIGNED_RG11_EAC, SWIZ_XY01, 16, 0),
FORMAT(DXT1_RGB, NO, BC1, SWIZ_XYZ1, 16, 0),
FORMAT(DXT1_SRGB, NO, BC1, SWIZ_XYZ1, 16, 0),
FORMAT(DXT1_RGBA, NO, BC1, SWIZ_XYZW, 16, 0),
FORMAT(DXT1_SRGBA, NO, BC1, SWIZ_XYZW, 16, 0),
FORMAT(DXT3_RGBA, NO, BC2, SWIZ_XYZW, 16, 0),
FORMAT(DXT3_SRGBA, NO, BC2, SWIZ_XYZW, 16, 0),
FORMAT(DXT5_RGBA, NO, BC3, SWIZ_XYZW, 16, 0),
FORMAT(DXT5_SRGBA, NO, BC3, SWIZ_XYZW, 16, 0),
};
const struct v3d_format *
v3dX(get_format_desc)(enum pipe_format f)
{
if (f < ARRAY_SIZE(format_table) && format_table[f].present)
return &format_table[f];
else
return NULL;
}
void
v3dX(get_internal_type_bpp_for_output_format)(uint32_t format,
uint32_t *type,
uint32_t *bpp)
{
switch (format) {
case V3D_OUTPUT_IMAGE_FORMAT_RGBA8:
#if V3D_VERSION < 41
case V3D_OUTPUT_IMAGE_FORMAT_RGBX8:
#endif
case V3D_OUTPUT_IMAGE_FORMAT_RGB8:
case V3D_OUTPUT_IMAGE_FORMAT_RG8:
case V3D_OUTPUT_IMAGE_FORMAT_R8:
case V3D_OUTPUT_IMAGE_FORMAT_ABGR4444:
case V3D_OUTPUT_IMAGE_FORMAT_BGR565:
case V3D_OUTPUT_IMAGE_FORMAT_ABGR1555:
*type = V3D_INTERNAL_TYPE_8;
*bpp = V3D_INTERNAL_BPP_32;
break;
case V3D_OUTPUT_IMAGE_FORMAT_RGBA8I:
case V3D_OUTPUT_IMAGE_FORMAT_RG8I:
case V3D_OUTPUT_IMAGE_FORMAT_R8I:
*type = V3D_INTERNAL_TYPE_8I;
*bpp = V3D_INTERNAL_BPP_32;
break;
case V3D_OUTPUT_IMAGE_FORMAT_RGBA8UI:
case V3D_OUTPUT_IMAGE_FORMAT_RG8UI:
case V3D_OUTPUT_IMAGE_FORMAT_R8UI:
*type = V3D_INTERNAL_TYPE_8UI;
*bpp = V3D_INTERNAL_BPP_32;
break;
case V3D_OUTPUT_IMAGE_FORMAT_SRGB8_ALPHA8:
case V3D_OUTPUT_IMAGE_FORMAT_SRGB:
case V3D_OUTPUT_IMAGE_FORMAT_RGB10_A2:
case V3D_OUTPUT_IMAGE_FORMAT_R11F_G11F_B10F:
#if V3D_VERSION < 41
case V3D_OUTPUT_IMAGE_FORMAT_SRGBX8:
#endif
case V3D_OUTPUT_IMAGE_FORMAT_RGBA16F:
/* Note that sRGB RTs are stored in the tile buffer at 16F,
* and the conversion to sRGB happens at tilebuffer
* load/store.
*/
*type = V3D_INTERNAL_TYPE_16F;
*bpp = V3D_INTERNAL_BPP_64;
break;
case V3D_OUTPUT_IMAGE_FORMAT_RG16F:
case V3D_OUTPUT_IMAGE_FORMAT_R16F:
*type = V3D_INTERNAL_TYPE_16F;
/* Use 64bpp to make sure the TLB doesn't throw away the alpha
* channel before alpha test happens.
*/
*bpp = V3D_INTERNAL_BPP_64;
break;
case V3D_OUTPUT_IMAGE_FORMAT_RGBA16I:
*type = V3D_INTERNAL_TYPE_16I;
*bpp = V3D_INTERNAL_BPP_64;
break;
case V3D_OUTPUT_IMAGE_FORMAT_RG16I:
case V3D_OUTPUT_IMAGE_FORMAT_R16I:
*type = V3D_INTERNAL_TYPE_16I;
*bpp = V3D_INTERNAL_BPP_32;
break;
case V3D_OUTPUT_IMAGE_FORMAT_RGB10_A2UI:
case V3D_OUTPUT_IMAGE_FORMAT_RGBA16UI:
*type = V3D_INTERNAL_TYPE_16UI;
*bpp = V3D_INTERNAL_BPP_64;
break;
case V3D_OUTPUT_IMAGE_FORMAT_RG16UI:
case V3D_OUTPUT_IMAGE_FORMAT_R16UI:
*type = V3D_INTERNAL_TYPE_16UI;
*bpp = V3D_INTERNAL_BPP_32;
break;
case V3D_OUTPUT_IMAGE_FORMAT_RGBA32I:
*type = V3D_INTERNAL_TYPE_32I;
*bpp = V3D_INTERNAL_BPP_128;
break;
case V3D_OUTPUT_IMAGE_FORMAT_RG32I:
*type = V3D_INTERNAL_TYPE_32I;
*bpp = V3D_INTERNAL_BPP_64;
break;
case V3D_OUTPUT_IMAGE_FORMAT_R32I:
*type = V3D_INTERNAL_TYPE_32I;
*bpp = V3D_INTERNAL_BPP_32;
break;
case V3D_OUTPUT_IMAGE_FORMAT_RGBA32UI:
*type = V3D_INTERNAL_TYPE_32UI;
*bpp = V3D_INTERNAL_BPP_128;
break;
case V3D_OUTPUT_IMAGE_FORMAT_RG32UI:
*type = V3D_INTERNAL_TYPE_32UI;
*bpp = V3D_INTERNAL_BPP_64;
break;
case V3D_OUTPUT_IMAGE_FORMAT_R32UI:
*type = V3D_INTERNAL_TYPE_32UI;
*bpp = V3D_INTERNAL_BPP_32;
break;
case V3D_OUTPUT_IMAGE_FORMAT_RGBA32F:
*type = V3D_INTERNAL_TYPE_32F;
*bpp = V3D_INTERNAL_BPP_128;
break;
case V3D_OUTPUT_IMAGE_FORMAT_RG32F:
*type = V3D_INTERNAL_TYPE_32F;
*bpp = V3D_INTERNAL_BPP_64;
break;
case V3D_OUTPUT_IMAGE_FORMAT_R32F:
*type = V3D_INTERNAL_TYPE_32F;
*bpp = V3D_INTERNAL_BPP_32;
break;
default:
/* Provide some default values, as we'll be called at RB
* creation time, even if an RB with this format isn't
* supported.
*/
*type = V3D_INTERNAL_TYPE_8;
*bpp = V3D_INTERNAL_BPP_32;
break;
}
}
bool
v3dX(tfu_supports_tex_format)(enum V3DX(Texture_Data_Formats) format,
bool for_mipmap)
{
switch (format) {
case TEXTURE_DATA_FORMAT_R8:
case TEXTURE_DATA_FORMAT_R8_SNORM:
case TEXTURE_DATA_FORMAT_RG8:
case TEXTURE_DATA_FORMAT_RG8_SNORM:
case TEXTURE_DATA_FORMAT_RGBA8:
case TEXTURE_DATA_FORMAT_RGBA8_SNORM:
case TEXTURE_DATA_FORMAT_RGB565:
case TEXTURE_DATA_FORMAT_RGBA4:
case TEXTURE_DATA_FORMAT_RGB5_A1:
case TEXTURE_DATA_FORMAT_RGB10_A2:
case TEXTURE_DATA_FORMAT_R16:
case TEXTURE_DATA_FORMAT_R16_SNORM:
case TEXTURE_DATA_FORMAT_RG16:
case TEXTURE_DATA_FORMAT_RG16_SNORM:
case TEXTURE_DATA_FORMAT_RGBA16:
case TEXTURE_DATA_FORMAT_RGBA16_SNORM:
case TEXTURE_DATA_FORMAT_R16F:
case TEXTURE_DATA_FORMAT_RG16F:
case TEXTURE_DATA_FORMAT_RGBA16F:
case TEXTURE_DATA_FORMAT_R11F_G11F_B10F:
case TEXTURE_DATA_FORMAT_R4:
return true;
case TEXTURE_DATA_FORMAT_RGB9_E5:
case TEXTURE_DATA_FORMAT_R32F:
case TEXTURE_DATA_FORMAT_RG32F:
case TEXTURE_DATA_FORMAT_RGBA32F:
return !for_mipmap;
default:
return false;
}
}

View file

@ -1,46 +0,0 @@
pkgname=pango
_pkgver=1.48
pkgver=$_pkgver.10
fetch() {
curl -L "https://download.gnome.org/sources/pango/$_pkgver/pango-$pkgver.tar.xz" -o $pkgname-$pkgver.tar.xz
tar -xf $pkgname-$pkgver.tar.xz
mkdir $pkgname-$pkgver/build
cd $pkgname-$pkgver
rm -rf subprojects
: > tests/meson.build
: > examples/meson.build
: > docs/meson.build
patch -p1 < ../../no-fribidi.patch
}
build() {
cd $pkgname-$pkgver
cd build
meson .. \
--buildtype=release \
--prefix=/usr \
--libexecdir=lib \
-Dgir=false \
-Dgtk_doc=false \
-Dxft=disabled \
-Dintrospection=disabled \
-Dinstall_tests=false
samu
}
package() {
cd $pkgname-$pkgver
cd build
DESTDIR=$pkgdir samu install
}
backup() {
return
}
license() {
cd $pkgname-$pkgver
cat LICENSE
# cat COPYING
}

View file

@ -1,228 +0,0 @@
diff --git a/meson.build b/meson.build
index 6d8de0b..93141b0 100644
--- a/meson.build
+++ b/meson.build
@@ -191,7 +191,6 @@ endif
pango_deps = []
glib_req_version = '>= 2.62'
-fribidi_req_version = '>= 1.0.6'
libthai_req_version = '>= 0.1.9'
harfbuzz_req_version = '>= 2.2.0'
fontconfig_req_version = '>= 2.11.91'
@@ -211,10 +210,6 @@ gio_dep = dependency('gio-2.0', version: glib_req_version,
fallback: ['glib', 'libgio_dep'])
pango_deps += [glib_dep, gobject_dep, gio_dep]
-fribidi_dep = dependency('fribidi', version: fribidi_req_version,
- fallback: ['fribidi', 'libfribidi_dep'],
- default_options: ['docs=false'])
-pango_deps += fribidi_dep
thai_dep = dependency('libthai', version: libthai_req_version, required: get_option('libthai'))
if thai_dep.found()
diff --git a/pango/pango-bidi-type.c b/pango/pango-bidi-type.c
index 32858f7..ca8adfc 100644
--- a/pango/pango-bidi-type.c
+++ b/pango/pango-bidi-type.c
@@ -23,13 +23,20 @@
#include <string.h>
-#include <fribidi.h>
-
#undef PANGO_DISABLE_DEPRECATED
#include "pango-bidi-type.h"
#include "pango-utils.h"
+typedef uint32_t FriBidiChar;
+typedef uint32_t FriBidiCharType;
+typedef uint32_t FriBidiBracketType;
+typedef int FriBidiStrIndex;
+typedef int FriBidiParType;
+typedef signed char FriBidiLevel;
+
+#define FRIBIDI_PAR_LTR (0x00000010L | 0x00000100L)
+
/**
* pango_bidi_type_for_unichar:
* @ch: a Unicode character
@@ -48,40 +55,7 @@
PangoBidiType
pango_bidi_type_for_unichar (gunichar ch)
{
- FriBidiCharType fribidi_ch_type;
-
- G_STATIC_ASSERT (sizeof (FriBidiChar) == sizeof (gunichar));
-
- fribidi_ch_type = fribidi_get_bidi_type (ch);
-
- switch (fribidi_ch_type)
- {
- case FRIBIDI_TYPE_LTR: return PANGO_BIDI_TYPE_L;
- case FRIBIDI_TYPE_LRE: return PANGO_BIDI_TYPE_LRE;
- case FRIBIDI_TYPE_LRO: return PANGO_BIDI_TYPE_LRO;
- case FRIBIDI_TYPE_RTL: return PANGO_BIDI_TYPE_R;
- case FRIBIDI_TYPE_AL: return PANGO_BIDI_TYPE_AL;
- case FRIBIDI_TYPE_RLE: return PANGO_BIDI_TYPE_RLE;
- case FRIBIDI_TYPE_RLO: return PANGO_BIDI_TYPE_RLO;
- case FRIBIDI_TYPE_PDF: return PANGO_BIDI_TYPE_PDF;
- case FRIBIDI_TYPE_EN: return PANGO_BIDI_TYPE_EN;
- case FRIBIDI_TYPE_ES: return PANGO_BIDI_TYPE_ES;
- case FRIBIDI_TYPE_ET: return PANGO_BIDI_TYPE_ET;
- case FRIBIDI_TYPE_AN: return PANGO_BIDI_TYPE_AN;
- case FRIBIDI_TYPE_CS: return PANGO_BIDI_TYPE_CS;
- case FRIBIDI_TYPE_NSM: return PANGO_BIDI_TYPE_NSM;
- case FRIBIDI_TYPE_BN: return PANGO_BIDI_TYPE_BN;
- case FRIBIDI_TYPE_BS: return PANGO_BIDI_TYPE_B;
- case FRIBIDI_TYPE_SS: return PANGO_BIDI_TYPE_S;
- case FRIBIDI_TYPE_WS: return PANGO_BIDI_TYPE_WS;
- case FRIBIDI_TYPE_ON: return PANGO_BIDI_TYPE_ON;
- case FRIBIDI_TYPE_LRI: return PANGO_BIDI_TYPE_LRI;
- case FRIBIDI_TYPE_RLI: return PANGO_BIDI_TYPE_RLI;
- case FRIBIDI_TYPE_FSI: return PANGO_BIDI_TYPE_FSI;
- case FRIBIDI_TYPE_PDI: return PANGO_BIDI_TYPE_PDI;
- default:
- return PANGO_BIDI_TYPE_ON;
- }
+ return PANGO_BIDI_TYPE_L;
}
/* Some bidi-related functions */
@@ -116,36 +90,12 @@ pango_log2vis_get_embedding_levels (const gchar *text,
glong n_chars, i;
guint8 *embedding_levels_list;
const gchar *p;
- FriBidiParType fribidi_base_dir;
FriBidiCharType *bidi_types;
FriBidiBracketType *bracket_types;
- FriBidiLevel max_level;
- FriBidiCharType ored_types = 0;
- FriBidiCharType anded_strongs = FRIBIDI_TYPE_RLE;
G_STATIC_ASSERT (sizeof (FriBidiLevel) == sizeof (guint8));
G_STATIC_ASSERT (sizeof (FriBidiChar) == sizeof (gunichar));
- switch (*pbase_dir)
- {
- case PANGO_DIRECTION_LTR:
- case PANGO_DIRECTION_TTB_RTL:
- fribidi_base_dir = FRIBIDI_PAR_LTR;
- break;
- case PANGO_DIRECTION_RTL:
- case PANGO_DIRECTION_TTB_LTR:
- fribidi_base_dir = FRIBIDI_PAR_RTL;
- break;
- case PANGO_DIRECTION_WEAK_RTL:
- fribidi_base_dir = FRIBIDI_PAR_WRTL;
- break;
- case PANGO_DIRECTION_WEAK_LTR:
- case PANGO_DIRECTION_NEUTRAL:
- default:
- fribidi_base_dir = FRIBIDI_PAR_WLTR;
- break;
- }
-
if (length < 0)
length = strlen (text);
@@ -157,20 +107,11 @@ pango_log2vis_get_embedding_levels (const gchar *text,
for (i = 0, p = text; p < text + length; p = g_utf8_next_char(p), i++)
{
- gunichar ch = g_utf8_get_char (p);
- FriBidiCharType char_type = fribidi_get_bidi_type (ch);
-
if (i == n_chars)
break;
- bidi_types[i] = char_type;
- ored_types |= char_type;
- if (FRIBIDI_IS_STRONG (char_type))
- anded_strongs &= char_type;
- if (G_UNLIKELY(bidi_types[i] == FRIBIDI_TYPE_ON))
- bracket_types[i] = fribidi_get_bracket (ch);
- else
- bracket_types[i] = FRIBIDI_NO_BRACKET;
+ bidi_types[i] = FRIBIDI_PAR_LTR;
+ bracket_types[i] = 0;
}
/* Short-circuit (malloc-expensive) FriBidi call for unidirectional
@@ -187,56 +128,12 @@ pango_log2vis_get_embedding_levels (const gchar *text,
* o base_dir doesn't have an RTL taste.
* o there are letters, and base_dir is weak.
*/
- if (!FRIBIDI_IS_ISOLATE (ored_types) &&
- !FRIBIDI_IS_RTL (ored_types) &&
- !FRIBIDI_IS_ARABIC (ored_types) &&
- (!FRIBIDI_IS_RTL (fribidi_base_dir) ||
- (FRIBIDI_IS_WEAK (fribidi_base_dir) &&
- FRIBIDI_IS_LETTER (ored_types))
- ))
- {
- /* all LTR */
- fribidi_base_dir = FRIBIDI_PAR_LTR;
memset (embedding_levels_list, 0, n_chars);
- goto resolved;
- }
- /* The case that all resolved levels will be RTL is much more complex.
- * No isolates, no numbers, all strongs are RTL, and one of
- * the following:
- *
- * o base_dir has an RTL taste (may be weak).
- * o there are letters, and base_dir is weak.
- */
- else if (!FRIBIDI_IS_ISOLATE (ored_types) &&
- !FRIBIDI_IS_NUMBER (ored_types) &&
- FRIBIDI_IS_RTL (anded_strongs) &&
- (FRIBIDI_IS_RTL (fribidi_base_dir) ||
- (FRIBIDI_IS_WEAK (fribidi_base_dir) &&
- FRIBIDI_IS_LETTER (ored_types))
- ))
- {
- /* all RTL */
- fribidi_base_dir = FRIBIDI_PAR_RTL;
- memset (embedding_levels_list, 1, n_chars);
- goto resolved;
- }
-
-
- max_level = fribidi_get_par_embedding_levels_ex (bidi_types, bracket_types, n_chars,
- &fribidi_base_dir,
- (FriBidiLevel*)embedding_levels_list);
-
- if (G_UNLIKELY(max_level == 0))
- {
- /* fribidi_get_par_embedding_levels() failed. */
- memset (embedding_levels_list, 0, length);
- }
-resolved:
g_free (bidi_types);
g_free (bracket_types);
- *pbase_dir = (fribidi_base_dir == FRIBIDI_PAR_LTR) ? PANGO_DIRECTION_LTR : PANGO_DIRECTION_RTL;
+ *pbase_dir = PANGO_DIRECTION_LTR;
return embedding_levels_list;
}
@@ -260,17 +157,6 @@ resolved:
PangoDirection
pango_unichar_direction (gunichar ch)
{
- FriBidiCharType fribidi_ch_type;
-
- G_STATIC_ASSERT (sizeof (FriBidiChar) == sizeof (gunichar));
-
- fribidi_ch_type = fribidi_get_bidi_type (ch);
-
- if (!FRIBIDI_IS_STRONG (fribidi_ch_type))
- return PANGO_DIRECTION_NEUTRAL;
- else if (FRIBIDI_IS_RTL (fribidi_ch_type))
- return PANGO_DIRECTION_RTL;
- else
return PANGO_DIRECTION_LTR;
}

View file

@ -1,71 +0,0 @@
pkgname=pipewire
pkgver=0.3.42
fetch() {
curl "https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/$pkgver/pipewire-$pkgver.tar.bz2" -o $pkgname-$pkgver.tar.bz2
tar -xf $pkgname-$pkgver.tar.bz2
mkdir $pkgname-$pkgver/build
}
build() {
cd $pkgname-$pkgver
cd build
meson .. \
--buildtype=release \
--prefix=/usr \
--libexecdir=lib \
-Ddocs=disabled \
-Dexamples=disabled \
-Dman=disabled \
-Dinstalled_tests=disabled \
-Dgstreamer=disabled \
-Dsystemd=disabled \
-Dpipewire-jack=disabled \
-Dpipewire-alsa=enabled \
-Dpipewire-v4l2=disabled \
-Dspa-plugins=enabled \
-Dalsa=enabled \
-Daudiomixer=enabled \
-Dbluez5=disabled \
-Dcontrol=enabled \
-Daudiotestsrc=enabled \
-Dffmpeg=disabled \
-Djack=disabled \
-Dsupport=enabled \
-Devl=disabled \
-Dv4l2=disabled \
-Ddbus=enabled \
-Dlibcamera=disabled \
-Dvideoconvert=disabled \
-Dvideotestsrc=disabled \
-Dvolume=enabled \
-Dvulkan=disabled \
-Dpw-cat=disabled \
-Dudev=disabled \
-Dsdl2=disabled \
-Dsndfile=disabled \
-Dlibpulse=disabled \
-Droc=disabled \
-Davahi=disabled \
-Dlibusb=disabled \
-Draop=disabled \
-Dlv2=disabled \
-Dsession-managers="[]"
samu
}
package() {
cd $pkgname-$pkgver
cd build
DESTDIR=$pkgdir samu install
}
backup() {
return
}
license() {
cd $pkgname-$pkgver
cat COPYING
}

Some files were not shown because too many files have changed in this diff Show more