On Fri, May 8, 2026 at 4:30 AM Jun Omae <[email protected]> wrote:
>
> On 2026/05/07 20:59, Jun Omae wrote:
> > On 2026/05/05 0:09, [email protected] wrote:
> >> Author: rinrab
> >> Date: Mon May  4 15:09:48 2026
> >> New Revision: 1933812
> >>
> >> Log:
> >> cmake: Import targets.cmake before processing dependencies; This would 
> >> allow
> >> potentially refering to those targets in dependency search. Although cmake
> >> allows to link a non-existing target, the target that it is linked to has 
> >> to be
> >> declared before.
> >>
> >> * CMakeLists.txt
> >>   (target_exports, ra-libs, fs-libs, the-include): Move them up.
> >>
> >> Modified:
> >>    subversion/trunk/CMakeLists.txt
> > Encountered another issue with SVN_ENABLE_NLS=ON on macOS and Windows....
> >
> > [[[
> > FAILED: [code=1] libsvn_delta-1.0.16.0.dylib
> > : && /usr/bin/cc   -dynamiclib -Wl,-headerpad_max_install_names 
> > -current_version 0.16.0 -o libsvn_delta-1.0.16.0.dylib ...
> > Undefined symbols for architecture x86_64:
> >   "_libintl_dgettext", referenced from:
> >       _write_handler in svndiff.c.o
> >       _write_handler in svndiff.c.o
> >       _write_handler in svndiff.c.o
> >       _close_handler in svndiff.c.o
> >       _svn_txdelta_read_svndiff_window in svndiff.c.o
> >       _read_window_header in svndiff.c.o
> >       _read_window_header in svndiff.c.o
> >       _read_window_header in svndiff.c.o
> >       _read_window_header in svndiff.c.o
> >       _read_window_header in svndiff.c.o
> >       _read_window_header in svndiff.c.o
> >       ...
> > ld: symbol(s) not found for architecture x86_64
> > clang: error: linker command failed with exit code 1 (use -v to see 
> > invocation)
> > ]]]
> >
> > [[[
> > V:\usr\src\subversion\subversion.git\Release\cmake\svn_private_config.h(126,11):
> >  error C1083: Cannot open include file: 'libintl.h':
> >  No such file or directory 
> > [V:\usr\src\subversion\subversion.git\Release\cmake\libsvn_fs_util.vcxproj]
> >  (compiling source file '../../subversion/libsvn_fs_util/fs-util.c')
> > ]]]
> Proposed patch, cmake-nls-r1933902.patch.txt, attached.
>
>  * Find gettext and intl packages before include(../targets.cmake).
>  * Use include_directories("${Intl_INCLUDE_DIRS}") rather than
>    set_target_properties(Intl::Intl PROPERTIES INTERFACE_INCLUDE_DIRECTORIES 
> "${Intl_INCLUDE_DIRS}" ...)
>    because svn_private_config.h globally includes <libintl.h>.
>
> I confirmed that the builds successfully on Ubuntu, macOS and Windows.

Your fix looks fine. Again, I'm really really sorry for the need for
those follow-ups.

Now as I think, it might be better to revert this change. I wanted to
move this include to the top because I need the targets available to
tune a tiny thing in one of the dependencies but I don't know I might
have simply done it with this specific one so I don't break the trunk
once again. Thoughts?

-- 
Timofei Zhakov

Reply via email to