From a38f6a7bae86ad804fc8630229e08a5d933564db Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?R=C3=A9mi=20Denis-Courmont?= <remi@remlab.net>
Date: Mon, 16 Sep 2013 18:53:55 +0300
Subject: [PATCH] modules: fix Windows build

---
 modules/Makefile.am                   | 13 ++++++++++++-
 modules/access/Makefile.am            | 10 +---------
 modules/access/rtp/Makefile.am        |  3 ---
 modules/audio_filter/Modules.am       |  3 ---
 modules/audio_mixer/Makefile.am       |  3 ---
 modules/audio_output/Modules.am       |  6 ------
 modules/codec/Makefile.am             |  7 -------
 modules/common.am                     |  9 +--------
 modules/demux/Makefile.am             |  6 ------
 modules/gui/qt4/Makefile.am           |  1 -
 modules/misc/Modules.am               |  3 ---
 modules/module.rc.in                  |  2 +-
 modules/mux/Modules.am                |  3 ---
 modules/services_discovery/Modules.am |  4 ----
 modules/stream_filter/Makefile.am     |  9 ---------
 modules/stream_out/Modules.am         |  6 ------
 modules/video_filter/Modules.am       |  6 ------
 modules/video_output/Modules.am       |  5 -----
 18 files changed, 15 insertions(+), 84 deletions(-)

diff --git a/modules/Makefile.am b/modules/Makefile.am
index 428002d67d5f..b62842cb43e9 100644
--- a/modules/Makefile.am
+++ b/modules/Makefile.am
@@ -66,6 +66,17 @@ dummy.cpp:
 	touch dummy.cpp
 
 if HAVE_WIN32
-module.rc: $(top_builddir)/modules/module.rc.in $(top_builddir)/config.status
+BUILT_SOURCES += module.rc.lo
+CLEANFILES += module.rc
+#noinst_DATA = module.rc.lo
+
+module.rc: module.rc.in $(top_builddir)/config.status
 	$(AM_V_GEN) cd "$(top_builddir)" && $(SHELL) ./config.status --file="modules/$@"
+
+module.rc.lo: module.rc
+	$(AM_V_GEN) $(LIBTOOL) --tag=RC --mode=compile $(WINDRES) \
+		--include-dir $(top_srcdir)/share \
+		--include-dir $(top_srcdir)/extras/package/win32 \
+		-i $< -o $@
+	echo HELLO
 endif
diff --git a/modules/access/Makefile.am b/modules/access/Makefile.am
index b15574a0da2f..b29511012556 100644
--- a/modules/access/Makefile.am
+++ b/modules/access/Makefile.am
@@ -132,9 +132,6 @@ endif
 
 libshm_plugin_la_SOURCES = access/shm.c
 libshm_plugin_la_LIBADD = $(LIBM)
-if HAVE_WIN32
-libshm_plugin_la_DEPENDENCIES = libshm_plugin.rc.o
-endif
 access_LTLIBRARIES += libshm_plugin.la
 
 libqtcapture_plugin_la_SOURCES = access/qtcapture.m
@@ -169,7 +166,6 @@ libdshow_plugin_la_SOURCES = access/dshow/vlc_dshow.h access/dshow/dshow.cpp acc
 libdshow_plugin_la_LIBADD = -lole32 -loleaut32 -luuid -lstrmiids -lksuser
 if HAVE_WIN32
 access_LTLIBRARIES += libdshow_plugin.la
-libdshow_plugin_la_DEPENDENCIES = libdshow_plugin.rc.o
 endif
 
 
@@ -189,7 +185,6 @@ if HAVE_WIN32
 libscreen_plugin_la_SOURCES += access/screen/win32.c
 libscreen_plugin_la_LIBADD = -lgdi32
 access_LTLIBRARIES += libscreen_plugin.la
-libscreen_plugin_la_DEPENDENCIES = libscreen_plugin.rc.o
 endif
 if HAVE_MAC_SCREEN
 libscreen_plugin_la_SOURCES += access/screen/mac.c
@@ -266,9 +261,6 @@ EXTRA_LTLIBRARIES += liblibbluray_plugin.la
 
 libaccess_bd_plugin_la_SOURCES = access/bd/bd.c access/bd/mpls.c access/bd/mpls.h access/bd/clpi.c access/bd/clpi.h
 access_LTLIBRARIES += libaccess_bd_plugin.la
-if HAVE_WIN32
-libaccess_bd_plugin_la_DEPENDENCIES = libaccess_bd_plugin.rc.o
-endif
 
 
 ### Digital TV ###
@@ -297,7 +289,7 @@ libbda_la_LDFLAGS = -static
 libbda_la_LIBADD = -lstrmiids -lole32 -loleaut32 -luuid
 noinst_LTLIBRARIES += libbda.la
 
-libdtv_plugin_la_DEPENDENCIES = libbda.la libdtv_plugin.rc.o
+libdtv_plugin_la_DEPENDENCIES = libbda.la
 libdtv_plugin_la_LIBADD = libbda.la -lstdc++
 access_LTLIBRARIES += libdtv_plugin.la
 endif
diff --git a/modules/access/rtp/Makefile.am b/modules/access/rtp/Makefile.am
index e34432997427..235822a921e7 100644
--- a/modules/access/rtp/Makefile.am
+++ b/modules/access/rtp/Makefile.am
@@ -35,9 +35,6 @@ librtp_plugin_la_CFLAGS += -DHAVE_SRTP $(GCRYPT_CFLAGS)
 librtp_plugin_la_LIBADD += libvlc_srtp.la $(GCRYPT_LIBS)
 librtp_plugin_la_DEPENDENCIES += libvlc_srtp.la
 endif
-if HAVE_WIN32
-librtp_plugin_la_DEPENDENCIES += librtp_plugin.rc.o
-endif
 
 lcov-run:
 	rm -Rf *.gcda lcov
diff --git a/modules/audio_filter/Modules.am b/modules/audio_filter/Modules.am
index 25d2df2fb769..21d2022e14a2 100644
--- a/modules/audio_filter/Modules.am
+++ b/modules/audio_filter/Modules.am
@@ -73,9 +73,6 @@ EXTRA_LTLIBRARIES += \
 libspeex_resampler_plugin_la_SOURCES = resampler/speex.c
 libspeex_resampler_plugin_la_CFLAGS = $(AM_CFLAGS) $(SPEEXDSP_CFLAGS)
 libspeex_resampler_plugin_la_LIBADD = $(SPEEXDSP_LIBS)
-if HAVE_WIN32
-libspeex_resampler_plugin_la_DEPENDENCIES = libspeex_resampler_plugin.rc.o
-endif
 if HAVE_SPEEXDSP
 audio_filter_LTLIBRARIES += libspeex_resampler_plugin.la
 endif
diff --git a/modules/audio_mixer/Makefile.am b/modules/audio_mixer/Makefile.am
index f018a4c907a3..d0479ddb6079 100644
--- a/modules/audio_mixer/Makefile.am
+++ b/modules/audio_mixer/Makefile.am
@@ -3,9 +3,6 @@ audio_mixerdir = $(pluginsdir)/audio_mixer
 
 libfloat_mixer_plugin_la_SOURCES = float.c
 libfloat_mixer_plugin_la_LIBADD = $(LIBM)
-if HAVE_WIN32
-libfloat_mixer_plugin_la_DEPENDENCIES = libfloat_mixer_plugin.rc.o
-endif
 
 libinteger_mixer_plugin_la_SOURCES = integer.c
 
diff --git a/modules/audio_output/Modules.am b/modules/audio_output/Modules.am
index a0ca52e121c1..bba16fa9e4f1 100644
--- a/modules/audio_output/Modules.am
+++ b/modules/audio_output/Modules.am
@@ -56,18 +56,12 @@ endif
 
 libmmdevice_plugin_la_SOURCES = mmdevice.c mmdevice.h wasapi.c
 libmmdevice_plugin_la_LIBADD = -lole32 -lksuser
-if HAVE_WIN32
-libmmdevice_plugin_la_DEPENDENCIES = libmmdevice_plugin.rc.o
-endif
 if HAVE_WASAPI
 aout_LTLIBRARIES += libmmdevice_plugin.la
 endif
 
 libdirectsound_plugin_la_SOURCES = directx.c windows_audio_common.h
 libdirectsound_plugin_la_LIBADD = -lole32
-if HAVE_WIN32
-libdirectsound_plugin_la_DEPENDENCIES = libdirectsound_plugin.rc.o
-endif
 if HAVE_DIRECTX
 aout_LTLIBRARIES += libdirectsound_plugin.la
 endif
diff --git a/modules/codec/Makefile.am b/modules/codec/Makefile.am
index 9db48a827b0d..2bdad4d5aa72 100644
--- a/modules/codec/Makefile.am
+++ b/modules/codec/Makefile.am
@@ -245,9 +245,6 @@ endif
 libavcodec_plugin_la_CFLAGS = $(AM_CFLAGS) $(AVCODEC_CFLAGS)
 libavcodec_plugin_la_LIBADD = $(AVCODEC_LIBS) $(LIBM)
 libavcodec_plugin_la_LDFLAGS = $(AM_LDFLAGS) $(SYMBOLIC_LDFLAGS)
-if HAVE_WIN32
-libavcodec_plugin_la_DEPENDENCIES = libavcodec_plugin.rc.o
-endif
 
 if MERGE_FFMPEG
 libavcodec_plugin_la_SOURCES += demux/avformat/demux.c access/avio.c
@@ -281,7 +278,6 @@ libdxva2_plugin_la_LIBADD = -lole32 -lshlwapi -luuid
 if HAVE_AVCODEC_DXVA2
 codec_LTLIBRARIES += libdxva2_plugin.la
 endif
-libdxva2_plugin_la_DEPENDENCIES = libdxva2_plugin.rc.o
 
 libvda_plugin_la_SOURCES = \
 	codec/avcodec/copy.c codec/avcodec/copy.h \
@@ -299,9 +295,6 @@ libhwdummy_plugin_la_LIBADD = $(AVCODEC_LIBS)
 if HAVE_AVCODEC_VDPAU
 codec_LTLIBRARIES += libhwdummy_plugin.la
 endif
-if HAVE_WIN32
-libhwdummy_plugin_la_DEPENDENCIES = libhwdummy_plugin.rc.o
-endif
 
 
 ### OpenMAX ###
diff --git a/modules/common.am b/modules/common.am
index d941fa69ebb4..e6d03ddb7eed 100644
--- a/modules/common.am
+++ b/modules/common.am
@@ -32,13 +32,6 @@ AM_LDFLAGS = \
 	-shrext $(LIBEXT) \
 	-no-undefined \
 	$(LTLIBVLCCORE) $(top_builddir)/compat/libcompat.la $(LIBPTHREAD)
-
 if HAVE_WIN32
-AM_LDFLAGS += -Wl,lib$(MODULE_NAME)_plugin.rc.$(OBJEXT)
-
-$(top_builddir)/modules/module.rc: $(top_builddir)/modules/module.rc.in $(top_builddir)/config.status
-	$(AM_V_GEN) cd "$(top_builddir)" && $(SHELL) ./config.status --file="modules/module.rc"
-
-lib%_plugin.rc.$(OBJEXT): $(top_builddir)/modules/module.rc
-	$(AM_V_GEN) $(WINDRES) -DMODULE_NAME=\\\"$(MODULE_NAME)\\\" --include-dir $(top_srcdir)/share --include-dir $(top_srcdir)/extras/package/win32 -i $< -o $@
+AM_LDFLAGS += $(top_builddir)/modules/module.rc.lo
 endif
diff --git a/modules/demux/Makefile.am b/modules/demux/Makefile.am
index 1252e73e88bb..ab6d827579eb 100644
--- a/modules/demux/Makefile.am
+++ b/modules/demux/Makefile.am
@@ -146,9 +146,6 @@ endif
 if HAVE_DARWIN
 libavformat_plugin_la_LDFLAGS += -Wl,-read_only_relocs,suppress
 endif
-if HAVE_WIN32
-libavformat_plugin_la_DEPENDENCIES = libavformat_plugin.rc.o
-endif
 if HAVE_AVFORMAT
 demux_LTLIBRARIES += libavformat_plugin.la
 endif
@@ -215,9 +212,6 @@ demux_LTLIBRARIES += libplaylist_plugin.la
 libts_plugin_la_SOURCES = demux/ts.c mux/mpeg/csa.c mux/mpeg/dvbpsi_compat.h demux/dvb-text.h
 libts_plugin_la_CFLAGS = $(AM_CFLAGS) $(DVBPSI_CFLAGS)
 libts_plugin_la_LIBADD = $(DVBPSI_LIBS) $(SOCKET_LIBS)
-if HAVE_WIN32
-libts_plugin_la_DEPENDENCIES = libts_plugin.rc.o
-endif
 if HAVE_DVBPSI
 demux_LTLIBRARIES += libts_plugin.la
 endif
diff --git a/modules/gui/qt4/Makefile.am b/modules/gui/qt4/Makefile.am
index 1e3a725c9c68..f0b8095ec093 100644
--- a/modules/gui/qt4/Makefile.am
+++ b/modules/gui/qt4/Makefile.am
@@ -21,7 +21,6 @@ if HAVE_OS2
 else
 if HAVE_WIN32
 libqt4_plugin_la_LIBADD += -lole32
-libqt4_plugin_la_DEPENDENCIES = libqt4_plugin.rc.o
 else
 libqt4_plugin_la_LIBADD += $(X_LIBS) $(X_PRE_LIB) -lX11
 endif
diff --git a/modules/misc/Modules.am b/modules/misc/Modules.am
index 8a0a3c5953e7..37377b37e361 100644
--- a/modules/misc/Modules.am
+++ b/modules/misc/Modules.am
@@ -41,9 +41,6 @@ liblogger_plugin_la_SOURCES = logger.c
 if HAVE_ANDROID
 liblogger_plugin_la_LIBADD = -llog
 endif
-if HAVE_WIN32
-liblogger_plugin_la_DEPENDENCIES = liblogger_plugin.rc.o
-endif
 
 libstats_plugin_la_SOURCES = stats.c
 
diff --git a/modules/module.rc.in b/modules/module.rc.in
index 275dbd7c5cd4..b75c7256161c 100644
--- a/modules/module.rc.in
+++ b/modules/module.rc.in
@@ -15,7 +15,7 @@ BEGIN
       VALUE "ProductName", "VLC media player"
       VALUE "ProductVersion", VERSION_NUMBER_STR
       VALUE "FileVersion", "@VERSION@"
-      VALUE "FileDescription", MODULE_NAME
+      VALUE "FileDescription", "LibVLC plugin"
       VALUE "LegalCopyright", "Copyright \251 @COPYRIGHT_YEARS@ VideoLAN and VLC Authors"
       VALUE "LegalTrademarks", "VLC media player, VideoLAN and x264 are registered trademarks from VideoLAN"
     END
diff --git a/modules/mux/Modules.am b/modules/mux/Modules.am
index b9c43bb3a9f3..255c939e481e 100644
--- a/modules/mux/Modules.am
+++ b/modules/mux/Modules.am
@@ -27,9 +27,6 @@ libmux_ts_plugin_la_SOURCES = \
 	mpeg/ts.c mpeg/bits.h mpeg/dvbpsi_compat.h
 libmux_ts_plugin_la_CFLAGS = $(AM_CFLAGS) $(DVBPSI_CFLAGS)
 libmux_ts_plugin_la_LIBADD = $(DVBPSI_LIBS)
-if HAVE_WIN32
-libmux_ts_plugin_la_DEPENDENCIES = libmux_ts_plugin.rc.o
-endif
 if HAVE_DVBPSI
 mux_LTLIBRARIES += libmux_ts_plugin.la
 endif
diff --git a/modules/services_discovery/Modules.am b/modules/services_discovery/Modules.am
index bf5a5f2c8aa8..00023bf3a783 100644
--- a/modules/services_discovery/Modules.am
+++ b/modules/services_discovery/Modules.am
@@ -10,9 +10,6 @@ SOURCES_mediadirs = mediadirs.c
 libsap_plugin_la_SOURCES = sap.c
 libsap_plugin_la_CFLAGS = $(AM_CFLAGS) $(CFLAGS_sap)
 libsap_plugin_la_LIBADD = $(LIBS_sap) $(SOCKET_LIBS)
-if HAVE_WIN32
-libsap_plugin_la_DEPENDENCIES = libsap_plugin.rc.o
-endif
 sd_LTLIBRARIES += libsap_plugin.la
 
 libpulselist_plugin_la_SOURCES = pulse.c
@@ -43,7 +40,6 @@ endif
 libwindrive_plugin_la_SOURCES = windrive.c
 if HAVE_WIN32
 sd_LTLIBRARIES += libwindrive_plugin.la
-libwindrive_plugin_la_DEPENDENCIES = libwindrive_plugin.rc.o
 endif
 
 libos2drive_plugin_la_SOURCES = os2drive.c
diff --git a/modules/stream_filter/Makefile.am b/modules/stream_filter/Makefile.am
index 59e471fd7e40..159e823983b7 100644
--- a/modules/stream_filter/Makefile.am
+++ b/modules/stream_filter/Makefile.am
@@ -94,9 +94,6 @@ libdash_plugin_la_SOURCES = \
 libdash_plugin_la_CXXFLAGS = $(AM_CFLAGS) -I$(srcdir)/dash
 libdash_plugin_la_LIBADD = $(SOCKET_LIBS)
 stream_filter_LTLIBRARIES += libdash_plugin.la
-if HAVE_WIN32
-libdash_plugin_la_DEPENDENCIES = libdash_plugin.rc.o
-endif
 
 libsmooth_plugin_la_SOURCES = \
     smooth/smooth.c \
@@ -105,17 +102,11 @@ libsmooth_plugin_la_SOURCES = \
     smooth/smooth.h
 
 libsmooth_plugin_la_CFLAGS = $(AM_CFLAGS)
-if HAVE_WIN32
-libsmooth_plugin_la_DEPENDENCIES = libsmooth_plugin.rc.o
-endif
 stream_filter_LTLIBRARIES += libsmooth_plugin.la
 
 libhttplive_plugin_la_SOURCES = httplive.c
 libhttplive_plugin_la_CFLAGS = $(AM_CFLAGS) $(GCRYPT_CFLAGS)
 libhttplive_plugin_la_LIBADD = $(GCRYPT_LIBS) -lgpg-error
-if HAVE_WIN32
-libhttplive_plugin_la_DEPENDENCIES = libhttplive_plugin.rc.o
-endif
 if HAVE_GCRYPT
 stream_filter_LTLIBRARIES += libhttplive_plugin.la
 endif
diff --git a/modules/stream_out/Modules.am b/modules/stream_out/Modules.am
index 2b046926a538..9e2403397fca 100644
--- a/modules/stream_out/Modules.am
+++ b/modules/stream_out/Modules.am
@@ -46,9 +46,6 @@ libstream_out_rtp_plugin_la_SOURCES = \
 	rtp.c rtp.h rtpfmt.c rtcp.c rtsp.c vod.c
 libstream_out_rtp_plugin_la_CFLAGS = $(AM_CFLAGS)
 libstream_out_rtp_plugin_la_LIBADD = $(SOCKET_LIBS)
-if HAVE_WIN32
-libstream_out_rtp_plugin_la_DEPENDENCIES = libstream_out_rtp_plugin.rc.o
-endif
 if HAVE_GCRYPT
 SRTP_CFLAGS = -I$(top_srcdir)/modules/access/rtp
 SRTP_LIBS = $(top_builddir)/modules/access/rtp/libvlc_srtp.la
@@ -61,9 +58,6 @@ endif
 libstream_out_raop_plugin_la_SOURCES = raop.c
 libstream_out_raop_plugin_la_CFLAGS = $(AM_CFLAGS) $(GCRYPT_CFLAGS)
 libstream_out_raop_plugin_la_LIBADD = $(GCRYPT_LIBS) -lgpg-error $(LIBS_stream_out_raop)
-if HAVE_WIN32
-libstream_out_raop_plugin_la_DEPENDENCIES = libstream_out_raop_plugin.rc.o
-endif
 if HAVE_GCRYPT
 stream_out_LTLIBRARIES += libstream_out_raop_plugin.la
 endif
diff --git a/modules/video_filter/Modules.am b/modules/video_filter/Modules.am
index fa3d24499bf6..abd1c765b62e 100644
--- a/modules/video_filter/Modules.am
+++ b/modules/video_filter/Modules.am
@@ -29,9 +29,6 @@ if HAVE_NEON
 libdeinterlace_plugin_la_SOURCES += deinterlace/merge_arm.S
 libdeinterlace_plugin_la_CFLAGS += -DCAN_COMPILE_ARM
 endif
-if HAVE_WIN32
-libdeinterlace_plugin_la_DEPENDENCIES = libdeinterlace_plugin.rc.o
-endif
 video_filter_LTLIBRARIES += libdeinterlace_plugin.la
 
 libdynamicoverlay_plugin_la_SOURCES = \
@@ -47,9 +44,6 @@ endif
 libremoteosd_plugin_la_SOURCES = remoteosd.c remoteosd_rfbproto.h
 libremoteosd_plugin_la_CFLAGS = $(AM_CFLAGS) $(GCRYPT_CFLAGS)
 libremoteosd_plugin_la_LIBADD = $(GCRYPT_LIBS) $(LIBS_remoteosd)
-if HAVE_WIN32
-libremoteosd_plugin_la_DEPENDENCIES = libremoteosd_plugin.rc.o
-endif
 if HAVE_GCRYPT
 video_filter_LTLIBRARIES += libremoteosd_plugin.la
 endif
diff --git a/modules/video_output/Modules.am b/modules/video_output/Modules.am
index 056ba85c77c8..ce496880e438 100644
--- a/modules/video_output/Modules.am
+++ b/modules/video_output/Modules.am
@@ -134,13 +134,11 @@ libwingdi_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) \
 libwingdi_plugin_la_LIBADD = -lgdi32 -lole32 -luuid
 if HAVE_WIN32
 vout_LTLIBRARIES += libwingdi_plugin.la
-libwingdi_plugin_la_DEPENDENCIES = libwingdi_plugin.rc.o
 endif
 
 libdrawable_plugin_la_SOURCES = drawable.c
 if HAVE_WIN32
 vout_LTLIBRARIES += libdrawable_plugin.la
-libdrawable_plugin_la_DEPENDENCIES = libdrawable_plugin.rc.o
 endif
 
 ### OS/2 ###
@@ -171,9 +169,6 @@ vout_LTLIBRARIES += $(LTLIBegl)
 libglx_plugin_la_SOURCES = glx.c
 libglx_plugin_la_CFLAGS = $(AM_CFLAGS) $(GL_CFLAGS)
 libglx_plugin_la_LIBADD = $(GL_LIBS) $(X_LIBS) $(X_PRE_LIBS) -lX11
-if HAVE_WIN32
-libglx_plugin_la_DEPENDENCIES = libglx_plugin.rc.o
-endif
 libglx_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(voutdir)'
 EXTRA_LTLIBRARIES += libglx_plugin.la
 vout_LTLIBRARIES += $(LTLIBglx)
-- 
GitLab