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