This version took more than four months to refactor and improve the package dependency management. The official repository added common packages such as mysql and ffmpeg, and added a lot of features.
New features
- Add
string.serialize
andstring.deserialize
to serialize and deserialize object, function and others. - Add
xmake g --menu
- #283: Add
target:installdir()
andset_installdir()
api for target - #260: Add
add_platformdirs
api, we can define custom platforms - #310: Add theme feature
- #318: Add
add_installfiles
api to target - #339: Improve
add_requires
andfind_package
to integrate the 3rd package manager - #327: Integrate with Conan package manager
- Add the builtin api
find_packages("pcre2", "zlib")
to find multiple packages - #320: Add template configuration files and replace all variables before building
- #179: Generate CMakelist.txt file for
xmake project
plugin - #361: Support vs2019 preview
- #368: Support
private, public, interface
to improve dependency inheritance like cmake - #284: Add passing user configs description for
package()
- #319: Add
add_headerfiles
to improve to set header files and directories - #342: Add some builtin help functions for
includes()
, e.g.check_cfuncs
Changes
- Improve to switch version and debug mode for the dependent packages
- #264: Support
xmake update dev
on windows - #293: Add
xmake f/g --mingw=xxx
configuration option and improve to find_mingw - #301: Improve precompiled header file
- #322: Add
option.add_features
,option.add_cxxsnippets
andoption.add_csnippets
- Remove some deprecated interfaces of xmake 1.x, e.g.
add_option_xxx
- #327: Support conan package manager for
lib.detect.find_package
- Improve
lib.detect.find_package
and add builtinfind_packages("zlib 1.x", "openssl", {xxx = ...})
api - Mark
set_modes()
as deprecated, we useadd_rules("mode.debug", "mode.release")
instead of it - #353: Improve
target:set
,target:add
and addtarget:del
to modify target configuration - #356: Add
qt_add_static_plugins()
api to support static Qt sdk - #351: Support yasm for generating vs201x project
- Improve the remote package manager.