[133076] trunk/dports/multimedia/VLC

Ryan Schmidt ryandesign at macports.org
Thu Feb 19 16:16:49 PST 2015


On Feb 19, 2015, at 1:43 PM, mf2k at macports.org wrote:
> 
> Revision
> 133076
> Author
> mf2k at macports.org
> Date
> 2015-02-19 11:43:20 -0800 (Thu, 19 Feb 2015)
> Log Message
> 
> vlc: Move pulseaudio to a variant. Enable qt4 ui plugin. Remove some sparkle code. Update configure options to match upstream recommended ones. (#46748)

> Modified: trunk/dports/multimedia/VLC/Portfile (133075 => 133076)

> +            # the vlc executable needs to be started with a full path to the app bundle executable
> +            # or else the Mac OS X interface will hang beyond even a ^C or ^\ :
> +            file delete ${destroot}${prefix}/bin/vlc
> +            set vlc [open "${filespath}/vlc" "w"]
> +            puts ${vlc} "#!/bin/sh"
> +            puts ${vlc} ""
> +            puts ${vlc} "exec ${applications_dir}/VLC.app/Contents/MacOS/VLC \"$@\""
> +            close ${vlc}
> +            xinstall -m 755 ${filespath}/vlc ${destroot}${prefix}/bin

A port should not attempt to modify (or create or delete) a file in filespath, nor anywhere outside of worksrcpath (except perhaps for copying default configuration files in a post-activate block).

The usual way to accomplish what you're doing here would be to have a script in the files directory, which you would commit to the repository as normal, containing the desired script, with the path to the applications directory represented by the placeholder "@APPLICATIONS_DIR@". The port installs the file where it needs to go in the destroot, then uses reinplace to replace the placeholder with its final value.



More information about the macports-dev mailing list