[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[Pkg-octave-devel] octave-interval 2.1.0-1 build errors



Hi,

as expected there are problems with the new bundled library in
octave-interval. The build fails for almost every platform.
Interestingly, the build is not marked as failed and the .deb contains
garbage, but that is another topic.

The bundled library always gets configured with --enable-sse2, so the
build fails on all platforms without SSE2. The configure script features
no auto detection whether SSE2 is available.

What do you think of the attached patch to detect SSE2?

Or should we better not use SSE2 for any platform?

Oliver
diff -r db9f2451b867 src/Makefile
--- a/src/Makefile	Mon Jan 09 00:00:22 2017 +0100
+++ b/src/Makefile	Tue Jan 17 09:07:18 2017 +0100
@@ -17,6 +17,12 @@
 LDFLAGS_MPFR   =-lmpfr
 ## Use important flags in XTRA_CFLAGS for OpenMP (workaround for bug #45280)
 CFLAG_OPENMP   =$(findstring -fopenmp,$(shell $(MKOCTFILE) -p XTRA_CFLAGS))
+HAS_SSE2       =$(findstring sse2,$(shell cat /proc/cpuinfo))
+ifdef HAS_SSE2
+CONF_FLAG_SSE2 =--enable-sse2
+else
+CONF_FLAG_SSE2 =--disable-sse2
+endif
 
 all: $(OBJ)
 
@@ -37,7 +43,7 @@
 crlibm/crlibm_private.o: crlibm/crlibm_config.h
 	$(MAKE) -C crlibm CFLAGS+="$(shell $(MKOCTFILE) -p CPICFLAG) -Wno-div-by-zero -Wno-unused-variable -Wno-unused-but-set-variable"
 crlibm/crlibm_config.h:
-	(cd crlibm && ./configure --disable-dependency-tracking --enable-sse2)
+	(cd crlibm && ./configure --disable-dependency-tracking $(CONF_FLAG_SSE2))
 
 ## GNU MPFR api oct-files
 mpfr_matrix_mul_d.oct mpfr_matrix_sqr_d.oct : mpfr_%.oct: mpfr_%.cc mpfr_commons.h

Reply to: