Browse Source

package/openblas: add a new option to install tests

This option can be used for runtime testing or package debugging.

Signed-off-by: Julien Olivain <ju.o@free.fr>
[yann.morin.1998@free.fr: tweak the comment]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Julien Olivain 2 years ago
parent
commit
a0484b888f
2 changed files with 24 additions and 0 deletions
  1. 5 0
      package/openblas/Config.in
  2. 19 0
      package/openblas/openblas.mk

+ 5 - 0
package/openblas/Config.in

@@ -94,4 +94,9 @@ config BR2_PACKAGE_OPENBLAS_USE_LOCKING
 	  function calls from multiple threads, then locking is
 	  mandatory for correct operation.
 
+config BR2_PACKAGE_OPENBLAS_INSTALL_TESTS
+	bool "install tests"
+	help
+	  Install C test programs on target.
+
 endif

+ 19 - 0
package/openblas/openblas.mk

@@ -77,4 +77,23 @@ define OPENBLAS_INSTALL_TARGET_CMDS
 		-C $(@D) install PREFIX=$(TARGET_DIR)/usr
 endef
 
+ifeq ($(BR2_PACKAGE_OPENBLAS_INSTALL_TESTS),y)
+# Tests are always built, but are not installed, so we need to install
+# them manually. The set of available tests may fluctuate depending on
+# the architecture and other options, so only install whatever gets
+# built.
+define OPENBLAS_INSTALL_TESTS
+	mkdir -p $(TARGET_DIR)/usr/libexec/openblas/tests
+	find $(@D)/ctest \
+		-type f -name "x[sdcz]cblat[123]" -perm -0100 \
+		-exec $(INSTALL) -m 0755 {} \
+			$(TARGET_DIR)/usr/libexec/openblas/tests \;
+	find $(@D)/ctest \
+		-type f -name "[sdcz]in[123]" \
+		-exec $(INSTALL) -m 0644 {} \
+			$(TARGET_DIR)/usr/libexec/openblas/tests \;
+endef
+OPENBLAS_POST_INSTALL_TARGET_HOOKS += OPENBLAS_INSTALL_TESTS
+endif
+
 $(eval $(generic-package))