Follow-up Comment #1, bug #29634 (project gnustep):

Well done Jamison!

Not only this is the right place to report the bug, but your fix looks spot
on :-)

Great stuff.  A few comments -

 * in newer versions of gnustep-make, we're trying to allow people to use
LIBRARY_NAME=Foo and LIBRARY_NAME=libFoo interchangeably.  It shouldn't matter
which of the two they use; the result should be the same. (one reason is to
support native-library.make, another reason is that people often simply forget
about adding 'lib' at the beginning and we want to make life easy for people).
 For this reason alone, using GNUSTEP_INSTANCE in
GNUSTEP_SHARED_BUNDLE_INSTALL_PATH is definitely wrong; GNUSTEP_INSTANCE might
or might not contain 'lib'.  We should either use LIBRARY_NAME_WITH_LIB or
LIBRARY_NAME_WITHOUT_LIB instead, so the behaviour is consistent and clearly
specified. :-)

 * depending on whether we replace GNUSTEP_INSTANCE with
LIBRARY_NAME_WITH_LIB or LIBRARY_NAME_WITHOUT_LIB, we'll (potentially) break
some existing makefiles.  Unfortunately, there's nothing we can do about
that.

 * I'm pretty sure we actually want to use LIBRARY_NAME_WITHOUT_LIB as you
suggest.  For a number of reasons:

 1. the "documentation" (aka comments inside Instance/library.make) mention 

GNUSTEP_LIBRARY/Libraries/gnustep-base/Versions/1.14/Resources/

so I guess that is the documented, expected behaviour. :-)

 2. frameworks put resources into directories without "lib" and it's good to
be consistent with frameworks

 3. most users who use library resources managed by gnustep-make are using
native-library.make, a wrapper around library.make (or framework.make) which
will generally be used without 'lib'.  If we use LIBRARY_NAME_WITHOUT_LIB, we
won't break these makefiles.

 4. gnustep-base, gnustep-gui and others does use library resources and have
'lib' in the LIBRARY_NAME, but uses resource-set.make to install them.  And
again, they install into a directory without 'lib', so if we ever eventually
want to move these to use library.make directly and the resource support
available there, we want library.make to create the directory without 'lib'.

So, I'll apply your fix.  I'll also update the gnustep-make release notes to
explain that some makefiles might potentially be broken by the fix, if they
were relying on library resources being installed into a directory with 'lib'
in the name.  People with this problem who need to support older versions of
gnustep-make may need to remove 'lib' from their LIBRARY_NAME.

Thanks

    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?29634>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/



_______________________________________________
Bug-gnustep mailing list
Bug-gnustep@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-gnustep

Reply via email to