ports/159917: [PATCH]math/scilab: fix buld with lang/gcc46, blas/lapack usage, and WITHOUT_GUI

bf bf at FreeBSD.org
Fri Aug 19 16:10:10 UTC 2011


>Number:         159917
>Category:       ports
>Synopsis:       [PATCH]math/scilab: fix buld with lang/gcc46, blas/lapack usage, and WITHOUT_GUI
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Fri Aug 19 16:10:09 UTC 2011
>Closed-Date:
>Last-Modified:
>Originator:     bf
>Release:        
>Organization:
-
>Environment:
>Description:
--Fix a bug uncovered by exp-runs to evaluate the change of the default USE_GCC/FORTRAN compiler to lang/gcc46, as seen in:

http://pointyhat.FreeBSD.org/errorlogs/amd64-errorlogs/a.8-exp.20110808071730/scilab-5.3.3.log

The configure script is failing to set lt_prog_compiler_wl_F77='-Wl,',
and hence builds a broken local libtool that fails during linking.
This was "fixed" upstream by adding a workaround, for Linux and Debian derivatives only:

http://gitweb.scilab.org/?p=scilab.git;a=commit;h=90634e389092d082f6d6a8f37667c3b525dd093e

that doesn't address the real problem, which is that too many of the configure script tests depend on --with-gfortran being issued.  Circumvent the problem here by adding this to CONFIGURE_ARGS. PIC flags are now detected and added automatically, so remove addition to FFLAGS.   

--Whitespace fix on line 223.   

--Typo in post-install target comment

--Remove obsolete configure script option --with-atlas-library and properly inform configure script of blas and lapack libraries; fix a link line in one of the port Makefiles where a library was being linked with lapack but not with blas

--fix plist and build breakage when building the help index WITHOUT_GUI

--be more conservative in use of CFLAGS, and respect LDFLAGS

--add a test target, disabled by default because of unresolved i18n problems
>How-To-Repeat:

>Fix:


Patch attached with submission follows:

Index: Makefile
===================================================================
RCS file: /home/pcvs/ports/math/scilab/Makefile,v
retrieving revision 1.80
diff -u -r1.80 Makefile
--- Makefile	4 Aug 2011 07:23:17 -0000	1.80
+++ Makefile	19 Aug 2011 14:40:27 -0000
@@ -30,8 +30,12 @@
 USE_GMAKE=	yes
 USE_LDCONFIG=	yes
 
-CFLAGS+=	-I${LOCALBASE}/include -L${LOCALBASE}/lib ${PTHREAD_LIBS}
-FFLAGS+=	-fPIC
+CPPFLAGS+=	-I${LOCALBASE}/include
+LDFLAGS+=	-L${LOCALBASE}/lib
+CONFIGURE_ARGS =	--with-gfortran
+CONFIGURE_ENV=	ac_cv_search_pthread_join="${PTHREAD_LIBS}" \
+	BLAS_LIBS="${BLAS_LIBS}" LAPACK_LIBS="${LAPACK_LIBS}" \
+	LDFLAGS="${LDFLAGS}"
 
 OPTIONS=	ATLAS "Use Atlas instead of Blas" OFF \
 		FFTW "Use FFTW" ON \
@@ -47,15 +51,15 @@
 .include <bsd.port.options.mk>
 
 .if defined(WITH_ATLAS)
-CONFIGURE_ARGS+=	--with-atlas-library=${LOCALBASE}/lib
 LIB_DEPENDS+=	atlas.2:${PORTSDIR}/math/atlas
-BLAS_LIBS=	-lalapack -lcblas -lf77blas -latlas
+BLAS_LIBS=	-lf77blas -latlas
+LAPACK_LIBS=	-lalapack -lcblas
 .else
 LIB_DEPENDS+=	lapack.4:${PORTSDIR}/math/lapack
 LIB_DEPENDS+=	blas.2:${PORTSDIR}/math/blas
-BLAS_LIBS?=	-llapack -lblas
+BLAS_LIBS?=	-lblas
+LAPACK_LIBS?=	-llapack
 .endif
-MAKE_ENV+=	BLAS_LIBS="-L${LOCALBASE}/lib ${BLAS_LIBS}"
 
 .if defined(WITHOUT_NLS)
 CONFIGURE_ARGS+=	--disable-build-localization
@@ -81,6 +85,8 @@
 			--without-hdf5 \
 			--without-xcos \
 			--disable-build-help
+CONFIGURE_ENV +=	JAVADOC="${TRUE}"
+PLIST_SUB+=		WITHOUT_GUI=""
 .else
 DISTFILES+=	${JGRAPHX_JAR}:jgraphx
 JGRAPHX_VERSION=	1.4.1.0
@@ -131,6 +137,7 @@
 CONFIGURE_ARGS+=	--with-jdk=${JAVA_HOME} \
 			--with-docbook=${LOCALBASE}/share/xsl/docbook \
 			--enable-build-help
+PLIST_SUB+=		WITHOUT_GUI="@comment "
 .endif
 
 .if !defined(WITHOUT_HELP)
@@ -220,7 +227,10 @@
 		${WRKSRC}/bin/scilab-adv-cli ${WRKSRC}/bin/scilab-cli
 	@${REINPLACE_CMD} -e 's|/usr/share/scilab|${DATADIR}|' ${WRKSRC}/desktop/scilab.desktop
 	@${REINPLACE_CMD} -e 's|/usr/share/scilab-cli|${DATADIR}|' \
-		${WRKSRC}/desktop/scilab-adv-cli.desktop ${WRKSRC}/desktop/scilab-cli.desktop 
+		${WRKSRC}/desktop/scilab-adv-cli.desktop ${WRKSRC}/desktop/scilab-cli.desktop
+.else
+	@${REINPLACE_CMD} -e '/^check-local:/,/^$$/s/scilab-adv-cli/scilab-cli/g' \
+		${WRKSRC}/Makefile.in
 .endif
 
 pre-install:
@@ -231,7 +241,7 @@
 .endif
 
 post-install:
-	@# Remove empty dirs in DATDIR/modules - they will be removed by the
+	@# Remove empty dirs in DATADIR/modules - they will be removed by the
 	@# toolbox uninstaller otherwise if 3rd party toolboxes are used
 	@${FIND} ${DATADIR}/modules -type d -empty -delete
 	@# plist for include/scilab
@@ -252,5 +262,12 @@
 		-not -path ${DATADIR}/.atoms\* -not -path ${DATADIR} | \
 		${SORT} -r | ${SED} -e 's,^${PREFIX}/, at dirrm ,' >> ${TMPPLIST}
 	@${ECHO_CMD} "@unexec rmdir %D/share/scilab 2>/dev/null || true" >> ${TMPPLIST}
+.if defined(WITHOUT_GUI)
+	@${TOUCH} ${DATADIR}/contrib/xcos_toolbox_skeleton/images/h5/.keep_me
+.endif
+
+check test: build
+	@cd ${WRKSRC}; ${SETENV} ${MAKE_ENV} ${GMAKE} ${_MAKE_JOBS} \
+		${MAKE_ARGS} check
 
 .include <bsd.port.mk>
Index: pkg-plist
===================================================================
RCS file: /home/pcvs/ports/math/scilab/pkg-plist,v
retrieving revision 1.23
diff -u -r1.23 pkg-plist
--- pkg-plist	28 Jul 2011 18:07:09 -0000	1.23
+++ pkg-plist	9 Aug 2011 15:38:26 -0000
@@ -81,6 +81,7 @@
 %%DATADIR%%/contrib/xcos_toolbox_skeleton/help/en_US/tbx_sum.xml
 %%DATADIR%%/contrib/xcos_toolbox_skeleton/help/fr_FR/build_help.sce
 %%DATADIR%%/contrib/xcos_toolbox_skeleton/images/gif/TBX_SUM_c.gif
+%%WITHOUT_GUI%%%%DATADIR%%/contrib/xcos_toolbox_skeleton/images/h5/.keep_me
 %%DATADIR%%/contrib/xcos_toolbox_skeleton/images/svg/TBX_SUM_c.svg
 %%DATADIR%%/contrib/xcos_toolbox_skeleton/license.txt
 %%DATADIR%%/contrib/xcos_toolbox_skeleton/macros/buildmacros.sce
Index: files/patch-modules__arnoldi__Makefile.in
===================================================================
RCS file: files/patch-modules__arnoldi__Makefile.in
diff -N files/patch-modules__arnoldi__Makefile.in
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ files/patch-modules__arnoldi__Makefile.in	9 Aug 2011 13:53:17 -0000
@@ -0,0 +1,11 @@
+--- modules/arnoldi/Makefile.in.orig	2011-07-20 04:15:42.000000000 -0400
++++ modules/arnoldi/Makefile.in	2011-08-09 09:52:07.000000000 -0400
+@@ -489,7 +489,7 @@
+ 
+ libsciarnoldi_la_FFLAGS = -I$(srcdir)/src/arpack/
+ pkglib_LTLIBRARIES = libsciarnoldi.la
+-libsciarnoldi_la_LDFLAGS = -version-number $(SCILAB_LIBRARY_VERSION) $(LAPACK_LIBS)
++libsciarnoldi_la_LDFLAGS = -version-number $(SCILAB_LIBRARY_VERSION) $(LAPACK_LIBS) $(BLAS_LIBS)
+ libsciarnoldi_la_SOURCES = $(ARNOLDI_FORTRAN_SOURCES) $(GATEWAY_C_SOURCES)
+ 
+ # For the code check (splint)


>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list