diff --git a/src/aclocal.m4 b/src/aclocal.m4 index 174f8d4f1..1f3e6ab31 100644 --- a/src/aclocal.m4 +++ b/src/aclocal.m4 @@ -443,9 +443,14 @@ case "${host_os}" in clibs="-Wld=-lrld" ;; aix*) - PICFLAG='' + PICFLAG='-DPIC' thehost="aix" - shared="no" + THREAD_LIBS='-lpthread' + SHARED_LDFLAGS="-G -bsvr4 -brtl ${LDFLAGS}" + BUNDLE_LDFLAGS="-G -bsvr4 -brtl ${LDFLAGS}" + ECL_LDRPATH="-Wl,-R~A" + #SONAME="${SHAREDPREFIX}ecl.${SHAREDEXT}.SOVERSION" + #SONAME_LDFLAGS="-Wl,-soname,SONAME" ;; *) thehost="$host_os" diff --git a/src/c/ecl_features.h b/src/c/ecl_features.h index 3d9b1d1de..8442a0565 100644 --- a/src/c/ecl_features.h +++ b/src/c/ecl_features.h @@ -35,7 +35,7 @@ ecl_def_string_array(feature_names,static,const) = { #endif ecl_def_string_array_elt("ECL-PDE"), #if defined(unix) || defined(netbsd) || defined(openbsd) || defined(linux) || defined(darwin) || \ - defined(freebsd) || defined(dragonfly) || defined(kfreebsd) || defined(gnu) || defined(nsk) + defined(freebsd) || defined(dragonfly) || defined(kfreebsd) || defined(gnu) || defined(nsk) || defined(aix) ecl_def_string_array_elt("UNIX"), #endif #ifdef BSD diff --git a/src/configure b/src/configure index eb41506fe..302c26ed5 100755 --- a/src/configure +++ b/src/configure @@ -5054,9 +5054,14 @@ LSP_FEATURES="(cons :android ${LSP_FEATURES})" clibs="-Wld=-lrld" ;; aix*) - PICFLAG='' + PICFLAG='-DPIC' thehost="aix" - shared="no" + THREAD_LIBS='-lpthread' + SHARED_LDFLAGS="-G -bsvr4 -brtl ${LDFLAGS}" + BUNDLE_LDFLAGS="-G -bsvr4 -brtl ${LDFLAGS}" + ECL_LDRPATH="-Wl,-R~A" + #SONAME="${SHAREDPREFIX}ecl.${SHAREDEXT}.SOVERSION" + #SONAME_LDFLAGS="-Wl,-soname,SONAME" ;; *) thehost="$host_os" @@ -10267,7 +10272,7 @@ ecl config.status 16.1.2 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" -Copyright (C) 2012 Free Software Foundation, Inc. +Copyright (C) Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." diff --git a/src/h/internal.h b/src/h/internal.h index 7f4edb0e9..53ed6b3e4 100755 --- a/src/h/internal.h +++ b/src/h/internal.h @@ -488,7 +488,7 @@ extern cl_fixnum ecl_runtime(void); #ifdef ECL_THREADS extern void ecl_process_yield(void); extern void print_lock(char *s, cl_object lock, ...); -#define print_lock(a,b,...) ((void)0) +#define print_lock(...) ((void)0) extern void ecl_get_spinlock(cl_env_ptr env, cl_object *lock); extern void ecl_giveup_spinlock(cl_object *lock); extern cl_object ecl_wait_on(cl_env_ptr env, cl_object (*condition)(cl_env_ptr, cl_object), cl_object o);