├── .gitignore
├── Aseprite.app
├── Contents
│ ├── Info.plist
│ ├── MacOS
│ │ └── applet
│ ├── PkgInfo
│ └── Resources
│ │ ├── Scripts
│ │ └── main.scpt
│ │ ├── applet.icns
│ │ ├── applet.rsrc
│ │ └── description.rtfd
│ │ └── TXT.rtf
└── Icon
├── LICENSE
├── README.md
└── aseprite.sh
/.gitignore:
--------------------------------------------------------------------------------
1 | aseprite/
2 | deps/
3 |
--------------------------------------------------------------------------------
/Aseprite.app/Contents/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleAllowMixedLocalizations
6 |
7 | CFBundleDevelopmentRegion
8 | English
9 | CFBundleExecutable
10 | applet
11 | CFBundleIconFile
12 | applet
13 | CFBundleIdentifier
14 | com.apple.ScriptEditor.id.Aseprite
15 | CFBundleInfoDictionaryVersion
16 | 6.0
17 | CFBundleName
18 | Aseprite
19 | CFBundlePackageType
20 | APPL
21 | CFBundleShortVersionString
22 | 1.0
23 | CFBundleSignature
24 | aplt
25 | LSMinimumSystemVersionByArchitecture
26 |
27 | x86_64
28 | 10.6
29 |
30 | LSRequiresCarbon
31 |
32 | WindowState
33 |
34 | bundleDividerCollapsed
35 |
36 | bundlePositionOfDivider
37 | 0.0
38 | dividerCollapsed
39 |
40 | eventLogLevel
41 | 2
42 | name
43 | ScriptWindowState
44 | positionOfDivider
45 | 157
46 | savedFrame
47 | 214 69 700 672 0 0 1280 777
48 | selectedTab
49 | result
50 |
51 |
52 |
53 |
--------------------------------------------------------------------------------
/Aseprite.app/Contents/MacOS/applet:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/haxpor/aseprite-macos-buildsh/6e3672eab1e8e4767391b725adc1d1bf112d6982/Aseprite.app/Contents/MacOS/applet
--------------------------------------------------------------------------------
/Aseprite.app/Contents/PkgInfo:
--------------------------------------------------------------------------------
1 | APPLaplt
--------------------------------------------------------------------------------
/Aseprite.app/Contents/Resources/Scripts/main.scpt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/haxpor/aseprite-macos-buildsh/6e3672eab1e8e4767391b725adc1d1bf112d6982/Aseprite.app/Contents/Resources/Scripts/main.scpt
--------------------------------------------------------------------------------
/Aseprite.app/Contents/Resources/applet.icns:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/haxpor/aseprite-macos-buildsh/6e3672eab1e8e4767391b725adc1d1bf112d6982/Aseprite.app/Contents/Resources/applet.icns
--------------------------------------------------------------------------------
/Aseprite.app/Contents/Resources/applet.rsrc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/haxpor/aseprite-macos-buildsh/6e3672eab1e8e4767391b725adc1d1bf112d6982/Aseprite.app/Contents/Resources/applet.rsrc
--------------------------------------------------------------------------------
/Aseprite.app/Contents/Resources/description.rtfd/TXT.rtf:
--------------------------------------------------------------------------------
1 | {\rtf1\ansi\ansicpg1252\cocoartf1539\cocoasubrtf120
2 | {\fonttbl}
3 | {\colortbl;\red255\green255\blue255;}
4 | {\*\expandedcolortbl;;}
5 | }
--------------------------------------------------------------------------------
/Aseprite.app/Icon
:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/haxpor/aseprite-macos-buildsh/6e3672eab1e8e4767391b725adc1d1bf112d6982/Aseprite.app/Icon
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2017 Wasin Thonkaew
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # aseprite-macos-buildsh
2 | Automated script to create latest release (whatever it will be either development snapshot commit, beta, or release) of Aseprite for macOS
3 |
4 | Update : Added support x64 Architecture build for SKIA on MacOS
5 |
6 | Project is updated against aseprite v.1.2.10 build workflow.
7 |
8 | # Pre-Requisite
9 |
10 | You need
11 |
12 | * Xcode
13 | * [CMake](http://www.cmake.org/) (3.4 or greater)
14 | * [Ninja](https://ninja-build.org/) build system
15 | * Python 2.x ([version 3](https://github.com/haxpor/aseprite-macos-buildsh/issues/2) didn't work)
16 |
17 | For Xcode, you need to install it by downloading [here](https://developer.apple.com/download/). After successfully installed, execute `xcode-select --install` to install its toolchain, then finally follow along as dialog popup shows up.
18 |
19 | Now you're ready to use this script.
20 |
21 | # How to Build
22 |
23 | Just execute `bash aseprite.sh`. Then open `Aseprite` application.
24 |
25 | If the script asks for root password, enter it. This is to be able to execute command to properly set environment path variable. It's safe, the script never try to do anything beside trying to build the app successfully.
26 |
27 | ## Command line Configuration
28 |
29 | In case you want to install aseprite to different path, or your `xcode-select` is not set properly, you can use either `--sdk-root` and `--target` to properly set things up before building.
30 |
31 | * `--sdk-root`
32 |
33 | To set your latest macOS SDK root as part of Xcode toolchain. By default it will query current prefix-value from `xcode-select` and append it with `/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk`. But in case, it doesn't work or `xcode-select` didn't do the work, you can use this option to manually specify it.
34 |
35 | * `--target`
36 |
37 | To set you target path to install aseprite. By default it will be at `/Applications` but some users might want it differently. In case you use this parameter, please see [#3](https://github.com/haxpor/aseprite-macos-buildsh/issues/3).
38 |
39 | So for example, you will execute
40 |
41 | ```
42 | bash aseprite.sh --sdk-root /Volumes/Slave/Applications/Xcode8.3/Xcode.app/Contents/Developer --target ~/slave/Applications
43 | ```
44 | **note** if you use `--target`, please see [#3](https://github.com/haxpor/aseprite-macos-buildsh/issues/3).
45 |
46 | Normal, barebone version with no parameters.
47 |
48 | ```shell
49 | bash aseprite.sh
50 | ```
51 |
52 | With custom parameters to specify SDK_ROOT and TARGET
53 | ```shell
54 | bash aseprite.sh --sdk-root /Volumes/Slave/Applications/YourCustomDir/Xcode.app/Contents/Developer --target ~/YourCustomDir/Appliations
55 | ```
56 |
57 | # Behind the Scene
58 |
59 | The script will proceed with following
60 | * Clone down Aseprite and Skia repository, and its dependencies required to bulid Aseprite.
61 | * Compile and build dependencies
62 | * Clone down Aseprite repository, then compile and build for latest release as tagged on Github (can be either beta or release version)
63 | * Created `.app` bundle at `~/Applications`
64 |
65 | > `Aseprite.app` is pre-created bundle file to wrap soon-to-be-built Aseprite. It contains script to execute an aseprite binary file with default executable path at `~/Applications/Aseprite/aseprite`. Such bundle file is created with macOS's Script Editor application.
66 |
67 | # Notes
68 |
69 | ## for building v1.2.9
70 |
71 | * If you previously clone any dependencies, the script will know and will instead try to update it from upstream for you. So you're ensured that it will operate on the most latest __release state__ version of Aseprite.
72 | * Updated version of Aseprite might break cloned dependencies's build workflow especially error about `CC` or `CXX` environment variables are not set to correct path. If this is a case, it's likely that you re-build on previously compiled source code of dependencies in which `cmake` still keeps the old configurations used in successful compile. To resolve the problem, remove the whole build folder namedly `aseprite` then start it all over again.
73 | * ~~In case you want to build older version of Aseprite, take a look at [Releases](https://github.com/haxpor/aseprite-macos-buildsh/releases) section then find a corresponding target version of Aseprite you look for.~~ - won't work, will stick to latest version only
74 |
75 | # Support Aseprite
76 |
77 | Aseprite is cool. It is free if you build it by yourself like you did above, or you can purchase it at [official website](https://www.aseprite.org/) to avoid spending effort in manual build process.
78 |
79 | # Credits
80 |
81 | This automated build script gathers information from Aseprite's [INSTALL.md](https://github.com/aseprite/aseprite/blob/master/INSTALL.md) on how to build, and sum it up together as automated script you're using here.
82 |
83 | # License
84 | [MIT](https://github.com/haxpor/aseprite-macos-buildsh/blob/master/LICENSE), Wasin Thonkaew
85 |
--------------------------------------------------------------------------------
/aseprite.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | #
3 | # Script to automate building latest release of Aseprite (it can be release or beta build)
4 | # This is for macOS build version.
5 |
6 | POSTFIXPATH_SDKROOT=Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.3.sdk
7 | CCPATH_TOOLCHAIN=Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
8 | CXXPATH_TOOLCHAIN=Toolchains/XcodeDefault.xctoolchain/usr/bin/c++
9 | SDK_ROOT=`xcode-select -p`
10 | TARGET="/Applications"
11 |
12 | # temporary value for returned value from function
13 | TEMP_RET=""
14 |
15 | # find value of target param --xxx if there's any, if not then TEMP_RET will still be empty "", else it will contain value from finding
16 | # param 1 - parameter key name
17 | # param 2 - program list of param, usually is $@
18 | # return 1 if it found, and TEMP_RET is set, otherwise return 0. TEMP_RET will be always set to "" (empty) at the beginning of this function.
19 | function findValueOfParam() {
20 | # set empty to temporary return variable first
21 | TEMP_RET=""
22 |
23 | count=$#
24 | argv=($@)
25 |
26 | for (( i=1; i