At 12:17 PM -0500 4/2/12, Ryan Schmidt wrote:
On Apr 1, 2012, at 20:17, Craig Treleaven wrote:

 http://dl.dropbox.com/u/26787680/Portfile.2012Apr01

In this email I'll offer some suggestions on how the Portfile is written. Later, I'll try to build the port, and in a second email I'll try to help you figure out why there are empty "-L" arguments and what's going wrong with your efforts to remove them.


 github.setup        MythTV mythtv v0.25-rc-0-g92f7d1f

The version number in the github.setup line should only be the version number, typically as it appears in the tag name. There should not be a "v" or other prefix, nor the git revision/branch number. The github.setup procedure accepts a fourth argument for the tag prefix, and the portgroup automatically handles the presence of the randomish branch number in the folder name. So you want simply:

github.setup        MythTV mythtv 0.25-rc v

OK, but when I went the the MythTV GitHub page and manually downloaded the tarball:
https://nodeload.github.com/MythTV/mythtv/tarball/v0.25-rc

The exact file name I got was MythTV-mythtv-v0.25-rc-0-g92f7d1f.tar.gz. When I plugged that in as above, the port fetch worked.


 configure.args-delete       "-arch i386"

There is no "-arch i386" in configure.args, so this statement does nothing.


 configure.cflags-delete     "-arch i386"
 configure.cflags-append     "-m32"

Why delete "-arch i386" and append "-m32"? Aren't those the same thing?


 configure.ldflags-append    "-m32 -F/System/Library/Frameworks"
 configure.cppflags-append   "-m32"
 configure.cxxflags-append   "-m32"


configure.ldflags and configure.cxxflags similarly already have "-arch i386" in them and thus shouldn't need "-m32". configure.cppflags doesn't need arch flags because the preprocessor doesn't compile anything.

Sorry, we went around this last week. I'm trying to recreate a Perl-based build system (that bundles everything into an .app) and there are notes that if you want a 32 bit build, put "-m32" into those places. If I can get a working build, I'll experiment with removing it.


 configure.env-append    QMAKESPEC="macx-g++" \
                         QMAKE_LIBDIR_OPENGL="/opt/local/lib" \

Don't hardcode /opt/local; use ${prefix}.

Good catch.


 configure.env-delete    -arch i386     # messes up qmake?

That's not a valid environment specifier (which would always have the form KEY=value). So I don't believe this statement does anything.

If you really want MacPorts not to add the -arch flags it normally adds, clear the configure.cc_archflags configure.cxx_archflags configure.ld_archflags variables. Normally you don't want to do that.


Thanks, I'll give that a go.

 >           system "find ${configure.dir} -name \"Makefile\" -print "
system "find ${configure.dir} -name \"Makefile\" -exec sed -i '' 's/ -L / /g' {} \\; "

"find" can print and exec in the same invocation:

system "find ${configure.dir} -name \"Makefile\" -print -exec sed -i '' 's/ -L / /g' {} \\; "

BTW, I wondered if OS X's metadata update and/or DropBox were to blame. I've disabled both but no change.

The last three times, it has listed exactly 22 of the directories. It appears to be going alphabetically down the root directory but I see nothing special about the next directory in the list (mythtv/filters).

Craig
--
--
Craig Treleaven, CA -- Clearview Consulting
(905) 829-2054  ctrelea...@cogeco.ca
_______________________________________________
macports-dev mailing list
macports-dev@lists.macosforge.org
http://lists.macosforge.org/mailman/listinfo.cgi/macports-dev

Reply via email to