ports/92782: Build cleanups for cad/tochnog

pfgshield-freebsd at yahoo.com pfgshield-freebsd at yahoo.com
Sun Feb 5 03:00:20 UTC 2006


The following reply was made to PR ports/92782; it has been noted by GNATS.

From: <pfgshield-freebsd at yahoo.com>
To: FreeBSD-gnats-submit at FreeBSD.org
Cc:  
Subject: Re: ports/92782: Build cleanups for cad/tochnog
Date: Sun, 5 Feb 2006 03:51:18 +0100 (CET)

 OK..I'm back, this update depends on ports/92832: update to math/superlu, or an
 equivalent update. -enjoy.
 
 diff -ruN tochnog.orig/Makefile tochnog/Makefile
 --- tochnog.orig/Makefile	Fri Feb  3 15:07:24 2006
 +++ tochnog/Makefile	Sat Feb  4 15:53:22 2006
 @@ -6,8 +6,7 @@
  #
  
  PORTNAME=	tochnog
 -PORTVERSION=	20010211
 -PORTREVISION=	2
 +PORTVERSION=	20020625
  CATEGORIES=	cad
  MASTER_SITES=	${MASTER_SITE_SOURCEFORGE}
  MASTER_SITE_SUBDIR=	tochnog
 @@ -24,21 +23,17 @@
  .endif
  LIB_DEPENDS=	atlas:${PORTSDIR}/math/atlas
  
 -# This port installs some plugins into a directory which is owned by the
 -# the cad/linux-gid port, but it doesn't adds a dependency to linux-gid,
 -# since tochnog can be used standalone.
 -# The right thing to do would be to add a slave port which installs the
 -# plugins only. The slave port would have to depend upon linux-gid and
 -# tochnog.
 -
  USE_REINPLACE=	yes
  WRKSRC=		${WRKDIR}/${PORTNAME}/src
  MAKEFILE=	makefile
  
 -GIDDIR?=	share/gid
 -PLIST_SUB+=	GIDDIR=${GIDDIR}
 +# You can set GIDDIR to share/gid to install the scripts to be used
 +# with the cad/linux-gid port, otherwise they can be linked to the data
 +# directory to avoid polluting the port space.
  
 -GID_PREFIX?=	${LOCALBASE}/${GIDDIR}/problemtypes
 +GIDDIR?=	share/${PORTNAME}
 +PLIST_SUB+=	GIDDIR=${GIDDIR}
 +GID_PTYPES=	${PREFIX}/${GIDDIR}/problemtypes
  
  .ifdef WITH_THREADS
  BLAS_LIBS?=	-L${LOCALBASE}/lib -lptf77blas -latlas_r
 @@ -55,7 +50,7 @@
  	@${ECHO_MSG} "make WITH_THREADS=yes for threaded version"
  .endif
  
 -post-patch:
 +pre-build:
  	@${REINPLACE_CMD} -e 's,%%LOCALBASE%%,${LOCALBASE},g ; \
  	s,%%PTHREAD_CFLAGS%%,${PTHREAD_CFLAGS},g ;
 s,%%PTHREAD_LIBS%%,${PTHREAD_LIBS},g ; \
  	s,%%SUPERLU%%,${SUPERLU},g ; \
 @@ -76,13 +71,13 @@
  	${INSTALL_PROGRAM} ${WRKSRC}/tochnog ${PREFIX}/bin
  	${INSTALL_PROGRAM} ${WRKDIR}/tochnog/tools/aba2tn ${PREFIX}/bin
  	${INSTALL_SCRIPT} ${WRKDIR}/tochnog/tools/*.awk ${PREFIX}/bin
 -	${MKDIR} ${GID_PREFIX}/tochnog.gid
 +	${MKDIR} ${GID_PTYPES}/tochnog.gid
  	${INSTALL_DATA} ${WRKDIR}/tochnog/gid/tochnog.gid/tochnog.cnd	\
 -	  ${GID_PREFIX}/tochnog.gid
 +	  ${GID_PTYPES}/tochnog.gid
  	${INSTALL_DATA} ${WRKDIR}/tochnog/gid/tochnog.gid/tochnog.mat	\
 -	  ${GID_PREFIX}/tochnog.gid
 +	  ${GID_PTYPES}/tochnog.gid
  	${INSTALL_SCRIPT} ${WRKDIR}/tochnog/gid/tochnog.gid/tochnog.ba*	\
 -	  ${GID_PREFIX}/tochnog.gid
 +	  ${GID_PTYPES}/tochnog.gid
  .if !defined(NOPORTDOCS)
  	${MKDIR} ${EXAMPLESDIR}
  	@${RM} -f ${WRKDIR}/tochnog/test/*.orig
 diff -ruN tochnog.orig/files/patch-makefile tochnog/files/patch-makefile
 --- tochnog.orig/files/patch-makefile	Fri Feb  3 15:07:24 2006
 +++ tochnog/files/patch-makefile	Fri Feb  3 16:41:36 2006
 @@ -1,5 +1,5 @@
  --- makefile.orig	Sun Aug 19 12:31:52 2001
 -+++ makefile	Wed Jun 18 12:57:01 2003
 ++++ makefile	Fri Feb  3 16:41:08 2006
  @@ -1,6 +1,7 @@
   #  ***********  fortran 2 c *******************
   # Set F2C (for unix -lf2c and for MS windows to f2c.lib)
 @@ -29,7 +29,7 @@
  -COMPILER_FLAGS= -c -O2 -w-
  +COMPILER_C=$(CC)
  +COMPILER_CPP=$(CXX)
 -+COMPILER_FLAGS=$(CXXFLAGS) -c
 ++COMPILER_FLAGS=$(CFLAGS) -c
   OBJ=obj
  -LINK_FLAGS_BEFORE= -l$(F2C)
  +LINK_FLAGS_BEFORE= -l$(F2C) -L%%LOCALBASE%%/lib
 @@ -58,7 +58,7 @@
   
   # single and multi-processor windows; borland c++ compiler
   # set SYS_FILE above to syswin32 for multi-processor
 -@@ -101,18 +102,23 @@
 +@@ -101,17 +102,22 @@
   	"LINK_FLAGS_AFTER= /link $(F2C) $(PROFILE) /OUT:tochnog.exe"
   
   # single processor linux; gnu gcc compiler
 @@ -72,22 +72,22 @@
  -	"COMPILER_C=gcc" \
  -	"COMPILER_CPP=g++" \
  -	"COMPILER_FLAGS= -ansi -c -O2 -Wall $(PROFILE) $(ALL_INCLUDE)" \
 -+	"COMPILER_FLAGS= -c ${CXXFLAGS} $(ALL_INCLUDE)" \
 ++	"COMPILER_FLAGS= -c ${CFLAGS} $(ALL_INCLUDE)" \
   	"LINK_FLAGS_BEFORE=" \
 - 	"LINK_FLAGS_AFTER= $(PROFILE) $(ALL_LIB) -static -lm -o tochnog"
 - 
 +-	"LINK_FLAGS_AFTER= $(PROFILE) $(ALL_LIB) -static -lm -o tochnog"
 ++	"LINK_FLAGS_AFTER= $(PROFILE) $(ALL_LIB) -lm -o tochnog"
 ++
  +# Multithreaded FreeBSD
  +freebsd_parallel:
  +	make tochnog \
  +	"SYS_FILE=sysposix" \
  +	"OBJ=o" \
 -+	"COMPILER_FLAGS= -c ${CXXFLAGS} %%PTHREAD_CFLAGS%% -D_REENTRANT
 $(ALL_INCLUDE)" \
 ++	"COMPILER_FLAGS= -c ${CFLAGS} %%PTHREAD_CFLAGS%% -D_REENTRANT
 $(ALL_INCLUDE)" \
  +	"LINK_FLAGS_BEFORE=" \
 -+	"LINK_FLAGS_AFTER=  $(ALL_LIB) %%PTHREAD_LIBS%% -static -lm -o tochnog"
 -+
 ++	"LINK_FLAGS_AFTER=  $(ALL_LIB) %%PTHREAD_LIBS%% -lm -o tochnog"
 + 
   # multi processor linux; gnu gcc compiler
   linux: 
 - 	make tochnog \
  @@ -375,7 +381,7 @@
   	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)hyperela.$(SRC_CPP)
   
 diff -ruN tochnog.orig/files/patch-so_suplu.c tochnog/files/patch-so_suplu.c
 --- tochnog.orig/files/patch-so_suplu.c	Wed Dec 31 19:00:00 1969
 +++ tochnog/files/patch-so_suplu.c	Sat Feb  4 21:00:27 2006
 @@ -0,0 +1,43 @@
 +--- so_suplu.c.orig	Thu Nov  9 15:59:39 2000
 ++++ so_suplu.c	Sat Feb  4 20:21:59 2006
 +@@ -22,14 +22,16 @@
 + #if ( SUPERLU_USE || SUPERLU_MT_USE || SUPERLU_DIST_USE )
 + 
 + #if SUPERLU_USE 
 +-#include "dsp_defs.h"
 ++#include "slu_ddefs.h"
 + #elif SUPERLU_MT_USE
 ++#include "util.h"
 + #include "pdsp_defs.h"
 + #elif SUPERLU_DIST_USE
 + #include <math.h>
 ++#include "superlu_util.h"
 + #include "superlu_ddefs.h"
 + #endif
 +-#include "util.h"
 ++
 +  
 + long int solve_superlu( double *superlu_A, int *superlu_asub,
 +   int *superlu_xa, int superlu_nnz, double solve_b[], long int solve_nlocal,
 +@@ -53,6 +55,10 @@
 +   int *perm_r, *perm_c;
 +   int perm_spec;
 +   int nrhs;
 ++#if SUPERLU_USE
 ++  SuperLUStat_t stat;
 ++  superlu_options_t options;
 ++#endif
 + #endif
 + 
 +   /* Create Matrix A in the format expected by SuperLU */
 +@@ -103,7 +109,9 @@
 + 
 +   /* Solve */
 + #if SUPERLU_USE 
 +-  dgssv( &A, perm_c, perm_r, &L, &U, &B, &info );
 ++  /* Initialize the statistics variables. */
 ++  StatInit(&stat);
 ++  dgssv(&options, &A, perm_c, perm_r, &L, &U, &B, &stat, &info );
 + #elif SUPERLU_MT_USE
 +   pdgssv( nthread, &A, perm_c, perm_r, &L, &U, &B, &info );
 + #elif SUPERLU_DIST_USE
 diff -ruN tochnog.orig/files/patch-src+so_suplu.c
 tochnog/files/patch-src+so_suplu.c
 --- tochnog.orig/files/patch-src+so_suplu.c	Fri Feb  3 15:07:24 2006
 +++ tochnog/files/patch-src+so_suplu.c	Wed Dec 31 19:00:00 1969
 @@ -1,24 +0,0 @@
 ---- so_suplu.c.orig	Fri Nov 10 05:59:39 2000
 -+++ so_suplu.c	Sun Mar 20 00:45:14 2005
 -@@ -53,6 +53,10 @@
 -   int *perm_r, *perm_c;
 -   int perm_spec;
 -   int nrhs;
 -+#if SUPERLU_USE
 -+  SuperLUStat_t stat;
 -+  superlu_options_t options;
 -+#endif
 - #endif
 - 
 -   /* Create Matrix A in the format expected by SuperLU */
 -@@ -103,7 +107,9 @@
 - 
 -   /* Solve */
 - #if SUPERLU_USE 
 --  dgssv( &A, perm_c, perm_r, &L, &U, &B, &info );
 -+  /* Initialize the statistics variables. */
 -+  StatInit(&stat);
 -+  dgssv(&options, &A, perm_c, perm_r, &L, &U, &B, &stat, &info );
 - #elif SUPERLU_MT_USE
 -   pdgssv( nthread, &A, perm_c, perm_r, &L, &U, &B, &info );
 - #elif SUPERLU_DIST_USE
 diff -ruN tochnog.orig/files/patch-tnsuplu.h tochnog/files/patch-tnsuplu.h
 --- tochnog.orig/files/patch-tnsuplu.h	Fri Feb  3 15:07:24 2006
 +++ tochnog/files/patch-tnsuplu.h	Fri Feb  3 15:56:25 2006
 @@ -1,15 +1,15 @@
 ---- tnsuplu.h.orig	Wed Jun 18 12:39:20 2003
 -+++ tnsuplu.h	Wed Jun 18 12:45:46 2003
 +--- tnsuplu.h.orig	Sun Aug 19 12:31:52 2001
 ++++ tnsuplu.h	Fri Feb  3 15:55:13 2006
  @@ -2,6 +2,12 @@
   #define SUPERLU_USE 0
   #define SUPERLU_MT_USE 0
   #define SUPERLU_DIST_USE 0
 -+#if SUPERLU_USE /* enums were changed for SuperLU v2 */
 ++/* enums were changed for SuperLU v2 */
  +#define _D SLU_D
  +#define DN SLU_DN
  +#define GE SLU_GE
  +#define NC SLU_NC
 -+#endif
 ++
   /* don't change the next lines */
   #if SUPERLU_USE+SUPERLU_MT_USE+SUPERLU_DIST_USE > 1
    ERROR___  just pick one 
 diff -ruN tochnog.orig/files/patch-tochnog.h tochnog/files/patch-tochnog.h
 --- tochnog.orig/files/patch-tochnog.h	Fri Feb  3 15:07:24 2006
 +++ tochnog/files/patch-tochnog.h	Fri Feb  3 15:17:49 2006
 @@ -1,31 +1,32 @@
 ---- tochnog.h.orig	Sat Jul 12 13:05:15 2003
 -+++ tochnog.h	Sat Jul 12 15:29:05 2003
 -@@ -17,12 +17,25 @@
 +--- tochnog.h.orig	Sun Feb 11 05:05:27 2001
 ++++ tochnog.h	Fri Feb  3 15:15:51 2006
 +@@ -17,12 +17,17 @@
       Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
   */
   
  -#include <iostream.h>
  +#include <iostream>
 -+// C++ iostream compatibility stuff
 -+using std::ios;
 -+using std::cout;
 -+using std::cin;
 -+using std::flush;
 -+//end iostream compatibility stuff
 ++// C++ headers
 ++#include <iostream>
 ++#include <fstream>
 ++#include <iomanip>
 ++using namespace std;
  +
 ++// C headers
   #include <assert.h>
   #include <ctype.h>
   #include <float.h>
  -#include <fstream.h>
  -#include <iomanip.h>
 -+#include <fstream>
 -+// C++ fstream compatibility stuff
 -+using std::ifstream;
 -+using std::ofstream;
 -+using std::fstream;
 -+//end fstream compatibility stuff
 -+
 -+#include <iomanip>
   #include <math.h>
   #include <limits.h>
   #include <stdio.h>
 +@@ -48,6 +53,8 @@
 +   VERSION_MACRO,        // mesh for control_macro
 +   MVERSION              // maximum number of versions, this must be the last
 item
 + }; 
 ++
 ++#define TOCHNOG_VERSION "July_25_2002"
 + 
 +   // constants
 + #define MCHAR 100  // maximum length of names
 
 
 
 
 
 ---
      Pedro F. Giffuni
      M. Sc. Industrial Eng. University of Pittsburgh
      Mech. Eng.      Universidad Nacional de Colombia
 ---
 Yahoo is powered by FreeBSD    http://www.FreeBSD.org/
 
 
 	
 
 	
 		
 ___________________________________ 
 Yahoo! Mail: gratis 1GB per i messaggi e allegati da 10MB 
 http://mail.yahoo.it



More information about the freebsd-ports-bugs mailing list