Skip to content

Commit

Permalink
Some more build fixes from OpenSUSE
Browse files Browse the repository at this point in the history
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
  • Loading branch information
McDutchie committed Feb 2, 2021
1 parent 52067c3 commit be33942
Show file tree
Hide file tree
Showing 5 changed files with 15 additions and 5 deletions.
6 changes: 6 additions & 0 deletions src/lib/libast/astsa/ast.h
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,12 @@ typedef struct
#define pointerof(x) ((void*)((char*)0+(x)))
#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
#define offsetof(type,member) ((unsigned long)&(((type*)0)->member))
#endif
Expand Down
2 changes: 1 addition & 1 deletion src/lib/libast/features/libpath.sh
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ esac

ok=0
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 \
-r /usr/shlib/libc.so /shlib/libc.so
do case $i in
Expand Down
4 changes: 4 additions & 0 deletions src/lib/libast/features/map.c
Original file line number Diff line number Diff line change
Expand Up @@ -67,10 +67,14 @@ main()
#define _map_malloc 1
printf("\n");
printf("#define _map_libc 1\n");
#endif
#if _map_libc || defined(__linux__)
printf("#undef basename\n");
printf("#define basename _ast_basename\n");
printf("#undef dirname\n");
printf("#define dirname _ast_dirname\n");
#endif
#if _map_libc
#if !_lib_eaccess
printf("#undef eaccess\n");
printf("#define eaccess _ast_eaccess\n");
Expand Down
2 changes: 1 addition & 1 deletion src/lib/libast/features/sys
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,7 @@ tst typ_signed_size_t output{
}
}end

define offsetof (type,member) ((size_t)&(((type*)0)->member))
define offsetof (type,member) __builtin_offsetof(type,member)
define EXIT_FAILURE 1
define EXIT_SUCCESS 0
define MB_CUR_MAX 1
Expand Down
6 changes: 3 additions & 3 deletions src/lib/libdll/features/dll
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ tst dll_DYNAMIC link{
}end
tst run{
lib=
for d in /shlib /usr/shlib /lib /usr/lib
for d in /lib64 /usr/lib64 /lib /usr/lib
do if test -d $d
then for s in "*.*" "*[!a]*"
do for b in libc
Expand Down Expand Up @@ -52,7 +52,7 @@ tst run{
"") lib=/lib/libc.so.1 ;;
esac
case $lib in
/usr/lib/*)
/usr/lib64/*|/usr/lib/*)
case `package` in
sgi.mips3)
abi=/lib32
Expand All @@ -65,7 +65,7 @@ tst run{
esac
case $abi in
?*) if test -d $abi
then lib=`echo $lib | sed 's,/usr/lib/,,'`
then lib=`echo $lib | sed 's,/usr/lib\(64\)\?/,,'`
lib=$abi/$lib
fi
;;
Expand Down

0 comments on commit be33942

Please sign in to comment.