CHANGELOG 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455
  1. ## [3.57] - 2024-01-03
  2. ### Added
  3. - Added -nas option to disable auto superstrict.
  4. ## [3.56] - 2023-09-30
  5. ### Fixed
  6. - Bootstrap script progress echoes require quotes.
  7. ### Changed
  8. - Bootstrap config can now be delimited by any whitespace.
  9. ## [3.55] - 2023-08-19
  10. ### Added
  11. - Added support for different assemblers.
  12. - Include inline bmk directives in .i files.
  13. ## [3.54] - 2023-05-22
  14. ### Added
  15. - Cross-compile improvements.
  16. ### Changed
  17. - Version number is now in its own file to assist auto-builds.
  18. ## [3.53] - 2023-05-06
  19. ### Added
  20. - Coverage generation with -cov option.
  21. ## [3.52] - 2023-04-29
  22. ### Added
  23. - Added support for risc-v on Linux.
  24. ## [3.51] - 2023-03-02
  25. ### Fixed
  26. - .cxx files use CPP_OPTS.
  27. ### Changed
  28. - Compiler version calculation.
  29. ## [3.50] - 2022-07-08
  30. ### Added
  31. - moduleinfo variable opts - cc_vopt, etc.
  32. ## [3.49] - 2022-03-31
  33. ### Fixed
  34. - Compute gcc version cache earlier.
  35. ## [3.47] - 2021-12-14
  36. ### Fixed
  37. - Less optimisations with -gdb option.
  38. - .mm files use CPP_OPTS.
  39. ### Changed
  40. - Use BRL.ThreadPool with NG.
  41. ## [3.46] - 2021-01-03
  42. ### Fixed
  43. - Linkage for incbin in included sources.
  44. ## [3.45] - 2020-08-16
  45. ### Added
  46. - incbin file hashing.
  47. ### Changed
  48. - New incbin format.
  49. ## [3.44] - 2020-07-31
  50. ### Added
  51. - macOS "arm64" build option.
  52. - Custom macOS toolchain configuration.
  53. - macOS universal apps (requires xcode 12+).
  54. ### Fixed
  55. - obj-C sources now built in correct order.
  56. ## [3.43] - 2020-07-05
  57. ### Fixed
  58. - iOS build configuration.
  59. ## [3.42] - 2020-04-08
  60. ### Added
  61. - New '-hi' option to indicate app supports high resolution (hidpi) screens.
  62. ### Fixed
  63. - Don't use -m64 flag when compiling on 64-bit ARM.
  64. ### Changed
  65. - Increased minimum macOS target for newer versions of macOS.
  66. ## [3.41] - 2019-12-21
  67. ### Changed
  68. - Non bmx object files now have a prefix applied to make them more unique.
  69. - cleanmods now removes all .bmx subdirs.
  70. ## [3.40] - 2019-09-02
  71. ### Added
  72. - New '-gprof' option for gprof profiling support.
  73. - Basic conditional comparisons. (bcc 0.111+)
  74. - User defined compiler options may now contain specific integer values. (bcc 0.111+)
  75. ### Fixed
  76. - Icon and buildpath usage improvements.
  77. - Suppress creation of nested .bmx folders.
  78. ## [3.39] - 2019-06-20
  79. ### Fixed
  80. - Correctly set file version on Win32.
  81. - Don't use incbin object times to determine change.
  82. - Compare incbin lists for differences.
  83. ## [3.38] - 2019-05-29
  84. ### Added
  85. - New '-ud' option to add user defined compiler options. (bcc 0.108+)
  86. ## [3.37] - 2019-05-26
  87. ### Fixed
  88. - Wrapped upx arg path in quotes.
  89. - Improved detection of nx toolchain dir.
  90. ### Changed
  91. - app-specific pre/post script names now require pre/post filename suffix.
  92. - Removed unused options.
  93. - Windows app icon in resource is now APP_ICON instead of 101.
  94. ## [3.36] - 2019-05-09
  95. ### Added
  96. - New '-upx' option to pack executables.
  97. ## [3.35] - 2019-04-29
  98. ### Fixed
  99. - Improved Windows resource handling.
  100. ## [3.34] - 2019-03-15
  101. ### Added
  102. - New 'no-pie' option to disable PIE.
  103. ### Changed
  104. - Linux binaries are now built as position independent executables (PIE) as default.
  105. ## [3.33] - 2019-03-05
  106. ### Fixed
  107. - DLLs now statically link against libgcc.
  108. ## [3.32] - 2019-02-11
  109. ### Added
  110. - New 'override' and 'overerr' options for bcc Override support.
  111. ## [3.31] - 2019-01-18
  112. ### Added
  113. - New 'single' option. Forces single-threaded build mode.
  114. - Allow user-provided manifest files on Win32.
  115. ### Changed
  116. - Use application name for default application settings.
  117. ## [3.30] - 2018-12-04
  118. ### Added
  119. - Initial bootstrap implementation.
  120. ## [3.29] - 2018-11-20
  121. ### Fixed
  122. - Improved macOS .a processing.
  123. ## [3.28] - 2018-10-03
  124. ### Changed
  125. - macOS version calculation.
  126. - macOS stdlib changes.
  127. ## [3.27] - 2018-09-06
  128. ### Fixed
  129. - Fixed conditional compiler processing.
  130. - makelib now correctly builds dlls.
  131. ### Added
  132. - NX platform support.
  133. ## [3.26] - 2018-07-31
  134. ### Fixed
  135. - Potential task race issue.
  136. ### Changed
  137. - NG incbins are now wrapped in own object file.
  138. ## [3.25] - 2018-04-27
  139. ### Fixed
  140. - Generate correct code for luajit.
  141. ### Changed
  142. - Delete files in task, rather than linearly.
  143. ## [3.24] - 2018-04-06
  144. ### Fixed
  145. - App link should always be last.
  146. ### Changed
  147. - Don't be a resource hog. Only use n-cores - 1.
  148. - More build tweaks.
  149. ## [3.23] - 2018-03-31
  150. ### Added
  151. - Generate manifest and resources for win32 GUI apps.
  152. ## [3.22] - 2018-03-21
  153. ### Changed
  154. - Further build tree enhancements to significantly improve partial build times.
  155. ## [3.21] - 2018-01-10
  156. ### Added
  157. - New 'compile' option. Similar to makeapp, but doesn't link or create executables.
  158. ## [3.20] - 2017-12-12
  159. ### Fixed
  160. - Now correctly factors in generated sources when determining current build requirements.
  161. ### Added
  162. - Concatenate larger sets of strings with string buffer.
  163. ## [3.19] - 2017-11-21
  164. ### Changed
  165. - Improved build tree efficiency by pushing more parallel friendly files to the end.
  166. ## [3.18] - 2017-06-19
  167. ### Added
  168. - Support for native asm compilation.
  169. ### Changed
  170. - NG builds are now threaded by default.
  171. ## [3.17] - 2017-02-25
  172. ### Added
  173. - Support for single-target MinGW32 distros (eg. MinGW-w64), with paths MinGW32x86 and MinGW32x64.
  174. ## [3.16] - 2016-07-31
  175. ### Added
  176. - Support for direct import of .a files.
  177. ## [3.15] - 2016-07-16
  178. ### Fixed
  179. - Win32 32-bit link issue on recent 64-bit MinGW.
  180. ### Added
  181. - Linux build additions. Support for musl libc and static linking.
  182. ## [3.14] - 2016-06-05
  183. ### Added
  184. - Can now set command-line options via custom.bmk.
  185. ## [3.13] - 2016-05-21
  186. ### Added
  187. - Default simd cc_opt for x64 (-msse4).
  188. ## [3.12] - 2016-04-17
  189. ### Changed
  190. App link optimisations.
  191. ## [3.11] - 2016-02-20
  192. ### Added
  193. - nostrictupgrade option for NG.
  194. - -w option for NG.
  195. - Support Linux/Pi ARM64 build options.
  196. ## [3.10] - 2016-01-26
  197. ### Fixed
  198. - Includes exuberance.
  199. ### Added
  200. - Support generic Linux ARM builds.
  201. ## [3.09] - 2015-11-07
  202. ### Fixed
  203. - Android x86/x64 tool paths.
  204. ### Changed
  205. - Android now links to (and includes) stlport_shared.
  206. ## [3.08] - 2015-11-01
  207. ### Added
  208. - New CPP_OPTS and C_OPTS options for C++ and C specific compiler options respectively.
  209. ## [3.07] - 2015-10-28
  210. ### Fixed
  211. - Android debug builds.
  212. - Improved iOS 9 support.
  213. ## [3.06] - 2015-08-31
  214. ### Fixed
  215. - Copy android resources to apk.
  216. ### Added
  217. - Universal ios builds (x86+x64, armv7+arm64).
  218. - ?ptr32 and ?ptr64 compiler definitions.
  219. ## [3.05] - 2015-08-04
  220. ### Added
  221. - Support for ios target.
  222. ## [3.04] - 2015-07-03
  223. ### Added
  224. - -quick app build option - skips building/checking required module if .a and .i present.
  225. ## [3.03] - 2015-06-20
  226. ### Changed
  227. - Legacy bcc installations can now use local MinGW32 dir.
  228. ## [3.02] - 2015-06-10
  229. ### Added
  230. - Standalone app build generation. Generates source and build script for bmk/bcc-less compile.
  231. ## [3.01] - 2015-05-28
  232. ### Fixed
  233. - OS X sysroot issue, and enhanced OS X configuration.
  234. ### Changed
  235. - Reworked android stuff to work with standard setup.
  236. - Improved support for mixed builds (compiling between legacy and ng)
  237. ## [3.00] - 2015-05-05 "Chirpy Chipmunk"
  238. ### Added
  239. - Progress information.
  240. ### Changed
  241. - Redesign of dependency processing - parallel build!
  242. - Now uses thread pool.
  243. ## [2.25] - 2015-02-15
  244. ### Fixed
  245. - Fix for preprocessor bmxng version check.
  246. - Win32 pthread link order issue.
  247. ### Changed
  248. - Use Win32 pthread link for GCC 4.8+
  249. ## [2.24] - 2015-01-22
  250. ### Added
  251. - Support for emscripten target.
  252. - Auto suffix .html for emscripten apps.
  253. - Platform/arch validation.
  254. - Opengles target platform preprocessor option.
  255. - Project-specific pre-processing - "<app file>.bmk".
  256. - Gdb debug generation option.
  257. ## [2.23] - 2014-12-01
  258. ### Added
  259. - Direct support for android and raspberrypi targets.
  260. - Android configuration settings and project template.
  261. ## [2.22] - 2014-10-02
  262. ### Fixed
  263. - Handle quotes in Import strings.
  264. ### Added
  265. - Add MinGW/bin to PATH on Windows.
  266. ### Changed
  267. - Win32 NG will now prefer MINGW-located files (bin/lib), instead of BlitzMax bin/lib.
  268. - Use .exe suffixes for binaries on Windows.
  269. - Minimum OS-X version 10.5 (circa 2007).
  270. - Release builds are stripped by default. Can be overridden with 'stripsymbols' option.
  271. ## [2.21] - 2014-08-28
  272. ### Added
  273. - Support for 64-bit Win32 build options.
  274. ## [2.20] - 2014-07-17
  275. ### Fixed
  276. - Issue with Linux popen signature and old bcc.
  277. ### Changed
  278. - Improved target (cross-compile) options.
  279. ## [2.19] - 2014-06-05
  280. ### Fixed
  281. - Linux compilation fix for new bcc.
  282. ### Changed
  283. - Architecture tweaks and documentation update.
  284. - Removed bb2bmx/convertbb option.
  285. ## [2.18] - 2014-04-13
  286. ### Added
  287. - Support for 64-bit OS X build options.
  288. - New bcc c/c++ compiler definition : BMX_NG
  289. ## [2.17] - 2014-02-25
  290. ### Added
  291. - upport multiple build systems.
  292. - Linux custom tool locations.
  293. ## [2.16] - 2013-12-07
  294. ### Fixed
  295. - Return correct version when using clang as gcc compiler.
  296. - Module hierarchical build issue.
  297. ### Added
  298. - Support for pre-build scripts.
  299. - Configurable ld_opts settings.
  300. ### Changed
  301. - Changes for OS X sandbox/codesign support.
  302. - Enhanced inline pragma support.
  303. ## [2.15] - 2012-12-04
  304. ### Added
  305. - Update to latest official changes.
  306. ## [2.14] - 2011-10-05
  307. ### Fixed
  308. - Mingw gcc 4.6+ build problems.
  309. ### Added
  310. - Recent official changes.
  311. ## [2.13] - 2011-08-21
  312. ### Fixed
  313. - ModuleInfo quotes support.
  314. ## [2.12] - 2011-07-30
  315. ### Changed
  316. - OSX 10.7 (Lion) tweaks.
  317. ## [2.11] - 2011-02-27
  318. ### Changed
  319. - Use g++ instead of ld for linking on win32.
  320. ## [2.10] - 2011-02-24
  321. #Added
  322. - Option for skipping module builds.
  323. ## [2.09] - 2010-04-30
  324. ### Fixed
  325. - loadBMK to work for local app folder.
  326. ## [2.08] - 2010-04-05
  327. ### Fixed
  328. - PPC universal link issue.
  329. ### Added
  330. - Tommo's include speedup fix.
  331. ## [2.07] - 2010-01-28
  332. ### Fixed
  333. - Win32 linking to include libmingw32 both at the start and end of the list. (should cover 3.9.5 and 4.x gcc's)
  334. ## [2.06] - 2009-12-30
  335. ### Added
  336. - APPID variable for scripts on Mac (useful for custom plists).
  337. ## [2.05] - 2009-12-10
  338. ### Fixed
  339. - Linux optimization flag -Os always being set.
  340. ### Added
  341. - .cc file support.
  342. ## [2.04] - 2009-06-28
  343. ### Changed
  344. - Tweaked thread error reporting.
  345. - Small speedup with threading.
  346. ## [2.03] - 2009-06-28
  347. ### Fixed
  348. - Import ordering.
  349. ### Changed
  350. - Improved custom options support for Universal builds.
  351. ## [2.02] - 2009-06-08
  352. ### Fixed
  353. - Multiple defines problem.
  354. ## [2.01] - 2009-06-07
  355. ### Fixed
  356. - Dependency compilation issue - or lack of it!
  357. ## [< 2.00] - 2009-05-26
  358. ### Added
  359. - Multi-process (threading) support.
  360. ### Changed
  361. - Improved custom variable overriding.
  362. ## [< 2.00] - 2009-05-18
  363. ### Added
  364. - Universal support (Mac) with -i parameter.
  365. - Cross-compile support with -l win32.
  366. ## [< 2.00] - 2007-09-28
  367. ### Added
  368. - Custom appstub compiles using -b parameter.
  369. ### Changed
  370. - Synched with current bmk source.