Commit 7602c536 authored by Gildas Bazin's avatar Gildas Bazin

- The ./configure script is more friendly for Win32 users.

    ( xvideo, x11 and dsp plugins are not enabled by default for win32,
      plus a few other Win32 cosmetic changes )
- Updated the INSTALL-win32.txt file.

(Let's hope I didn't break anything ;-)
parent 48f385ee
...@@ -17,7 +17,7 @@ To store a debug log of the current vlc session, you can use ...@@ -17,7 +17,7 @@ To store a debug log of the current vlc session, you can use
If you want to play a DVD, run vlc and click on the Disc option in the If you want to play a DVD, run vlc and click on the Disc option in the
interface. You then have to type your drive letter in the 'Device name' interface. You then have to type your drive letter in the 'Device name'
box (eg. 'D:' if your dvdrom drive is assigned the letter 'D'). box (eg. 'D:' if your dvdrom drive is assigned the letter 'D').
(Warning: you have to be in administrator mode (for now) on Win2k) ( !Warning: you have to be in administrator mode (for now) on Win2k )
Building VideoLAN from source code Building VideoLAN from source code
...@@ -35,27 +35,48 @@ You can build the win32 vlc port in two ways: ...@@ -35,27 +35,48 @@ You can build the win32 vlc port in two ways:
- natively on Windows - natively on Windows
- or on Linux, using cross-compiling - or on Linux, using cross-compiling
All these tools can be found on the libSDL web page: All the necessary tools can be found on the libSDL web page:
http://www.libsdl.org/Xmingw32/ http://www.libsdl.org/Xmingw32/
Configuring VideoLAN - cross-compiling with mingw32:
==================== You need to download the linux cross-compiler version of mingw32.
(for Debian GNU/Linux users, there is a mingw32 package)
You must also not forget to install some extra header files and libraries if
you want to build some plugins like DirectX, GTK or SDL.
A typical way to configure vlc is: - compiling natively on Windoze:
[coming soon (investigating a combination of cygwin+mingw32)]
./configure --disable-x11 --disable-xvideo --disable-dsp --disable-sdl \ Configuring the build
--with-directx=/usr/local/cross-compile/i386-mingw32msvc =====================
A typical way to configure the build process of vlc is to use the
`./configure' script.
See `./configure --help' for more information. See `./configure --help' for more information.
To cross-compile for the Win32 platform using mingw32: For example if you are cross-compiling from Debian, you can use something
along those lines:
make distclean ; CC=i586-mingw32msvc-gcc \
./configure --host=i586-mingw32msvc --target=i586-mingw32msvc \
--build=i386-linux --with-gtk-config-path=/usr/i586-mingw32msvc/bin \
--with-sdl-config-path=/usr/i586-mingw32msvc/bin
make distclean ; CC=i586-mingw32msvc-gcc CFLAGS=-I/usr/i586-mingw32msvc \ ./configure uses the 'gtk-config' and 'sdl-config' scripts and unfortunately,
RANLIB=i586-mingw32msvc-ranlib WINDRES=i586-mingw32msvc-windres \ when cross-compiling you have to tell ./configure where to find them.
./configure --host=i386-mingw32msvc \ You have two choices for this, you can either add the path to these files at
--target=i386-mingw32msvc --build=i386-linux --disable-dsp \ the beginning of your PATH variable. Or you can use the
--disable-x11 --disable-xvideo '--with-gtk/sdl-config-path' option.
(by the way, you may have to create a gtk-config script yourself or modify
the one from your linux distro)
If you are cross-compiling using the package provided by
http://www.libsdl.org/Xmingw32/, you can use something along those lines:
make distclean ; PATH=/usr/local/cross-tools/bin:/usr/local/cross-tools/i386-mingw32msvc/bin:$PATH \
./configure --host=i386-mingw32msvc \
--target=i386-mingw32msvc --build=i386-linux
Building VideoLAN Building VideoLAN
================= =================
...@@ -66,10 +87,10 @@ the core application. The configure script tries to guess for you. ...@@ -66,10 +87,10 @@ the core application. The configure script tries to guess for you.
Once configured, run `make' to build vlc. Once configured, run `make' to build vlc.
If you are using the tools from http://www.libsdl.org/Xmingw32/ you can type something like:
PATH=/usr/local/cross-tools/bin:/usr/local/cross-tools/i386-mingw32msvc/bin:$PATH \
make
Well done, now you're ready to use vlc!
This diff is collapsed.
...@@ -31,7 +31,7 @@ dnl Check for tools ...@@ -31,7 +31,7 @@ dnl Check for tools
AC_PROG_MAKE_SET AC_PROG_MAKE_SET
AC_PROG_CC AC_PROG_CC
AC_PROG_CPP AC_PROG_CPP
AC_PROG_RANLIB AC_CHECK_TOOL(RANLIB, ranlib, :)
dnl AM_PROG_LIBTOOL dnl AM_PROG_LIBTOOL
AC_PROG_INSTALL AC_PROG_INSTALL
...@@ -388,6 +388,31 @@ if test x"$ac_cv_ld_altivec" != x"no"; then ...@@ -388,6 +388,31 @@ if test x"$ac_cv_ld_altivec" != x"no"; then
LIB_ALTIVEC="-framework vecLib" LIB_ALTIVEC="-framework vecLib"
fi fi
dnl
dnl Check the operating system
dnl
case ${target_os} in
bsdi*)
SYS=bsdi
;;
darwin*)
SYS=darwin
;;
*mingw32*)
SYS=mingw32
;;
*)
SYS=${target_os}
;;
esac
dnl
dnl Windoze specific section
dnl
if test $SYS = mingw32; then
AC_CHECK_TOOL(WINDRES, windres, :)
fi
dnl dnl
dnl libdvdcss: check for DVD ioctls dnl libdvdcss: check for DVD ioctls
dnl dnl
...@@ -480,21 +505,6 @@ AC_CHECK_HEADERS(sys/ioctl.h,[ ...@@ -480,21 +505,6 @@ AC_CHECK_HEADERS(sys/ioctl.h,[
fi fi
]) ])
dnl
dnl Check the operating system
dnl
case ${target_os} in
bsdi*)
SYS=bsdi
;;
darwin*)
SYS=darwin
;;
*)
SYS=${target_os}
;;
esac
dnl dnl
dnl Special arch tuning dnl Special arch tuning
dnl dnl
...@@ -736,11 +746,13 @@ else ...@@ -736,11 +746,13 @@ else
dnl dnl
dnl OSS /dev/dsp module dnl OSS /dev/dsp module
dnl (enabled by default except on win32)
dnl dnl
AC_ARG_ENABLE(dsp, AC_ARG_ENABLE(dsp,
[ --disable-dsp Linux /dev/dsp support (default enabled)]) [ --disable-dsp Linux /dev/dsp support (default enabled)])
if test x$enable_dsp != xno if test x$enable_dsp != xno &&
(test $SYS != mingw32 || test x$enable_dsp = xyes)
then then
if test -c /dev/dsp if test -c /dev/dsp
then then
...@@ -888,28 +900,35 @@ fi ...@@ -888,28 +900,35 @@ fi
dnl dnl
dnl Windows DirectX module dnl Windows DirectX module
dnl dnl
AC_ARG_WITH(directx, AC_ARG_ENABLE(directx,
[ --with-directx[=name] Windows DirectX support (default enabled)], [ --disable-directx Windows DirectX support (default enabled on WIN32)],
[ if test "x$withval" != "xno" [ if test "x$enableval" != "xno"
then then
PLUGINS="${PLUGINS} directx" PLUGINS="${PLUGINS} directx"
if test "x$withval" != "xyes" if test "x$enableval" = "xyes"
then then
LIB_DIRECTX="${LIB_DIRECTX} -L"$withval"/lib -lgdi32 -ldxguid" AC_CHECK_HEADERS(directx.h, [LIB_DIRECTX="-lgdi32 -ldxguid"],
INCLUDE="${INCLUDE} -I"$withval"/include" AC_MSG_ERROR([Cannot find DirectX headers !]))
else else
AC_CHECK_HEADERS(directx.h, , AC_MSG_CHECKING(for directX headers in ${enableval})
AC_MSG_ERROR([Cannot find DirectX headers !]) if test -f ${enableval}/include/directx.h
) then
LIB_DIRECTX="${LIB_DIRECTX} -L/usr/lib -lgdi32 -ldxguid" LIB_DIRECTX="-L${enableval}/lib -lgdi32 -ldxguid"
INCLUDE="${INCLUDE} -I${enableval}/include"
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
AC_MSG_ERROR([Cannot find ${enableval}/include/directx.h!])
fi
fi fi
fi ]) fi ],
if test "x$withval" = "x" [ if test $SYS = mingw32
then then
AC_CHECK_HEADERS(directx.h, AC_CHECK_HEADERS(directx.h,
[PLUGINS="${PLUGINS} directx" [ PLUGINS="${PLUGINS} directx"
LIB_DIRECTX="${LIB_DIRECTX} -L/usr/lib -lgdi32 -ldxguid"]) LIB_DIRECTX="-lgdi32 -ldxguid" ],
fi [ echo "Cannot find DirectX headers !" ])
fi ])
dnl dnl
dnl Glide module dnl Glide module
...@@ -1005,8 +1024,15 @@ AC_ARG_ENABLE(gtk, ...@@ -1005,8 +1024,15 @@ AC_ARG_ENABLE(gtk,
[ --disable-gtk Gtk+ support (default enabled)]) [ --disable-gtk Gtk+ support (default enabled)])
if test x$enable_gtk != xno if test x$enable_gtk != xno
then then
GTK_PATH=$PATH
AC_ARG_WITH(gtk-config-path,
[ --with-gtk-config-path=path gtk-config path (default search in \$PATH)],
[ if test "x$withval" != "xno"
then
GTK_PATH=$withval:$PATH
fi ])
# look for gtk-config # look for gtk-config
AC_PATH_PROG(GTK_CONFIG, gtk-config, no) AC_PATH_PROG(GTK_CONFIG, gtk-config, no, $GTK_PATH)
if test -x ${GTK_CONFIG} if test -x ${GTK_CONFIG}
then then
CFLAGS_GTK="`${GTK_CONFIG} --cflags gtk`" CFLAGS_GTK="`${GTK_CONFIG} --cflags gtk`"
...@@ -1024,10 +1050,12 @@ fi ...@@ -1024,10 +1050,12 @@ fi
dnl dnl
dnl X11 module dnl X11 module
dnl (enabled by default except on win32)
dnl dnl
AC_ARG_ENABLE(x11, AC_ARG_ENABLE(x11,
[ --disable-x11 X11 support (default enabled)]) [ --disable-x11 X11 support (default enabled)])
if test x$enable_x11 != xno; then if test x$enable_x11 != xno &&
(test $SYS != mingw32 || test x$enable_x11 = xyes); then
if test x$x_includes = xNONE; then if test x$x_includes = xNONE; then
x_includes=/usr/X11R6/include x_includes=/usr/X11R6/include
fi fi
...@@ -1046,10 +1074,12 @@ fi ...@@ -1046,10 +1074,12 @@ fi
dnl dnl
dnl XVideo module dnl XVideo module
dnl (enabled by default except on win32)
dnl dnl
AC_ARG_ENABLE(xvideo, AC_ARG_ENABLE(xvideo,
[ --disable-xvideo XVideo support (default enabled)]) [ --disable-xvideo XVideo support (default enabled)])
if test x$enable_xvideo != xno; then if test x$enable_xvideo != xno &&
(test $SYS != mingw32 || test x$enable_xvideo = xyes); then
if test x$x_includes = xNONE; then if test x$x_includes = xNONE; then
x_includes=/usr/X11R6/include x_includes=/usr/X11R6/include
fi fi
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment