Index: config/inter/libparrot.pm =================================================================== --- config/inter/libparrot.pm (revision 39851) +++ config/inter/libparrot.pm (working copy) @@ -91,9 +91,9 @@ $conf->data->set( parrot_is_shared => $parrot_is_shared, - libparrot => $parrot_is_shared - ? '$(LIBPARROT_SHARED)' - : '$(LIBPARROT_STATIC)', + libparrot_for_makefile_only => $parrot_is_shared + ? '$(LIBPARROT_SHARED)' + : '$(LIBPARROT_STATIC)', ); # Set -rpath (or equivalent) for executables to find the Index: config/init/hints/linux.pm =================================================================== --- config/init/hints/linux.pm (revision 39851) +++ config/init/hints/linux.pm (working copy) @@ -13,6 +13,8 @@ my $ccflags = $conf->option_or_data('ccflags'); my $cc = $conf->option_or_data('cc'); my $linkflags = $conf->option_or_data('linkflags'); + my $share_ext = $conf->option_or_data('share_ext'); + my $version = $conf->option_or_data('VERSION'); my $verbose; $verbose = $conf->options->get('verbose'); @@ -142,9 +144,9 @@ has_dynamic_linking => 1, parrot_is_shared => 1, - libparrot_shared => 'libparrot$(SHARE_EXT).$(SOVERSION)', - libparrot_shared_alias => 'libparrot$(SHARE_EXT)', - libparrot_soname => '-Wl,-soname=libparrot$(SHARE_EXT).$(SOVERSION)', + libparrot_shared => "libparrot$share_ext.$version", + libparrot_shared_alias => "libparrot$share_ext", + libparrot_soname => "-Wl,-soname=libparrot$share_ext.$version", ); if ( ( split( m/-/, $conf->data->get_p5('archname'), 2 ) )[0] eq 'ia64' ) { Index: config/gen/makefiles/root.in =================================================================== --- config/gen/makefiles/root.in (revision 39851) +++ config/gen/makefiles/root.in (working copy) @@ -509,7 +509,9 @@ #ELSE:LIBPARROT_SHARED := @blib_dir@/@libparrot_shared@ # This line controls whether a static or shared library is built -LIBPARROT := @libparrot@ +# by Parrot's make. It is not useful otherwise (e.g., in +# lib/Parrot/Config/Generated.pm or config_lib.pasm). +LIBPARROT := @libparrot_for_makefile_only@ #IF(has_icu):ICU_SHARED := @icu_shared@ ALL_PARROT_LIBS := @libparrot_linkflags@ $(ICU_SHARED) $(C_LIBS)