LibC: Remove our iconv.h header and add libiconv port
If I ever end up writing my own iconv, i will drop the port :D
This commit is contained in:
parent
fde4d4662e
commit
59fff26a5f
|
@ -0,0 +1,20 @@
|
||||||
|
#!/bin/bash ../install.sh
|
||||||
|
|
||||||
|
NAME='libiconv'
|
||||||
|
VERSION='1.18'
|
||||||
|
DOWNLOAD_URL="https://ftp.gnu.org/pub/gnu/libiconv/libiconv-$VERSION.tar.gz#3b08f5f4f9b4eb82f151a7040bfd6fe6c6fb922efe4b1659c66ea933276965e8"
|
||||||
|
CONFIG_SUB=('build-aux/config.sub' 'libcharset/build-aux/config.sub')
|
||||||
|
CONFIGURE_OPTIONS=(
|
||||||
|
'--disable-nls'
|
||||||
|
'CFLAGS=-std=c11'
|
||||||
|
)
|
||||||
|
|
||||||
|
pre_configure() {
|
||||||
|
echo '#include_next <sys/types.h>' > srclib/sys_types.in.h
|
||||||
|
}
|
||||||
|
|
||||||
|
post_install() {
|
||||||
|
# remove libtool file
|
||||||
|
rm -f $BANAN_SYSROOT/usr/lib/libcharset.la
|
||||||
|
rm -f $BANAN_SYSROOT/usr/lib/libiconv.la
|
||||||
|
}
|
|
@ -0,0 +1,31 @@
|
||||||
|
diff -ruN libiconv-1.18/configure libiconv-1.18-banan_os/configure
|
||||||
|
--- libiconv-1.18/configure 2024-12-15 13:57:14.000000000 +0200
|
||||||
|
+++ libiconv-1.18-banan_os/configure 2025-08-07 23:49:03.383717069 +0300
|
||||||
|
@@ -8779,6 +8779,10 @@
|
||||||
|
lt_cv_deplibs_check_method=pass_all
|
||||||
|
;;
|
||||||
|
|
||||||
|
+banan_os*)
|
||||||
|
+ lt_cv_deplibs_check_method=pass_all
|
||||||
|
+ ;;
|
||||||
|
+
|
||||||
|
beos*)
|
||||||
|
lt_cv_deplibs_check_method=pass_all
|
||||||
|
;;
|
||||||
|
@@ -14510,6 +14514,16 @@
|
||||||
|
esac
|
||||||
|
;;
|
||||||
|
|
||||||
|
+banan_os*)
|
||||||
|
+ version_type=linux # correct to gnu/linux during the next big refactor
|
||||||
|
+ need_lib_prefix=no
|
||||||
|
+ need_version=no
|
||||||
|
+ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
|
||||||
|
+ soname_spec='$libname$release$shared_ext$major'
|
||||||
|
+ dynamic_linker="$host_os DynamicLoader.so"
|
||||||
|
+ shlibpath_var=LD_LIBRARY_PATH
|
||||||
|
+ ;;
|
||||||
|
+
|
||||||
|
beos*)
|
||||||
|
library_names_spec='$libname$shared_ext'
|
||||||
|
dynamic_linker="$host_os ld.so"
|
|
@ -0,0 +1,21 @@
|
||||||
|
diff -ruN libiconv-1.18/srclib/getprogname.c libiconv-1.18-banan_os/srclib/getprogname.c
|
||||||
|
--- libiconv-1.18/srclib/getprogname.c 2024-07-12 14:55:16.000000000 +0300
|
||||||
|
+++ libiconv-1.18-banan_os/srclib/getprogname.c 2025-08-07 23:42:50.691745454 +0300
|
||||||
|
@@ -50,7 +50,7 @@
|
||||||
|
# include <sys/procfs.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
-#if defined __SCO_VERSION__ || defined __sysv5__
|
||||||
|
+#if defined __SCO_VERSION__ || defined __sysv5__ || defined __banan_os__
|
||||||
|
# include <fcntl.h>
|
||||||
|
# include <string.h>
|
||||||
|
#endif
|
||||||
|
@@ -265,7 +265,7 @@
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return NULL;
|
||||||
|
-# elif defined __SCO_VERSION__ || defined __sysv5__ /* SCO OpenServer6/UnixWare */
|
||||||
|
+# elif defined __SCO_VERSION__ || defined __sysv5__ || defined __banan_os__ /* SCO OpenServer6/UnixWare */
|
||||||
|
char buf[80];
|
||||||
|
int fd;
|
||||||
|
sprintf (buf, "/proc/%d/cmdline", getpid());
|
|
@ -1,21 +0,0 @@
|
||||||
#ifndef _ICONV_H
|
|
||||||
#define _ICONV_H 1
|
|
||||||
|
|
||||||
// https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/iconv.h.html
|
|
||||||
|
|
||||||
#include <sys/cdefs.h>
|
|
||||||
|
|
||||||
__BEGIN_DECLS
|
|
||||||
|
|
||||||
#define __need_size_t
|
|
||||||
#include <sys/types.h>
|
|
||||||
|
|
||||||
typedef void* iconv_t;
|
|
||||||
|
|
||||||
size_t iconv(iconv_t cd, char** __restrict inbuf, size_t* __restrict inbytesleft, char** __restrict outbuf, size_t* __restrict outbytesleft);
|
|
||||||
int iconv_close(iconv_t cd);
|
|
||||||
iconv_t iconv_open(const char* tocode, const char* fromcode);
|
|
||||||
|
|
||||||
__END_DECLS
|
|
||||||
|
|
||||||
#endif
|
|
Loading…
Reference in New Issue