New Ticket     Tickets     Wiki     Browse Source     Timeline     Roadmap     Ticket Reports     Search

Ticket #27367 (closed defect: fixed)

Opened 3 years ago

Last modified 2 years ago

MyPaint @0.9.0, Revision 2: build failure if MacPorts was installed with custom $PREFIX

Reported by: suv-sf@… Owned by: ryandesign@…
Priority: Normal Milestone:
Component: ports Version: 1.9.2
Keywords: Cc:
Port: MyPaint

Description

The 'SConstruct' file of MyPaint has '/opt/local' hardcoded as default and appears to ignore a custom $PREFIX of MacPorts:

if sys.platform == "darwin":
    default_prefix = '/opt/local/'
else:
    default_prefix = '/usr/local/'

If MacPorts was configured with custom $PREFIX and to be used as normal user, build fails with

OSError: [Errno 13] Permission denied: '/opt'
  File "/Volumes/green/mp-inkscape/with-a-long-long-long-directory-name/var/macports/build/_Volumes_green_mp-inkscape_with-a-long-long-long-directory-name_var_macports_sources_rsync.macports.org_release_ports_graphics_MyPaint/work/mypaint-0.9.0/SConstruct", line 29:
    env = Environment(ENV=os.environ, options=opts)
  File "/Volumes/green/mp-inkscape/with-a-long-long-long-directory-name/Library/Frameworks/Python.framework/Versions/2.6/lib/scons-2.0.1/SCons/Environment.py", line 974:
    variables.Update(self)
  File "/Volumes/green/mp-inkscape/with-a-long-long-long-directory-name/Library/Frameworks/Python.framework/Versions/2.6/lib/scons-2.0.1/SCons/Variables/__init__.py", line 216:
    option.validator(option.key, env.subst('${%s}'%option.key), env)
  File "/Volumes/green/mp-inkscape/with-a-long-long-long-directory-name/Library/Frameworks/Python.framework/Versions/2.6/lib/scons-2.0.1/SCons/Variables/PathVariable.py", line 102:
    os.makedirs(val)
  File "/Volumes/green/mp-inkscape/with-a-long-long-long-directory-name/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/os.py", line 150:
    makedirs(head, mode)
  File "/Volumes/green/mp-inkscape/with-a-long-long-long-directory-name/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/os.py", line 157:
    mkdir(name, mode)

Tested workaround: 'port build mypaint' succeeds after replacing '/opt/local' in SConstruct with the expanded path of $PREFIX (and mypaint installs, activates and runs without further issues).

Mac OS X 10.5.8, MacPorts 1.9.2 (custom source installation)
scons @2.0.1, python26 selected

Attachments

main.log (113.0 KB) - added by suv-sf@… 3 years ago.

Change History

comment:1 Changed 3 years ago by jmr@…

  • Cc ryandesign@… removed
  • Owner changed from macports-tickets@… to ryandesign@…
  • Port changed from mypaint to MyPaint

Changed 3 years ago by suv-sf@…

comment:2 Changed 3 years ago by suv-sf@…

Attaching main.log (I thought I'd lost it when 'port install' succeeded, but it was still open in MacVim :) )

comment:3 Changed 3 years ago by ryandesign@…

  • Status changed from new to assigned

MyPaint begins to annoy me.

comment:4 Changed 2 years ago by ryandesign@…

  • Status changed from assigned to closed
  • Resolution set to fixed

Fixed in r73693.

Note: See TracTickets for help on using tickets.