r14666: Fix handling of naming of shared modules when not in developer mode
authorJelmer Vernooij <jelmer@samba.org>
Wed, 22 Mar 2006 22:55:29 +0000 (22:55 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 18:59:06 +0000 (13:59 -0500)
(This used to be commit 2638899529ca17ee0557d4491a51c21437b581b3)

source4/build/smb_build/makefile.pm
source4/build/smb_build/output.pm

index 13b62553bfe96933d18534a5c1435b3711f6ae85..f2b6578130d04347ef169b66b91ae4ed8cdbd8b3 100644 (file)
@@ -207,17 +207,17 @@ sub SharedLibrary($$)
                push (@{$self->{shared_libs}}, "$ctx->{DEBUGDIR}/$ctx->{LIBRARY_REALNAME}");
                push (@{$self->{installable_shared_libs}}, "$installdir/$ctx->{LIBRARY_REALNAME}") if (defined($ctx->{SO_VERSION}));
        } elsif ($ctx->{TYPE} eq "MODULE") {
-               push (@{$self->{shared_modules}}, "$ctx->{DEBUGDIR}/$ctx->{FIXED_NAME}.\$(SHLIBEXT)");
+               push (@{$self->{shared_modules}}, "$ctx->{TARGET}");
                push (@{$self->{plugins}}, "$installdir/$ctx->{LIBRARY_REALNAME}");
 
-               $self->{install_plugins} .= "\t\@echo Installing $installdir/$ctx->{LIBRARY_REALNAME} as \$(DESTDIR)\$(MODULESDIR)/$ctx->{SUBSYSTEM}/$ctx->{FIXED_NAME}.\$(SHLIBEXT)\n";
+               $self->{install_plugins} .= "\t\@echo Installing $installdir/$ctx->{LIBRARY_REALNAME} as \$(DESTDIR)\$(MODULESDIR)/$ctx->{SUBSYSTEM}/$ctx->{LIBRARY_REALNAME}.\$(SHLIBEXT)\n";
                $self->{install_plugins} .= "\t\@mkdir -p \$(DESTDIR)\$(MODULESDIR)/$ctx->{SUBSYSTEM}/\n";
-               $self->{install_plugins} .= "\t\@cp $installdir/$ctx->{LIBRARY_REALNAME} \$(DESTDIR)\$(MODULESDIR)/$ctx->{SUBSYSTEM}/$ctx->{FIXED_NAME}.\$(SHLIBEXT)\n";
-               $self->{uninstall_plugins} .= "\t\@echo Uninstalling \$(DESTDIR)\$(MODULESDIR)/$ctx->{SUBSYSTEM}/$ctx->{FIXED_NAME}.\$(SHLIBEXT)\n";
-               $self->{uninstall_plugins} .= "\t\@-rm \$(DESTDIR)\$(MODULESDIR)/$ctx->{SUBSYSTEM}/$ctx->{FIXED_NAME}.\$(SHLIBEXT)\n";
+               $self->{install_plugins} .= "\t\@cp $installdir/$ctx->{LIBRARY_REALNAME} \$(DESTDIR)\$(MODULESDIR)/$ctx->{SUBSYSTEM}/$ctx->{LIBRARY_REALNAME}.\$(SHLIBEXT)\n";
+               $self->{uninstall_plugins} .= "\t\@echo Uninstalling \$(DESTDIR)\$(MODULESDIR)/$ctx->{SUBSYSTEM}/$ctx->{LIBRARY_REALNAME}.\$(SHLIBEXT)\n";
+               $self->{uninstall_plugins} .= "\t\@-rm \$(DESTDIR)\$(MODULESDIR)/$ctx->{SUBSYSTEM}/$ctx->{LIBRARY_REALNAME}.\$(SHLIBEXT)\n";
                if (defined($ctx->{ALIASES})) {
                        foreach (@{$ctx->{ALIASES}}) {
-                               $self->{install_plugins} .= "\t\@ln -fs $ctx->{FIXED_NAME}.\$(SHLIBEXT) \$(DESTDIR)\$(MODULESDIR)/$ctx->{SUBSYSTEM}/$_.\$(SHLIBEXT)\n";
+                               $self->{install_plugins} .= "\t\@ln -fs $ctx->{LIBRARY_REALNAME}.\$(SHLIBEXT) \$(DESTDIR)\$(MODULESDIR)/$ctx->{SUBSYSTEM}/$_.\$(SHLIBEXT)\n";
                                $self->{uninstall_plugins} .= "\t\@-rm \$(DESTDIR)\$(MODULESDIR)/$ctx->{SUBSYSTEM}/$_.\$(SHLIBEXT)\n";
                        }
                }
@@ -272,7 +272,7 @@ __EOD__
 );
                if (defined($ctx->{ALIASES})) {
                        foreach (@{$ctx->{ALIASES}}) {
-                               $self->output("\t\@ln -fs $ctx->{FIXED_NAME}.\$(SHLIBEXT) $ctx->{DEBUGDIR}/$_.\$(SHLIBEXT)\n");
+                               $self->output("\t\@ln -fs $ctx->{LIBRARY_REALNAME}.\$(SHLIBEXT) $ctx->{DEBUGDIR}/$_.\$(SHLIBEXT)\n");
                        }
                }
 
@@ -284,6 +284,7 @@ __EOD__
 
 $installdir/$ctx->{LIBRARY_REALNAME}: \$($ctx->{TYPE}_$ctx->{NAME}_DEPEND_LIST) \$($ctx->{TYPE}_$ctx->{NAME}_OBJ_LIST) $init_obj
        \@echo Linking \$\@
+       \@mkdir -p $installdir
        \@\$(SHLD) \$(SHLD_FLAGS) -o \$\@ \\
                \$($ctx->{TYPE}_$ctx->{NAME}_LINK_FLAGS) $soarg \\
                $init_obj \$($ctx->{TYPE}_$ctx->{NAME}_LINK_LIST)
index acff8574973241a9aaf10e95f84b61cf5b4f816f..8b7f774f26d169942fe39a0b0cb6f401ec14da00 100644 (file)
@@ -59,26 +59,23 @@ sub generate_shared_library($)
        }
 
        if ($lib->{TYPE} eq "MODULE") {
-               $lib->{FIXED_NAME} = $link_name;
-               $lib->{FIXED_NAME} =~ s/^$lib->{SUBSYSTEM}_//g;
-       }
-
-       $lib->{DEBUGDIR} = "bin";
-       $lib->{RELEASEDIR} = "bin/install";
-       $lib->{LIBRARY_REALNAME} = $lib->{LIBRARY_NAME} = "$lib_name.\$(SHLIBEXT)";
-
-       if (defined($lib->{VERSION})) {
-               $lib->{LIBRARY_SONAME} = $lib->{LIBRARY_NAME}.".$lib->{SO_VERSION}";
-               $lib->{LIBRARY_REALNAME} = $lib->{LIBRARY_NAME}.".$lib->{VERSION}";
-       } elsif ($lib->{TYPE} eq "MODULE") {
                $lib->{DEBUGDIR} = "bin/modules/$lib->{SUBSYSTEM}";
-       }
-
-       if (defined($lib->{FIXED_NAME})) {
-               $lib->{TARGET} = "$lib->{DEBUGDIR}/$lib->{FIXED_NAME}.\$(SHLIBEXT)";
+               $lib->{RELEASEDIR} = "bin/install/modules/$lib->{SUBSYSTEM}";
+               $lib->{LIBRARY_REALNAME} = $link_name;
+               $lib->{LIBRARY_REALNAME} =~ s/^$lib->{SUBSYSTEM}_//g;
+               $lib->{LIBRARY_REALNAME}.= ".\$(SHLIBEXT)";
        } else {
-               $lib->{TARGET} = "$lib->{DEBUGDIR}/$lib->{LIBRARY_REALNAME}";
+               $lib->{DEBUGDIR} = "bin";
+               $lib->{RELEASEDIR} = "bin/install";
+               $lib->{LIBRARY_REALNAME} = "$lib_name.\$(SHLIBEXT)";
        }
+
+       if (defined($lib->{VERSION})) {
+               $lib->{LIBRARY_SONAME} = $lib->{LIBRARY_REALNAME}.".$lib->{SO_VERSION}";
+               $lib->{LIBRARY_REALNAME} = $lib->{LIBRARY_REALNAME}.".$lib->{VERSION}";
+       } 
+       
+       $lib->{TARGET} = "$lib->{DEBUGDIR}/$lib->{LIBRARY_REALNAME}";
        $lib->{OUTPUT} = $lib->{TARGET};
 }