Date: Fri, 19 Aug 2011 16:02:27 GMT From: bf <bf@FreeBSD.org> To: freebsd-gnats-submit@FreeBSD.org Subject: ports/159917: [PATCH]math/scilab: fix buld with lang/gcc46, blas/lapack usage, and WITHOUT_GUI Message-ID: <201108191602.p7JG2Rtt092034@red.freebsd.org> Resent-Message-ID: <201108191610.p7JGAAmt073434@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>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}/,@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:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201108191602.p7JG2Rtt092034>