summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMans Rullgard <mans@mansr.com>2011-05-19 18:34:40 +0100
committerMans Rullgard <mans@mansr.com>2011-05-19 19:45:06 +0100
commit272874c9dbde5d48884c417b76f3c7f04938c92f (patch)
treef517ff3fbdea39aaf9624723301f957bccc44b51
parentc98657a21536ef71a1d8d6a7ff4d69dd19d9e5b7 (diff)
Simplify trig table rules
This collapses the make rules for the trig tables into a pattern rule. Based on a patch by Diego, modified to avoid using fragile make constructs and allow future addition of fixed-point sin tables. Signed-off-by: Mans Rullgard <mans@mansr.com>
-rw-r--r--libavcodec/Makefile11
-rw-r--r--libavcodec/costablegen.c2
2 files changed, 5 insertions, 8 deletions
diff --git a/libavcodec/Makefile b/libavcodec/Makefile
index 4765ceb413..7a9d897606 100644
--- a/libavcodec/Makefile
+++ b/libavcodec/Makefile
@@ -676,14 +676,11 @@ include $(SUBDIR)../subdir.mak
$(SUBDIR)dct-test$(EXESUF): $(SUBDIR)dctref.o
-$(SUBDIR)cos_tables.c: $(SUBDIR)costablegen$(HOSTEXESUF)
- $(M)./$< > $@
-
-$(SUBDIR)cos_fixed_tables.c: $(SUBDIR)costablegen$(HOSTEXESUF)
- $(M)./$< cos fixed > $@
+TRIG_TABLES = cos cos_fixed sin
+TRIG_TABLES := $(TRIG_TABLES:%=$(SUBDIR)%_tables.c)
-$(SUBDIR)sin_tables.c: $(SUBDIR)costablegen$(HOSTEXESUF)
- $(M)./$< sin > $@
+$(TRIG_TABLES): $(SUBDIR)%_tables.c: $(SUBDIR)costablegen$(HOSTEXESUF)
+ $(M)./$< $* > $@
ifdef CONFIG_SMALL
$(SUBDIR)%_tablegen$(HOSTEXESUF): HOSTCFLAGS += -DCONFIG_SMALL=1
diff --git a/libavcodec/costablegen.c b/libavcodec/costablegen.c
index 6bfb8eabf2..5e52c482c6 100644
--- a/libavcodec/costablegen.c
+++ b/libavcodec/costablegen.c
@@ -51,7 +51,7 @@ int main(int argc, char *argv[])
{
int i, j;
int do_sin = argc > 1 && !strcmp(argv[1], "sin");
- int fixed = argc > 2 && !strcmp(argv[2], "fixed");
+ int fixed = argc > 1 && strstr(argv[1], "fixed");
double (*func)(double) = do_sin ? sin : cos;
printf("/* This file was automatically generated. */\n");