diff -Naur ffmpeg-old/common.mak ffmpeg/common.mak --- ffmpeg-old/common.mak 2006-06-10 15:44:49.000000000 +0200 +++ ffmpeg/common.mak 2006-07-07 20:52:14.250000000 +0200 @@ -10,6 +10,13 @@ LDFLAGS = -Wl,--output-def,$(@:.dll=.def),--out-implib,lib$(SLIBNAME:$(SLIBSUF)=.dll.a) endif +#FIXME: This should be in configure/config.mak +ifeq ($(TARGET_OS),CYGWIN) + ifeq ($(BUILD_SHARED),yes) + EXTRALIBS := -Wl,--no-whole-archive $(EXTRALIBS) + endif +endif + ifeq ($(TARGET_GPROF),yes) CFLAGS+=-p LDFLAGS+=-p @@ -79,12 +86,19 @@ ifeq ($(CONFIG_WIN32),yes) install $(INSTALLSTRIP) -m 755 $(SLIBNAME) "$(prefix)" else + ifeq ($(TARGET_OS),CYGWIN) + install -d "$(bindir)" + install $(INSTALLSTRIP) -m 755 $(SLIBNAME) \ + $(bindir)/$(SLIBNAME) + install -m 755 lib$(NAME).dll.a $(libdir) + else install $(INSTALLSTRIP) -m 755 $(SLIBNAME) \ $(libdir)/$(SLIBNAME_WITH_VERSION) ln -sf $(SLIBNAME_WITH_VERSION) \ $(libdir)/$(SLIBNAME_WITH_MAJOR) ln -sf $(SLIBNAME_WITH_VERSION) \ $(libdir)/$(SLIBNAME) + endif endif install-lib-static: $(LIB) diff -Naur ffmpeg-old/configure ffmpeg/configure --- ffmpeg-old/configure 2006-07-06 21:25:44.000000000 +0200 +++ ffmpeg/configure 2006-07-08 00:30:31.296875000 +0200 @@ -579,10 +579,14 @@ v4l2="no" audio_oss="yes" dv1394="no" -vhook="no" extralibs="" cygwin="yes" EXESUF=".exe" +SLIBPREF="cyg" +SLIBSUF=".dll" +SLIBNAME_WITH_VERSION='$(SLIBPREF)$(NAME)-$(LIBVERSION)$(SLIBSUF)' +SLIBNAME_WITH_MAJOR='$(SLIBPREF)$(NAME)-$(LIBMAJOR)$(SLIBSUF)' +SHFLAGS='-shared -Wl,--out-implib=lib$(NAME).dll.a,--export-all-symbols,--enable-auto-import,--whole-archive' ;; Linux) ;; diff -Naur ffmpeg-old/vhook/Makefile ffmpeg/vhook/Makefile --- ffmpeg-old/vhook/Makefile 2006-07-06 21:25:35.000000000 +0200 +++ ffmpeg/vhook/Makefile 2006-07-08 00:27:36.468750000 +0200 @@ -6,6 +6,15 @@ -I$(SRC_PATH)/libavcodec -I$(SRC_PATH)/libavutil -DHAVE_AV_CONFIG_H #FIXME: This needs to be in configure/config.mak +ifeq ($(TARGET_OS),CYGWIN) + EXTRALIBS := -Wl,--no-whole-archive \ + -L../libavformat -lavformat$(BUILDSUF) \ + -L../libavcodec -lavcodec$(BUILDSUF) \ + -L../libavutil -lavutil$(BUILDSUF) $(EXTRALIBS) + SHFLAGS=-shared -Wl,--export-all-symbols,--enable-auto-import,--whole-archive +endif + +#FIXME: This needs to be in configure/config.mak ifeq ($(CONFIG_DARWIN),yes) SHFLAGS = -dynamiclib -Wl,-single_module -flat_namespace \ -undefined suppress -Wl,-install_name,$(libdir)/vhook/$@ @@ -14,13 +23,13 @@ ifeq ($(HAVE_IMLIB2),yes) HOOKS += imlib2$(SLIBSUF) - LDFLAGS += -lImlib2 + EXTRALIBS += -lImlib2 endif ifeq ($(HAVE_FREETYPE2),yes) HOOKS += drawtext$(SLIBSUF) CFLAGS += `freetype-config --cflags` - LDFLAGS += `freetype-config --libs` + EXTRALIBS += `freetype-config --libs` endif all: $(HOOKS) @@ -40,7 +49,7 @@ -rmdir "$(libdir)/vhook/" %$(SLIBSUF): %.o - $(CC) $(LDFLAGS) -g -o $@ $(SHFLAGS) $< + $(CC) $(LDFLAGS) -g -o $@ $(SHFLAGS) $< $(EXTRALIBS) clean: rm -f *.o *.d *~ *.a *.lib *.so *.dylib *.dll