diff --git a/Makefile b/Makefile index 056c119..a575f3b 100644 --- a/Makefile +++ b/Makefile @@ -31,6 +31,9 @@ package : package_info build package_deb: package ./scripts/build.sh deb +package_freebsd: package + ./scripts/build.sh freebsd + clean: $(GO) clean $(RM) -rf build/ diff --git a/scripts/.gitignore b/scripts/.gitignore index b61653c..2d0176b 100644 --- a/scripts/.gitignore +++ b/scripts/.gitignore @@ -1,3 +1,5 @@ pack/ info *.deb +*.tar +*.tar.* diff --git a/scripts/build_freebsd.sh b/scripts/build_freebsd.sh new file mode 100755 index 0000000..13cb388 --- /dev/null +++ b/scripts/build_freebsd.sh @@ -0,0 +1,34 @@ +#!/bin/bash +# Simple script to create a tar archive for FreeBSD + +PACKAGE_TMPDIR="${PACKAGE_TMPDIR}/freebsd" +PACKAGE_RCDIR=/etc/rc.d + +############################ +# Create rc file # +############################ + +# rc does not like "-" in the filename. +RC_NAME=$(echo ${PACKAGE_NAME} | sed "s~-~_~g") + +mkdir -p ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_RCDIR} +cat ${BASE_DIR}/rc.template \ + | sed "s~{{ RC_NAME }}~${RC_NAME}~g" \ + | sed "s~{{ DESCRIPTION }}~${PACKAGE_DESCRIPTION}~" \ + | sed "s~{{ PROGRAM }}~/${PACKAGE_BINDIR}/${PACKAGE_NAME}~" \ + > ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_RCDIR}/${RC_NAME} + +############################ +# Copy binary # +############################ + +mkdir -p ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_BINDIR} +cp ${BASE_DIR}/../${PACKAGE_PROGRAM} ${BASE_DIR}/${PACKAGE_TMPDIR}/${PACKAGE_BINDIR} + +############################ +# Create archive # +############################ + +TAR_FILENAME="${PACKAGE_NAME}-${PACKAGE_VERSION}-freebsd.tar.gz" + +tar -C ${BASE_DIR}/${PACKAGE_TMPDIR} --owner root --group root -zcvf ${BASE_DIR}/${TAR_FILENAME} .