ports/90073: possible fix to unbreak biology/LBreeder

Fernan Aguero fernan at iib.unsam.edu.ar
Wed Dec 7 14:31:39 UTC 2005


>Number:         90073
>Category:       ports
>Synopsis:       possible fix to unbreak biology/LBreeder
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Wed Dec 07 14:30:04 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     Fernan Aguero
>Release:        FreeBSD 4.10-RELEASE i386
>Organization:
IIB-UNSAM
>Environment:

FreeBSD pi.iib.unsam.edu.ar 4.10-RELEASE FreeBSD 4.10-RELEASE #0: Wed May 26 12:56:43 ART 2004 fernan at pi.iib.unsam.edu.ar:/usr/obj/usr/src/sys/PI  i386

	
>Description:
	
	
	L-Breeder is currently marked unfetchable:
	http://people.freebsd.org/~fenner/portsurvey/biology.html#L-Breeder

	So I tried to investigate the problem and I'm now submitting my
	homework so it doesn't get lost. 

	This is what I noticed:

	i) L-Breeder upstream sources have "stagnated for some time, but
	now a new simplified version is available" (sic, from the web
	site)

	So, the fetch issue is resolved. And the pkg-descr is also
	updated to reflect the new home page. However:	

	ii) L-Breeder is now called LBreeder. I have changed PORTNAME to
	reflect this, although I don't know if this is the right thing
	to do. Should the port be moved to biology/LBreeder? Or perhaps
	just leaving PORTNAME pointing to the old name and then work
	inside the Makefile to point the build/install to the correct
	name?

	iii) the sources have been reorganized so I have to update the
	port's Makefile to reflect this. The attached patch works for me
	under FreeBSD-4.11 (although it's possible that I may have missed a
	dependency if I already have a required library installed in my
	box. Sorry, I don't have a tinderbox-like setup to test builds)

	iv) the program does not have a version number, nor did I find
	one by looking inside the sources. To avoid changing too much
	the port I just left PORTVERSION at 1.0 and bumped PORTREVISION
	to 6
	
	Finally, do note that I am not a user of LBreeder, so I cannot
	test the program myself. I just noticed that by calling the
	executable I get a black X screen, that I can quit by
	pressing 'q' as documented in Readme.txt, but I can't tell
	myself if this is the expected behaviour. Nor do I know how to
	use the example files. Caveat emptor. 
		
>How-To-Repeat:
	
	
>Fix:

	



--- L-Breeder.diff begins here ---
diff -ruN /usr/ports/biology/L-Breeder/Makefile L-Breeder/Makefile
--- /usr/ports/biology/L-Breeder/Makefile	Sun Dec  4 09:56:03 2005
+++ L-Breeder/Makefile	Wed Dec  7 07:51:25 2005
@@ -1,3 +1,4 @@
+# ex:ts=8
 # New ports collection makefile for:	L-Breeder
 # Date created:				30 May 2002
 # Whom:					David Yeske <dyeske at yahoo.com> et al
@@ -5,26 +6,22 @@
 # $FreeBSD: ports/biology/L-Breeder/Makefile,v 1.17 2005/11/11 14:29:09 garga Exp $
 #
 
-PORTNAME=	L-Breeder
+PORTNAME=	LBreeder
 PORTVERSION=	1.0
-PORTREVISION=	5
+PORTREVISION=	6
 CATEGORIES=	biology
-MASTER_SITES=	http://pixie.oum.ox.ac.uk/L-Breeder/
-DISTNAME=	LBreeder
-EXTRACT_SUFX=	.tgz
+MASTER_SITES=	http://www.simonyi.ox.ac.uk/dawkins/software/yan/L-Breeder/
+DISTNAME=	${PORTNAME}-source
 
 MAINTAINER=	dyeske at yahoo.com
 COMMENT=	Allows you to display and breed L-system forms
 
 LIB_DEPENDS=	wx_gtk2_gl-2.4.0:${PORTSDIR}/x11-toolkits/wxgtk24
 
-DEPRECATED=	"mastersite disappeared, no longer maintained by author"
-EXPIRATION_DATE=	2005-12-31
-
-WRKSRC=		${WRKDIR}/LBreeder/LBreeder
-PATCH_WRKSRC=	${WRKDIR}/LBreeder
-PLIST_FILES=	bin/L-Breeder
+NO_WRKSUBDIR=	yes
+BUILD_WRKSRC=	${WRKSRC}/Unix
 
+USE_ZIP=	yes
 USE_X_PREFIX=	yes
 USE_GL=		yes
 USE_GMAKE=	yes
@@ -42,26 +39,14 @@
 	@${ECHO_MSG} "by defining WITH_OPTIMIZED_CFLAGS"
 .endif
 
-post-patch:
-	@${FIND} ${WRKDIR} -type f -name Makefile | \
-		${XARGS} -n 10 ${REINPLACE_CMD} -E -e \
-		's|/usr/lib/libm.a||; \
-		s|-ldl||; \
-		s|-lgtk||; \
-		s|-lgmodule||; \
-		s|-lpthread||; \
-		s|-lgthread||; \
-		s|/usr/lib/libGL.a|-lGL|; \
-		s|/usr/lib/libGLU.so|-lGLU|; \
-		s|-O2|"${CFLAGS} ${PTHREAD_CFLAGS}"|; \
-		s|-lglib||; \
-		s|g\+\+|${CXX} -I${X11BASE}/include|; \
-		s|-lgdk||; \
-		s|wx-config|${WX_CONFIG}|; \
-		s|-lwx_gtk[[:space:]]|`${WX_CONFIG} --libs`|; \
-		s|-lwx_gtk_gl|-lwx_gtk2_gl-2.4|'
-
+ 
 do-install:
-	@${INSTALL_PROGRAM} ${WRKSRC}/L-Breeder ${PREFIX}/bin
+	@${INSTALL_PROGRAM} ${BUILD_WRKSRC}/${PORTNAME} ${PREFIX}/bin
+.if !defined(NOPORTDOCS)
+	@${MKDIR} ${DOCSDIR}
+	@${INSTALL_DATA} ${WRKSRC}/documentation/* ${DOCSDIR}
+.endif
+	@${MKDIR} ${EXAMPLESDIR}
+	@${INSTALL_DATA} ${WRKSRC}/Lsystems/* ${EXAMPLESDIR}
 
 .include <bsd.port.mk>
diff -ruN /usr/ports/biology/L-Breeder/distinfo L-Breeder/distinfo
--- /usr/ports/biology/L-Breeder/distinfo	Sat Apr  3 01:03:35 2004
+++ L-Breeder/distinfo	Wed Dec  7 06:38:04 2005
@@ -1,2 +1,3 @@
-MD5 (LBreeder.tgz) = a9ce83f618217cf29fdf816f35ac7400
-SIZE (LBreeder.tgz) = 205110
+MD5 (LBreeder-source.zip) = 446a6cf44460ed7e4bb2eecfe33dae4a
+SHA256 (LBreeder-source.zip) = e6c5189a3b3bfdc6911a1cd0cba3f440f2e4fa67d9cadc411ded1f6b1400026a
+SIZE (LBreeder-source.zip) = 131306
diff -ruN /usr/ports/biology/L-Breeder/files/patch-LBreeder::MyTextFrame.cpp L-Breeder/files/patch-LBreeder::MyTextFrame.cpp
--- /usr/ports/biology/L-Breeder/files/patch-LBreeder::MyTextFrame.cpp	Sat Nov  8 01:03:34 2003
+++ L-Breeder/files/patch-LBreeder::MyTextFrame.cpp	Wed Dec 31 21:00:00 1969
@@ -1,9 +0,0 @@
---- LBreeder/MyTextFrame.cpp.orig	Wed Aug 16 22:08:11 2000
-+++ LBreeder/MyTextFrame.cpp	Wed Nov  5 01:03:54 2003
-@@ -1,5 +1,5 @@
--#include "wx/filedlg.h"
- #include "MyTextFrame.h"
-+#include "wx/filedlg.h"
- #include "Ltypes.h" //for debugging messages
- 
- BEGIN_EVENT_TABLE(MyTextFrame, wxDialog)
diff -ruN /usr/ports/biology/L-Breeder/files/patch-LBreeder::MyTextFrame.h L-Breeder/files/patch-LBreeder::MyTextFrame.h
--- /usr/ports/biology/L-Breeder/files/patch-LBreeder::MyTextFrame.h	Wed Nov  5 07:26:00 2003
+++ L-Breeder/files/patch-LBreeder::MyTextFrame.h	Wed Dec 31 21:00:00 1969
@@ -1,10 +0,0 @@
---- LBreeder/MyTextFrame.h.orig	Wed Nov  5 01:03:14 2003
-+++ LBreeder/MyTextFrame.h	Wed Nov  5 01:03:22 2003
-@@ -7,6 +7,7 @@
-       TF_TEXT};
- 
- #include <wx/dialog.h>
-+#include <wx/button.h>
- #include <wx/textctrl.h>
- #include <wx/layout.h>
- 
diff -ruN /usr/ports/biology/L-Breeder/files/patch-Lsystem::Lstring.cpp L-Breeder/files/patch-Lsystem::Lstring.cpp
--- /usr/ports/biology/L-Breeder/files/patch-Lsystem::Lstring.cpp	Thu Nov 20 06:28:34 2003
+++ L-Breeder/files/patch-Lsystem::Lstring.cpp	Wed Dec 31 21:00:00 1969
@@ -1,28 +0,0 @@
---- Lsystem/Lstring.cpp.orig	Wed Aug 16 18:54:26 2000
-+++ Lsystem/Lstring.cpp	Wed Nov 19 22:05:11 2003
-@@ -199,7 +199,7 @@
-   
-   if (sscanf(the_text.c_str(),"%f",&temp)==1)
-     return temp;
--  return sqrt(-1);
-+  return sqrtf(-1);
- 
- }
- 
-@@ -329,13 +329,13 @@
-   float param;
-   int   conv,dummy;
-   the_length=0;
--  if (the_pos==info_length()-1) return sqrt(-1);
--  if (bracketed_chars.find(the_text[the_pos])==string::npos) return sqrt(-1);
-+  if (the_pos==info_length()-1) return sqrt(-1.0);
-+  if (bracketed_chars.find(the_text[the_pos])==string::npos) return sqrt(-1.0);
- 
-   conv=sscanf(&(the_text.data()[the_pos+1]),"(%f)%n",&param,&the_length);
-   if (conv==sscanf("","%n",&dummy)) {
-     the_length=0;
--    return sqrt(-1);
-+    return sqrt(-1.0);
-   } else {
-     return param;
-   };
diff -ruN /usr/ports/biology/L-Breeder/files/patch-Unix-Makefile L-Breeder/files/patch-Unix-Makefile
--- /usr/ports/biology/L-Breeder/files/patch-Unix-Makefile	Wed Dec 31 21:00:00 1969
+++ L-Breeder/files/patch-Unix-Makefile	Wed Dec  7 07:46:59 2005
@@ -0,0 +1,14 @@
+--- Unix/Makefile.orig	Fri Jul  2 10:06:30 2004
++++ Unix/Makefile	Wed Dec  7 07:46:56 2005
+@@ -1,9 +1,10 @@
+ src=../src/
++C_FLAGS= -I$(X11BASE)/include -I$(LOCALBASE)/include
+ 
+ .PHONY : clean all
+ 
+ all          : probability.o mutprobs.o trackball.o Lparse.o GL_Ldraw.o Lline.o Lsys.o GLUT_LBreeder.o
+-	g++ probability.o mutprobs.o trackball.o Lparse.o GL_Ldraw.o Lline.o Lsys.o GLUT_LBreeder.o ${src}main.cpp -lGL -lGLU -lglut -o LBreeder-${OSTYPE}
++	g++ probability.o mutprobs.o trackball.o Lparse.o GL_Ldraw.o Lline.o Lsys.o GLUT_LBreeder.o ${src}main.cpp -L$(X11BASE)/lib -L$(LOCALBASE)/lib -lGL -lGLU -lglut -o LBreeder
+ 
+ GLUT_LBreeder.o : ${src}GLUT_LBreeder.cpp  ${src}GLUT_LBreeder.h
+ 	g++ -c  ${src}GLUT_LBreeder.cpp ${C_FLAGS}
diff -ruN /usr/ports/biology/L-Breeder/files/patch-thinair::environ.h L-Breeder/files/patch-thinair::environ.h
--- /usr/ports/biology/L-Breeder/files/patch-thinair::environ.h	Thu Nov 20 06:28:34 2003
+++ L-Breeder/files/patch-thinair::environ.h	Wed Dec 31 21:00:00 1969
@@ -1,25 +0,0 @@
---- thinair/environ.h.orig	Wed Aug 16 17:08:27 2000
-+++ thinair/environ.h	Wed Nov 19 21:54:56 2003
-@@ -35,17 +35,20 @@
-      #include <minmax.h>
-   #endif
- 
--  #if __GNUC__ >= 2 && __GNUC_MINOR__ >= 6 && defined( __cplusplus )
-+  #if ((__GNUC__ == 2 && __GNUC_MINOR__ >= 6) || __GNUC__ > 2) && defined( __cplusplus )
-      #define  _HAS_BOOL
-      #define  _STRING_CLASS
--     #if __GNUC__ >= 2 && __GNUC_MINOR__ < 7
-+     #define  _ANSI_CPP_HEADERS
-+     #if __GNUC__ == 2 && __GNUC_MINOR__ < 7
-        #define  _STRING_HEADER   <g++/String.h>
-        #define  _STRING          String
-      #else
-        #define  _STRING_HEADER   <string>
-        #define  _STRING          string
-        #define  _DIFFERING_RETURNS_ALLOWED
-+       #if __GNUC__ == 2
-        #include <stl.h>
-+       #endif
-      #endif
-      #define  _HAS_INT64
- 
diff -ruN /usr/ports/biology/L-Breeder/pkg-descr L-Breeder/pkg-descr
--- /usr/ports/biology/L-Breeder/pkg-descr	Tue Aug 20 21:01:58 2002
+++ L-Breeder/pkg-descr	Wed Dec  7 06:36:15 2005
@@ -1,7 +1,7 @@
 L-Breeder is a program which allows you to display, breed, and
 genetically engineered L-system forms.
 
-WWW: http://pixie.oum.ox.ac.uk/L-Breeder/
+WWW: http://www.simonyi.ox.ac.uk/dawkins/software/yan/L-Breeder/
 
 - David
 dyeske at yahoo.com
diff -ruN /usr/ports/biology/L-Breeder/pkg-plist L-Breeder/pkg-plist
--- /usr/ports/biology/L-Breeder/pkg-plist	Wed Dec 31 21:00:00 1969
+++ L-Breeder/pkg-plist	Wed Dec  7 08:02:31 2005
@@ -0,0 +1,24 @@
+bin/LBreeder
+%%PORTDOCS%%%%DOCSDIR%%/ReadMe.txt
+%%PORTDOCS%%%%DOCSDIR%%/commands.html
+%%PORTDOCS%%%%DOCSDIR%%/tutorial.html
+%%EXAMPLESDIR%%/AIRHORSE.LS
+%%EXAMPLESDIR%%/AXIS.LS
+%%EXAMPLESDIR%%/BASETREE.LS
+%%EXAMPLESDIR%%/FERN.LS
+%%EXAMPLESDIR%%/FRACT00.LS
+%%EXAMPLESDIR%%/FRACT01.LS
+%%EXAMPLESDIR%%/FRACT02.LS
+%%EXAMPLESDIR%%/FRACT03.LS
+%%EXAMPLESDIR%%/TREE00B.LS
+%%EXAMPLESDIR%%/TREE00C.LS
+%%EXAMPLESDIR%%/TREE02.LS
+%%EXAMPLESDIR%%/TREE03.LS
+%%EXAMPLESDIR%%/TREE04.LS
+%%EXAMPLESDIR%%/TREE05.LS
+%%EXAMPLESDIR%%/TREE06.LS
+%%EXAMPLESDIR%%/TREE07.LS
+%%EXAMPLESDIR%%/TREE11.LS
+%%EXAMPLESDIR%%/TROPISM.LS
+%%PORTDOCS%%@dirrm %%DOCSDIR%%
+ at dirrm %%EXAMPLESDIR%%
--- L-Breeder.diff ends here ---

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



More information about the freebsd-ports-bugs mailing list