diff options
Diffstat (limited to 'about/changelog.md')
| -rw-r--r-- | about/changelog.md | 595 |
1 files changed, 595 insertions, 0 deletions
diff --git a/about/changelog.md b/about/changelog.md new file mode 100644 index 00000000..f64ded9b --- /dev/null +++ b/about/changelog.md @@ -0,0 +1,595 @@ + +## v2.2.7 + +### New features + +* [#455](https://github.com/xmake-io/xmake/pull/455): support clang as cuda compiler, try `xmake f --cu=clang` +* [#440](https://github.com/xmake-io/xmake/issues/440): Add `set_rundir()` and `add_runenvs()` api for target/run +* [#443](https://github.com/xmake-io/xmake/pull/443): Add tab completion support +* Add `on_link`, `before_link` and `after_link` for rule and target +* [#190](https://github.com/xmake-io/xmake/issues/190): Add `add_rules("lex", "yacc")` rules to support lex/yacc projects + +### Changes + +* [#430](https://github.com/xmake-io/xmake/pull/430): Add `add_cucodegens()` api to improve set codegen for cuda +* [#432](https://github.com/xmake-io/xmake/pull/432): support deps analyze for cu file (for CUDA 10.1+) +* [#437](https://github.com/xmake-io/xmake/issues/437): Support explict git source for xmake update, `xmake update github:xmake-io/xmake#dev` +* [#438](https://github.com/xmake-io/xmake/pull/438): Support to only update scripts, `xmake update --scriptonly dev` +* [#433](https://github.com/xmake-io/xmake/issues/433): Improve cuda to support device-link +* [#442](https://github.com/xmake-io/xmake/issues/442): Improve test library + +## v2.2.6 + +### New features + +* [#380](https://github.com/xmake-io/xmake/pull/380): Add support to export compile_flags.txt +* [#382](https://github.com/xmake-io/xmake/issues/382): Simplify simple scope settings +* [#397](https://github.com/xmake-io/xmake/issues/397): Add clib package manager support +* [#404](https://github.com/xmake-io/xmake/issues/404): Support Qt for android and deploy android apk +* Add some qt empty project templates, e.g. `widgetapp_qt`, `quickapp_qt_static` and `widgetapp_qt_static` +* [#415](https://github.com/xmake-io/xmake/issues/415): Add `--cu-cxx` config arguments to `nvcc/-ccbin` +* Add `--ndk_stdcxx=y` and `--ndk_cxxstl=gnustl_static` argument options for android NDK + +### Changes + +* Improve remote package manager +* Improve `target:on_xxx` scripts to support to match `android|armv7-a@macosx,linux|x86_64` pattern +* Improve loadfile to optimize startup speed, decrease 98% time + +### Bugs fixed + +* [#400](https://github.com/xmake-io/xmake/issues/400): fix c++ languages bug for qt rules + +## v2.2.5 + +### New features + +* Add `string.serialize` and `string.deserialize` to serialize and deserialize object, function and others. +* Add `xmake g --menu` +* [#283](https://github.com/xmake-io/xmake/issues/283): Add `target:installdir()` and `set_installdir()` api for target +* [#260](https://github.com/xmake-io/xmake/issues/260): Add `add_platformdirs` api, we can define custom platforms +* [#310](https://github.com/xmake-io/xmake/issues/310): Add theme feature +* [#318](https://github.com/xmake-io/xmake/issues/318): Add `add_installfiles` api to target +* [#339](https://github.com/xmake-io/xmake/issues/339): Improve `add_requires` and `find_package` to integrate the 3rd package manager +* [#327](https://github.com/xmake-io/xmake/issues/327): Integrate with Conan package manager +* Add the builtin api `find_packages("pcre2", "zlib")` to find multiple packages +* [#320](https://github.com/xmake-io/xmake/issues/320): Add template configuration files and replace all variables before building +* [#179](https://github.com/xmake-io/xmake/issues/179): Generate CMakelist.txt file for `xmake project` plugin +* [#361](https://github.com/xmake-io/xmake/issues/361): Support vs2019 preview +* [#368](https://github.com/xmake-io/xmake/issues/368): Support `private, public, interface` to improve dependency inheritance like cmake +* [#284](https://github.com/xmake-io/xmake/issues/284): Add passing user configs description for `package()` +* [#319](https://github.com/xmake-io/xmake/issues/319): Add `add_headerfiles` to improve to set header files and directories +* [#342](https://github.com/xmake-io/xmake/issues/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](https://github.com/xmake-io/xmake/issues/264): Support `xmake update dev` on windows +* [#293](https://github.com/xmake-io/xmake/issues/293): Add `xmake f/g --mingw=xxx` configuration option and improve to find_mingw +* [#301](https://github.com/xmake-io/xmake/issues/301): Improve precompiled header file +* [#322](https://github.com/xmake-io/xmake/issues/322): Add `option.add_features`, `option.add_cxxsnippets` and `option.add_csnippets` +* Remove some deprecated interfaces of xmake 1.x, e.g. `add_option_xxx` +* [#327](https://github.com/xmake-io/xmake/issues/327): Support conan package manager for `lib.detect.find_package` +* Improve `lib.detect.find_package` and add builtin `find_packages("zlib 1.x", "openssl", {xxx = ...})` api +* Mark `set_modes()` as deprecated, we use `add_rules("mode.debug", "mode.release")` instead of it +* [#353](https://github.com/xmake-io/xmake/issues/353): Improve `target:set`, `target:add` and add `target:del` to modify target configuration +* [#356](https://github.com/xmake-io/xmake/issues/356): Add `qt_add_static_plugins()` api to support static Qt sdk +* [#351](https://github.com/xmake-io/xmake/issues/351): Support yasm for generating vs201x project +* Improve the remote package manager. + +### Bugs fixed + +* Fix cannot call `set_optimize()` to set optimization flags when exists `add_rules("mode.release")` +* [#289](https://github.com/xmake-io/xmake/issues/289): Fix unarchive gzip file failed on windows +* [#296](https://github.com/xmake-io/xmake/issues/296): Fix `option.add_includedirs` for cuda +* [#321](https://github.com/xmake-io/xmake/issues/321): Fix find program bug with $PATH envirnoment + +## v2.2.3 + +### New features + +* [#233](https://github.com/xmake-io/xmake/issues/233): Support windres for mingw platform +* [#239](https://github.com/xmake-io/xmake/issues/239): Add cparser compiler support +* Add plugin manager `xmake plugin --help` +* Add `add_syslinks` api to add system libraries dependence +* Add `xmake l time xmake [--rebuild]` to record compilation time +* [#250](https://github.com/xmake-io/xmake/issues/250): Add `xmake f --vs_sdkver=10.0.15063.0` to change windows sdk version +* Add `lib.luajit.ffi` and `lib.luajit.jit` extension modules +* [#263](https://github.com/xmake-io/xmake/issues/263): Add new target kind: object to only compile object files + +### Changes + +* [#229](https://github.com/xmake-io/xmake/issues/229): Improve to select toolset for vcproj plugin +* Improve compilation dependences +* Support *.xz for extractor +* [#249](https://github.com/xmake-io/xmake/pull/249): revise progress formatting to space-leading three digit percentages +* [#247](https://github.com/xmake-io/xmake/pull/247): Add `-D` and `--diagnosis` instead of `--backtrace` +* [#259](https://github.com/xmake-io/xmake/issues/259): Improve on_build, on_build_file and on_xxx for target and rule +* [#269](https://github.com/xmake-io/xmake/issues/269): Clean up the temporary files at last 30 days +* Improve remote package manager +* Support to add packages with only header file +* Support to modify builtin package links, e.g. `add_packages("xxx", {links = {}})` + +### Bugs fixed + +* Fix state inconsistency after failed outage of installation dependency package + +## v2.2.2 + +### New features + +* Support fasm assembler +* Add `has_config`, `get_config`, and `is_config` apis +* Add `set_config` to set the default configuration +* Add `$xmake --try` to try building project using third-party buildsystem +* Add `set_enabled(false)` to disable target +* [#69](https://github.com/xmake-io/xmake/issues/69): Add remote package management, `add_requires("tbox ~1.6.1")` +* [#216](https://github.com/xmake-io/xmake/pull/216): Add windows mfc rules + +### Changes + +* Improve to detect Qt envirnoment and support mingw +* Add debug and release rules to the auto-generated xmake.lua +* [#178](https://github.com/xmake-io/xmake/issues/178): Modify the shared library name for mingw. +* Support case-insensitive path pattern-matching for `add_files()` on windows +* Improve to detect Qt sdk directory for `detect.sdks.find_qt` +* [#184](https://github.com/xmake-io/xmake/issues/184): Improve `lib.detect.find_package` to support vcpkg +* [#208](https://github.com/xmake-io/xmake/issues/208): Improve rpath for shared library +* [#225](https://github.com/xmake-io/xmake/issues/225): Improve to detect vs envirnoment + +### Bug fixed + +* [#177](https://github.com/xmake-io/xmake/issues/177): Fix the dependent target link bug +* Fix high cpu usage bug and Exit issues for `$ xmake f --menu` +* [#197](https://github.com/xmake-io/xmake/issues/197): Fix Chinese path for generating vs201x project +* Fix wdk rules bug +* [#205](https://github.com/xmake-io/xmake/pull/205): Fix targetdir,objectdir not used in vsproject + +## v2.2.1 + +### New features + +* [#158](https://github.com/xmake-io/xmake/issues/158): Support CUDA Toolkit and Compiler +* Add `set_tools` and `add_tools` apis to change the toolchains for special target +* Add builtin rules: `mode.debug`, `mode.release`, `mode.profile` and `mode.check` +* Add `is_mode`, `is_arch` and `is_plat` builtin apis in the custom scripts +* Add color256 codes +* [#160](https://github.com/xmake-io/xmake/issues/160): Support Qt compilation environment and add `qt.console`, `qt.application` rules +* Add some Qt project templates +* [#169](https://github.com/xmake-io/xmake/issues/169): Support yasm for linux, macosx and windows +* [#159](https://github.com/xmake-io/xmake/issues/159): Support WDK driver compilation environment + +### Changes + +* Add FAQ to the auto-generated xmake.lua +* Support android NDK >= r14 +* Improve warning flags for swiftc +* [#167](https://github.com/xmake-io/xmake/issues/167): Improve custom rules +* Improve `os.files` and `os.dirs` api +* [#171](https://github.com/xmake-io/xmake/issues/171): Improve build dependence for qt rule +* Implement `make clean` for generating makefile plugin + +### Bugs fixed + +* Fix force to add flags bug +* [#157](https://github.com/xmake-io/xmake/issues/157): Fix generate pdb file error if it's output directory does not exists +* Fix strip all symbols bug for macho target file +* [#168](https://github.com/xmake-io/xmake/issues/168): Fix generate vs201x project bug with x86/x64 architectures + +## v2.1.9 + +### New features + +* Add `del_files()` api to delete files in the files list +* Add `rule()`, `add_rules()` api to implement the custom build rule and improve `add_files("src/*.md", {rule = "markdown"})` +* Add `os.filesize()` api +* Add `core.ui.xxx` cui components +* Add `xmake f --menu` to configure project with a menu configuration interface +* Add `set_values` api to `option()` +* Support to generate a menu configuration interface from user custom project options +* Add source file position to interpreter and search results in menu + +### Changes + +* Improve to configure cross-toolchains, add tool alias to support unknown tool name, .e.g `xmake f --cc=gcc@ccmips.exe` +* [#151](https://github.com/xmake-io/xmake/issues/151): Improve to build the share library for the mingw platform +* Improve to generate makefile plugin +* Improve the checking errors tips +* Improve `add_cxflags` .., force to set flags without auto checking: `add_cxflags("-DTEST", {force = true})` +* Improve `add_files`, add force block to force to set flags without auto checking: `add_files("src/*.c", {force = {cxflags = "-DTEST"}})` +* Improve to search the root project directory +* Improve to detect vs environment +* Upgrade luajit to 2.1.0-beta3 +* Support to run xmake on linux (arm, arm64) +* Improve to generate vs201x project plugin + +### Bugs fixed + +* Fix complation dependence +* [#151](https://github.com/xmake-io/xmake/issues/151): Fix `os.nuldev()` for gcc on mingw +* [#150](https://github.com/xmake-io/xmake/issues/150): Fix the command line string limitation for `ar.exe` +* Fix `xmake f --cross` error +* Fix `os.cd` to the windows root path bug + +## v2.1.8 + +### New features + +* Add `XMAKE_LOGFILE` environment variable to dump the output info to file +* Support tinyc compiler + +### Changes + +* Improve support for IDE/editor plugins (.e.g vscode, sublime, intellij-idea) +* Add `.gitignore` file when creating new projects +* Improve to create template project +* Improve to detect toolchains on macosx without xcode +* Improve `set_config_header` to support `set_config_header("config", {version = "2.1.8", build = "%Y%m%d%H%M"})` + +### Bugs fixed + +* [#145](https://github.com/xmake-io/xmake/issues/145): Fix the current directory when running target + +## v2.1.7 + +### New features + +* Add `add_imports` to bulk import modules for the target, option and package script +* Add `xmake -y/--yes` to confirm the user input by default +* Add `xmake l package.manager.install xxx` to install software package +* Add xmake plugin for vscode editor, [xmake-vscode](https://marketplace.visualstudio.com/items?itemName=tboox.xmake-vscode#overview) +* Add `xmake macro ..` to run the last command + +### Changes + +* Support 24bits truecolors for `cprint()` +* Support `@loader_path` and `$ORIGIN` for `add_rpathdirs()` +* Improve `set_version("x.x.x", {build = "%Y%m%d%H%M"})` and add build version +* Move docs directory to xmake-docs repo +* Improve install and uninstall actions and support DESTDIR and PREFIX envirnoment variables +* Optimize to detect flags +* Add `COLORTERM=nocolor` to disable color output +* Remove `and_bindings` and `add_rbindings` api +* Disable to output colors code to file +* Update project templates with tbox +* Improve `lib.detect.find_program` interface +* Enable colors output for windows cmd +* Add `-w|--warning` arguments to enable the warnings output + +### Bugs fixed + +* Fix `set_pcxxheader` bug +* [#140](https://github.com/xmake-io/xmake/issues/140): Fix `os.tmpdir()` in fakeroot +* [#142](https://github.com/xmake-io/xmake/issues/142): Fix `os.getenv` charset bug on windows +* Fix compile error with spaces path +* Fix setenv empty value bug + +## v2.1.6 + +### Changes + +* Improve `add_files` to configure the compile option of the given files +* Inherit links and linkdirs from the dependent targets and options +* Improve `target.add_deps` and add inherit config, .e.g `add_deps("test", {inherit = false})` +* Remove the binary files of `tbox.pkg` +* Use `/Zi` instead of `/ZI` for msvc + +### Bugs fixed + +* Fix target deps +* Fix `target:add` and `option:add` bug +* Fix compilation and installation bug on archlinux + +## v2.1.5 + +### New features + +* [#83](https://github.com/xmake-io/xmake/issues/83): Add `add_csnippet` and `add_cxxsnippet` into `option` for detecting some compiler features. +* [#83](https://github.com/xmake-io/xmake/issues/83): Add user extension modules to detect program, libraries and files. +* Add `find_program`, `find_file`, `find_library`, `find_tool` and `find_package` module interfaces. +* Add `net.*` and `devel.*` extension modules +* Add `val()` api to get the value of builtin-variable, .e.g `val("host")`, `val("env PATH")`, `val("shell echo hello")` and `val("reg HKEY_LOCAL_MACHINE\\XX;Value")` +* Support to compile the microsoft resource file (.rc) +* Add `has_flags`, `features` and `has_features` for detect module interfaces. +* Add `option.on_check`, `option.after_check` and `option.before_check` api +* Add `target.on_load` api +* [#132](https://github.com/xmake-io/xmake/issues/132): Add `add_frameworkdirs` api +* Add `lib.detect.has_xxx` and `lib.detect.find_xxx` apis. +* Add `add_moduledirs` api +* Add `includes` api instead of `add_subdirs` and `add_subfiles` +* [#133](https://github.com/xmake-io/xmake/issues/133): Improve the project plugin to generate `compile_commands.json` by run `xmake project -k compile_commands` +* Add `set_pcheader` and `set_pcxxheader` to support the precompiled header, support gcc, clang, msvc +* Add `xmake f -p cross` platform and support the custom platform + +### Changes + +* [#87](https://github.com/xmake-io/xmake/issues/87): Add includes and links from target deps automatically +* Improve `import` to load user extension and global modules +* [#93](https://github.com/xmake-io/xmake/pull/93): Improve `xmake lua` to run a single line command +* Improve to print gcc error and warning info +* Improve `print` interface to dump table +* [#111](https://github.com/xmake-io/xmake/issues/111): Add `--root` common option to allow run xmake command as root +* [#113](https://github.com/xmake-io/xmake/pull/113): Privilege manage when running as root, store the root privilege and degrade. +* Improve `xxx_script` in `xmake.lua` to support pattern match, .e.g `on_build("iphoneos|arm*", function (target) end)` +* improve builtin-variables to support to get the value envirnoment and registry +* Improve to detect vstudio sdk and cross toolchains envirnoment +* [#71](https://github.com/xmake-io/xmake/issues/71): Improve to detect compiler and linker from env vars +* Improve the option detection (cache and multi-jobs) and increase 70% speed +* [#129](https://github.com/xmake-io/xmake/issues/129): Check link deps and cache the target file +* Support `*.asm` source files for vs201x project plugin +* Mark `add_bindings` and `add_rbindings` as deprecated +* Optimize `xmake rebuild` speed on windows +* Move `core.project.task` to `core.base.task` +* Move `echo` and `app2ipa` plugins to [xmake-plugins](https://github.com/xmake-io/xmake-plugins) repo. +* Add new api `set_config_header("config.h", {prefix = ""})` instead of `set_config_h` and `set_config_h_prefix` + +### Bugs fixed + +* Fix `try-catch-finally` +* Fix interpreter bug when parsing multi-level subdirs +* [#115](https://github.com/xmake-io/xmake/pull/115): Fix the path problem of the install script `get.sh` +* Fix cache bug for import() + +## v2.1.4 + +### New features + +* [#68](https://github.com/xmake-io/xmake/issues/68): Add `$(programdir)` and `$(xmake)` builtin variables +* add `is_host` api to get current host operating system +* [#79](https://github.com/xmake-io/xmake/issues/79): Improve `xmake lua` to run interactive commands, read-eval-print (REPL) + +### Changes + +* Modify option menu color. +* [#71](https://github.com/xmake-io/xmake/issues/71): Improve to map optimization flags for cl.exe +* [#73](https://github.com/xmake-io/xmake/issues/73): Attempt to get executable path as xmake's program directory +* Improve the scope of `xmake.lua` in `add_subdirs` and use independent sub-scope to avoid dirty scope +* [#78](https://github.com/xmake-io/xmake/pull/78): Get terminal size in runtime and soft-wrap the help printing +* Avoid generate `.xmake` directory if be not in project + +### Bugs fixed + +* [#67](https://github.com/xmake-io/xmake/issues/67): Fix `sudo make install` permission problem +* [#70](https://github.com/xmake-io/xmake/issues/70): Fix check android compiler error +* Fix temporary file path conflict +* Fix `os.host` and `os.arch` interfaces +* Fix interpreter bug for loading root api +* [#77](https://github.com/xmake-io/xmake/pull/77): fix `cprint` no color reset eol + +## v2.1.3 + +### New features + +* [#65](https://github.com/xmake-io/xmake/pull/65): Add `set_default` api for target to modify default build and install behavior +* Allows to run `xmake` command in project subdirectories, it will find the project root directory automatically +* Add `add_rpathdirs` for target and option + +### Changes + +* [#61](https://github.com/xmake-io/xmake/pull/61): Provide safer `xmake install` and `xmake uninstall` task with administrator permission +* Provide `rpm`, `deb` and `osxpkg` install package +* [#63](https://github.com/xmake-io/xmake/pull/63): More safer build and install xmake +* [#61](https://github.com/xmake-io/xmake/pull/61): Check run command as root +* Improve check toolchains and implement delay checking +* Add user tips when scanning and generating `xmake.lua` automatically + +### Bugs fixed + +* Fix error tips for checking xmake min version +* [#60](https://github.com/xmake-io/xmake/issues/60): Fix self-build for macosx and windows +* [#64](https://github.com/xmake-io/xmake/issues/64): Fix compile android `armv8-a` error +* [#50](https://github.com/xmake-io/xmake/issues/50): Fix only position independent executables issue for android program + +## v2.1.2 + +### New features + +* Add aur package script and support to install xmake from yaourt +* Add [set_basename](#http://xmake.io/#/manual?id=targetset_basename) api for target + +### Changes + +* Support vs2017 +* Support compile rust for android +* Improve vs201x project plugin and support multi-modes compilation. + +### Bugs fixed + +* Fix cannot find android sdk header files +* Fix checking option bug +* [#57](https://github.com/xmake-io/xmake/issues/57): Fix code files mode to 0644 + +## v2.1.1 + +### New features + +* Add `--links`, `--linkdirs` and `--includedirs` configure arguments +* Add app2ipa plugin +* Add dictionary syntax style for `xmake.lua` +* Provide smart scanning and building mode without `xmake.lua` +* Add `set_xmakever` api for `xmake.lua` +* Add `add_frameworks` api for `objc` and `swift` +* Support multi-languages extension and add `golang`, `dlang` and `rust` language +* Add optional `target_end`, `option_end`, `task_end` apis for scope +* Add `golang`, `dlang` and `rust` project templates + +### Changes + +* Support vs2017 for the project plugin +* Improve gcc error and warning tips +* Improve lanuage module +* Improve print interface, support lua print and format output +* Automatically scan project files and generate it for building if xmake.lua not exists +* Modify license to Apache License 2.0 +* Remove some binary tools +* Remove install.bat script and provide nsis install package +* Rewrite [documents](http://www.xmake.io/#/home/) using [docute](https://github.com/egoist/docute) +* Improve `os.run`, `os.exec`, `os.cp`, `os.mv` and `os.rm` interfaces and support wildcard pattern +* Optimize the output info and add `-q|--quiet` option +* Improve makefile generator, uses $(XX) variables for tools and flags + +### Bugs fixed + +* [#41](https://github.com/waruqi/xmake/issues/41): Fix checker bug for windows +* [#43](https://github.com/waruqi/xmake/issues/43): Avoid to generate unnecessary .xmake directory +* Add c++ stl search directories for android +* Fix compile error for rhel 5.10 +* Fix `os.iorun` bug + +## v2.0.5 + +### New features + +* Add some interpreter builtin-modules +* Support ml64 assembler for windows x64 + +### Changes + +* Improve ipairs and pairs interfaces and support filter +* Add filters for generating vs201x project +* Remove `core/tools` (msys toolchains) and uses xmake to compile core sources on windows +* Remove `xmake/packages` for templates + +### Bugs fixed + +* Fix `-def:xxx.def` flags failed for msvc +* Fix ml.exe assembler script +* Fix options linking order bug + +## v2.0.4 + +### New features + +* Add native shell support for `xmake.lua`. .e.g `add_ldflags("$(shell pkg-config --libs sqlite3)")` +* Enable pdb symbol files for windows +* Add debugger support on windows (vsjitdebugger, ollydbg, windbg ... ) +* Add `getenv` interface for the global scope of `xmake.lua` +* Add plugin for generating vstudio project file (vs2002 - vs2015) +* Add `set_default` api for option + +### Changes + +* Improve builtin-variable format +* Support option for string type + +### Bugs fixed + +* Fix check ld failed without g++ on linux +* Fix compile `*.cxx` files failed + +## v2.0.3 + +### New features + +* Add check includes dependence automatically +* Add print colors +* Add debugger support, .e.g `xmake run -d program ...` + +### Changes + +* Improve the interfaces of run shell +* Upgrade luajit to v2.0.4 +* Improve to generate makefile plugin +* Optimizate the multitasking compiling speed + +### Bugs fixed + +* Fix install directory bug +* Fix the root directory error for `import` interface +* Fix check visual stdio error on windows + +## v2.0.2 + +### Changes + +* Change install and uninstall actions +* Update templates +* Improve to check function + +### Bugs fixed + +* [#7](https://github.com/waruqi/xmake/issues/7): Fix create project bug with '[targetname]' +* [#9](https://github.com/waruqi/xmake/issues/9): Support clang with c++11 +* Fix api scope leaks bug +* Fix path bug for windows +* Fix check function bug +* Fix check toolchains failed +* Fix compile failed for android on windows + +## v2.0.1 + +### New features + +* Add task api for running custom tasks +* Add plugin expansion and provide some builtin plugins +* Add export ide project plugin(.e.g makefile and will support to export other projects for vs, xcode in feature) +* Add demo plugin for printing 'hello xmake' +* Add make doxygen documents plugin +* Add macro script plugin +* Add more modules for developing plugin +* Add exception using try/catch and simplify grammar for plugin script +* Add option bindings +* Show progress when building + +### Changes + +* Rewrite interpreter for xmake.lua +* More strict syntax detection mechanism +* More strict api scope for xmake.lua +* Simplify template development +* Extend platforms, tools, templates and actions fastly +* Simplify api and support import modules +* Remove dependence for gnu make/nmake, no longer need makefile +* Optimize speed for building and faster x4 than v1.0.4 +* Optimize automatic detection +* Modify some api name, but be compatible with the old version +* Optimize merging static library +* Simplify cross compilation using argument `--sdk=xxx` +* Simplify boolean option for command line, .e.g `xmake config --xxx=[y|n|yes|no|true|false]` +* Merge iphoneos and iphonesimulator platforms +* Merge watchos and watchsimulator platformss + +### Bugs fixed + +* [#3](https://github.com/waruqi/xmake/issues/3): ArchLinux compilation failed +* [#4](https://github.com/waruqi/xmake/issues/4): Install failed for windows +* Fix envirnoment variable bug for windows + +## v1.0.4 + +### New features + +* Support windows assembler +* Add some project templates +* Support swift codes +* Add -v argument for outputing more verbose info +* Add apple platforms:watchos, watchsimulator +* Add architecture x64, amd64, x86_amd64 for windows +* Support switch static and share library +* Add `-j/--jobs` argument for supporting multi-jobs + +### Changes + +* Improve `add_files` api and support to add `*.o/obj/a/lib` files for merging static library and object files +* Optimize installation and remove some binary files + +### Bugs fixed + +* [#1](https://github.com/waruqi/xmake/issues/4): Install failed for win7 +* Fix checking toolchains bug +* Fix install script bug +* Fix install bug for linux x86_64 + +## v1.0.3 + +### New features + +* Add `set_runscript` api and support custom action +* Add import api and support import modules in xmake.lua, .e.g os, path, utils ... +* Add new architecture: arm64-v8a for android + +### Bugs fixed + +* Fix api bug for `set_installscript` +* Fix install bug for windows `x86_64` +* Fix relative path bug |
