source: launchers/macosx/obj-cpp/build.ninja @ c8490a3

Last change on this file since c8490a3 was c8490a3, checked in by meeh <meeh@…>, 2 years ago

Starting to get stable and usable. Basically everything is based on callbacks.

  • Property mode set to 100644
File size: 1.6 KB
Line 
1cxx = clang++
2cflags = -std=c++14 -g -Wall -I./include -I./include/neither -I/usr/local/include -I/usr/include $
3    -Wno-unused-function -Wno-incomplete-implementation -Wno-unused-variable -mmacosx-version-min=10.10
4ldflags = -framework CoreFoundation -framework Foundation -framework Cocoa -g -rdynamic
5
6
7pool link_pool
8  depth = 4
9
10rule cxx
11  command = $cxx $cflags -c $in -o $out
12  description = CC $out
13
14rule link
15  command = $cxx $ldflags -o $out $in
16  description = LINK $out
17  pool = link_pool
18
19rule ar
20  command = ar crsT $out $in
21  description = AR $out
22
23rule cleanup
24  command = rm -fr *.o clauncher I2PLauncher.app
25
26# TODO: There must exists a cleaner way to solve this.
27rule bundledir
28  command = mkdir -p I2PLauncher.app/Contents/{MacOS,Resources,Frameworks} $
29    && cp Info.plist I2PLauncher.app/Contents/Info.plist $
30    && cp base.zip I2PLauncher.app/Contents/Resources/base.zip $
31    && cp ../target/scala-2.11/routerLauncher-assembly-0.1.0-SNAPSHOT.jar I2PLauncher.app/Contents/Resources/launcher.jar
32
33rule copytobundledir
34  command = cp clauncher I2PLauncher.app/Contents/MacOS/I2PLauncher
35
36rule copyimgtobundle
37  command = cp ItoopieTransparent.png I2PLauncher.app/Contents/Resources/ItoopieTransparent.png
38
39rule builddir
40  command = mkdir -p build
41
42build main.o: cxx main.mm
43build StatusItemButton.o: cxx StatusItemButton.mm
44build RouterTask.o: cxx RouterTask.mm
45
46build clean: cleanup
47
48build bundle: bundledir
49build copytobundle: copytobundledir | bundle clauncher
50
51build clauncher: link main.o StatusItemButton.o RouterTask.o
52
53build appbundle: copyimgtobundle | clauncher bundle copytobundle
54
55default appbundle
Note: See TracBrowser for help on using the repository browser.