summaryrefslogtreecommitdiff
path: root/common.mak
diff options
context:
space:
mode:
authorJames Almer <jamrial@gmail.com>2013-12-05 17:50:14 -0300
committerMichael Niedermayer <michaelni@gmx.at>2013-12-05 23:42:07 +0100
commit56572787ae2d7e113e36d5347b3d7263b35bdf98 (patch)
treeeee3f01bd03c23fe939e2e7f39d3723043222a1e /common.mak
parentaf7562a03556d72ac6e022067b879d0124b052ba (diff)
Add Windows resource file support for shared libraries
Originally written by James Almer <jamrial@gmail.com> With the following contributions by Timothy Gu <timothygu99@gmail.com> * Use descriptions of libraries from the pkg-config file generation function * Use "FFmpeg Project" as CompanyName (suggested by Alexander Strasser) * Use "FFmpeg" for ProductName as MSDN says "name of the product with which the file is distributed" [1]. * Use FFmpeg's version (N-xxxxx-gxxxxxxx) for ProductVersion per MSDN [1]. * Only build the .rc files when --enable-small is not enabled. [1] http://msdn.microsoft.com/en-us/library/windows/desktop/aa381058.aspx Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'common.mak')
-rw-r--r--common.mak10
1 files changed, 8 insertions, 2 deletions
diff --git a/common.mak b/common.mak
index 2a59826a67..3a59953147 100644
--- a/common.mak
+++ b/common.mak
@@ -10,7 +10,7 @@ ifndef SUBDIR
ifndef V
Q = @
ECHO = printf "$(1)\t%s\n" $(2)
-BRIEF = CC CXX HOSTCC HOSTLD AS YASM AR LD STRIP CP
+BRIEF = CC CXX HOSTCC HOSTLD AS YASM AR LD STRIP CP WINDRES
SILENT = DEPCC DEPHOSTCC DEPAS DEPYASM RANLIB RM
MSG = $@
@@ -60,6 +60,9 @@ COMPILE_HOSTC = $(call COMPILE,HOSTCC)
%_host.o: %.c
$(COMPILE_HOSTC)
+%.o: %.rc
+ $(WINDRES) $(IFLAGS) -o $@ $<
+
%.i: %.c
$(CC) $(CCFLAGS) $(CC_E) $<
@@ -86,6 +89,7 @@ endif
include $(SRC_PATH)/arch.mak
OBJS += $(OBJS-yes)
+SLIBOBJS += $(SLIBOBJS-yes)
FFLIBS := $(FFLIBS-yes) $(FFLIBS)
TESTPROGS += $(TESTPROGS-yes)
@@ -94,6 +98,7 @@ FFEXTRALIBS := $(LDLIBS:%=$(LD_LIB)) $(EXTRALIBS)
EXAMPLES := $(EXAMPLES:%=$(SUBDIR)%-example$(EXESUF))
OBJS := $(sort $(OBJS:%=$(SUBDIR)%))
+SLIBOBJS := $(sort $(SLIBOBJS:%=$(SUBDIR)%))
TESTOBJS := $(TESTOBJS:%=$(SUBDIR)%) $(TESTPROGS:%=$(SUBDIR)%-test.o)
TESTPROGS := $(TESTPROGS:%=$(SUBDIR)%-test$(EXESUF))
HOSTOBJS := $(HOSTPROGS:%=$(SUBDIR)%.o)
@@ -125,10 +130,11 @@ $(HOSTPROGS): %$(HOSTEXESUF): %.o
$(OBJS): | $(sort $(dir $(OBJS)))
$(HOBJS): | $(sort $(dir $(HOBJS)))
$(HOSTOBJS): | $(sort $(dir $(HOSTOBJS)))
+$(SLIBOBJS): | $(sort $(dir $(SLIBOBJS)))
$(TESTOBJS): | $(sort $(dir $(TESTOBJS)))
$(TOOLOBJS): | tools
-OBJDIRS := $(OBJDIRS) $(dir $(OBJS) $(HOBJS) $(HOSTOBJS) $(TESTOBJS))
+OBJDIRS := $(OBJDIRS) $(dir $(OBJS) $(HOBJS) $(HOSTOBJS) $(SLIBOBJS) $(TESTOBJS))
CLEANSUFFIXES = *.d *.o *~ *.h.c *.map *.ver *.ho *.gcno *.gcda
DISTCLEANSUFFIXES = *.pc