ports/94465: [NEW PORT] devel/pikdev: Simple graphic IDE for the development of PIC-based
Jose Alonso Cardenas Marquez
acardenas at bsd.org.pe
Wed Mar 15 08:23:30 UTC 2006
>Number: 94465
>Category: ports
>Synopsis: [NEW PORT] devel/pikdev: Simple graphic IDE for the development of PIC-based
>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 Mar 15 08:20:19 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator: Jose Alonso Cardenas Marquez
>Release: FreeBSD 6.1-PRERELEASE i386
>Organization:
BSDPeru (http://www.bsd.org.pe)
>Environment:
FreeBSD HellFire.BSD.org.pe 6.1-PRERELEASE FreeBSD 6.1-PRERELEASE #0: Wed Mar 8 13:14:43 PET
>Description:
- Need to test parallel port with a pic microcontroller
PiKdev is a simple graphic IDE for the development of PIC-based applications.
It currently supports assembly language. C language is also supported for PIC 18 devices.
PiKdev is developed in C++ under Linux, FreeBSD and is based on the KDE environment.
WWW: http://pikdev.free.fr/
>How-To-Repeat:
>Fix:
--- pikdev-0.8.4.shar begins here ---
# This is a shell archive. Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file". Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
# pikdev
# pikdev/pkg-descr
# pikdev/Makefile
# pikdev/pkg-plist
# pikdev/distinfo
# pikdev/files
# pikdev/files/patch-pikdev_uparport.cc
# pikdev/files/patch-pikdev_uparport.hh
# pikdev/files/patch-pikdev_Config.cpp
# pikdev/files/pkg-message.in
#
echo c - pikdev
mkdir -p pikdev > /dev/null 2>&1
echo x - pikdev/pkg-descr
sed 's/^X//' >pikdev/pkg-descr << 'END-of-pikdev/pkg-descr'
XPiKdev is a simple graphic IDE for the development of PIC-based applications.
XIt currently supports assembly language. C language is also supported for PIC 18 devices.
XPiKdev is developed in C++ under Linux, FreeBSD and is based on the KDE environment.
X
XWWW: http://pikdev.free.fr/
END-of-pikdev/pkg-descr
echo x - pikdev/Makefile
sed 's/^X//' >pikdev/Makefile << 'END-of-pikdev/Makefile'
X# New ports collection makefile for: pikdev
X# Date created: 2006-03-14
X# Whom: Jose Alonso Cardenas Marquez <acardenas at bsd.org.pe>
X#
X# $FreeBSD$
X#
X
XPORTNAME= pikdev
XPORTVERSION= 0.8.4
XCATEGORIES= devel kde
XMASTER_SITES= http://pikdev.free.fr/
X
XMAINTAINER= acardenas at bsd.org.pe
XCOMMENT= Simple graphic IDE for the development of PIC-based applications
X
XLIB_DEPENDS= fam.0:${PORTSDIR}/devel/gamin \
X png.5:${PORTSDIR}/graphics/png \
X jpeg.9:${PORTSDIR}/graphics/jpeg
XRUN_DEPENDS= gpasm:${PORTSDIR}/devel/gputils
X
X#USE_KDEBASE_VER=3
XGNU_CONFIGURE= yes
XUSE_GMAKE= yes
XCONFIGURE_TARGET= --build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
XLDFLAGS+= -L${LOCALBASE}/lib -L${X11BASE}/lib ${PTHREAD_LIBS}
XCPPFLAGS+= -I${LOCALBASE}/include -I${X11BASE}/include
XCONFIGURE_ENV= LDFLAGS="${LDFLAGS}" CPPFLAGS="${CPPFLAGS}" CFLAGS="${CFLAGS}"
XMAKE_ENV= LDFLAGS="${LDFLAGS}" CPPFLAGS="${CPPFLAGS}" CFLAGS="${CFLAGS}"
XSUB_FILES= pkg-message
X
XOPTIONS= DEBUG "Enable debug information" off \
X NLS "Native Language Support" on
X
X.include <bsd.port.pre.mk>
X
X.if defined(WITH_DEBUG)
XCONFIGURE_ARGS+= --enable-debug=full
X.endif
X
X.if defined(WITHOUT_NLS)
XPLIST_SUB+= NLS="@comment "
X.else
XUSE_GETTEXT= yes
XPLIST_SUB+= NLS=""
XFLAG_NLS= true
X.endif
X
Xpost-patch:
X ${REINPLACE_CMD} -e 's|-O2||g' ${WRKSRC}/configure
X ${REINPLACE_CMD} -e 's|-Wmissing-prototypes||g' ${WRKSRC}/configure
X
Xpost-configure:
X.if !defined(FLAG_NLS)
X ${REINPLACE_CMD} -e 's|install-data-am: install-nls|install-data-am:|g' ${WRKSRC}/po/Makefile
X.endif
X
Xpost-install:
X ${CAT} ${PKGMESSAGE}
X
X.include <bsd.port.post.mk>
END-of-pikdev/Makefile
echo x - pikdev/pkg-plist
sed 's/^X//' >pikdev/pkg-plist << 'END-of-pikdev/pkg-plist'
Xbin/pikdev
Xshare/applnk/Development/pikdev.desktop
Xshare/apps/pikdev/icons/crystalsvg/16x16/actions/pikdev_addcurrentfile.png
Xshare/apps/pikdev/icons/crystalsvg/16x16/actions/pikdev_addfile.png
Xshare/apps/pikdev/icons/crystalsvg/16x16/actions/pikdev_burnchip.png
Xshare/apps/pikdev/icons/crystalsvg/16x16/actions/pikdev_chip.png
Xshare/apps/pikdev/icons/crystalsvg/16x16/actions/pikdev_closeproject.png
Xshare/apps/pikdev/icons/crystalsvg/16x16/actions/pikdev_compile.png
Xshare/apps/pikdev/icons/crystalsvg/16x16/actions/pikdev_createproject.png
Xshare/apps/pikdev/icons/crystalsvg/16x16/actions/pikdev_decompile.png
Xshare/apps/pikdev/icons/crystalsvg/16x16/actions/pikdev_editproject.png
Xshare/apps/pikdev/icons/crystalsvg/16x16/actions/pikdev_erasechip.png
Xshare/apps/pikdev/icons/crystalsvg/16x16/actions/pikdev_find_next.png
Xshare/apps/pikdev/icons/crystalsvg/16x16/actions/pikdev_find_previous.png
Xshare/apps/pikdev/icons/crystalsvg/16x16/actions/pikdev_openproject.png
Xshare/apps/pikdev/icons/crystalsvg/16x16/actions/pikdev_readchip.png
Xshare/apps/pikdev/icons/crystalsvg/16x16/actions/pikdev_verifychip.png
Xshare/apps/pikdev/icons/crystalsvg/22x22/actions/pikdev_addcurrentfile.png
Xshare/apps/pikdev/icons/crystalsvg/22x22/actions/pikdev_addfile.png
Xshare/apps/pikdev/icons/crystalsvg/22x22/actions/pikdev_burnchip.png
Xshare/apps/pikdev/icons/crystalsvg/22x22/actions/pikdev_chip.png
Xshare/apps/pikdev/icons/crystalsvg/22x22/actions/pikdev_closeproject.png
Xshare/apps/pikdev/icons/crystalsvg/22x22/actions/pikdev_compile.png
Xshare/apps/pikdev/icons/crystalsvg/22x22/actions/pikdev_createproject.png
Xshare/apps/pikdev/icons/crystalsvg/22x22/actions/pikdev_decompile.png
Xshare/apps/pikdev/icons/crystalsvg/22x22/actions/pikdev_editproject.png
Xshare/apps/pikdev/icons/crystalsvg/22x22/actions/pikdev_erasechip.png
Xshare/apps/pikdev/icons/crystalsvg/22x22/actions/pikdev_find_next.png
Xshare/apps/pikdev/icons/crystalsvg/22x22/actions/pikdev_find_previous.png
Xshare/apps/pikdev/icons/crystalsvg/22x22/actions/pikdev_openproject.png
Xshare/apps/pikdev/icons/crystalsvg/22x22/actions/pikdev_readchip.png
Xshare/apps/pikdev/icons/crystalsvg/22x22/actions/pikdev_verifychip.png
Xshare/apps/pikdev/icons/crystalsvg/32x32/actions/pikdev_config_asm.png
Xshare/apps/pikdev/icons/crystalsvg/32x32/actions/pikdev_config_prg.png
Xshare/apps/pikdev/pikdev-main.rc
Xshare/apps/pikdev/pikdev-prg.rc
Xshare/apps/pikdev/pics/splash.png
Xshare/apps/katepart/syntax/picsrc_pikdev.xml
Xshare/icons/crystalsvg/32x32/apps/pikdev.png
Xshare/icons/crystalsvg/16x16/apps/pikdev.png
X%%NLS%%share/locale/es/LC_MESSAGES/pikdev.mo
X%%NLS%%share/locale/fr/LC_MESSAGES/pikdev.mo
X%%NLS%%share/locale/de/LC_MESSAGES/pikdev.mo
X%%NLS%%share/locale/it/LC_MESSAGES/pikdev.mo
X at dirrm share/apps/pikdev/icons/crystalsvg/16x16/actions
X at dirrm share/apps/pikdev/icons/crystalsvg/16x16
X at dirrm share/apps/pikdev/icons/crystalsvg/22x22/actions
X at dirrm share/apps/pikdev/icons/crystalsvg/22x22
X at dirrm share/apps/pikdev/icons/crystalsvg/32x32/actions
X at dirrm share/apps/pikdev/icons/crystalsvg/32x32
X at dirrm share/apps/pikdev/icons/crystalsvg
X at dirrm share/apps/pikdev/icons
X at dirrm share/apps/pikdev/pics
X at dirrm share/apps/pikdev
END-of-pikdev/pkg-plist
echo x - pikdev/distinfo
sed 's/^X//' >pikdev/distinfo << 'END-of-pikdev/distinfo'
XMD5 (pikdev-0.8.4.tar.gz) = 95c6cf21241134ed684373b8176f6ea1
XSHA256 (pikdev-0.8.4.tar.gz) = db4a8372a10a6431859ec2a123e7dbfc88a8770b7f5c47a843b13bfebae297de
XSIZE (pikdev-0.8.4.tar.gz) = 1221482
END-of-pikdev/distinfo
echo c - pikdev/files
mkdir -p pikdev/files > /dev/null 2>&1
echo x - pikdev/files/patch-pikdev_uparport.cc
sed 's/^X//' >pikdev/files/patch-pikdev_uparport.cc << 'END-of-pikdev/files/patch-pikdev_uparport.cc'
X--- pikdev/uparport.cc Mon Aug 16 12:48:45 2004
X+++ pikdev/uparport.cc Wed Mar 15 00:47:22 2006
X@@ -22,34 +22,35 @@
X // img : cache byte for the relevant port
X // (data port, status port, control port)
X #define NA 0
X+
X struct parport::pintable parport::pin_table[26] =
X {
X- { NA, NA ,0x00, &parport::errimg }, /* pin 0 Invalid pin # */
X- { PPRCONTROL, PPWCONTROL,0x01, &parport::controlimg }, /* pin 1 (out) !strobe */
X- { PPRDATA, PPWDATA ,0x01, &parport::dataimg },/* pin 2 (out) Data 0 */
X- { PPRDATA, PPWDATA ,0x02, &parport::dataimg },/* pin 3 (out) Data 1 */
X- { PPRDATA, PPWDATA ,0x04, &parport::dataimg },/* pin 4 (out) Data 2 */
X- { PPRDATA, PPWDATA ,0x08, &parport::dataimg },/* pin 5 (out) Data 3 */
X- { PPRDATA, PPWDATA ,0x10, &parport::dataimg },/* pin 6 (out) Data 4 */
X- { PPRDATA, PPWDATA ,0x20, &parport::dataimg },/* pin 7 (out) Data 5 */
X- { PPRDATA, PPWDATA ,0x40, &parport::dataimg },/* pin 8 (out) Data 6 */
X- { PPRDATA, PPWDATA ,0x80, &parport::dataimg },/* pin 9 (out) Data 7 */
X- { PPRSTATUS, NA ,0x40, &parport::statusimg },/* pin 10 (in) !ack */
X- { PPRSTATUS, NA ,0x80, &parport::statusimg }, /* pin 11 (in) busy */
X- { PPRSTATUS, NA ,0x20, &parport::statusimg }, /* pin 12 (in) Pout */
X- { PPRSTATUS, NA ,0x10, &parport::statusimg }, /* pin 13 (in) Select */
X- { PPRCONTROL, PPWCONTROL,0x02, &parport::controlimg },/* pin 14 (out) !feed */
X- { PPRSTATUS, NA ,0x08, &parport::statusimg },/* pin 15 (in) !error */
X- { PPRCONTROL, PPWCONTROL,0x04, &parport::controlimg },/* pin 16 (out) !init */
X- { PPRCONTROL, PPWCONTROL,0x08, &parport::controlimg },/* pin 17 (out) !SI */
X- { NA, NA , 0x00, &parport::errimg }, /* pin 18 GND */
X- { NA, NA , 0x00, &parport::errimg }, /* pin 19 GND */
X- { NA, NA , 0x00, &parport::errimg }, /* pin 20 GND */
X- { NA, NA , 0x00, &parport::errimg }, /* pin 21 GND */
X- { NA, NA , 0x00, &parport::errimg }, /* pin 22 GND */
X- { NA, NA , 0x00, &parport::errimg }, /* pin 23 GND */
X- { NA, NA , 0x00, &parport::errimg }, /* pin 24 GND */
X- { NA, NA , 0x00, &parport::errimg }, /* pin 25 GND */
X+ { NA, NA ,0x00, &parport::errimg }, /* pin 0 Invalid pin # */
X+ { PPIGCTRL, PPISCTRL,0x01, &parport::controlimg }, /* pin 1 (out) !strobe */
X+ { PPIGDATA, PPISDATA ,0x01, &parport::dataimg },/* pin 2 (out) Data 0 */
X+ { PPIGDATA, PPISDATA ,0x02, &parport::dataimg },/* pin 3 (out) Data 1 */
X+ { PPIGDATA, PPISDATA ,0x04, &parport::dataimg },/* pin 4 (out) Data 2 */
X+ { PPIGDATA, PPISDATA ,0x08, &parport::dataimg },/* pin 5 (out) Data 3 */
X+ { PPIGDATA, PPISDATA ,0x10, &parport::dataimg },/* pin 6 (out) Data 4 */
X+ { PPIGDATA, PPISDATA ,0x20, &parport::dataimg },/* pin 7 (out) Data 5 */
X+ { PPIGDATA, PPISDATA ,0x40, &parport::dataimg },/* pin 8 (out) Data 6 */
X+ { PPIGDATA, PPISDATA ,0x80, &parport::dataimg },/* pin 9 (out) Data 7 */
X+ { PPIGSTATUS, NA ,0x40, &parport::statusimg },/* pin 10 (in) !ack */
X+ { PPIGSTATUS, NA ,0x80, &parport::statusimg }, /* pin 11 (in) busy */
X+ { PPIGSTATUS, NA ,0x20, &parport::statusimg }, /* pin 12 (in) Pout */
X+ { PPIGSTATUS, NA ,0x10, &parport::statusimg }, /* pin 13 (in) Select */
X+ { PPIGCTRL, PPISCTRL ,0x02, &parport::controlimg },/* pin 14 (out) !feed */
X+ { PPIGSTATUS, NA ,0x08, &parport::statusimg },/* pin 15 (in) !error */
X+ { PPIGCTRL, PPISCTRL,0x04, &parport::controlimg },/* pin 16 (out) !init */
X+ { PPIGCTRL, PPISCTRL,0x08, &parport::controlimg },/* pin 17 (out) !SI */
X+ { NA, NA , 0x00, &parport::errimg }, /* pin 18 GND */
X+ { NA, NA , 0x00, &parport::errimg }, /* pin 19 GND */
X+ { NA, NA , 0x00, &parport::errimg }, /* pin 20 GND */
X+ { NA, NA , 0x00, &parport::errimg }, /* pin 21 GND */
X+ { NA, NA , 0x00, &parport::errimg }, /* pin 22 GND */
X+ { NA, NA , 0x00, &parport::errimg }, /* pin 23 GND */
X+ { NA, NA , 0x00, &parport::errimg }, /* pin 24 GND */
X+ { NA, NA , 0x00, &parport::errimg }, /* pin 25 GND */
X };
X
X // --------------------------------------------------------
X@@ -68,7 +69,6 @@
X int parport::yield()
X {
X if(fd == -1) return -1;
X- return ioctl(fd,PPYIELD) ;
X }
X
X // --------------------------------------------------------
X@@ -83,7 +83,7 @@
X
X int k;
X
X- if( ((sscanf(np,"/dev/parport%d",&k) == 1) || (sscanf(np,"/dev/parports/%d",&k) == 1))
X+ if( ((sscanf(np,"/dev/ppi%d",&k) == 1) || (sscanf(np,"/dev/ppi/%d",&k) == 1))
X && (k >= 0) && (k < 10))
X {
X // seems correct ..
X@@ -91,14 +91,7 @@
X
X if( fd != -1)
X {
X- if( (k = ioctl(fd, PPCLAIM)) != 0)
X- {
X- char b[200] ;
X- sprintf(b,"parport::setport (%.150s must be rw enabled)", np);
X- perror(b) ;
X- ::close(fd) ;
X- fd = -1 ;
X- }
X+ return;
X }
X else
X perror("Cannot open parallel port") ;
X@@ -110,7 +103,7 @@
X
X int parport::writedata(unsigned char x)
X {
X- int s = ioctl(fd,PPWDATA,&x);
X+ int s = ioctl(fd,PPISDATA,&x);
X if( s )
X perror("parport::writedata") ;
X else
X@@ -120,7 +113,7 @@
X
X int parport::readdata(unsigned char& x)
X {
X- int s = ioctl(fd,PPRDATA,&x);
X+ int s = ioctl(fd,PPIGDATA,&x);
X if( s )
X perror( "parport::readdata") ;
X else
X@@ -131,7 +124,7 @@
X
X int parport::writecontrol(unsigned char x)
X {
X- int s = ioctl(fd,PPWCONTROL,&x);
X+ int s = ioctl(fd,PPISCTRL,&x);
X if( s ) perror( "parport::writecontrol") ;
X else controlimg = x ;
X return s ;
X@@ -139,7 +132,7 @@
X
X int parport::readcontrol(unsigned char& x)
X {
X- int s = ioctl(fd,PPRCONTROL,&x);
X+ int s = ioctl(fd,PPIGCTRL,&x);
X if( s )
X perror("parport::readcontrol");
X else
X@@ -160,7 +153,7 @@
X
X int parport::readstatus(unsigned char& x)
X {
X- int s = ioctl(fd,PPRSTATUS,&x);
X+ int s = ioctl(fd,PPIGSTATUS,&x);
X if( s )
X perror("parport::readstatus") ;
X else
X@@ -235,17 +228,7 @@
X int fd = open(pname, O_RDWR) ;
X if( fd == -1 ) return -2 ;
X
X- int k = ioctl(fd, PPCLAIM) ;
X-
X- if( k != 0 )
X- {
X- ::close(fd) ;
X- return -1 ;
X- }
X- ioctl(fd,PPRELEASE) ;
X-
X- ::close(fd) ;
X-
X+ ::close(fd) ;
X return 0 ;
X
X }
X@@ -254,12 +237,8 @@
X {
X if( fd != -1)
X {
X- int stat = ioctl(fd,PPRELEASE) ;
X ::close(fd) ;
X- if( stat != 0)
X- {
X- perror("parport::~parport") ;
X- }
X+ perror("parport::~parport") ;
X }
X fd = -1 ;
X }
END-of-pikdev/files/patch-pikdev_uparport.cc
echo x - pikdev/files/patch-pikdev_uparport.hh
sed 's/^X//' >pikdev/files/patch-pikdev_uparport.hh << 'END-of-pikdev/files/patch-pikdev_uparport.hh'
X--- pikdev/uparport.hh Fri Jan 7 16:26:24 2005
X+++ pikdev/uparport.hh Tue Mar 14 13:52:59 2006
X@@ -15,10 +15,10 @@
X extern "C"
X {
X #include <sys/ioctl.h>
X-// in RedHat & Mandrake distro, ppdev.h is into /usr/include/linux
X-#include <linux/ppdev.h>
X #include <sys/time.h>
X-#include <sys/io.h>
X+#include <machine/cpufunc.h>
X+#include <dev/ppbus/ppi.h>
X+#include <dev/ppbus/ppbconf.h>
X #include <fcntl.h>
X }
X
END-of-pikdev/files/patch-pikdev_uparport.hh
echo x - pikdev/files/patch-pikdev_Config.cpp
sed 's/^X//' >pikdev/files/patch-pikdev_Config.cpp << 'END-of-pikdev/files/patch-pikdev_Config.cpp'
X--- pikdev/Config.cpp Sat Sep 10 09:48:17 2005
X+++ pikdev/Config.cpp Tue Mar 14 13:39:56 2006
X@@ -122,7 +122,7 @@
X vdd = conf->readNumEntry("vdd", -4 ) ;
X vpp = conf->readNumEntry("vpp", -5 ) ;
X clkdelay = conf->readNumEntry("clkdelay", 0 ) ;
X- port = conf->readEntry("device", "/dev/parport0" ) ;
X+ port = conf->readEntry("device", "/dev/ppi0" ) ;
X }
X
X
X@@ -141,7 +141,7 @@
X vdd = conf->readNumEntry("vdd", 5 ) ;
X vpp = conf->readNumEntry("vpp", 3 ) ;
X clkdelay = conf->readNumEntry("clkdelay", 0 ) ;
X- port = conf->readEntry("device", "/dev/ttyS0" ) ;
X+ port = conf->readEntry("device", "/dev/sio0" ) ;
X }
X
X void Config::getSer555PortConfig(QString &port, int &vpp, int& vdd, int &clock,
X@@ -158,7 +158,7 @@
X vdd = conf->readNumEntry("vdd", 5 ) ;
X vpp = conf->readNumEntry("vpp", 3 ) ;
X clkdelay = conf->readNumEntry("clkdelay", 0 ) ;
X- port = conf->readEntry("device", "/dev/ttyUSB0" ) ;
X+ port = conf->readEntry("device", "/dev/usb" ) ;
X }
X
X /** Write informations about known standard programming cards */
END-of-pikdev/files/patch-pikdev_Config.cpp
echo x - pikdev/files/pkg-message.in
sed 's/^X//' >pikdev/files/pkg-message.in << 'END-of-pikdev/files/pkg-message.in'
X###############################################################################
X
X1) Add your user to wheel group
X2) Modify user and group permissions of /dev/ppi0 to read/write.
X
X - FreeBSD 4.x
X * chown root:wheel /dev/ppi0
X * chmod 660 /dev/ppi0
X
X - FreeBSD >= 5.x
X * Add these lines into /etc/devfs.conf
X
X own ppi0 root:wheel
X perm ppi0 0660
X
X * Run sh /etc/rc.d/devfs restart
X
X3) Run pikdev
X4) Enjoy it ;)
X
X###############################################################################
END-of-pikdev/files/pkg-message.in
exit
--- pikdev-0.8.4.shar ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list