configure/swr: add KNL and SKX architecture targets
[mesa.git] / src / gallium / drivers / swr / Makefile.am
index 74612280fe73729e67d86ab923810109f48fb063..6495021457263bdbf725894c892f96bdcf295e65 100644 (file)
@@ -55,6 +55,22 @@ libmesaswr_la_CXXFLAGS = \
        $(SWR_AVX_CXXFLAGS) \
        $(COMMON_CXXFLAGS)
 
+if HAVE_SWR_AVX
+libmesaswr_la_CXXFLAGS += -DHAVE_SWR_AVX
+endif
+
+if HAVE_SWR_AVX2
+libmesaswr_la_CXXFLAGS += -DHAVE_SWR_AVX2
+endif
+
+if HAVE_SWR_KNL
+libmesaswr_la_CXXFLAGS += -DHAVE_SWR_KNL
+endif
+
+if HAVE_SWR_SKX
+libmesaswr_la_CXXFLAGS += -DHAVE_SWR_SKX
+endif
+
 COMMON_SOURCES = \
        $(ARCHRAST_CXX_SOURCES) \
        $(COMMON_CXX_SOURCES) \
@@ -224,7 +240,10 @@ COMMON_LDFLAGS = \
        $(GC_SECTIONS) \
        $(NO_UNDEFINED)
 
-lib_LTLIBRARIES = libswrAVX.la libswrAVX2.la
+lib_LTLIBRARIES =
+
+if HAVE_SWR_AVX
+lib_LTLIBRARIES += libswrAVX.la
 
 libswrAVX_la_CXXFLAGS = \
        $(SWR_AVX_CXXFLAGS) \
@@ -236,7 +255,10 @@ libswrAVX_la_SOURCES = \
 
 libswrAVX_la_LDFLAGS = \
        $(COMMON_LDFLAGS)
+endif
 
+if HAVE_SWR_AVX2
+lib_LTLIBRARIES += libswrAVX2.la
 libswrAVX2_la_CXXFLAGS = \
        $(SWR_AVX2_CXXFLAGS) \
        -DKNOB_ARCH=KNOB_ARCH_AVX2 \
@@ -247,6 +269,37 @@ libswrAVX2_la_SOURCES = \
 
 libswrAVX2_la_LDFLAGS = \
        $(COMMON_LDFLAGS)
+endif
+
+if HAVE_SWR_KNL
+lib_LTLIBRARIES += libswrKNL.la
+
+libswrKNL_la_CXXFLAGS = \
+       $(SWR_KNL_CXXFLAGS) \
+       -DKNOB_ARCH=KNOB_ARCH_AVX512 -DAVX512F_STRICT \
+       $(COMMON_CXXFLAGS)
+
+libswrKNL_la_SOURCES = \
+       $(COMMON_SOURCES)
+
+libswrKNL_la_LDFLAGS = \
+       $(COMMON_LDFLAGS)
+endif
+
+if HAVE_SWR_SKX
+lib_LTLIBRARIES += libswrSKX.la
+
+libswrSKX_la_CXXFLAGS = \
+       $(SWR_SKX_CXXFLAGS) \
+       -DKNOB_ARCH=KNOB_ARCH_AVX512 \
+       $(COMMON_CXXFLAGS)
+
+libswrSKX_la_SOURCES = \
+       $(COMMON_SOURCES)
+
+libswrSKX_la_LDFLAGS = \
+       $(COMMON_LDFLAGS)
+endif
 
 include $(top_srcdir)/install-gallium-links.mk