Squashed 'third_party/blasfeo/' content from commit 2a828ca
Change-Id: If1c3caa4799b2d4eb287ef83fa17043587ef07a3
git-subtree-dir: third_party/blasfeo
git-subtree-split: 2a828ca5442108c4c58e4b42b061a0469043f6ea
diff --git a/kernel/Makefile b/kernel/Makefile
new file mode 100644
index 0000000..60e1f31
--- /dev/null
+++ b/kernel/Makefile
@@ -0,0 +1,75 @@
+###################################################################################################
+# #
+# This file is part of BLASFEO. #
+# #
+# BLASFEO -- BLAS For Embedded Optimization. #
+# Copyright (C) 2016-2017 by Gianluca Frison. #
+# Developed at IMTEK (University of Freiburg) under the supervision of Moritz Diehl. #
+# All rights reserved. #
+# #
+# HPMPC is free software; you can redistribute it and/or #
+# modify it under the terms of the GNU Lesser General Public #
+# License as published by the Free Software Foundation; either #
+# version 2.1 of the License, or (at your option) any later version. #
+# #
+# HPMPC is distributed in the hope that it will be useful, #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. #
+# See the GNU Lesser General Public License for more details. #
+# #
+# You should have received a copy of the GNU Lesser General Public #
+# License along with HPMPC; if not, write to the Free Software #
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA #
+# #
+# Author: Gianluca Frison, giaf (at) dtu.dk #
+# gianluca.frison (at) imtek.uni-freiburg.de #
+# #
+###################################################################################################
+
+include ../Makefile.rule
+
+obj:
+ifeq ($(TARGET), X64_INTEL_HASWELL)
+ ( cd avx2; $(MAKE) obj)
+ ( cd avx; $(MAKE) obj)
+ ( cd c99; $(MAKE) obj)
+endif
+
+ifeq ($(TARGET), X64_INTEL_SANDY_BRIDGE)
+ ( cd avx; $(MAKE) obj)
+ ( cd c99; $(MAKE) obj)
+endif
+
+ifeq ($(TARGET), X64_INTEL_CORE)
+ ( cd sse3; $(MAKE) obj)
+ ( cd c99; $(MAKE) obj)
+endif
+
+ifeq ($(TARGET), X64_AMD_BULLDOZER)
+ ( cd fma; $(MAKE) obj)
+ ( cd c99; $(MAKE) obj)
+endif
+
+ifeq ($(TARGET), ARMV8A_ARM_CORTEX_A57)
+ ( cd armv8a; $(MAKE) obj)
+ ( cd c99; $(MAKE) obj)
+endif
+
+ifeq ($(TARGET), ARMV7A_ARM_CORTEX_A15)
+ ( cd armv7a; $(MAKE) obj)
+ ( cd c99; $(MAKE) obj)
+endif
+
+ifeq ($(TARGET), GENERIC)
+ ( cd c99; $(MAKE) obj)
+endif
+
+clean:
+ make -C avx2 clean
+ make -C avx clean
+ make -C sse3 clean
+ make -C fma clean
+ make -C armv8a clean
+ make -C armv7a clean
+ make -C c99 clean
+