From ea2e208cc138ca0214bd4b6bb85790da7ed85269 Mon Sep 17 00:00:00 2001 From: David Schleef Date: Wed, 25 Feb 2009 20:26:05 -0800 Subject: [PATCH] Change how win32/common/config.h is updated Generate win32/common/config.h-new directly from config.h.in, using shell variables in configure and some hard-coded information. Change top-level makefile so that 'make win32-update' copies the generated file to win32/common/config.h, which we keep in source control. It's kept in source control so that the git tree is buildable from VS. This change is similar to the one recently applied to GStreamer, except that it adds a few -base specific defines. --- Makefile.am | 2 + configure.ac | 43 ++++++- win32/common/config.h.in | 261 --------------------------------------- 3 files changed, 44 insertions(+), 262 deletions(-) delete mode 100644 win32/common/config.h.in diff --git a/Makefile.am b/Makefile.am index 6187b00ef..d3b5266c9 100644 --- a/Makefile.am +++ b/Makefile.am @@ -60,6 +60,8 @@ WIN32_COPY = \ win32-update: for f in $(WIN32_COPY); do cp $$f win32/common;done + cp $(top_builddir)/win32/common/config.h-new \ + $(top_srcdir)/win32/common/config.h include $(top_srcdir)/common/coverage/lcov.mak diff --git a/configure.ac b/configure.ac index 03aacdaaf..c7554bfb8 100644 --- a/configure.ac +++ b/configure.ac @@ -754,7 +754,6 @@ gst-libs/gst/tag/Makefile gst-libs/gst/pbutils/Makefile gst-libs/gst/video/Makefile tools/Makefile -win32/common/config.h pkgconfig/Makefile pkgconfig/gstreamer-audio.pc pkgconfig/gstreamer-audio-uninstalled.pc @@ -805,6 +804,48 @@ common/Makefile common/m4/Makefile m4/Makefile ) + +dnl Create the config.h file for Visual Studio builds +dnl Beware of spaces and /'s in some of the shell variable contents. +sed \ + -e 's/.*config.h.in.*autoheader.*/\/* Autogenerated config.h created for win32 Visual Studio builds *\/\n\n\/* PREFIX -- specifically added for Windows for easier moving *\/\n#define PREFIX "C:\\\\gstreamer"\n\n#define GST_INSTALL_PLUGINS_HELPER PREFIX "\\\\libexec\\\\gst-install-plugins-helper.exe"/' \ + -e 's/.* GETTEXT_PACKAGE$/#define GETTEXT_PACKAGE "'$GETTEXT_PACKAGE'"/' \ + -e 's/.* GST_DATADIR$/#define GST_DATADIR PREFIX "\\\\share"/' \ + -e 's/.* GST_LEVEL_DEFAULT$/#define GST_LEVEL_DEFAULT GST_LEVEL_ERROR/' \ + -e 's/.* GST_LICENSE$/#define GST_LICENSE "'$GST_LICENSE'"/' \ + -e 's/.* GST_MAJORMINOR$/#define GST_MAJORMINOR "'$GST_MAJORMINOR'"/' \ + -e "s,.* GST_PACKAGE_NAME$,#define GST_PACKAGE_NAME \"${GST_PACKAGE_NAME}\"," \ + -e 's/.* GST_PACKAGE_ORIGIN$/#define GST_PACKAGE_ORIGIN "Unknown package origin"/' \ + -e 's/.* HAVE_CPU_I386$/#define HAVE_CPU_I386 1/' \ + -e 's/.* HAVE_FGETPOS$/#define HAVE_FGETPOS 1/' \ + -e 's/.* HAVE_FSETPOS$/#define HAVE_FSETPOS 1/' \ + -e 's/.* HAVE_LIBXML2$/#define HAVE_LIBXML2 1/' \ + -e 's/.* HAVE_PROCESS_H$/#define HAVE_PROCESS_H 1/' \ + -e 's/.* HAVE_STDLIB_H$/#define HAVE_STDLIB_H 1/' \ + -e 's/.* HAVE_STRING_H$/#define HAVE_STRING_H 1/' \ + -e 's/.* HAVE_SYS_STAT_H$/#define HAVE_SYS_STAT_H 1/' \ + -e 's/.* HAVE_SYS_TYPES_H$/#define HAVE_SYS_TYPES_H 1/' \ + -e 's/.* HAVE_WIN32$/#define HAVE_WIN32 1/' \ + -e 's/.* HAVE_WINSOCK2_H$/#define HAVE_WINSOCK2_H 1/' \ + -e 's/.* HOST_CPU$/#define HOST_CPU "i686"/' \ + -e 's/.* LIBDIR$/#ifdef _DEBUG\n# define LIBDIR PREFIX "\\\\debug\\\\lib"\n#else\n# define LIBDIR PREFIX "\\\\lib"\n#endif/' \ + -e 's/.* LOCALEDIR$/#define LOCALEDIR PREFIX "\\\\share\\\\locale"/' \ + -e "s/.* PACKAGE$/#define PACKAGE \"$PACKAGE\"/" \ + -e 's/.* PACKAGE_BUGREPORT$/#define PACKAGE_BUGREPORT "http:\/\/bugzilla.gnome.org\/enter_bug.cgi?product=GStreamer"/' \ + -e "s/.* PACKAGE_NAME$/#define PACKAGE_NAME \"$PACKAGE_NAME\"/" \ + -e "s/.* PACKAGE_STRING$/#define PACKAGE_STRING \"$PACKAGE_STRING\"/" \ + -e 's/.* PACKAGE_TARNAME$/#define PACKAGE_TARNAME "'$PACKAGE_TARNAME'"/' \ + -e 's/.* PACKAGE_VERSION$/#define PACKAGE_VERSION "'$PACKAGE_VERSION'"/' \ + -e 's/.* PLUGINDIR$/#ifdef _DEBUG\n# define PLUGINDIR PREFIX "\\\\debug\\\\lib\\\\gstreamer-0.10"\n#else\n# define PLUGINDIR PREFIX "\\\\lib\\\\gstreamer-0.10"\n#endif/' \ + -e 's/.* USE_BINARY_REGISTRY$/#define USE_BINARY_REGISTRY/' \ + -e 's/.* VERSION$/#define VERSION "'$VERSION'"/' \ + -e "s/.* DEFAULT_AUDIOSINK$/#define DEFAULT_AUDIOSINK \"directaudiosink\"/" \ + -e "s/.* DEFAULT_VIDEOSINK$/#define DEFAULT_VIDEOSINK \"directdrawsink\"/" \ + -e "s/.* DEFAULT_VISUALIZER$/#define DEFAULT_VISUALIZER \"goom\"/" \ + config.h.in >win32/common/config.h-new + + + AC_OUTPUT AG_GST_OUTPUT_PLUGINS diff --git a/win32/common/config.h.in b/win32/common/config.h.in deleted file mode 100644 index a43d2fed0..000000000 --- a/win32/common/config.h.in +++ /dev/null @@ -1,261 +0,0 @@ -/* config.h.in. Generated from configure.ac by autoheader. */ -/* This copy of config.h.in is specifically for win32 Visual Studio builds */ - -/* defined if cdda headers are in a cdda/ directory */ -#undef CDPARANOIA_HEADERS_IN_DIR - -/* Default audio sink */ -#define DEFAULT_AUDIOSINK "directaudiosink" - -/* Default audio source */ -#undef DEFAULT_AUDIOSRC - -/* Default video sink */ -#define DEFAULT_VIDEOSINK "directdrawsink" - -/* Default video source */ -#undef DEFAULT_VIDEOSRC - -/* Default visualizer */ -#define DEFAULT_VISUALIZER "@DEFAULT_VISUALIZER@" - -/* Define to 1 if translation of program messages to the user's native - language is requested. */ -#undef ENABLE_NLS - -/* gettext package name */ -#define GETTEXT_PACKAGE "@GETTEXT_PACKAGE@" - -/* Defined if gcov is enabled to force a rebuild due to config.h changing */ -#undef GST_GCOV_ENABLED - -/* Default errorlevel to use */ -#undef GST_LEVEL_DEFAULT - -/* GStreamer license */ -#define GST_LICENSE "@GST_LICENSE@" - -/* package name in plugins */ -#define GST_PACKAGE_NAME "@GST_PACKAGE_NAME@" - -/* package origin */ -#define GST_PACKAGE_ORIGIN "@GST_PACKAGE_ORIGIN@" - -/* support for features: gstalsa */ -#undef HAVE_ALSA - -/* support for features: cdparanoia */ -#undef HAVE_CDPARANOIA - -/* Define if the host CPU is an Alpha */ -#undef HAVE_CPU_ALPHA - -/* Define if the host CPU is an ARM */ -#undef HAVE_CPU_ARM - -/* Define if the host CPU is a HPPA */ -#undef HAVE_CPU_HPPA - -/* Define if the host CPU is an x86 */ -#undef HAVE_CPU_I386 - -/* Define if the host CPU is a IA64 */ -#undef HAVE_CPU_IA64 - -/* Define if the host CPU is a M68K */ -#undef HAVE_CPU_M68K - -/* Define if the host CPU is a MIPS */ -#undef HAVE_CPU_MIPS - -/* Define if the host CPU is a PowerPC */ -#undef HAVE_CPU_PPC - -/* Define if the host CPU is a S390 */ -#undef HAVE_CPU_S390 - -/* Define if the host CPU is a SPARC */ -#undef HAVE_CPU_SPARC - -/* Define if the host CPU is a x86_64 */ -#undef HAVE_CPU_X86_64 - -/* Define if the GNU dcgettext() function is already present or preinstalled. - */ -#undef HAVE_DCGETTEXT - -/* Define to 1 if you have the header file. */ -#undef HAVE_DLFCN_H - -/* support for features: */ -#undef HAVE_EXTERNAL - -/* FIONREAD ioctl found in sys/filio.h */ -#undef HAVE_FIONREAD_IN_SYS_FILIO - -/* FIONREAD ioctl found in sys/ioclt.h */ -#undef HAVE_FIONREAD_IN_SYS_IOCTL - -/* defined if the compiler implements __func__ */ -#undef HAVE_FUNC - -/* defined if the compiler implements __FUNCTION__ */ -#undef HAVE_FUNCTION - -/* Define if the GNU gettext() function is already present or preinstalled. */ -#undef HAVE_GETTEXT - -/* support for features: gnomevfssrc */ -#undef HAVE_GNOME_VFS - -/* support for features: v4lsrc v4lmjpegsrc v4lmjpegsink */ -#undef HAVE_GST_V4L - -/* Define if you have the iconv() function. */ -#undef HAVE_ICONV - -/* Define to 1 if you have the header file. */ -#undef HAVE_INTTYPES_H - -/* Define to 1 if you have the `asound' library (-lasound). */ -#undef HAVE_LIBASOUND - -/* support for features: libvisual */ -#undef HAVE_LIBVISUAL - -/* Define if you have C99's lrint function. */ -#undef HAVE_LRINT - -/* Define if you have C99's lrintf function. */ -#undef HAVE_LRINTF - -/* Define to 1 if you have the header file. */ -#undef HAVE_MALLOC_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_MEMORY_H - -/* support for features: oggdemux oggmux */ -#undef HAVE_OGG - -/* support for features: pango */ -#undef HAVE_PANGO - -/* defined if the compiler implements __PRETTY_FUNCTION__ */ -#undef HAVE_PRETTY_FUNCTION - -/* Define if RDTSC is available */ -#undef HAVE_RDTSC - -/* Define to 1 if you have the header file. */ -#undef HAVE_REGEX_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_STDINT_H - -/* Define to 1 if you have the header file. */ -#define HAVE_STDLIB_H 1 - -/* Define to 1 if you have the header file. */ -#undef HAVE_STRINGS_H - -/* Define to 1 if you have the header file. */ -#define HAVE_STRING_H 1 - -/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_SOCKET_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_STAT_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_TYPES_H - -/* support for features: theoradec theoraenc */ -#undef HAVE_THEORA - -/* Define to 1 if you have the header file. */ -#undef HAVE_UNISTD_H - -/* Define if valgrind should be used */ -#undef HAVE_VALGRIND - -/* support for features: vorbisenc vorbisdec */ -#undef HAVE_VORBIS - -/* defined if vorbis_synthesis_restart is present */ -#undef HAVE_VORBIS_SYNTHESIS_RESTART - -/* support for features: ximagesink */ -#undef HAVE_X - -/* support for features: xshm */ -#undef HAVE_XSHM - -/* support for features: xvimagesink */ -#undef HAVE_XVIDEO - -/* gettext locale dir */ -#define LOCALEDIR PREFIX "\\share\\locale" - -/* Name of package */ -#define PACKAGE "@PACKAGE@" - -/* Define to the address where bug reports for this package should be sent. */ -#define PACKAGE_BUGREPORT "@PACKAGE_BUGREPORT@" - -/* Define to the full name of this package. */ -#define PACKAGE_NAME "@PACKAGE_NAME@" - -/* Define to the full name and version of this package. */ -#define PACKAGE_STRING "@PACKAGE_STRING@" - -/* Define to the one symbol short name of this package. */ -#define PACKAGE_TARNAME "@PACKAGE_TARNAME@" - -/* Define to the version of this package. */ -#define PACKAGE_VERSION "@PACKAGE_VERSION@" - -/* directory where plugins are located */ -#undef PLUGINDIR - -/* The size of a `char', as computed by sizeof. */ -#undef SIZEOF_CHAR - -/* The size of a `int', as computed by sizeof. */ -#undef SIZEOF_INT - -/* The size of a `long', as computed by sizeof. */ -#undef SIZEOF_LONG - -/* The size of a `short', as computed by sizeof. */ -#undef SIZEOF_SHORT - -/* The size of a `void*', as computed by sizeof. */ -#undef SIZEOF_VOIDP - -/* Define to 1 if you have the ANSI C header files. */ -#undef STDC_HEADERS - -/* Version number of package */ -#define VERSION "@VERSION@" - -/* Define to 1 if your processor stores words with the most significant byte - first (like Motorola and SPARC, unlike Intel and VAX). */ -#undef WORDS_BIGENDIAN - -/* Define to 1 if the X Window System is missing or not being used. */ -#undef X_DISPLAY_MISSING - -/* Define to `__inline__' or `__inline' if that's what the C compiler - calls it, or to nothing if 'inline' is not supported under any name. */ -#ifndef __cplusplus -#undef inline -#endif - - -/* PREFIX - specifically added for Windows for easier moving (same as in core) */ -#define PREFIX "C:\\gstreamer" - -#define GST_INSTALL_PLUGINS_HELPER PREFIX "\\libexec\\gst-install-plugins-helper.exe" - -- 2.34.1