Since we are so close to 9.0, I wanted to get some initial public
testing on the "make pbi" functionality of the ports tree. Attached is
the bsd.pbi.mk file, put that into /usr/ports/Mk/ and then edit
/usr/ports/Mk/bsd.port.mk. Look for the line:

.include "${PORTSDIR}/Mk/bsd.perl.mk

and add above it:

.include "${PORTSDIR}/Mk/bsd.pbi.mk"

After doing this, you should be able to use the commands "make pbi" &
"make clean-pbi". I would suggest starting on some small CLI app for
testing, like cabextract, instead of trying libreoffice on the first go ;)

After the build is finished, you will end up with a pbi file in the port
directory ready to be installed with pbi_add. You'll also see a pbi/
directory created in your ports dir, which contains the structure for
additional meta-data that I would love to find a way to integrate into
the ports tree down the road, such as mime/desktop/menu/icons, etc.

-- 
Kris Moore
PC-BSD Software
iXsystems

# $Id$
#
# Creates a PBI file from a port with just 'make pbi'
#
#

_PBIMAKEPORT=   pbi_makeport
_PBICREATE=     pbi_create
_PBIDIR=        pbi
_PBICONF=       ${_PBIDIR}/pbi.conf
_PBIBUILDDIR=   /usr/local/pbi/${PORTNAME}-${ARCH}

.PHONY: check-pbimanager pbi pbi-makeport pbi-generate pbi-create \
        clean-pbi clean-pbibuild

_PBIMANAGER_PKG!=which pbi_info || ${TRUE}

check-pbimanager:
.if empty(_PBIMANAGER_PKG)
        @(cd ${PORTSDIR}/ports-mgmt/pbi-manager && ${MAKE} install clean)
.endif

pbi: pbi-generate

pbi-generate: check-pbimanager
        @if [ ! -d ${PWD}/pbi ]; then                                   \
                ${ECHO_MSG} "===> Generating PBI for ${PORTNAME}";      \
                ${MKDIR} ${_PBIDIR};                                    \
                ${MKDIR} ${_PBIDIR}/resources ${_PBIDIR}/scripts        \
                        ${_PBIDIR}/xdg-desktop ${_PBIDIR}/xdg-menu      \
                        ${_PBIDIR}/xgd-mime;                            \
                ${ECHO_CMD} "PBI_PROGNAME=\"${PORTNAME}\"" > ${_PBICONF};\
                ${ECHO_CMD} "PBI_MAKEPORT=\"`echo ${PWD} | cut -d '/' -f4-`\"" 
>> ${_PBICONF};\
                PROGWEB=`cat ${DESCR} | awk '/^WWW:/ { print $$2; }'`;  \
                ${ECHO_CMD} "PBI_PROGWEB=\"$${PROGWEB}\"" >> ${_PBICONF};\
                ${ECHO_CMD} "PBI_PROGAUTHOR=\"The ${PORTNAME} team\""   \
                         >> ${_PBICONF};                                \
                ${ECHO_CMD} "PBI_UPDATEURL=\"http://update.pbidir.com\""\
                         >> ${_PBICONF};                                \
                ${ECHO_CMD} "export PBI_PROGNAME PBI_MAKEPORT "         \
                        "PBI_PROGWEB "                                  \
                        "PBI_PROGAUTHOR PBI_UPDATEURL " \
                        "PBI_MKPORTBEFORE PBI_MKPORTAFTER PBI_MAKEOPTS" \
                         >> ${_PBICONF};                                \
        fi
        @${ECHO_MSG} "==> Generating PBI file"
        @${_PBIMAKEPORT} -c `echo ${PWD}/${_PBIDIR}` -o `echo ${PWD}` `echo 
${PWD} | cut -d '/' -f4-`

clean-pbi:
        @${ECHO_MSG} "===> Cleaning PBI for ${PORTNAME}"
        @${RM} -rf ${_PBIDIR}
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-desktop
To unsubscribe, send any mail to "[email protected]"

Reply via email to