diff --git a/.gitmodules b/.gitmodules index 5a80a95c..9da27ac0 100644 --- a/.gitmodules +++ b/.gitmodules @@ -7,3 +7,6 @@ [submodule "cocoalib"] path = cocoalib url = https://github.com/hsoft/cocoalib.git +[submodule "cocoa/Sparkle"] + path = cocoa/Sparkle + url = https://github.com/sparkle-project/Sparkle.git diff --git a/build.py b/build.py index 15b859c7..1e3e719e 100644 --- a/build.py +++ b/build.py @@ -106,6 +106,12 @@ def build_xibless(dest='cocoa/autogen'): ) def build_cocoa(dev): + sparkle_framework_path = op.join('cocoa', 'Sparkle', 'build', 'Release', 'Sparkle.framework') + if not op.exists(sparkle_framework_path): + print("Building Sparkle") + os.chdir(op.join('cocoa', 'Sparkle')) + print_and_do('make build') + os.chdir(op.join('..', '..')) print("Creating OS X app structure") app = cocoa_app() app_version = get_module_version('core') @@ -154,7 +160,7 @@ def build_cocoa(dev): image_path = 'cocoa/dupeguru.icns' resources = [image_path, 'cocoa/dsa_pub.pem', 'build/dg_cocoa.py', 'build/help'] app.copy_resources(*resources, use_symlinks=dev) - app.copy_frameworks('build/Python', 'cocoalib/Sparkle.framework') + app.copy_frameworks('build/Python', sparkle_framework_path) print("Creating the run.py file") tmpl = open('cocoa/run_template.py', 'rt').read() run_contents = tmpl.replace('{{app_path}}', app.dest) diff --git a/cocoa/Sparkle b/cocoa/Sparkle new file mode 160000 index 00000000..1c8d5416 --- /dev/null +++ b/cocoa/Sparkle @@ -0,0 +1 @@ +Subproject commit 1c8d54166b7829ec12dc659983c66be2b347d98e diff --git a/cocoa/wscript b/cocoa/wscript index 89acb3dc..3c07fdd0 100644 --- a/cocoa/wscript +++ b/cocoa/wscript @@ -30,9 +30,8 @@ def configure(conf): conf.check_python_headers() conf.env.FRAMEWORK_COCOA = 'Cocoa' conf.env.ARCH_COCOA = ['x86_64'] - # Add cocoalib dir to the framework search path so we can find Sparkle. - conf.env.CFLAGS = ['-F'+op.abspath('../cocoalib')] - conf.env.LINKFLAGS = ['-F'+op.abspath('../cocoalib')] + conf.env.CFLAGS = ['-F'+op.abspath('Sparkle/build/Release')] + conf.env.LINKFLAGS = ['-F'+op.abspath('Sparkle/build/Release')] def build(ctx): # What do we compile? diff --git a/cocoalib b/cocoalib index 65ab3b5f..bb41785a 160000 --- a/cocoalib +++ b/cocoalib @@ -1 +1 @@ -Subproject commit 65ab3b5fb61b9a477786850d3a8083e3892d9020 +Subproject commit bb41785aaae012fd9462f225d5f630c570b49fdf