diff options
Diffstat (limited to 'main/vlc/uclibc-libcompat.patch')
-rw-r--r-- | main/vlc/uclibc-libcompat.patch | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/main/vlc/uclibc-libcompat.patch b/main/vlc/uclibc-libcompat.patch new file mode 100644 index 0000000000..e4008002f4 --- /dev/null +++ b/main/vlc/uclibc-libcompat.patch @@ -0,0 +1,81 @@ +commit c605c09bbc29d88619264c55c371c9dcbc839eda +Author: Natanael Copa <ncopa@alpinelinux.org> +Date: Thu Jul 29 19:20:17 2010 +0000 + + build: libcompat fix in case there are no functions to replace + + If the libc provides all the funcs in libcompat the libcompat.a will + never be created due to LIBOBJS is empty (normally it contains whatever + AC_REPLACE_FUNCS detects). This happens on uclibc. + + Since Makefile.am have a hardcoded LDADD to ../compat/libcompat.la things + goes bad when there is no libcompat.a at all. We solve this by checking + if LIBOBJS is set by AC_REPLACE_FUNCS and add libcompat via LTLIBCOMPAT. + + For alternative fixes see http://www.gnu.org/software/hello/manual/automake/LIBOBJS.html + +diff --git a/bin/Makefile.am b/bin/Makefile.am +index 92e6879..a941d99 100644 +--- a/bin/Makefile.am ++++ b/bin/Makefile.am +@@ -60,5 +60,5 @@ vlc_win32_rc.$(OBJEXT): vlc_win32_rc.rc + vlc_cache_gen_SOURCES = cachegen.c + vlc_cache_gen_LDADD = \ + $(GNUGETOPT_LIBS) \ +- ../compat/libcompat.la \ ++ $(LTLIBCOMPAT) \ + ../src/libvlc.la ../src/libvlccore.la +diff --git a/configure.ac b/configure.ac +index 52e4830..b385100 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -547,6 +547,14 @@ need_libc=false + dnl Check for usual libc functions + AC_CHECK_FUNCS([ctime_r daemon fcntl fdopendir fstatvfs fork getenv getpwuid_r gettimeofday isatty lstat memalign openat posix_fadvise posix_madvise posix_memalign setenv setlocale stricmp strnicmp tdestroy uselocale]) + AC_REPLACE_FUNCS([asprintf atof atoll getcwd getdelim getpid gmtime_r lldiv localtime_r nrand48 rewind strcasecmp strcasestr strdup strlcpy strncasecmp strndup strnlen strsep strtof strtok_r strtoll swab vasprintf]) ++ ++dnl Check that we actually need libcompat ++LTLIBCOMPAT="" ++if test "x${LIBOBJS}" != "x"; then ++ LTLIBCOMPAT="\$(top_builddir)/compat/libcompat.la" ++fi ++AC_SUBST(LTLIBCOMPAT) ++ + AC_CHECK_FUNCS(fdatasync,, + [AC_DEFINE(fdatasync, fsync, [Alias fdatasync() to fsync() if missing.]) + ]) +diff --git a/modules/common.am b/modules/common.am +index 5e4d65f..9e2c739 100644 +--- a/modules/common.am ++++ b/modules/common.am +@@ -24,7 +24,7 @@ AM_LDFLAGS = -rpath '$(libvlcdir)' \ + -no-undefined \ + `$(VLC_CONFIG) --ldflags plugin $@` + AM_LIBADD = `$(VLC_CONFIG) -libs plugin $@` \ +- $(LTLIBVLCCORE) $(top_builddir)/compat/libcompat.la ++ $(LTLIBVLCCORE) $(LTLIBCOMPAT) + + include $(srcdir)/Modules.am + +diff --git a/src/Makefile.am b/src/Makefile.am +index f46a154..6aad884 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -201,7 +201,7 @@ libvlccore_la_LDFLAGS = `$(VLC_CONFIG) --ldflags libvlccore` $(AM_LDFLAGS) \ + -export-symbols $(srcdir)/libvlccore.sym \ + -version-info 5:0:0 + libvlccore_la_LIBADD = `$(VLC_CONFIG) -libs libvlccore` $(AM_LIBADD) \ +- $(LTLIBINTL) ../compat/libcompat.la ++ $(LTLIBINTL) $(LTLIBCOMPAT) + libvlccore_la_DEPENDENCIES = libvlccore.sym + if HAVE_WIN32 + libvlccore_la_DEPENDENCIES += libvlc_win32_rc.$(OBJEXT) +@@ -214,7 +214,7 @@ libvlc_win32_rc.$(OBJEXT): libvlc_win32_rc.rc + libvlc_la_SOURCES = $(SOURCES_libvlc_control) + nodist_libvlc_la_SOURCES = revision.c + libvlc_la_LIBADD = `$(VLC_CONFIG) -libs libvlc` \ +- libvlccore.la ../compat/libcompat.la ++ libvlccore.la $(LTLIBCOMPAT) + libvlc_la_CFLAGS = `$(VLC_CONFIG) --cflags libvlc` + libvlc_la_LDFLAGS = $(AM_LDFLAGS) `$(VLC_CONFIG) --ldflags libvlc` \ + -version-info 6:0:1 \ |