libavutil: Make avpriv_open a library-internal function on msvcrt
Add one copy of the function into each of the libraries, similarly to what we do for log2_tab. When using static libs, only one copy of the file_open.o object file gets included, while when using shared libraries, each of them get a copy of its own. This fixes DLL builds with a statically linked C runtime, where each DLL effectively has got its own instance of the C runtime, where file descriptors can't be shared across runtimes. On systems not using msvcrt, the function is not duplicated. Signed-off-by: Martin Storsjö <martin@martin.st>
This commit is contained in:
@@ -7,6 +7,8 @@ HEADERS = avdevice.h \
|
||||
OBJS = alldevices.o \
|
||||
avdevice.o \
|
||||
|
||||
OBJS-$(HAVE_MSVCRT) += file_open.o
|
||||
|
||||
# input/output devices
|
||||
OBJS-$(CONFIG_ALSA_INDEV) += alsa-audio-common.o \
|
||||
alsa-audio-dec.o
|
||||
|
||||
1
libavdevice/file_open.c
Normal file
1
libavdevice/file_open.c
Normal file
@@ -0,0 +1 @@
|
||||
#include "libavutil/file_open.c"
|
||||
Reference in New Issue
Block a user