they may choose to build a platform-default library with the usual
platform-default extension, as part of the compilation process.
Modules built on HP/UX with the .sl extension, on OSX with .dylib,
or on OS2 or Win32 with .dll are perfectly legitimate loadable
modules, but don't pass muster with apxs.
This patch allows any of the common source library extensions to
be passed in, but makes .so the explicit target. The behavior
already works for .la origin files with an .so target name.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@170383
13f79535-47bb-0310-9956-
ffa450edef68
my @cmds = ();
my $f;
foreach $f (@args) {
- if ($f !~ m#(\.so$|\.la$)#) {
+ # ack all potential gcc, hp/ux, win32+os2+aix and os/x extensions
+ if ($f !~ m#(\.so$|\.la$|\.sl$|\.dll$|\.dylib$|)#) {
error("file $f is not a shared object");
exit(1);
}
my $t = $f;
$t =~ s|^.+/([^/]+)$|$1|;
- $t =~ s|\.la$|\.so|;
+ # use .so unambigiously for installed shared library modules
+ $t =~ s|\.[^./\\]+$|\.so|;
if ($opt_i) {
push(@cmds, "$installbuilddir/instdso.sh SH_LIBTOOL='" .
"$libtool' $f $CFG_LIBEXECDIR");