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 commit is contained in:
David Schleef 2009-02-23 13:01:11 -08:00
parent 279a80ff27
commit 81d012ecd9
3 changed files with 38 additions and 295 deletions

View file

@ -98,6 +98,8 @@ win32-update:
for f in gstversion.h gstenumtypes.c gstenumtypes.h; do \
cp $(top_builddir)/gst/$$f win32/common; done
$(top_srcdir)/tools/gst-indent win32/common/gstenumtypes.c
cp $(top_builddir)/win32/common/config.h-new \
$(top_srcdir)/win32/common/config.h
include $(top_srcdir)/common/coverage/lcov.mak

View file

@ -675,7 +675,6 @@ docs/pwg/Makefile
docs/slides/Makefile
docs/xsl/Makefile
docs/version.entities
win32/common/config.h
pkgconfig/Makefile
stamp.h
pkgconfig/gstreamer.pc
@ -694,6 +693,42 @@ gst-element-check.m4
gstreamer.spec
)
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"/' \
-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 "gstreamer"/' \
-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'"/' \
config.h.in >win32/common/config.h-new
AC_OUTPUT
dnl negate for output

View file

@ -1,294 +0,0 @@
/* config.h.in. Originally generated from configure.ac by autoheader. */
/* This copy of config.h.in is specifically for win32 Visual Studio builds */
/* 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@"
/* PREFIX - specifically added for Windows for easier moving */
#define PREFIX "C:\\gstreamer"
/* data dir */
#define GST_DATADIR PREFIX "\\share"
/* Location of registry */
#define GST_CACHE_DIR PREFIX "\\var\\cache"
/* Define if pipeline parsing code is disabled */
/* #undef GST_DISABLE_PARSE */
/* Defined if gcov is enabled to force a rebuild due to config.h changing */
/* #undef GST_GCOV_ENABLED */
/* Extra platform specific plugin suffix */
/* #undef GST_EXTRA_MODULE_SUFFIX */
/* macro to use to show function name */
/* #undef GST_FUNCTION */
/* Default errorlevel to use */
#define GST_LEVEL_DEFAULT @GST_LEVEL_DEFAULT@
/* GStreamer license */
#define GST_LICENSE "@GST_LICENSE@"
/* library major.minor version */
#define GST_MAJORMINOR "@GST_MAJORMINOR@"
/* package name in plugins */
#define GST_PACKAGE_NAME "@GST_PACKAGE_NAME@"
/* package origin */
#define GST_PACKAGE_ORIGIN "@GST_PACKAGE_ORIGIN@"
/* 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 CRIS */
#undef HAVE_CPU_CRIS
/* Define if the host CPU is a CRISv32 */
#undef HAVE_CPU_CRISV32
/* Define if the host CPU is a HPPA */
#undef HAVE_CPU_HPPA
/* Define if the host CPU is an x86 */
#define HAVE_CPU_I386 1
/* 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 64 bit PowerPC */
#undef HAVE_CPU_PPC64
/* 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
/* Defined if we have dladdr () */
#undef HAVE_DLADDR
/* Define to 1 if you have the <dlfcn.h> header file. */
#undef HAVE_DLFCN_H
/* Define to 1 if you have the `fgetpos' function. */
#define HAVE_FGETPOS 1
/* Define to 1 if fseeko (and presumably ftello) exists and is declared. */
#undef HAVE_FSEEKO
/* Define to 1 if you have the `fsetpos' function. */
#define HAVE_FSETPOS 1
/* Define to 1 if you have the `ftello' function. */
#undef HAVE_FTELLO
/* defined if the compiler implements __func__ */
#undef HAVE_FUNC
/* defined if the compiler implements __FUNCTION__ */
#undef HAVE_FUNCTION
/* Define to 1 if you have the `getpagesize' function. */
#undef HAVE_GETPAGESIZE
/* Define if the GNU gettext() function is already present or preinstalled. */
#undef HAVE_GETTEXT
/* Define if you have the iconv() function. */
#undef HAVE_ICONV
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
/* Define to 1 if you have the `nsl' library (-lnsl). */
#undef HAVE_LIBNSL
/* Define to 1 if you have the `resolv' library (-lresolv). */
#undef HAVE_LIBRESOLV
/* Define to 1 if you have the `socket' library (-lsocket). */
#undef HAVE_LIBSOCKET
/* Define if libxml2 is available */
#define HAVE_LIBXML2 1
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
/* Define to 1 if you have a working `mmap' system call. */
#undef HAVE_MMAP
/* Have a monotonic clock */
#undef HAVE_MONOTONIC_CLOCK
/* Define to 1 if you have the `poll' function. */
#undef HAVE_POLL
/* Have posix timers */
#undef HAVE_POSIX_TIMERS
/* Define to 1 if you have the `ppoll' function. */
#undef HAVE_PPOLL
/* defined if the compiler implements __PRETTY_FUNCTION__ */
#undef HAVE_PRETTY_FUNCTION
/* Defined if we have register_printf_function () */
#undef HAVE_PRINTF_EXTENSION
/* Define to 1 if you have the <process.h> header file. */
#define HAVE_PROCESS_H 1
/* Define to 1 if you have the `pselect' function. */
#undef HAVE_PSELECT
/* Define if RDTSC is available */
#undef HAVE_RDTSC
/* Define to 1 if you have the `sigaction' function. */
#undef HAVE_SIGACTION
/* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H
/* Define to 1 if you have the <stdio_ext.h> header file. */
#undef HAVE_STDIO_EXT_H
/* Define to 1 if you have the <stdlib.h> header file. */
#define HAVE_STDLIB_H 1
/* Define to 1 if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H
/* Define to 1 if you have the <string.h> header file. */
#define HAVE_STRING_H 1
/* Define to 1 if you have the <sys/socket.h> header file. */
#undef HAVE_SYS_SOCKET_H
/* Define to 1 if you have the <sys/stat.h> header file. */
#define HAVE_SYS_STAT_H 1
/* Define to 1 if you have the <sys/times.h> header file. */
#undef HAVE_SYS_TIMES_H
/* Define to 1 if you have the <sys/types.h> header file. */
#define HAVE_SYS_TYPES_H 1
/* Define to 1 if you have the <sys/utsname.h> header file. */
#undef HAVE_SYS_UTSNAME_H
/* Define to 1 if you have the <ucontext.h> header file. */
#undef HAVE_UCONTEXT_H
/* defined if unaligned memory access works correctly */
#undef HAVE_UNALIGNED_ACCESS
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
/* Define if valgrind should be used */
#undef HAVE_VALGRIND
/* Define to 1 if you have the <valgrind/valgrind.h> header file. */
#undef HAVE_VALGRIND_VALGRIND_H
/* Defined if compiling for Windows */
#define HAVE_WIN32 1
/* Define to 1 if you have the <winsock2.h> header file. */
#define HAVE_WINSOCK2_H 1
/* Define host CPU */
#define HOST_CPU "i686"
/* library dir */
#ifdef _DEBUG
# define LIBDIR PREFIX "\\debug\\lib"
#else
# define LIBDIR PREFIX "\\lib"
#endif
/* 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@"
/* Define the plugin directory */
#ifdef _DEBUG
# define PLUGINDIR PREFIX "\\debug\\lib\\gstreamer-0.10"
#else
# define PLUGINDIR PREFIX "\\lib\\gstreamer-0.10"
#endif
/* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS
/* Define if we should use binary registry instead xml registry */
#define USE_BINARY_REGISTRY
/* Define if we should poison deallocated memory */
#undef USE_POISONING
/* 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
/* Number of bits in a file offset, on hosts where this is settable. */
#undef _FILE_OFFSET_BITS
/* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */
#undef _LARGEFILE_SOURCE
/* Define for large files, on AIX-style hosts. */
#undef _LARGE_FILES
/* 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. */
/* #undef inline */