2 BUILT_SOURCES_distclean
+= \
3 extras
/package
/win32
/NSIS
/vlc.win32.nsi extras
/package
/win32
/NSIS
/spad.nsi
6 win32_destdir
=$(abs_top_builddir
)/vlc-
$(VERSION
)
7 win32_debugdir
=$(abs_top_builddir
)/symbols-
$(VERSION
)
8 win32_xpi_destdir
=$(abs_top_builddir
)/vlc-plugin-
$(VERSION
)
10 7Z_OPTS
=-t7z
-m0
=lzma
-mx
=9 -mfb
=64 -md
=32m
-ms
=on
14 include extras
/package
/npapi.am
18 WINVERSION
=vlc-
$(VERSION
)-win64
20 WINVERSION
=vlc-
$(VERSION
)-win32
28 package-win-common
: package-win-install build-npapi
29 mkdir
-p
"$(win32_destdir)"/
31 # Executables, major libs+manifests
32 find
$(prefix) -maxdepth
4 \
( -name
"*$(LIBEXT)" -o
-name
"*$(EXEEXT)" \
) -exec cp
{} "$(win32_destdir)/" \
;
33 cd
$(top_srcdir
)/extras
/package
/win32
&& cp vlc
$(EXEEXT
).manifest libvlc
$(LIBEXT
).manifest
"$(win32_destdir)/"
35 # Text files, clean them from mail addresses
36 for file in AUTHORS THANKS
; \
37 do sed
's/@/_AT_/' < "$(srcdir)/$$file" > "$(win32_destdir)/$${file}.txt"; \
39 for file in NEWS COPYING README
; \
40 do cp
"$(srcdir)/$$file" "$(win32_destdir)/$${file}.txt"; \
43 cp
$(srcdir)/share
/icons
/vlc.ico
$(win32_destdir
)
44 cp
-r
$(prefix)/lib
/vlc
/plugins
$(win32_destdir
)
45 -cp
-r
$(prefix)/share
/locale
$(win32_destdir
)
48 mkdir
-p
$(win32_destdir
)/lua
/
49 cp
-r
$(prefix)/lib
/vlc
/lua
/* $(prefix)/share
/vlc
/lua
/* $(win32_destdir
)/lua
/
53 rm -fr
$(win32_destdir
)/skins
54 cp
-r
$(prefix)/share
/vlc
/skins2
$(win32_destdir
)/skins
57 cp
"$(top_builddir)/npapi-vlc/activex/axvlc.dll.manifest" "$(win32_destdir)/"
58 cp
"$(top_builddir)/npapi-vlc/installed/lib/axvlc.dll" "$(win32_destdir)/"
59 cp
"$(top_builddir)/npapi-vlc/npapi/package/npvlc.dll.manifest" "$(win32_destdir)/"
60 cp
"$(top_builddir)/npapi-vlc/installed/lib/npvlc.dll" "$(win32_destdir)/"
62 # Compiler shared DLLs, when using compilers built with --enable-shared
63 # The shared DLLs may not necessarily be in the first LIBRARY_PATH, we
64 # should check them all.
65 -library_path_list
=`$(CXX) -v /dev/null 2>&1 | grep ^LIBRARY_PATH|cut -d= -f2` ;\
67 for x in
$$library_path_list ;\
69 test -f
"$$x/libstdc++-6.dll" && cp
"$$x/libstdc++-6.dll" "$(win32_destdir)/" ; \
70 test -f
"$$x/libgcc_s_sjlj-1.dll" && cp
"$$x/libgcc_s_sjlj-1.dll" "$(win32_destdir)/" ; \
71 test -f
"$$x/libwinpthread-1.dll" && cp
"$$x/libwinpthread-1.dll" "$(win32_destdir)/" ; \
72 test -f
"$$x/../bin/libwinpthread-1.dll" && cp
"$$x/../bin/libwinpthread-1.dll" "$(win32_destdir)/" ; \
76 mkdir
-p
"$(win32_destdir)/sdk/lib/"
77 cp
-r
$(prefix)/include "$(win32_destdir)/sdk"
78 cp
-r
$(prefix)/lib
/pkgconfig
"$(win32_destdir)/sdk/lib"
79 cd
$(prefix)/lib
&& cp
-rv libvlc.la libvlccore.la
"$(win32_destdir)/sdk/lib/"
80 cd
$(prefix)/lib
&& cp
-rv libvlc.dll.a
"$(win32_destdir)/sdk/lib/libvlc.lib"
81 cd
$(prefix)/lib
&& cp
-rv libvlccore.dll.a
"$(win32_destdir)/sdk/lib/libvlccore.lib"
82 $(DLLTOOL
) -D libvlc.dll
-l
"$(win32_destdir)/sdk/lib/libvlc.lib" -d
"$(top_builddir)/lib/.libs/libvlc.dll.def" "$(prefix)/bin/libvlc.dll"
83 echo
"INPUT(libvlc.lib)" > "$(win32_destdir)/sdk/lib/vlc.lib"
84 $(DLLTOOL
) -D libvlccore.dll
-l
"$(win32_destdir)/sdk/lib/libvlccore.lib" -d
"$(top_builddir)/src/.libs/libvlccore.dll.def" "$(prefix)/bin/libvlccore.dll"
85 echo
"INPUT(libvlccore.lib)" > "$(win32_destdir)/sdk/lib/vlccore.lib"
87 mkdir
-p
"$(win32_destdir)/sdk/activex/"
88 cd
$(top_builddir
)/npapi-vlc
&& cp activex
/README.TXT share
/test/test.html
$(win32_destdir
)/sdk
/activex
/
90 # Convert to DOS line endings
91 find
$(win32_destdir
) -type f \
( -name
"*xml" -or
-name
"*html" -or
-name
'*js' -or
-name
'*css' -or
-name
'*hosts' -or
-iname
'*txt' -or
-name
'*.cfg' -or
-name
'*.lua' \
) -exec
$(U2D
) {} \
;
94 find
$(win32_destdir
)/plugins
/ -type f \
( -name
'*.a' -or
-name
'*.la' \
) -exec
rm -rvf
{} \
;
97 package-win-strip
: package-win-common
98 mkdir
-p
"$(win32_debugdir)"/
99 cd
$(win32_destdir
); find .
-type f \
( -name
'*$(LIBEXT)' -or
-name
'*$(EXEEXT)' \
) | while read i
; \
100 do if
test -n
"$$i" ; then \
101 $(OBJCOPY
) --only-keep-debug
"$$i" "$(win32_debugdir)/`basename $$i.dbg`"; \
102 $(OBJCOPY
) --strip-all
"$$i" ; \
103 $(OBJCOPY
) --add-gnu-debuglink
="$(win32_debugdir)/`basename $$i.dbg`" "$$i" ; \
108 package-win32-webplugin-common
: package-win-strip
109 mkdir
-p
"$(win32_xpi_destdir)/"
110 cp
-r
$(win32_destdir
)/plugins
/ "$(win32_xpi_destdir)/"
111 find
$(prefix) -maxdepth
4 -name
"*$(LIBEXT)" -exec cp
{} "$(win32_xpi_destdir)/" \
;
112 cp
$(top_builddir
)/npapi-vlc
/npapi
/package
/npvlc.dll.manifest
"$(win32_xpi_destdir)/plugins/"
113 cp
"$(top_srcdir)/extras/package/win32/libvlc.dll.manifest" "$(win32_xpi_destdir)/plugins/"
114 rm -rf
"$(win32_xpi_destdir)/plugins/gui/"
117 package-win32-xpi
: package-win32-webplugin-common
118 cp
$(top_builddir
)/npapi-vlc
/npapi
/package
/install.rdf
"$(win32_xpi_destdir)/"
119 cd
$(win32_xpi_destdir
) && zip
-r
-9 "../vlc-$(VERSION).xpi" install.rdf plugins
122 package-win32-crx
: package-win32-webplugin-common
123 cp
$(top_builddir
)/npapi-vlc
/npapi
/package
/manifest.json
"$(win32_xpi_destdir)/"
124 crxmake
--pack-extension
"$(win32_xpi_destdir)" \
125 --extension-output
"$(win32_destdir)/vlc-$(VERSION).crx" --ignore-file
install.rdf
128 # nsis is a 32-bits installer, we need to build a 32bits DLL
129 $(win32_destdir
)/NSIS
/UAC.dll
: extras
/package
/win32
/NSIS
/UAC
/runas.
cpp extras
/package
/win32
/NSIS
/UAC
/uac.
cpp
130 mkdir
-p
"$(win32_destdir)/NSIS/"
132 i686-w64-mingw32-g
++ $^
-shared
-o
$@
-lole32
-static-libstdc
++ -static-libgcc
133 i686-w64-mingw32-strip
$@
135 $(CXX
) $^
-D_WIN32_IE
=0x0601 -D__forceinline
=inline
-shared
-o
$@
-lole32
-static-libstdc
++ -static-libgcc
138 $(win32_destdir
)/NSIS
/nsProcess.dll
: extras
/package
/win32
/NSIS
/nsProcess
/nsProcess.c extras
/package
/win32
/NSIS
/nsProcess
/pluginapi.c
139 mkdir
-p
"$(win32_destdir)/NSIS/"
141 i686-w64-mingw32-gcc
$^
-shared
-o
$@
-lole32
-static-libgcc
142 i686-w64-mingw32-strip
$@
144 $(CC
) $^
-D_WIN32_IE
=0x0601 -shared
-o
$@
-lole32
-static-libgcc
149 package-win32-exe
: package-win-strip
$(win32_destdir
)/NSIS
/UAC.dll
$(win32_destdir
)/NSIS
/nsProcess.dll
151 cp
$(top_builddir
)/extras
/package
/win32
/NSIS
/vlc.win32.nsi
"$(win32_destdir)/"
152 cp
$(top_builddir
)/extras
/package
/win32
/NSIS
/spad.nsi
"$(win32_destdir)/"
153 cp
-r
$(srcdir)/extras
/package
/win32
/NSIS
/languages
"$(win32_destdir)/"
154 cp
-r
$(srcdir)/extras
/package
/win32
/NSIS
/helpers
"$(win32_destdir)/"
155 mkdir
-p
"$(win32_destdir)/NSIS/"
156 cp
"$(top_srcdir)/extras/package/win32/NSIS/UAC.nsh" "$(win32_destdir)/NSIS/"
157 cp
"$(top_srcdir)/extras/package/win32/NSIS/nsProcess.nsh" "$(win32_destdir)/NSIS/"
160 if makensis
-VERSION
>/dev
/null
2>&1; then \
161 MAKENSIS
="makensis"; \
162 elif
[ -x
"/cygdrive/c/Program Files/NSIS/makensis" ]; then \
163 MAKENSIS
="/cygdrive/c/Program\ Files/NSIS/makensis"; \
164 elif
[ -x
"$(PROGRAMFILES)/NSIS/makensis" ]; then \
165 MAKENSIS
="$(PROGRAMFILES)/NSIS/makensis"; \
166 elif wine
--version
>/dev
/null
2>&1; then \
167 MAKENSIS
="wine C:/Program\ Files/NSIS/makensis.exe"; \
169 echo
'Error: cannot locate makensis tool'; exit
1; \
171 eval
"$$MAKENSIS $(win32_destdir)/spad.nsi"; \
172 eval
"$$MAKENSIS $(win32_destdir)/vlc.win32.nsi"
174 package-win32-zip
: package-win-strip
175 rm -f
-- $(WINVERSION
).zip
176 zip
-r
-9 $(WINVERSION
).zip vlc-
$(VERSION
) --exclude \
*.nsi \
*NSIS\
* \
*languages\
* \
*sdk\
* \
*helpers\
* spad\
*
178 package-win32-debug-zip
: package-win-common
179 rm -f
-- $(WINVERSION
)-debug.zip
180 zip
-r
-9 $(WINVERSION
)-debug.zip vlc-
$(VERSION
)
182 package-win32-7zip
: package-win-strip
183 7z a
$(7Z_OPTS
) $(WINVERSION
).7z vlc-
$(VERSION
)
185 package-win32-debug-7zip
: package-win-common
186 7z a
$(7Z_OPTS
) $(WINVERSION
)-debug
.7z vlc-
$(VERSION
)
188 package-win32-cleanup
:
189 rm -Rf
$(win32_destdir
) $(win32_debugdir
) $(win32_xpi_destdir
)
191 package-win32
: package-win32-zip package-win32-7zip package-win32-exe package-win32-xpi
193 package-win32-debug
: package-win32-debug-zip package-win32-debug-7zip
199 package-wince
: package-win-strip
200 rm -f
-- vlc-
$(VERSION
)-wince.zip
201 zip
-r
-9 vlc-
$(VERSION
)-wince.zip vlc-
$(VERSION
)
203 .PHONY
: package-win-install package-win-common package-win-strip package-win32-webplugin-common package-win32-xpi package-win32-crx package-win32-exe package-win32-zip package-win32-debug-zip package-win32-7zip package-win32-debug-7zip package-win32-cleanup package-win32 package-win32-debug package-wince