Index: trunk/dports/lang/python30/Portfile
===================================================================
--- trunk/dports/lang/python30/Portfile	(revision 37819)
+++ trunk/dports/lang/python30/Portfile	(revision 37820)
@@ -3,85 +3,92 @@
 PortSystem 1.0
 
-name			python30
-version			3.0a3
-revision		3
-categories		lang
-platforms		darwin
-maintainers		mww
-description		An interpreted, object-oriented programming language
-long_description	Python is an interpreted, interactive, object-oriented \
-			programming language. This version is an ALPHA release!
+name                    python30
+version                 3.0a3
+revision                4
+set major               3
+set branch              3.0
+categories              lang
+platforms               darwin
+maintainers             mww
 
-homepage		http://www.python.org
-master_sites		http://www.python.org/ftp/python/3.0/
-distname		Python-${version}
-extract.suffix		.tgz
-checksums		md5 ec525b7e7fe4383e8394fab721663252
-patchfiles		patch-setup.py.diff \
-			patch-Makefile.pre.in.diff \
-			patch-Lib-cgi.py.diff
+description             An interpreted, object-oriented programming language
+long_description        Python is an interpreted, interactive, object-oriented \
+                        programming language. This version is an ALPHA release!
 
-depends_lib		port:gettext
-depends_run		port:python_select
-configure.args		--without-readline --enable-shared --enable-ipv6 --disable-tk --enable-framework=${prefix}/Library/Frameworks
+homepage                http://www.python.org/
+master_sites            ${homepage}/ftp/python/${version}/ \
+                        ftp://ftp.python.org/pub/python/${version}/ \
+                        ftp://ftp.fastorama.com/mirrors/ftp.python.org/pub/python/${version}/ \
+                        ftp://ftp.python.jp/pub/python/${version}/
 
-destroot.target		libpython3.0.dylib frameworkinstall maninstall
+distname                Python-${version}
+extract.suffix          .tgz
 
-post-patch {
-	reinplace "s|__PREFIX__|${prefix}|g" ${worksrcpath}/Lib/cgi.py
-	reinplace "s|/Applications/MacPython|/Applications/MacPorts/MacPython|g" \
-		Mac/Makefile.in Mac/IDLE/Makefile.in \
-		Mac/IDLE/Makefile.in Mac/Tools/Doc/setup.py \
-		Mac/PythonLauncher/Makefile.in \
-		Mac/BuildScript/build-installer.py
-	xinstall -m 644 ${filespath}/mac_japanese.py Lib/encodings/x_mac_japanese.py
-}
+checksums               md5 ec525b7e7fe4383e8394fab721663252
+
+patchfiles              patch-setup.py \
+                        patch-Makefile.pre.in.diff
+
+depends_lib             port:gettext
+
+configure.args          --enable-shared \
+                        --enable-framework=${prefix}/Library/Frameworks \
+                        --mandir=${prefix}/share/man \
+                        --without-readline \
+                        --disable-tk \
+                        --enable-ipv6
+
+use_parallel_build      no
+
+build.target            all libpython${branch}.dylib
+
+test.run                yes
+test.target             test
+
+destroot.target         frameworkinstall maninstall
 
 post-destroot {
-	system "cd ${destroot}${prefix}/bin && \
-		rm idle pydoc python python-config pythonw smtpd.py"
-	system "cd ${destroot}${prefix}/share/man/man1 && \
-		ln -sf ${prefix}/Library/Frameworks/Python.framework/Versions/3.0/share/man/man1/python.1 python3.0.1"
+        set framewpath ${prefix}/Library/Frameworks/Python.framework
+        set framewdir  ${framewpath}/Versions/${branch}
 
-	system "cd ${destroot}${prefix}/lib && \
-		ln -sf ${prefix}/Library/Frameworks/Python.framework/Versions/3.0/lib/libpython3.0.dylib && \
-		ln -sf ${prefix}/Library/Frameworks/Python.framework/Versions/3.0/lib/python3.0"
+        foreach dir { lib include } {
+            file rename ${destroot}${framewdir}/${dir}/python${branch} ${destroot}${prefix}/${dir}
+            ln -s ${destroot}${prefix}/${dir}/python${branch} ${destroot}${framewdir}/${dir}/python${branch}
+        }
 
-	system "mkdir -p ${destroot}${prefix}/include && \
-		cd ${destroot}${prefix}/include && \
-		ln -sf ${prefix}/Library/Frameworks/Python.framework/Versions/3.0/include/python3.0"
+        file rename ${destroot}${framewdir}/lib/libpython${branch}.dylib ${destroot}${prefix}/lib
+        ln -s ${destroot}${prefix}/lib/libpython${branch}.dylib ${destroot}${framewdir}/lib/libpython${branch}.dylib
 
-	# install select file for python_select
-	xinstall -m 755 -d ${destroot}${prefix}/etc/select/python
-        xinstall -m 644 ${filespath}/python30 ${destroot}${prefix}/etc/select/python/
-	system "cd ${destroot}${prefix}/Library/Frameworks/Python.framework && \
-		rm -f Headers Resources Python && \
-		rm -f Versions/Current"
+        file rename ${destroot}${prefix}/share/man/man1/python.1 ${destroot}${prefix}/share/man/man1/python${branch}.1
 
-	system "cd ${destroot}${prefix}/Library/Frameworks/Python.framework/Versions/3.0/share/man/man1/ && \
-		gzip python.1"
+        # delete symlinks without version suffix, use python_select instead to choose version
+        foreach bin { python pythonw idle pydoc smtpd.py python-config } {
+            file delete ${destroot}${prefix}/bin/${bin}
+        }
+        foreach bin [list python${branch} pythonw${branch} idle${branch} pydoc${branch} smtpd${branch}.py python${branch}-config] {
+            file rename -force ${destroot}${framewdir}/bin/${bin} ${destroot}${prefix}/bin
+            ln -s ${prefix}/bin/${bin} ${destroot}${framewdir}/bin/${bin}
+        }
+
+        foreach dir { Headers Resources Python Versions/Current } {
+            file delete ${destroot}${framewpath}/${dir}
+        }
+
+        # install select file for python_select
+        xinstall -m 755 -d ${destroot}${prefix}/etc/select/python
+        xinstall -m 644 ${filespath}/python[string map {. {}} ${branch}] ${destroot}${prefix}/etc/select/python/
 }
 
 post-activate {
-ui_msg "\n\n\nTo fully complete your installation and make python 3.0 the default, \
-please run\n\nsudo python_select python30\n\n"
+    ui_msg "\nTo fully complete your installation and make python $branch the default, please run
+\n\tsudo port install python_select \
+\n\tsudo python_select $name\n"
 }
 
-platform darwin 7 {
-	# there is no SystemStubs on 10.3
-	post-patch {
-		reinplace "s|-lSystemStubs||g" \
-			configure configure.in
-	}
-	post-configure {
-		reinplace "s|-lSystemStubs||g" \
-			Makefile.pre.in Makefile.pre Makefile
-	}
-	# To avoid GCC incompatibility issue. See http://nxg.me.uk/note/2004/restFP/ (by ebgssth@gmail.com, ticket #13322)
-	configure.ldflags-append "-lcc_dynamic"
+variant universal {
+        configure.args-append           --enable-universalsdk
 }
 
-
-livecheck.check		regex
-livecheck.url		http://www.python.org/download/releases/3.0/
-livecheck.regex		/3.0/Python-(\[0-9a-z.\]+)\\.tgz
+livecheck.check         regex
+livecheck.url           ${homepage}download/releases/
+livecheck.regex         Python (${branch}a\[0-9\]+)
