Added BUILD rules for blasfeo and hpipm
These are needed for the controls toolbox ct.
Change-Id: I50608f01abfdf24ad52f1dda5a4c81fd079afb16
diff --git a/third_party/hpipm/BUILD b/third_party/hpipm/BUILD
new file mode 100644
index 0000000..32729e1
--- /dev/null
+++ b/third_party/hpipm/BUILD
@@ -0,0 +1,86 @@
+licenses(["notice"]) # lgpl
+
+cc_library(
+ name = "hpipm",
+ includes = [ "include" ],
+ hdrs = [
+ "include/hpipm_s_core_qp_ipm_hard.h",
+ "include/hpipm_d_dense_qp.h",
+ "include/hpipm_s_ocp_qp.h",
+ "include/hpipm_s_ocp_qp_sol.h",
+ "include/hpipm_d_ocp_qp.h",
+ "include/hpipm_d_ocp_qp_sol.h",
+ "include/hpipm_s_dense_qp.h",
+ "include/hpipm_d_ocp_qp_ipm_hard.h",
+ "include/hpipm_s_dense_qp_sol.h",
+ "include/hpipm_s_dense_qp_ipm_hard.h",
+ "include/hpipm_s_core_qp_ipm_hard_aux.h",
+ "include/hpipm_s_dense_qp_kkt.h",
+ "include/hpipm_m_ocp_qp_ipm_hard.h",
+ "include/hpipm_d_core_qp_ipm_hard.h",
+ "include/hpipm_d_core_qp_ipm_hard_aux.h",
+ "include/hpipm_d_dense_qp_sol.h",
+ "include/hpipm_d_ocp_qp_kkt.h",
+ "include/hpipm_d_cond.h",
+ "include/hpipm_m_ocp_qp_kkt.h",
+ "include/hpipm_d_cond_aux.h",
+ "include/hpipm_s_ocp_qp_ipm_hard.h",
+ "include/hpipm_s_ocp_qp_kkt.h",
+ "include/hpipm_d_dense_qp_ipm_hard.h",
+ "include/hpipm_d_dense_qp_kkt.h",
+ ],
+ srcs = [
+ # dense qp
+ "dense_qp/d_dense_qp.c",
+ "dense_qp/d_dense_qp_sol.c",
+ "dense_qp/d_dense_qp_kkt.c",
+ "dense_qp/d_dense_qp_ipm_hard.c",
+ "dense_qp/s_dense_qp.c",
+ "dense_qp/s_dense_qp_sol.c",
+ "dense_qp/s_dense_qp_kkt.c",
+ "dense_qp/s_dense_qp_ipm_hard.c",
+ # ocp qp
+ "ocp_qp/d_ocp_qp.c",
+ "ocp_qp/d_ocp_qp_sol.c",
+ "ocp_qp/d_ocp_qp_kkt.c",
+ "ocp_qp/d_ocp_qp_ipm_hard.c",
+ "ocp_qp/s_ocp_qp.c",
+ "ocp_qp/s_ocp_qp_sol.c",
+ "ocp_qp/s_ocp_qp_kkt.c",
+ "ocp_qp/s_ocp_qp_ipm_hard.c",
+ "ocp_qp/m_ocp_qp.c",
+ "ocp_qp/m_ocp_qp_kkt.c",
+ "ocp_qp/m_ocp_qp_ipm_hard.c",
+ # core qp
+ "core_qp/d_core_qp_ipm_hard_aux.c",
+ "core_qp/d_core_qp_ipm_hard.c",
+ "core_qp/s_core_qp_ipm_hard_aux.c",
+ "core_qp/s_core_qp_ipm_hard.c",
+ # cond
+ "cond/d_cond_aux.c",
+ "cond/d_cond.c",
+ "cond/d_part_cond.c",
+ ],
+ textual_hdrs = [
+ "ocp_qp/x_ocp_qp_sol.c",
+ "dense_qp/x_dense_qp.c",
+ "dense_qp/x_dense_qp_ipm_hard.c",
+ "core_qp/x_core_qp_ipm_hard_aux.c",
+ "core_qp/x_core_qp_ipm_hard.c",
+ "dense_qp/x_dense_qp_sol.c",
+ "ocp_qp/x_ocp_qp_ipm_hard.c",
+ "ocp_qp/x_ocp_qp.c",
+ "ocp_qp/x_ocp_qp_kkt.c",
+ "dense_qp/x_dense_qp_kkt.c",
+ ],
+ deps = [
+ "//third_party/blasfeo",
+ ],
+ copts = [
+ "-Wno-pointer-arith",
+ "-Wno-unused-variable",
+ "-Wno-unused-parameter",
+ ],
+ visibility = ["//visibility:public"],
+ restricted_to = ["//tools:k8"],
+)