yet so there's little that can be tested, but threads work at least.
* ./src/extras/libc.c: renamed strndup.c to libc.c because a few other
libc functions were added (strcasecmp, atof, getenv...).
work is still needed for missing functions. I only touched libvlc for
the moment, plugins will come in a long long while.
* ./bootstrap: moved MSVC project files generation here; use --update-msvc.
file from the makefile.
* ./msvc/*: moved the MSVC files here.
* ./src/extras/*: moved the extra code here (used to be in src/misc,
extras/GNUgetopt and extras/Win32_msvc).
* ./include/*: a few warning fixes.
* ./mozilla/npvlc_rc.rc, ./mozilla/vlcplugin.h: added the Ogg mime type to
the Mozilla plugin properties.
* ./debian/control: added libogg-dev and libvorbis-dev dependicies to the
Debian build script.
For the moment it spawns a separate window and seems to behave nastily
(read: crashes) when the target has sound, but the javascript interface
works perfectly, for instance.
To build it, I installed Mozilla development files in my mingw32 dir
and hacked mozilla-config so that it uses these files. I also hacked
jri_md.h and jni_md.h to put "defined(_MSC_VER) || defined(__MINGW32__)"
where it read "defined(_MSC_VER)". No other changes were necessary.
* ./include/main.h: removed p_vlc->i_status because it was not sufficient
to represent all the possible states of p_vlc; each part should be tested
separately upon destruction.
* ./src/misc/objects.c: fixed a signed/unsigned bug that prevented creation
of VLC_OBJECT_GENERIC objects.
* ./src/misc/variables.c: added the VLC_VAR_COMMAND type which is simply a
variable that stores a function pointer, and calls it when var_Get is
called for it. The function argument is taken in val.psz_string.
* ./src/misc/objects.c: vlc_dumpstructure and vlc_liststructure are no longer
exported to the rest of the program; instead, they're VLC_VAR_COMMAND vars
("tree" and "list").
* ./modules/control/rc/rc.c: moved a few commands to VLC_VAR_COMMAND vars.
* modules/demux/mpeg/ts.c: added an #include <stdint.h> to make mingw32 happy when
compiled with libdvbpsi.
* Makefile.am: fixed dependency problem with share/vlc_win32_rc.rc.
* ./include/vlc/vlc.h: changed the naming conventions for libvlc. Now
exported functions start with VLC_ instead of vlc_ to avoid conflicts.
* ./include/vlc/vlc.h: removed the vlc_object_t, vlc_list_t, vlc_error_t
and vlc_t types; they are now internal types only.
* ./include/vlc/vlc.h: merged the reentrant and non-reentrant libvlc
calls. In non-reentrant mode, we just use 0 as the first argument. In
reentrant mode, we use an object's ID. (see below)
Internal changes:
* ./src/libvlc.c, ./src/misc/objects.c: instead of manipulating vlc_object_t
pointers, we manipulate their i_object_id. When needed, an object is
retrieved using vlc_object_get (I hope the lookup isn't too expensive,
that's why I designed the pp_objects layout to allow log2(n) seeks).
* ./src/misc/objects.c: activated the per-object variable storage. Unused
yet, unless you want to try "getfoo" and "setfoo blablah" in vlc -I rc.
* ./include/vlc_objects.h: moved the vlc_object_t and vlc_list_t definitions
here.
Misc:
* ./src/vlc.c, ./mozilla/vlcshell.cpp: removed inclusion of config.h in
code portions not part of libvlc; it was just required for the
COPYRIGHT_MESSAGE string which is now available from VLC_Version().
don't seem to work very well if you are using autopoint, although
gettext 0.11.5 claims to be fully backwards compatible. Welcome to
automake hell.
* ./bootstrap: workaround which uses gettextize if you do not have
autopoint. We'll probably stay like this for a while, until gettext
0.11.x (which replaces gettextize with autopoint) becomes more
widespread. Currently this workaround seems to work, but don't expect
a clean tarball if you make dist without having used autopoint. Welcome
to automake hell.
unnoticeable apart from the extra dependency on autoconf, automake and
gettextize. See the new HACKING file for some information, especially if
you don't run Linux.
The current strategy is to have the configure script generate a nice
automake Makefile from Makefile.am, and then clobber it with our good
old dirty Makefile. Muahaha :-)