26 Commits

Author SHA1 Message Date
Andrew Hyatt
e11125fbf2
Disable installation 2018-06-03 14:59:26 -04:00
Andrew Hyatt
a37f07c125
Rename util to util_xcbuild 2018-05-22 22:55:43 -04:00
Luiz Coimbra Barbosa Silva
96af1f519e Add --allow-non-standard-behavior and --allow-image-type webp to actool
Adding the capability to pack WEBP images into compiled assets catalog.
Since this is not standard behavior, I'm adding it under `--allow-image-type webp`.
This way (`--allow-image-type`) also makes it easier to add future new extension types.
Since this is not a feature supported by Apple's Xcode.actool, I'm adding `--allow-non-standard-behavior` as well, that makes it explicit it's incompatible behavior.
2018-03-28 11:41:24 -07:00
Grant Paul
7a001832a9 Add Windows, MSVC, and MinGW support to build configuration.
- Set to use static or dynamic libraries at top level.
 - Compiler configuration for MSVC and MinGW.
 - Copy rather than create symlink for aliases on Windows.
2017-06-19 11:52:20 -07:00
Grant Paul
bb475741ec Parse remaining new asset types. 2016-10-21 15:23:50 -07:00
Grant Paul
eef06a4979 Add sticker-related asset types. 2016-10-05 19:04:47 -07:00
Grant Paul
48ad1729dd Move process context into a separate process library.
This improves namespacing and allows for more process changes.
2016-09-23 11:41:42 +07:00
Grant Paul
1fe3b27cab Add unit test for compiling launch images.
Verifies the output from compiling launch images of various types,
including legacy launch images without a minimum system version.
2016-08-11 14:05:06 -07:00
Grant Paul
01de4a5e04 Add a unit test to verify app icon set compilation.
Verifies the files are copied, the dependency info is populated, the
additional info plist is populated, and nothing else is changed.
2016-08-11 14:05:06 -07:00
Grant Paul
bb71c06654 Move asset compilation dispatch into compile namespace.
This simplifies the compile action and unifies compiling any asset
with the compilation of specific types of assets.
2016-08-11 14:05:06 -07:00
Grant Paul
99c5a53f9a Write out complete dependency info and outputs in asset compilation.
Print the set of output files, as expected, and output dependency info
as requested by the command line options. The dependency info contains
the full set of inputs and outputs used during compilation.
2016-08-11 14:05:06 -07:00
Grant Paul
014d8fe6e8 Add version information to generated dependency info.
Additionally, factor out source of version information to share it
between both the compile and version actions in the actool driver.
2016-08-11 14:05:06 -07:00
Grant Paul
f79d60b01a Move compile output into compile namespace. 2016-07-27 17:42:42 -07:00
Grant Paul
e9fe14bcb9 Move asset conversion utilities into a shared class.
This allows compilers for different asset types to share implementations
of converting asset information into compiled representations.
2016-07-27 17:42:42 -07:00
Grant Paul
1242d7e711 Support both ImageIO and libpng for reading PNG images.
- Separate out PNG loading into a separate module.
 - Refactor PNG loading to be less tied to asset compliation.
 - Add an implementation of PNG loading using ImageIO when available.
 - Add a unit test for loading various types of PNG images.
2016-07-27 16:18:26 -07:00
Grant Paul
b9aae64b4e Add stub implementations for compiling each type of asset.
Move all compilation implementations into a new namespace, and stub
out the remaining asset types. For now, they just print warnings.
2016-07-14 23:53:21 -07:00
Marc Salem
d8b3d5e869 Add imageset support in Compile Action (#72)
Implements actool Compile action with:
  * imageset supported
  * PNG converted to zlib compressed PremultipliedBGRA8 or PremultipliedGA8
  * JPEG/raw support
  * size, scale, idiom supported
  * resizing partially supported
  * adds requirement for libpng

Capture group namespaces when loading children in xcassets::Asset::Group
Add tests for FSUtil IsFileExtension
2016-07-06 16:25:12 -07:00
Grant Paul
d690825c40 Add asset catalog driver compile action output.
Includes a basic unit test.
2016-07-03 14:27:32 -07:00
Grant Paul
c25336b50b Install into a developer root, rather than a Unix layout.
Executables are installed into `<prefix>/usr/bin and `<prefix>/usr/lib`.
Specifications are installed into `<prefix>/Library/Xcode/Specifications`.
2016-06-16 11:28:17 -07:00
strager
b50bf0b5be Don't build tests if BUILD_TESTING=NO (#55)
If the developer invokes CMake with BUILD_TESTING=NO, don't
build or register CTest tests. This allows building without
the ThirdParty/googletest Git submodule, and also improves
build times for end-users who just want an xcbuild binary.
2016-05-26 13:56:42 -07:00
Grant Paul
15110f9157 Minor style cleanup for various asset code. 2016-05-26 12:43:47 -07:00
Grant Paul
aeeb3579ba Support CMake installation of libraries and executables. 2016-05-24 18:11:51 -07:00
Grant Paul
b4c4dbbe68 Skeleton for parsing xcassets into native structures.
This will parse xcassets directories into an in-memory representation.
2016-04-15 19:24:17 -07:00
Grant Paul
ff15ba75c2 Add basic structure for the available actions in acdriver.
The available actions are version, contents, and compile. Each has
a class with an implementation that implements that action.
2016-04-15 19:24:17 -07:00
Grant Paul
eee582b97b Add basic acdriver output structure and error handling. 2016-04-15 19:24:17 -07:00
Grant Paul
5dc1a8a676 Add basic structure for actool driver.
The new library acdriver contains the actool driver and tool. So far
it can simply parse the actool options but not act on any of them.
2016-04-15 19:24:17 -07:00