You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Stefan Sperling <st...@elego.de> on 2014/03/13 12:47:35 UTC

SVN_INTL_LIBS is not defined (was: Re: svn commit: r1574710 - in /subversion/trunk: ./ build/generator/ ...)

On Thu, Mar 06, 2014 at 01:00:17PM +0100, Stefan Sperling wrote:
> On Thu, Mar 06, 2014 at 10:34:33AM +0100, Branko Čibej wrote:
> > Of course we use libintl on Unix, and we can't assume it's a system
> > library. It's not on OSX, which is very much Unix, for example.
> 
> I couldn't find any definition for $(SVN_INTL_LIBS), referenced in
> build.conf here:
> 
> [intl]
> type = lib
> external-lib = $(SVN_INTL_LIBS)
> 
> This led me to the conclusion that $(SVN_INTL_LIBS) is not defined
> on *nix. But perhaps that conclusion is wrong, and I'm supposed to
> see such a definition somewhere? Or is it only defined in some
> circumstances?

I found that -lintl gets added to $LIBS if I enable gettext support.
And that, indeed, libintl is a separate library.

However, I still don't understand what $(SVN_INTL_LIBS) is for.

Is SVN_INTL_LIBS used on any platform? If not, I'd like to remove it because
it interferes with generation of pkg-config files. Otherwise, I'll need to
know in which circumstances it is being used.

$ grep -r SVN_INTL_LIBS *
build-outputs.mk:       cd subversion/libsvn_subr && $(LINK_LIB) $(libsvn_subr_LDFLAGS) -o libsvn_subr-1.la $(LT_NO_UNDEFINED) $(libsvn_subr_OBJECTS) $(SVN_APRUTIL_LIBS) $(SVN_APR_LIBS) $(SVN_XML_LIBS) $(SVN_ZLIB_LIBS) $(SVN_APR_MEMCACHE_LIBS) $(SVN_SQLITE_LIBS) $(SVN_MAGIC_LIBS) $(SVN_INTL_LIBS) $(LIBS)
build.conf:external-lib = $(SVN_INTL_LIBS)
grep: subversion/tests/cmdline/svn-test-work: No such file or directory
$ grep -- -lintl Makefile                                                                                             
SVN_GNOME_KEYRING_LIBS = -L/usr/local/lib -lgnome-keyring -lglib-2.0 -lintl
LIBS = -lintl
$ 

RE: SVN_INTL_LIBS is not defined

Posted by Bert Huijben <be...@qqmail.nl>.

> -----Original Message-----
> From: 'Stefan Sperling' [mailto:stsp@elego.de]
> Sent: donderdag 13 maart 2014 14:34
> To: Bert Huijben
> Cc: 'Branko Čibej'; dev@subversion.apache.org
> Subject: Re: SVN_INTL_LIBS is not defined
> 
> On Thu, Mar 13, 2014 at 01:19:18PM +0100, Bert Huijben wrote:
> > It is at least used by the Windows build for dependency tracking. It
uses
> $(SVN_*_LIBS) as pointer to dependency definitions by parsing this
> argument.
> 
> Can you show me files in which it is used?

build/generator/gen_win.py has a line
for elib in re.findall('\$\(SVN_([^\)]*)_LIBS\)', dep.external_lib):
(currently line 892)

> > Perhaps the value should be properly defined on !Windows as well instead
> of handling it magically in several scripts.
> 
> Sure. We could move -lint into SVN_INTL_LIBS instead of LIBS.
> Perhaps that was the intention in the first place.

	Bert


Re: SVN_INTL_LIBS is not defined

Posted by 'Stefan Sperling' <st...@elego.de>.
On Thu, Mar 13, 2014 at 01:19:18PM +0100, Bert Huijben wrote:
> It is at least used by the Windows build for dependency tracking. It uses $(SVN_*_LIBS) as pointer to dependency definitions by parsing this argument.

Can you show me files in which it is used?

> Perhaps the value should be properly defined on !Windows as well instead of handling it magically in several scripts.

Sure. We could move -lint into SVN_INTL_LIBS instead of LIBS.
Perhaps that was the intention in the first place.

RE: SVN_INTL_LIBS is not defined (was: Re: svn commit: r1574710 - in /subversion/trunk: ./ build/generator/ ...)

Posted by Bert Huijben <be...@qqmail.nl>.

> -----Original Message-----
> From: Stefan Sperling [mailto:stsp@elego.de]
> Sent: donderdag 13 maart 2014 12:48
> To: Branko Čibej; dev@subversion.apache.org
> Subject: SVN_INTL_LIBS is not defined (was: Re: svn commit: r1574710 - in
> /subversion/trunk: ./ build/generator/ ...)
> 
> On Thu, Mar 06, 2014 at 01:00:17PM +0100, Stefan Sperling wrote:
> > On Thu, Mar 06, 2014 at 10:34:33AM +0100, Branko Čibej wrote:
> > > Of course we use libintl on Unix, and we can't assume it's a system
> > > library. It's not on OSX, which is very much Unix, for example.
> >
> > I couldn't find any definition for $(SVN_INTL_LIBS), referenced in
> > build.conf here:
> >
> > [intl]
> > type = lib
> > external-lib = $(SVN_INTL_LIBS)
> >
> > This led me to the conclusion that $(SVN_INTL_LIBS) is not defined
> > on *nix. But perhaps that conclusion is wrong, and I'm supposed to
> > see such a definition somewhere? Or is it only defined in some
> > circumstances?
> 
> I found that -lintl gets added to $LIBS if I enable gettext support.
> And that, indeed, libintl is a separate library.
> 
> However, I still don't understand what $(SVN_INTL_LIBS) is for.
> 
> Is SVN_INTL_LIBS used on any platform? If not, I'd like to remove it because
> it interferes with generation of pkg-config files. Otherwise, I'll need to
> know in which circumstances it is being used.
> 
> $ grep -r SVN_INTL_LIBS *
> build-outputs.mk:       cd subversion/libsvn_subr && $(LINK_LIB)
> $(libsvn_subr_LDFLAGS) -o libsvn_subr-1.la $(LT_NO_UNDEFINED)
> $(libsvn_subr_OBJECTS) $(SVN_APRUTIL_LIBS) $(SVN_APR_LIBS)
> $(SVN_XML_LIBS) $(SVN_ZLIB_LIBS) $(SVN_APR_MEMCACHE_LIBS)
> $(SVN_SQLITE_LIBS) $(SVN_MAGIC_LIBS) $(SVN_INTL_LIBS) $(LIBS)
> build.conf:external-lib = $(SVN_INTL_LIBS)
> grep: subversion/tests/cmdline/svn-test-work: No such file or directory
> $ grep -- -lintl Makefile
> SVN_GNOME_KEYRING_LIBS = -L/usr/local/lib -lgnome-keyring -lglib-2.0 -
> lintl
> LIBS = -lintl
> $

It is at least used by the Windows build for dependency tracking. It uses $(SVN_*_LIBS) as pointer to dependency definitions by parsing this argument.

Perhaps the value should be properly defined on !Windows as well instead of handling it magically in several scripts.

	Bert