Date: Fri, 30 May 2014 09:48:27 +0530 From: Raghu HB <raghu.hb@avagotech.com> To: olli hauer <ohauer@gmx.de>, freebsd-ports <freebsd-ports@freebsd.org> Subject: RE: Creating new port Message-ID: <6667825af05f6ed0e9e5cc649b18477f@mail.gmail.com> In-Reply-To: <5386E901.5090803@gmx.de> References: <cd7ad7c8eb71a187b377418d02519420@mail.gmail.com> <5385AFFA.7050206@sorbs.net> <bd5c3395f00ce16563c3cd4bede979f3@mail.gmail.com> <5386E901.5090803@gmx.de>
next in thread | previous in thread | raw e-mail | index | archive | help
Olli and Michelle, Thanks a lot, this is what I was looking for (example for the port creation), I referred simple sysutils/tw_cli port and created new port and package. Below are the steps I followed. STEP1: Created a test port directory /usr/ports/sysutils/testport STEP2: Created Makefile with below content. -------------------------------------------------------------------------- ---------------------------------------------------------------- # $FreeBSD$ PORTNAME= testport PORTVERSION= 2.1 CATEGORIES= sysutils MASTER_SITES= ftp://support.com DISTNAME= testport-2.1 MAINTAINER= youremail@example.com COMMENT= test ONLY_FOR_ARCHS= amd64 WRKSRC= ${WRKDIR} NO_BUILD= yes .include <bsd.port.options.mk> do-install: @${MKDIR} ${PREFIX}/sbin/test/ ${INSTALL_PROGRAM} ${WRKSRC}/${DISTNAME}/bin/test/testbinary ${PREFIX}/sbin/test/ deinstall: @${RMDIR} ${PREFIX}/sbin/test .include <bsd.port.mk> -------------------------------------------------------------------------- ---------------------------------------------------------------- STEP3: Created the tar file testport-2.1.tar.gz and placed the tar file in /usr/ports/distfiles ./ testport-2.1 ./ testport-2.1/bin ./ testport-2.1/bin/test ./ testport-2.1/bin/test/testbinary STEP4: Change the directory to /usr/ports/sysutils/testport and run the command : make makesum STEP5: Run the command "make package" I can see that the port is created and installed. STEP6: try uninstall the port: "make deinstall" STEP7: Create the package from the port using the below commands and verify the package. pkg_create -b testport-2.1 pkg_add -f testport-2.1.tbz pkg_delete testport-2.1 As I mentioned above I created a test package and which is working fine. Please suggest if any changes needed or if something is wrong in above steps. Now I would say I will create a package for my new application "finalpackage.tbz". I would like to know if I can ship the "finalpackage.tbz" file to customer to use the package on their system for new application? or it has to be registered with FreeBSD community? Please guide us with the future steps to release the application to customer. -----Original Message----- From: olli hauer [mailto:ohauer@gmx.de] Sent: Thursday, May 29, 2014 1:30 PM To: freebsd-ports Cc: Raghu HB Subject: Re: Creating new port On 2014-05-28 12:01, Raghu HB wrote: > Thanks Michelle for quick response. > > > First I would like to explain what is the application and how I am > trying to create port. > > We have some command line utilities to run on FreeBSD (Storage > controller software). > The installer should contain few binaries and scripts which will be > deployed on FreeBSD OS. > The binaries are pre-compiled and scripts will be used to > start/stop/restart the services or daemons. > > Created below directory structure "/usr/ports/distfiles/": > > ./mrmonitor-1.1 > ./mrmonitor-1.1/bin > ./mrmonitor-1.1/bin/mrmonitor > ./mrmonitor-1.1/bin/mrmonitor/testmonitor > ./mrmonitor-1.1/Makefile > > I created a tar.gz file which contains the above directory structure > with the name mrmonitor-1.1.tar.gz. > > The Makefile contents: > ---------------------------------------------------------- > # $FreeBSD$ > PORTNAME= mrmonitor > PORTVERSION= 1.1 > CATEGORIES= misc > MASTER_SITES= > > MAINTAINER= Raghu.hb@avagotech.com > COMMENT= MRMonitor > .include <bsd.port.mk> > ---------------------------------------------------------- > > > Created a home directory /home/Raghu, Created 3 new files Makefile, > pkg-descr > > The Makefile contents: > ---------------------------------------------------------- > # $FreeBSD$ > PORTNAME= mrmonitor > PORTVERSION= 1.1 > CATEGORIES= misc > MASTER_SITES= > > MAINTAINER= Raghu.hb@avagotech.com > COMMENT= MRMonitor > .include <bsd.port.mk> > ---------------------------------------------------------- > > > pkg-descr > > ---------------------------------------------------------- > This is MRMonitor port > ---------------------------------------------------------- > > pkg-plist > ---------------------------------------------------------- > bin/mrmonitor > bin/mrmonitor/testmonitor > @dirrm bin/mrmonitor > ---------------------------------------------------------- > > > > Now I run the command make makesum which is successful, then I ran the > command make package I got the errors (attached the error messages) . > > May be I am doing something wrong in some basic configuration, please > correct me. > > > Thanks, > Raghu > > -----Original Message----- > From: Michelle Sullivan [mailto:michelle@sorbs.net] > Sent: Wednesday, May 28, 2014 3:14 PM > To: Raghu HB > Cc: FreeBSD Ports ML > Subject: Re: Creating new port > > Raghu HB wrote: >> Hello, >> >> >> >> I am new to FreeBSD and I am in a process of creating new port for >> one of the application. >> >> I have gone through the steps in handbook and I tried to create new >> port but I am not successful. >> >> >> >> I would request you to send one sample example to create new port >> with all the steps explained would be a great help. >> >> > > What's the application, can you send me your Makefile so far and what > errors you're getting? > > And I'll try and take a look. > > Michelle > > -- > Michelle Sullivan > http://www.mhix.org/ > Reading the make-error log it looks like `make' is called recursive. In case the the port does not compile anything try to add the keyword NO_BUILD=yes into the port Makefile and use a 'do-install:' target. e.g. COMMENT= ... NO_BUILD= yes do-install: ${INSTALL} ${WRKSRC}/${ARCH}/mrmonitor ${STAGEDIR}${LOCALBASE}/bin ${INSTALL_SCRIPT} ${WRKSRC}/scripts/$scriptXX ${STAGEDIR}${LOCALBASE}/bin ... .include <bsd.port.mk> If you could provide your full Makefile and a link to the distfile I'm sure the port can be finished in short time. As a hint look at the simple sysutils/tw_cli port -- Regards, olli
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6667825af05f6ed0e9e5cc649b18477f>