mirror of
git://git.code.sf.net/p/cdesktopenv/code
synced 2025-03-09 15:50:02 +00:00
Some more build fixes from OpenSUSE
These update some outdated library path searches as well as a couple of gcc-specific improvements. Original patch: https://build.opensuse.org/package/view_file/shells/ksh/ksh93-compat.dif
This commit is contained in:
parent
52067c3d37
commit
be33942415
5 changed files with 15 additions and 5 deletions
|
@ -93,6 +93,12 @@ typedef struct
|
||||||
#define pointerof(x) ((void*)((char*)0+(x)))
|
#define pointerof(x) ((void*)((char*)0+(x)))
|
||||||
#define roundof(x,y) (((x)+(y)-1)&~((y)-1))
|
#define roundof(x,y) (((x)+(y)-1)&~((y)-1))
|
||||||
|
|
||||||
|
#ifdef __GNUC__
|
||||||
|
#if (__GNUC__ >= 4) && !defined(offsetof)
|
||||||
|
#define offsetof(type,member) __builtin_offsetof(type,member)
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef offsetof
|
#ifndef offsetof
|
||||||
#define offsetof(type,member) ((unsigned long)&(((type*)0)->member))
|
#define offsetof(type,member) ((unsigned long)&(((type*)0)->member))
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -27,7 +27,7 @@ esac
|
||||||
|
|
||||||
ok=0
|
ok=0
|
||||||
for i in \
|
for i in \
|
||||||
-x /lib/ld.so /lib/ld-*.so /usr/lib/ld.so /lib/rld \
|
-x /lib64/ld.so /lib/ld.so /lib64/ld-*.so /lib/ld-*.so /usr/lib/ld.so /lib/rld \
|
||||||
-f /usr/shlib/libc.so /shlib/libc.so /usr/lib/libc.so \
|
-f /usr/shlib/libc.so /shlib/libc.so /usr/lib/libc.so \
|
||||||
-r /usr/shlib/libc.so /shlib/libc.so
|
-r /usr/shlib/libc.so /shlib/libc.so
|
||||||
do case $i in
|
do case $i in
|
||||||
|
|
|
@ -67,10 +67,14 @@ main()
|
||||||
#define _map_malloc 1
|
#define _map_malloc 1
|
||||||
printf("\n");
|
printf("\n");
|
||||||
printf("#define _map_libc 1\n");
|
printf("#define _map_libc 1\n");
|
||||||
|
#endif
|
||||||
|
#if _map_libc || defined(__linux__)
|
||||||
printf("#undef basename\n");
|
printf("#undef basename\n");
|
||||||
printf("#define basename _ast_basename\n");
|
printf("#define basename _ast_basename\n");
|
||||||
printf("#undef dirname\n");
|
printf("#undef dirname\n");
|
||||||
printf("#define dirname _ast_dirname\n");
|
printf("#define dirname _ast_dirname\n");
|
||||||
|
#endif
|
||||||
|
#if _map_libc
|
||||||
#if !_lib_eaccess
|
#if !_lib_eaccess
|
||||||
printf("#undef eaccess\n");
|
printf("#undef eaccess\n");
|
||||||
printf("#define eaccess _ast_eaccess\n");
|
printf("#define eaccess _ast_eaccess\n");
|
||||||
|
|
|
@ -134,7 +134,7 @@ tst typ_signed_size_t output{
|
||||||
}
|
}
|
||||||
}end
|
}end
|
||||||
|
|
||||||
define offsetof (type,member) ((size_t)&(((type*)0)->member))
|
define offsetof (type,member) __builtin_offsetof(type,member)
|
||||||
define EXIT_FAILURE 1
|
define EXIT_FAILURE 1
|
||||||
define EXIT_SUCCESS 0
|
define EXIT_SUCCESS 0
|
||||||
define MB_CUR_MAX 1
|
define MB_CUR_MAX 1
|
||||||
|
|
|
@ -15,7 +15,7 @@ tst dll_DYNAMIC link{
|
||||||
}end
|
}end
|
||||||
tst run{
|
tst run{
|
||||||
lib=
|
lib=
|
||||||
for d in /shlib /usr/shlib /lib /usr/lib
|
for d in /lib64 /usr/lib64 /lib /usr/lib
|
||||||
do if test -d $d
|
do if test -d $d
|
||||||
then for s in "*.*" "*[!a]*"
|
then for s in "*.*" "*[!a]*"
|
||||||
do for b in libc
|
do for b in libc
|
||||||
|
@ -52,7 +52,7 @@ tst run{
|
||||||
"") lib=/lib/libc.so.1 ;;
|
"") lib=/lib/libc.so.1 ;;
|
||||||
esac
|
esac
|
||||||
case $lib in
|
case $lib in
|
||||||
/usr/lib/*)
|
/usr/lib64/*|/usr/lib/*)
|
||||||
case `package` in
|
case `package` in
|
||||||
sgi.mips3)
|
sgi.mips3)
|
||||||
abi=/lib32
|
abi=/lib32
|
||||||
|
@ -65,7 +65,7 @@ tst run{
|
||||||
esac
|
esac
|
||||||
case $abi in
|
case $abi in
|
||||||
?*) if test -d $abi
|
?*) if test -d $abi
|
||||||
then lib=`echo $lib | sed 's,/usr/lib/,,'`
|
then lib=`echo $lib | sed 's,/usr/lib\(64\)\?/,,'`
|
||||||
lib=$abi/$lib
|
lib=$abi/$lib
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue