relocate all packages with new group names from gentoo

This commit is contained in:
sulincix committed 2022-11-20 07:45:54 +00:00
1 parent 20645c750a
commit e133dbe26f
54 files changed
+42 -40

No files matched your search

+31
View File
@@ -0,0 +1,31 @@
#!/usr/bin/env bash
name='acl'
release='1'
version='2.3.1'
url='https://mirror.rabisu.com/savannah-nongnu/acl'
description='The acl package contains utilities to administer Access Control Lists'
email='parduscix@yandex.ru'
maintainer='sulincix'
license=('LGPL')
source=('https://mirror.rabisu.com/savannah-nongnu/acl/acl-2.3.1.tar.gz')
depends=(attr)
makedepends=( )
md5sums=('3cecb80cb0a52a0b273e6698ba642263')
group=(sys.apps)
arch=('x86_64')
cd $name-$version
setup(){
./configure --prefix=/usr \
--libdir=/usr/lib64
}
build(){
make -j`nproc`
}
package(){
make install -j`nproc`
}
+31
View File
@@ -0,0 +1,31 @@
#!/usr/bin/env bash
name='attr'
release='1'
version='2.5.1'
url='https://mirror.rabisu.com/savannah-nongnu/attr/'
description='The attr package contains utilities to administer the extended attributes on filesystem objects. '
email='parduscix@yandex.ru'
maintainer='sulincix'
license=('GPLv3')
source=('https://mirror.rabisu.com/savannah-nongnu/attr/attr-2.5.1.tar.gz')
depends=( )
makedepends=( )
md5sums=('ac1c5a7a084f0f83b8cace34211f64d8')
group=(sys.apps)
arch=('x86_64')
cd $name-$version
setup(){
./configure --prefix=/usr \
--libdir=/usr/lib64
}
build(){
make -j`nproc`
}
package(){
make install -j`nproc`
}
+43
View File
@@ -0,0 +1,43 @@
#!/usr/bin/env bash
name=file
release=1
version=5.43
url='https://www.darwinsys.com/file/'
description="Identify a file's format by scanning binary data for patterns"
email='kurth4cker@tutanota.com'
maintainer='kurth4cker'
source=("http://ftp.astron.com/pub/file/file-${version}.tar.gz")
md5sums=('8effd70da368210a6c6eece037f978eb')
group=(sys.apps)
uses=(bzip2 lzma zlib seccomp)
zlib_depends=(zlib)
lzma_depends=(xz-utils)
bzip2_depends=(bzip2)
seccomp_depends=(libseccomp)
cd $name-$version
setup(){
opts=(
--prefix=/usr
--libdir=/usr/lib64
--enable-static
--enable-elf
--enable-elf-core
)
./configure ${opts[@]} \
$(use_opt zlib --enable-zlib --disable-zlib) \
$(use_opt lzma --enable-xzlib --disable-xzlib) \
$(use_opt bzip2 --enable-bzlib --disable-bzlib) \
$(use_opt seccomp --enable-libseccomp --disable-libseccomp)
}
build(){
make -j`nproc`
}
package(){
make install -j`nproc`
}
+46
View File
@@ -0,0 +1,46 @@
#!/usr/bin/env bash
name='util-linux'
release='1'
version='2.38.1'
url='https://en.wikipedia.org/wiki/Util-linux'
description='Various useful Linux utilities'
email='kurth4cker@tutanota.com'
maintainer='kurth4cker'
license=('GPLv3' 'GPLv2' 'LPGL-2.1' 'BSD-4' 'MIT')
source=("https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v2.38/util-linux-${version}.tar.xz")
depends=(libcap-ng udev)
md5sums=('cd11456f4ddd31f7fbfdd9488c0c0d02')
arch=('x86_64')
group=(sys.apps)
uses_extra=(python)
python_depends=(python)
cd $name-$version
setup(){
./configure --prefix=/usr \
--libdir=/usr/lib64 \
--bindir=/usr/bin \
--enable-shared \
--enable-static \
--disable-su \
--disable-runuser \
--disable-chfn-chsh \
--disable-login \
--disable-sulogin \
--disable-makeinstall-chown \
--disable-makeinstall-setuid \
--without-systemd \
$(use_opt python --with-python --without-python) \
-disable-pylibmount \
--disable-raw # FIXME
}
build(){
make -j`nproc`
}
package(){
make install -j`nproc`
}
+30
View File
@@ -0,0 +1,30 @@
#!/bin/sh
touch /etc/passwd
cat /etc/passwd.d/* | sed "s/#.*//g"| while read line ; do
if [ -z "${line}" ] ; then
: skip empty line
elif ! grep "^${line}$" /etc/passwd > /dev/null ; then
echo "${line}" >> /etc/passwd
fi
done
if [ ! -f /var/lib/ymp/sysconf/base-files/postinstall.done ]; then
mkdir -p /var/lib/ymp/sysconf/base-files/
mkdir /data/user/root -p
mkdir /data/log -p
mkdir -p /kernel/modules
mkdir -p /kernel/firmware
mkdir -p /usr/lib64
mkdir -p /usr/lib32
chown root /data/user/root
chmod 700 /data/user/root
ln -s data/user/root /root
ln -s ../run /var/run
ln -s ../data /data/data
ln -s ../tmp /data/tmp
ln -s ../data/log /var/log
ln -s ../kernel/modules /lib/modules
ln -s ../kernel/firmware /lib/firmare
ln -s ./lib64 /usr/lib
ln -s ./lib32 /usr/libx32
date > /var/lib/ymp/sysconf/base-files/postinstall.done
fi
+23
View File
@@ -0,0 +1,23 @@
#!/bin/bash
name=base-files
release=1
version=1
url='https://gitlab.com/sulix/devel/sources/base-files'
description='Base system files'
email='parduscix@yandex.ru'
maintainer='sulincix'
license=('GPLv3')
source=("https://gitlab.com/sulix/devel/sources/base-files/-/archive/$version/base-files-$version.zip"
"base-files.sysconf")
md5sums=('1a7f97c99b2ba940d91faade186f4b3f'
'SKIP')
arch=(x86_64)
group=(sys.base)
cd "$name-$version"
package(){
mkdir -p ${DESTDIR}/etc/sysconf.d
make install
install ../base-files.sysconf ${DESTDIR}/etc/sysconf.d/base-files
}
+8
View File
@@ -0,0 +1,8 @@
#!/bin/busybox ash
/bin/busybox mkdir -p /var/lib/ymp/sysconf/busybox/
if /bin/busybox [ ! -f /var/lib/ymp/sysconf/busybox/postinstall.done ] ; then
/bin/busybox --install -s /bin
/bin/busybox install /bin/busybox /bin/su
/bin/busybox chmod u+s /bin/su
/bin/busybox date > /var/lib/ymp/sysconf/busybox.postinst.done
fi
+37
View File
@@ -0,0 +1,37 @@
#!/bin/bash
name=busybox
version=1.35.0
release=1
url='https://busybox.net'
description='BusyBox is a software suite that provides several Unix utilities in a single executable file.'
email='parduscix@yandex.ru'
maintainer='sulincix'
license=('GPLv3')
arch=(x86_64)
source=("https://busybox.net/downloads/busybox-$version.tar.bz2"
"busybox.sysconf"
)
md5sums=("585949b1dd4292b604b7d199866e9913"
"SKIP"
)
group=(sys.base)
cd $name-$version
setup(){
make defconfig
sed -i "s|.*CONFIG_STATIC_LIBGCC .*|CONFIG_STATIC_LIBGCC=y|" .config
sed -i "s|.*CONFIG_STATIC .*|CONFIG_STATIC=y|" .config
}
build(){
make -j`nproc`
}
package(){
mkdir -p ${DESTDIR}/bin/ ${DESTDIR}/etc/sysconf.d
install busybox ${DESTDIR}/bin/busybox
install ../busybox.sysconf ${DESTDIR}/etc/sysconf.d/busybox
}
+6
View File
@@ -0,0 +1,6 @@
#!/bin/sh
/sbin/ldconfig
/bin/busybox chmod +x -R /bin
/bin/busybox chmod +x -R /sbin
/bin/busybox chmod +x -R /usr/bin
/bin/busybox chmod +x -R /usr/sbin
+5
View File
@@ -0,0 +1,5 @@
/lib64/sulix
/lib32/sulix
include ld.so.conf.d/*.conf
/lib64
/lib32
+42
View File
@@ -0,0 +1,42 @@
#!/bin/sh
set -e
LOCALEGEN=/etc/locale.gen
LOCALES=/usr/share/i18n/locales
if [ -n "$POSIXLY_CORRECT" ]; then
unset POSIXLY_CORRECT
fi
[ -f $LOCALEGEN -a -s $LOCALEGEN ] || exit 0;
# Remove all old locale dir and locale-archive before generating new
# locale data.
rm -rf /usr/lib64/locale/locale-archive || true
umask 022
is_entry_ok() {
if [ -n "$locale" -a -n "$charset" ] ; then
true
else
echo "error: Bad entry '$locale $charset'"
false
fi
}
echo "Generating locales..."
while read locale charset; do \
case $locale in \#*) continue;; "") continue;; esac; \
is_entry_ok || continue
echo -n " `echo $locale | sed 's/\([^.\@]*\).*/\1/'`"; \
echo -n ".$charset"; \
echo -n `echo $locale | sed 's/\([^\@]*\)\(\@.*\)*/\2/'`; \
echo -n '...'; \
if [ -f $LOCALES/$locale ]; then input=$locale; else \
input=`echo $locale | sed 's/\([^.]*\)[^@]*\(.*\)/\1\2/'`; fi; \
localedef -i $input -c -f $charset -A /usr/share/locale/locale.alias $locale; \
echo ' done'; \
done < $LOCALEGEN
echo "Generation complete."
+145
View File
@@ -0,0 +1,145 @@
From e47de5cb2d4dbecb58f569ed241e8e95c568f03c Mon Sep 17 00:00:00 2001
From: Florian Weimer <fweimer@redhat.com>
Date: Fri, 29 Apr 2022 16:37:51 +0200
Subject: [PATCH] Do not use --hash-style=both for building glibc shared
objects
The comment indicates that --hash-style=both was used to maintain
compatibility with static dlopen, but we had many internal ABI
changes since then, so this compatiblity does not add value anymore.
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
---
Makeconfig | 9 +++++++++
Makerules | 7 +++++++
config.make.in | 1 +
configure | 28 ++++++++++++++++++++++++++++
configure.ac | 16 ++++++++++++++++
5 files changed, 61 insertions(+)
diff --git b/Makeconfig a/Makeconfig
index 760f14e92f..0aa5fb0099 100644
--- b/Makeconfig
+++ a/Makeconfig
@@ -362,6 +362,15 @@ relro-LDFLAGS = -Wl,-z,relro
LDFLAGS.so += $(relro-LDFLAGS)
LDFLAGS-rtld += $(relro-LDFLAGS)
+ifeq (yes,$(have-hash-style))
+# For the time being we unconditionally use 'both'. At some time we
+# should declare statically linked code as 'out of luck' and compile
+# with --hash-style=gnu only.
+hashstyle-LDFLAGS = -Wl,--hash-style=both
+LDFLAGS.so += $(hashstyle-LDFLAGS)
+LDFLAGS-rtld += $(hashstyle-LDFLAGS)
+endif
+
ifeq (no,$(build-pie-default))
pie-default = $(no-pie-ccflag)
else # build-pie-default
diff --git b/Makerules a/Makerules
index 354528b8c7..428464f092 100644
--- b/Makerules
+++ a/Makerules
@@ -557,6 +557,13 @@ $(common-objpfx)shlib.lds: $(common-objpfx)config.make $(..)Makerules
-Wl,--verbose 2>/dev/null | \
sed > $@T \
-e '/^=========/,/^=========/!d;/^=========/d' \
+ $(if $(filter yes,$(have-hash-style)), \
+ -e 's/^.*\.gnu\.hash[ ]*:.*$$/ .note.ABI-tag : { *(.note.ABI-tag) } &/' \
+ -e '/^[ ]*\.hash[ ]*:.*$$/{h;d;}' \
+ -e '/DATA_SEGMENT_ALIGN/{H;g}' \
+ , \
+ -e 's/^.*\.hash[ ]*:.*$$/ .note.ABI-tag : { *(.note.ABI-tag) } &/' \
+ ) \
-e 's/^.*\*(\.dynbss).*$$/& \
PROVIDE(__start___libc_freeres_ptrs = .); \
*(__libc_freeres_ptrs) \
diff --git b/config.make.in a/config.make.in
index fff4c78dd0..bf728c71c0 100644
--- b/config.make.in
+++ a/config.make.in
@@ -70,6 +70,7 @@ have-libcap = @have_libcap@
have-cc-with-libunwind = @libc_cv_cc_with_libunwind@
fno-unit-at-a-time = @fno_unit_at_a_time@
bind-now = @bindnow@
+have-hash-style = @libc_cv_hashstyle@
use-default-link = @use_default_link@
have-cxx-thread_local = @libc_cv_cxx_thread_local@
have-loop-to-function = @libc_cv_cc_loop_to_function@
diff --git b/configure a/configure
index 716dc041b6..5a730dc5fc 100755
--- b/configure
+++ a/configure
@@ -622,6 +622,7 @@ libc_cv_cc_nofma
libc_cv_mtls_dialect_gnu2
fno_unit_at_a_time
libc_cv_has_glob_dat
+libc_cv_hashstyle
libc_cv_fpie
libc_cv_z_execstack
ASFLAGS_config
@@ -6193,6 +6194,33 @@ $as_echo "$libc_cv_fpie" >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --hash-style option" >&5
+$as_echo_n "checking for --hash-style option... " >&6; }
+if ${libc_cv_hashstyle+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat > conftest.c <<EOF
+int _start (void) { return 42; }
+EOF
+if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS $no_ssp
+ -fPIC -shared -o conftest.so conftest.c
+ -Wl,--hash-style=both -nostdlib 1>&5'
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }
+then
+ libc_cv_hashstyle=yes
+else
+ libc_cv_hashstyle=no
+fi
+rm -f conftest*
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_hashstyle" >&5
+$as_echo "$libc_cv_hashstyle" >&6; }
+
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GLOB_DAT reloc" >&5
$as_echo_n "checking for GLOB_DAT reloc... " >&6; }
if ${libc_cv_has_glob_dat+:} false; then :
diff --git b/configure.ac a/configure.ac
index d08ad4d64e..a045f6608e 100644
--- b/configure.ac
+++ a/configure.ac
@@ -1360,6 +1360,22 @@ LIBC_TRY_CC_OPTION([-fpie], [libc_cv_fpie=yes], [libc_cv_fpie=no])
AC_SUBST(libc_cv_fpie)
+AC_CACHE_CHECK(for --hash-style option,
+ libc_cv_hashstyle, [dnl
+cat > conftest.c <<EOF
+int _start (void) { return 42; }
+EOF
+if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS $no_ssp
+ -fPIC -shared -o conftest.so conftest.c
+ -Wl,--hash-style=both -nostdlib 1>&AS_MESSAGE_LOG_FD])
+then
+ libc_cv_hashstyle=yes
+else
+ libc_cv_hashstyle=no
+fi
+rm -f conftest*])
+AC_SUBST(libc_cv_hashstyle)
+
AC_CACHE_CHECK(for GLOB_DAT reloc,
libc_cv_has_glob_dat, [dnl
cat > conftest.c <<EOF
--
2.37.1
+20
View File
@@ -0,0 +1,20 @@
#!/bin/bash
export LANG=C
export LC_ALL=C
check(){
file="$1"
echo -en "\033[2K\rChecking: $file"
ldd $file |& grep "not found" | tr -s " " | cut -f1 -d" " | while read missing ; do
echo -en "\033[2K\r"
echo -e "\033[31;1m$file\033[;0m => $missing"
done | sort | uniq
}
find /lib64 /lib32 /lib /usr/lib /usr/lib64 /usr/lib32 -type f |& while read file; do
check $file
done
find /bin /sbin /usr/bin/ /usr/sbin -type f |& while read file; do
check $file
done
echo -en "\033[2K\r"
+4
View File
@@ -0,0 +1,4 @@
/usr/local/lib64
/usr/lib64
/usr/local/lib32
/usr/lib32
+8
View File
@@ -0,0 +1,8 @@
# Debian compability support
/usr/local/lib/x86_64-linux-gnu
/lib/x86_64-linux-gnu
/usr/lib/x86_64-linux-gnu
# Debian compability support
/usr/local/lib/i386-linux-gnu
/lib/i386-linux-gnu
/usr/lib/i386-linux-gnu
+116
View File
@@ -0,0 +1,116 @@
#!/bin/bash
name=glibc
release=1
version=2.36
url='https://gitlab.com/sulinos/devel/ymp'
description='GNU libc library'
email='parduscix@yandex.ru'
maintainer='sulincix'
license=('GPLv3')
arch=(x86_64)
dontstrip="31"
source=('https://ftp.gnu.org/gnu/glibc/glibc-2.36.tar.xz'
'ld.so.conf'
'usr-support.conf'
'x86_64-linux-gnu.conf'
'glibc.sysconf'
'reenable_DT_HASH.patch'
'locale-gen'
'revdep-rebuild'
)
md5sums=('00e9b89e043340f688bc93ec03239b57'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
)
uses=(multilib)
group=(sys.base)
export CFLAGS="-O3 ${debug:+-g} -s -mno-tls-direct-seg-refs -mtune=generic -DSULIX"
export CXXFLAGS="-O3 ${debug:+-g} -s -mno-tls-direct-seg-refs -mtune=generic -DSULIX"
cd "$name-$version"
setup(){
# Thx archlinux
patch -Np1 -i "../reenable_DT_HASH.patch"
opts=(
--prefix=/usr
--mandir=/usr/share/man
--infodir=/usr/share/info
--with-bugurl=http://gitlab.com/sulix/main/issues
--enable-add-ons
--enable-bind-now
--enable-lock-elision
--enable-cet
--enable-multi-arch
--enable-static-pie
--enable-stack-protector=all
--enable-kernel=5.10.0
--enable-stackguard-randomization
--without-selinux
--disable-werror
)
if use multilib ; then
export CC="gcc -m32"
export CXX="g++ -m32"
mkdir glibc32-build
cd glibc32-build
echo "slibdir=/lib32" >> configparms
echo "rtlddir=/lib32" >> configparms
../configure ${opts[@]} \
--host=i686-pc-linux-gnu \
--libdir=/lib32 \
--libexecdir=/lib32/glibc
cd ..
fi
export CC="gcc"
export CXX="g++"
mkdir glibc-build
cd glibc-build
echo "slibdir=/lib64" >> configparms
echo "rtlddir=/lib64" >> configparms
../configure ${opts[@]} \
--host=x86_64-pc-linux-gnu \
--libdir=/lib64 \
--libexecdir=/lib64/glibc
cd ..
}
build(){
for bdir in glibc-build glibc32-build ; do
if [[ -d $bdir ]] ; then
make -C $bdir -O -j`nproc --all`
make -C $bdir info
fi
done
}
package(){
# create symlink lib64 (gentoo compability)
mkdir -p ${DESTDIR}/lib64
ln -s lib64 ${DESTDIR}/lib
if use multilib ; then
mkdir -p ${DESTDIR}/lib32
ln -s lib32 ${DESTDIR}/libx32
fi
for bdir in glibc32-build glibc-build ; do
if [[ -d $bdir ]] ; then
make -C $bdir install -j$(nproc --all)
fi
done
mkdir -p ${DESTDIR}/etc/ld.so.conf.d/ ${DESTDIR}/etc/sysconf.d/ ${DESTDIR}/bin
install ../ld.so.conf ${DESTDIR}/etc/ld.so.conf
install ../usr-support.conf ${DESTDIR}/etc/ld.so.conf.d/
install ../x86_64-linux-gnu.conf ${DESTDIR}/etc/ld.so.conf.d/
# remove ld.so.cache file (this file must generated by ldconfig command from inary)
rm -f ${DESTDIR}/etc/ld.so.cache
# install sysconf trigger
install ../glibc.sysconf ${DESTDIR}/etc/sysconf.d/glibc
# install extra tools
install ../locale-gen ${DESTDIR}/bin/locale-gen
install ../revdep-rebuild ${DESTDIR}/bin/revdep-rebuild
}
+57
View File
@@ -0,0 +1,57 @@
#!/usr/bin/env bash
name='binutils'
release='1'
version='2.39'
url='https://ftp.gnu.org/gnu/binutils/'
description='A set of programs to assemble and manipulate binary and object files'
email=' aliriza.keskin@pardus.org.tr'
maintainer=' aliriza'
license=('GPLv3')
source=('https://ftp.gnu.org/gnu/binutils/binutils-2.39.tar.xz')
depends=(zlib)
makedepends=( )
md5sums=('f7e986ae9ff06405cafb2e585ee36d27')
arch=('x86_64')
group=(sys.devel)
cd $name-$version
setup(){
mkdir build
cd build
../configure --prefix=/usr \
--libdir=/usr/lib64 \
--disable-nls \
--disable-werror \
--enable-cet \
--enable-default-execstack=no \
--enable-deterministic-archives \
--enable-gold \
--enable-install-libiberty \
--enable-ld=default \
--enable-pgo-build=lto \
--enable-plugins \
--enable-relro \
--enable-shared \
--enable-targets=all \
--enable-threads \
--disable-gdb \
--disable-gdbserver \
--disable-libdecnumber \
--disable-readline \
--disable-sim \
--disable-werror \
--with-pic \
--with-system-zlib
}
build(){
cd build
make
}
package(){
cd build
make install -j`nproc`
}
+73
View File
@@ -0,0 +1,73 @@
#!/usr/bin/env bash
name='gcc'
release='1'
version='12.2.0'
url='https://ftp.gnu.org/gnu/gcc/'
description='GNU Compiler Collection'
email=' parduscix@yandex.ru'
maintainer=' sulincix'
license=('GPLv3')
source=('https://ftp.gnu.org/gnu/gcc/gcc-12.2.0/gcc-12.2.0.tar.xz')
depends=(binutils libmpc zlib)
makedepends=( )
md5sums=('73bafd0af874439dcdb9fc063b6fb069')
arch=('x86_64')
group=(sys.devel)
uses=(multilib)
uses_extra=(langs)
cd $name-$version
export CFLAGS="-O2 -s"
export CXXFLAGS="-O2 -s"
unset LDFLAGS
prepare(){
cd ..
# tar permissions and owners is not supported by ymp sandbox.
# we remove broken source and extract again without permission and owners
rm -rf $name-$version
tar --no-same-owner --no-same-permissions -xvf $name-$version.tar.xz
}
setup(){
options=(
--prefix=/usr
--libdir=/usr/lib64
--libexecdir=/usr/libexec
--mandir=/usr/share/man
--infodir=/usr/share/info
--with-pkgversion="Sulix"
--with-bugurl=https://gitlab.com/groups/sulix/-/issues
--disable-checking
--disable-fixed-point
--disable-libstdcxx-pch
--enable-plugin
--enable-lto
--enable-languages=c,c++$(use_opt langs ",fortran,go,objc,obj-c++" "")
$(use_opt multilib "--enable-multilib" "")
$(use_opt multilib "--enable-multiarch" "")
--enable-shared
--without-zstd
--with-system-zlib
--disable-nls
)
mkdir build
cd build
../configure ${options[@]}
}
build(){
cd build
make -j`nproc`
}
package(){
cd build
make install -j`nproc`
mkdir -p ${DESTDIR}/usr/lib64/
if use multilib ; then
# move lib to lib64
mv ${DESTDIR}/usr/{lib,lib32}
fi
}
+75
View File
@@ -0,0 +1,75 @@
#!/bin/bash
name=ncurses
version=6.3
release=1
url='https://invisible-island.net/ncurses/ncurses.html'
description="System V Release 4.0 curses emulation library"
email='parduscix@yandex.ru'
maintainer='sulincix'
license=('MIT')
arch=(x86_64)
source=(https://invisible-mirror.net/archives/$name/$name-$version.tar.gz)
md5sums=(a2736befde5fee7d2b7eb45eb281cdbe)
depends=(glibc)
so_ver=6
group=(sys.libs)
cd $name-$version
setup(){
cp -prf ../$name-$version ../widec
opts=(--prefix=/usr
--libdir=/lib64/ncurses
--without-ada
--without-tests
--disable-termcap
--disable-rpath-hack
--disable-stripping
--with-pkg-config-libdir=/usr/lib64/pkgconfig
--with-termlib
--with-terminfo-dirs="/etc/terminfo:/usr/share/terminfo:/lib/terminfo:/usr/lib/terminfo"
--enable-pc-files
--with-shared)
./configure ${opts[@]}
cd ../widec
./configure ${opts[@]} --enable-widec
}
build(){
cd ../widec
make -j$(nproc)
cd ../$name-$version
make -j$(nproc)
}
package(){
mkdir -p "$DESTDIR/lib64/ncurses/" "$DESTDIR/usr/lib64/pkgconfig/"
for lib in ncurses ncurses++ form panel menu; do
printf "INPUT(-l%sw)\n" "${lib}" > "$DESTDIR/lib64/ncurses/lib${lib}.so"
ln -sv ${lib}w.pc "$DESTDIR/usr/lib64/pkgconfig/${lib}.pc"
done
# some packages look for -lcurses during build
printf 'INPUT(-lncursesw)\n' > "$DESTDIR/lib64/ncurses/libcursesw.so"
ln -sv libncurses.so "$DESTDIR/lib64/ncurses/libcurses.so"
# tic and ticinfo functionality is built in by default
# make sure that anything linking against it links against libncursesw.so instead
for lib in tic tinfo; do
printf "INPUT(libncursesw.so.%s)\n" "${so_ver}" > "$DESTDIR/lib64/ncurses/lib${lib}.so"
if ! ls $DESTDIR/lib64/ncurses/lib${lib}.so.${so_ver} ; then
ln -sv libncursesw.so.${so_ver} "$DESTDIR/lib64/ncurses/lib${lib}.so.${so_ver}"
ln -sv ncursesw.pc "$DESTDIR/usr/lib64/pkgconfig/${lib}.pc"
fi
done
# legacy binary support
for lib in libncursesw libncurses libtinfo libpanelw libformw libmenuw ; do
ln -sv ${lib}.so.${so_ver} "$DESTDIR"/lib64/ncurses/${lib}.so.5
done
cd ../widec
make -j$(nproc) install
cd ../$name-$version
make -j$(nproc) install
mkdir -p ${DESTDIR}/etc/ld.so.conf.d/
echo "/lib64/ncurses/" > ${DESTDIR}/etc/ld.so.conf.d/ncurses.conf
}
+42
View File
@@ -0,0 +1,42 @@
# do not bell on tab-completion
#set bell-style none
set colored-stats On
set completion-ignore-case On
set completion-prefix-display-length 3
set mark-symlinked-directories On
set show-all-if-ambiguous On
set show-all-if-unmodified On
set visible-stats On
set colored-completion-prefix on
set mark-modified-lines on
set menu-complete-display-prefix on
$if mode=emacs
# for linux console and RH/Debian xterm
"\e[1~": beginning-of-line
"\e[4~": end-of-line
"\e[5~": beginning-of-history
"\e[6~": end-of-history
"\e[7~": beginning-of-line
"\e[3~": delete-char
"\e[2~": quoted-insert
"\e[5C": forward-word
"\e[5D": backward-word
"\e\e[C": forward-word
"\e\e[D": backward-word
"\e[1;5C": forward-word
"\e[1;5D": backward-word
# for rxvt
"\e[8~": end-of-line
# for non RH/Debian xterm, can't hurt for RH/DEbian xterm
"\eOH": beginning-of-line
"\eOF": end-of-line
# for freebsd console
"\e[H": beginning-of-line
"\e[F": end-of-line
$endif
+34
View File
@@ -0,0 +1,34 @@
#!/bin/bash
name=readline
version=8.1
release=1
url='http://www.gnu.org/software/readline/'
description="GNU readline library"
email='parduscix@yandex.ru'
maintainer='sulincix'
license=('GPL')
arch=(x86_64)
source=(https://ftp.gnu.org/pub/gnu/$name/$name-$version.tar.gz
inputrc)
md5sums=('e9557dd5b1409f5d7b37ef717c64518e'
'SKIP')
depends=(glibc)
group=(sys.apps)
cd $name-$version
setup(){
./configure --prefix=/usr \
--libdir=/lib64/readline
}
build(){
make SHLIB_LIBS="-L/tools/lib -lncursesw"
}
package(){
make SHLIB_LIBS="-L/tools/lib -lncursesw" DESTDIR="$DESTDIR" install pkgconfigdir="/usr/lib64/pkgconfig"
install -Dm644 ../inputrc "$DESTDIR"/etc/inputrc
mkdir -p ${DESTDIR}/etc/ld.so.conf.d/
echo "/lib64/readline/" > ${DESTDIR}/etc/ld.so.conf.d/readline.conf
}