[vlc-devel] [PATCH 5/5] win32: package: install generated .pdb files with package-win-common
Martin Storsjö
martin at martin.st
Thu May 16 11:18:02 CEST 2019
On Thu, 16 May 2019, Martin Storsjö wrote:
> On Thu, 16 May 2019, Steve Lhomme wrote:
>
>> ---
>> extras/package/win32/package.mak | 11 +++++++++++
>> 1 file changed, 11 insertions(+)
>>
>> diff --git a/extras/package/win32/package.mak
> b/extras/package/win32/package.mak
>> index 0d7e57bde6..54eabae64d 100644
>> --- a/extras/package/win32/package.mak
>> +++ b/extras/package/win32/package.mak
>> @@ -40,6 +40,11 @@ package-win-sdk: package-win-install
>> package-win-common: package-win-install package-win-sdk
>> # Executables, major libs
>> find $(prefix) -maxdepth 4 \( -name "*$(LIBEXT)" -o -name
> "*$(EXEEXT)" \) -exec cp {} "$(win32_destdir)/" \;
>> +if HAVE_PDB
>> + for dir in bin lib src; do \
>> + cp $$dir/.libs/*.pdb $(win32_destdir); \
>> + done
>> +endif
>>
>> # Text files, clean them from mail addresses
>> for file in AUTHORS THANKS ; \
>> @@ -55,6 +60,12 @@ package-win-common: package-win-install package-win-sdk
>> mkdir -p "$$plugin_destdir"; \
>> find "$$plugindir" -type f \( -not -name '*.la' -and -not
> -name '*.a' \) -exec cp -v "{}" "$$plugin_destdir" \; ;\
>> done
>> +if HAVE_PDB
>> + for plugindir in $(prefix)/lib/vlc/plugins/*/; do \
>> + plugin_destdir="$(win32_destdir)/plugins/`basename
> $$plugindir`"; \
>> + for plugin in $$(find "$$plugindir" -type f \( -not -name
> '*.la' -and -not -name '*.a' \)); do cp modules/.libs/$$(basename "$$plugin"
> | sed s/dll/pdb/) "$$plugin_destdir"; done; \
>> + done
>> +endif
>
> This patch seems confused. The produced pdb files are not in the .libs
> subdir, but directly in the normal directory (next to the .la files).
>
> When building with these patches, building fails at the install stage as
> the "cp $$dir/.libs/*.pdb" command fails as there is no such file.
>
> If you want them to be placed in the .libs subdir (to make running in the
> build tree easier), then you'd need to change patch 4/5 to place the
> output pdb in the .libs subdir instead.
Sorry, now I see, your libtool patch does this (I didn't try that one as I
thought it was only necessary for the --generate-pdb option).
I guess it's tolerable then.
I would have preferred to patch libtool less (yes, we require a few
libtool patches in general, but the fewer the better; and the existing
ones that I added are at least "upstreamed" to msys2) and keep the extra
pdb specific logic in the vlc makefile. But I agree it's cleaner to have
all the handling of the .libs subdir in libtool, consistently.
// Martin
More information about the vlc-devel
mailing list