Skip to content

How to correctly include pre-built binary for signing? #1

@jhrtn

Description

@jhrtn

Hi there,

Thanks a lot for this project. I'm new to the world of Apple signing and notarisation and is a very helpful resource.

I've created an OpenFrameworks app which utilises ffmpeg. I include a pre-built ffmpeg binary in the app's data folder.

I have mac.dist.include = bin/data included in my Makefile. Initially the notarisation failed as ffmpeg hadn't been signed. So I tried to include it using mac.dist.progs/mac.dist.libs in the Makefile, but couldn't figure out the correct way to get it copied across from my bin/data folder.

In my Makefile I added mac.dist.libs = bin/data/ffmpeg but at the codesign stage of make app dist-dmg I get the error:

===== codesign
codesign --sign "Developer ID Application: <My Developer ID>" --force --options runtime --timestamp build/dist/MyOFApp-1.0.0/bin/data/ffmpeg
build/dist/MyOFApp-1.0.0/bin/data/ffmpeg: No such file or directory

If I instead try to include mac.dist.libs = data/ffmpeg then I get:

===== distdir
mkdir -p build/dist/MyOFApp-1.0.0
rsync -a --exclude ".*"  \
                MyOFApp.app data/ffmpeg bin/data build/dist/MyOFApp-1.0.0
rsync: link_stat "<path to app>/MyOFApp/data/ffmpeg" failed: No such file or directory (2)

If I create a folder at the root of my project called data containing ffmpeg then it gets copied over correctly and the signing and notarization works.

I can see that the issue is just where the file gets copied to and from but from reading through the makefile I can't figure it out. Do I need to override mac.dist.dir or mac.dist.subdir?

Is there a suggested pattern for including files from bin/data to be signed?

Any pointers appreciated

Many thanks

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions