ports/88389: devel/picasm fails to install device profiles

Christopher Hall hsw at acm.org
Wed Nov 2 07:50:17 UTC 2005


>Number:         88389
>Category:       ports
>Synopsis:       devel/picasm fails to install device profiles
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Wed Nov 02 07:50:16 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     Christopher Hall
>Release:        FreeBSD 5.4-STABLE i386
>Organization:
>Environment:
System: FreeBSD 5.4-STABLE #34: Mon Sep 5 10:27:08 CST 2005 i386


	
>Description:

No device profiles installed

>How-To-Repeat:
cd /usr/ports/devel/picasm
make install

note that the device profiles are not installed

>Fix:

Really should modify the Makefile to list all device profiles and automatically
create the pkg-list - then there will be less changes if new devices are added.

I had to make this work quickly, so did not attempt to make a variable pkg-list.
I patched one C source file to add the location of the profiles.

Here is the diff for the present device profiles

diff -urN -urN picasm/Makefile picasm.new/Makefile
--- picasm/Makefile	Wed Oct  5 09:58:18 2005
+++ picasm.new/Makefile	Fri Oct 28 11:51:57 2005
@@ -12,7 +12,7 @@
 DISTNAME=	${PORTNAME}${PORTVERSION:S/.//g}
 
 MAINTAINER=	bms at FreeBSD.org
-COMMENT=	Portable assembler for 16C84 series PICs
+COMMENT=	Portable assembler for PIC series of microcontrollers
 
 USE_BZIP2=	yes
 
@@ -24,6 +24,9 @@
 ALL_TARGET=
 
 EXAMPLE_FILES=	example.asm morse.asm morse.i pic16f84.i picmac.i
+DEVICESDIR=	${PREFIX}/share/picasm/device_definitions
+DEVICE_FILES=	${WRKSRC}/device_definitions
+
 
 do-install:
 	${INSTALL_PROGRAM} ${WRKSRC}/picasm ${PREFIX}/bin
@@ -34,5 +37,10 @@
 	${INSTALL_DATA} ${WRKSRC}/examples/${EXAMPLE} ${EXAMPLESDIR}
 .endfor
 .endif
+	${MKDIR} ${DEVICESDIR}
+	for DEVICE in ${DEVICE_FILES}/*.i; \
+	do \
+	  ${INSTALL_DATA} $${DEVICE} ${DEVICESDIR}; \
+	done
 
 .include <bsd.port.mk>
diff -urN -urN picasm/files/patch-picasm.c picasm.new/files/patch-picasm.c
--- picasm/files/patch-picasm.c	Thu Jan  1 08:00:00 1970
+++ picasm.new/files/patch-picasm.c	Fri Oct 28 11:58:49 2005
@@ -0,0 +1,21 @@
+--- picasm.c.orig	Wed Jun 29 15:05:34 2005
++++ picasm.c	Fri Oct 28 11:58:43 2005
+@@ -998,15 +998,15 @@
+ static void
+ do_device_include(char *devname)
+ {
+-    char incname[256];
++    char incname[1024];
+     char *cp;
+     int c;
+ 
+     if(strncasecmp(devname, "PIC", 3) == 0)
+ 	devname += 3;
+ 
+-    strcpy(incname, "_pic");
+-    cp = &incname[4];
++    strcpy(incname, "/usr/local/share/picasm/device_definitions/_pic");
++    cp = &incname[strlen(incname)];
+     while(cp < &incname[sizeof(incname)-3])
+     {
+ 	c = (unsigned char)(*devname);
diff -urN -urN picasm/pkg-plist picasm.new/pkg-plist
--- picasm/pkg-plist	Mon Oct  6 12:07:51 2003
+++ picasm.new/pkg-plist	Fri Oct 28 11:52:34 2005
@@ -8,3 +8,65 @@
 %%PORTDOCS%%share/examples/picasm/pic16f84.i
 %%PORTDOCS%%share/examples/picasm/picmac.i
 %%PORTDOCS%%@dirrm share/examples/picasm
+share/picasm/device_definitions/_pic12c508.i
+share/picasm/device_definitions/_pic12c509.i
+share/picasm/device_definitions/_pic12c671.i
+share/picasm/device_definitions/_pic12c672.i
+share/picasm/device_definitions/_pic14000.i
+share/picasm/device_definitions/_pic14c000.i
+share/picasm/device_definitions/_pic16c52.i
+share/picasm/device_definitions/_pic16c54.i
+share/picasm/device_definitions/_pic16c54a.i
+share/picasm/device_definitions/_pic16c55.i
+share/picasm/device_definitions/_pic16c554.i
+share/picasm/device_definitions/_pic16c554a.i
+share/picasm/device_definitions/_pic16c556a.i
+share/picasm/device_definitions/_pic16c558.i
+share/picasm/device_definitions/_pic16c558a.i
+share/picasm/device_definitions/_pic16c56.i
+share/picasm/device_definitions/_pic16c57.i
+share/picasm/device_definitions/_pic16c58a.i
+share/picasm/device_definitions/_pic16c61.i
+share/picasm/device_definitions/_pic16c62.i
+share/picasm/device_definitions/_pic16c620.i
+share/picasm/device_definitions/_pic16c621.i
+share/picasm/device_definitions/_pic16c622.i
+share/picasm/device_definitions/_pic16c62a.i
+share/picasm/device_definitions/_pic16c63.i
+share/picasm/device_definitions/_pic16c64.i
+share/picasm/device_definitions/_pic16c64a.i
+share/picasm/device_definitions/_pic16c65.i
+share/picasm/device_definitions/_pic16c65a.i
+share/picasm/device_definitions/_pic16c66.i
+share/picasm/device_definitions/_pic16c67.i
+share/picasm/device_definitions/_pic16c71.i
+share/picasm/device_definitions/_pic16c710.i
+share/picasm/device_definitions/_pic16c711.i
+share/picasm/device_definitions/_pic16c715.i
+share/picasm/device_definitions/_pic16c72.i
+share/picasm/device_definitions/_pic16c73.i
+share/picasm/device_definitions/_pic16c73a.i
+share/picasm/device_definitions/_pic16c74.i
+share/picasm/device_definitions/_pic16c74a.i
+share/picasm/device_definitions/_pic16c76.i
+share/picasm/device_definitions/_pic16c77.i
+share/picasm/device_definitions/_pic16c83.i
+share/picasm/device_definitions/_pic16c84.i
+share/picasm/device_definitions/_pic16c923.i
+share/picasm/device_definitions/_pic16c924.i
+share/picasm/device_definitions/_pic16f688.i
+share/picasm/device_definitions/_pic16f72.i
+share/picasm/device_definitions/_pic16f818.i
+share/picasm/device_definitions/_pic16f819.i
+share/picasm/device_definitions/_pic16f84.i
+share/picasm/device_definitions/_pic16f873.i
+share/picasm/device_definitions/_pic16f874.i
+share/picasm/device_definitions/_pic16f876.i
+share/picasm/device_definitions/_pic16f877.i
+share/picasm/device_definitions/_pic17c42.i
+share/picasm/device_definitions/_pic17c43.i
+share/picasm/device_definitions/_pic17c44.i
+share/picasm/device_definitions/_pic17c752.i
+share/picasm/device_definitions/_pic17c756.i
+ at dirrm share/picasm/device_definitions
+ at dirrm share/picasm
>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list