diff options
Diffstat (limited to 'util/x86simdgen/Makefile')
-rw-r--r-- | util/x86simdgen/Makefile | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/util/x86simdgen/Makefile b/util/x86simdgen/Makefile new file mode 100644 index 0000000000..8f4dcbf4e8 --- /dev/null +++ b/util/x86simdgen/Makefile @@ -0,0 +1,22 @@ +GENERATOR = 3rdparty/x86simd_generate.pl +TARGETDIR = ../../src/corelib/global/ +TARGETCPP = qsimd_x86.cpp +TARGETHEADER = qsimd_x86_p.h + +CONF_FILES = 3rdparty/simd-intel.conf +# We don't currently use any feature from simd-amd.conf +# CONF_FILES += 3rdparty/simd-amd.conf + +all: $(TARGETDIR)/$(TARGETHEADER) $(TARGETDIR)/$(TARGETCPP) +$(TARGETHEADER): $(CONF_FILES) | $(GENERATOR) + cat $^ | perl $(GENERATOR) /dev/stdin $@ > $@ +$(TARGETDIR)/$(TARGETHEADER): header $(TARGETHEADER) + sed '/-- implementation start --/,/-- implementation end --/d' $^ | \ + sed 's!3rdparty/x86simd_generate\.pl!util/x86simdgen/README.md!' > $@ +$(TARGETDIR)/$(TARGETCPP): $(TARGETHEADER) header + (sed '/^$$/q' header; \ + echo '#include "$(TARGETHEADER)"'; \ + sed '1,/-- implementation start --/d;/-- implementation end --/,$$d' $<) > $@ + +clean: + -$(RM) $(TARGETHEADER) |