(moving to -dev since this involves writing a portfile) On 2012-5-28 10:43 , Paulo Moura wrote: > Hi, > > I'm using the latest versions of MacPorts, Xcode, and PackageMaker. I have a > portfile where I define: > > post-pkg { > set resources ${workpath}/${name}-${version}.pkg/Contents/Resources/ > file copy -force -- > ${workpath}/${worksrcdir}/scripts/macosx/License.html ${resources} > file copy -force -- > ${workpath}/${worksrcdir}/scripts/macosx/ReadMe.html ${resources} > file copy -force -- > ${workpath}/${worksrcdir}/scripts/macosx/Welcome.html ${resources} > file copy -force -- ${workpath}/${worksrcdir}/scripts/macosx/postflight > ${resources} > } > > Trying to create a package fails with the error: > > Error: org.macports.pkg for port logtalk returned: error copying > "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_logtalk/logtalk/work/lgt2441/scripts/macosx/License.html" > to > "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_logtalk/logtalk/work/logtalk-2.44.1.pkg/Contents/Resources/": > not a directory > > This worked before so I guess something change in the latest MacPorts and/or > PackageMaker versions. Any hints?
MacPorts 2.1 will build flat packages by default on 10.6+. This means you can't just copy files into the resources dir, since it's now inside a xar archive. You can get the old behaviour back by setting 'package.flat no'. To make this work with flat packages, you should instead copy the html files to ${package.resources} in pre-pkg, and the postflight script to ${package.scripts}/postinstall. (Flat packages apparently don't support postflight scripts as such. Apple tends to simulate them by adding a dummy package that only contains a postinstall script to the enclosing Distribution package.) - Josh _______________________________________________ macports-users mailing list macports-users@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macports-users