[77315] users/pixilla/_tools/pear2port.sh
pixilla at macports.org
pixilla at macports.org
Sat Mar 26 19:41:11 PDT 2011
Revision: 77315
http://trac.macports.org/changeset/77315
Author: pixilla at macports.org
Date: 2011-03-26 19:41:08 -0700 (Sat, 26 Mar 2011)
Log Message:
-----------
_tools/pear2port.sh: Various fixes and improvements to Portfile output quality.
Modified Paths:
--------------
users/pixilla/_tools/pear2port.sh
Modified: users/pixilla/_tools/pear2port.sh
===================================================================
--- users/pixilla/_tools/pear2port.sh 2011-03-27 02:01:15 UTC (rev 77314)
+++ users/pixilla/_tools/pear2port.sh 2011-03-27 02:41:08 UTC (rev 77315)
@@ -1,8 +1,9 @@
#!/bin/bash
+[ -z $MAINTAINERS ] && MAINTAINERS="nomaintainer"
extract_suffix='.tgz'
package=${1}
-if [ "${package}x" == "x" ]
+if [ "x${package}" == "x" ]
then
echo "Error: No package name given!"
echo "Try: \$ ${0} Auth"
@@ -10,9 +11,9 @@
echo "Try: \$ ${0} Auth 0.3.1"
exit
fi
-echo "Package: ${package}"
+#echo "Package: ${package}"
-if [ "${2}x" == "x" ]
+if [ "x${2}" == "x" ]
then
version=\
$(curl -s http://pear.php.net/package/${package}/download | \
@@ -21,9 +22,9 @@
else
version=${2}
fi
-echo "Version: ${version}"
+#echo "Version: ${version}"
-if [ "${version}x" == "x" ]
+if [ "x${version}" == "x" ]
then
echo "Error: Could not determine version!"
echo "Version: ${version}"
@@ -31,9 +32,10 @@
fi
distname=${package}-${version}
-curl -s http://download.pear.php.net/package/${distname}${extract_suffix} -O
mkdir pear-${package}
-cat << EOF > pear-${package}/Portfile
+cd pear-${package}
+#echo "building Portfile..."
+cat << EOF > Portfile
# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
# \$Id\$
@@ -43,18 +45,53 @@
php5pear.setup ${package} ${version}
categories-append net www
platforms darwin
-maintainers pixilla
+maintainers ${MAINTAINERS}
description PEAR ${package} package
long_description \${description}
-checksums sha1 $(openssl sha1 ${distname}${extract_suffix} | awk '{print $2}') \\
- rmd160 $(openssl rmd160 ${distname}${extract_suffix} | awk '{print $2}')
EOF
-cd pear-${package}
+
+sleep 1
+#echo "port -o fetch..."
+sudo port -o fetch > /dev/null 2>&1
+distfile=$(port -o distfiles | grep "\[${distname}${extract_suffix}\]" | awk '{print $2}')
+distfile_sha1=$(openssl sha1 ${distfile} | awk '{print $2}')
+distfile_rmd160=$(openssl rmd160 ${distfile} | awk '{print $2}')
+cat << EOF >> Portfile
+checksums sha1 ${distfile_sha1} \\
+ rmd160 ${distfile_rmd160}
+EOF
+
+#echo "removing sources..."
+
+#echo "port -o extract..."
+sudo port -o extract > /dev/null 2>&1
+deps=''
+count=0
+IFS=$'\n'
+#echo "port -o build to check for deps..."
+sleep 1
+for dep in $(sudo port -o -v build | grep -P "${package} requires package")
+do
+ depname=$(echo $dep | awk '{print $5}' | sed -e "s/pecl\//php5\//g" -e "s/\"//g" -e "s/\//-/g")
+ count=$((count+1))
+ if [[ $count -eq 1 ]]
+ then
+ echo "" >> Portfile
+ echo -n "depends_lib-append port:${depname}" >> Portfile
+ else
+ echo " \\" >> Portfile
+ echo -n " port:${depname}" >> Portfile
+ fi
+done
+if [[ $count -gt 0 ]]
+then
+ echo "" >> Portfile
+fi
+unset IFS
+#echo "port -o clean..."
+sudo port -o clean > /dev/null 2>&1
+#echo "final Portfile..."
cat Portfile
-port lint --nitpick
-sudo port -v build
-sudo port clean
cd ..
-rm ${distname}${extract_suffix}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20110326/9a9aa45e/attachment.html>
More information about the macports-changes
mailing list