Commit Graph

  • 8be1842cf8 update documentation for new builders josh 2014-04-15 16:06:00 -04:00
  • d424facf7f Add Preprocess and Disassemble builders josh 2014-04-15 15:21:55 -04:00
  • ee5aca275d Write Cache to disk if an exception occurs while processing the Environment - fix #4 josh 2014-04-15 14:20:30 -04:00
  • ea30b0b5ee Fix Cache#mkdir_p to handle absolute paths - fix #5 josh 2014-04-15 14:15:32 -04:00
  • 5a0d80b781 Cache: implement "dirty" attribute to only re-serialize when necessary josh 2014-04-15 14:11:10 -04:00
  • a2653a77d1 shortcut Environment#process if @targets is empty josh 2014-04-15 14:04:59 -04:00
  • 160434b903 Cache: change to a Singleton object so it is only loaded from disk once josh 2014-04-15 14:02:26 -04:00
  • 5ce8940d54 stop encoding Cache contents josh 2014-04-15 13:39:45 -04:00
  • 1a5e9ddaa6 Implement copy-on-write semantics for VarSet, speeding up Environment cloning josh 2014-04-15 11:21:15 -04:00
  • 5924154229 speed up VarSet#deep_dup a bit josh 2014-04-15 09:47:05 -04:00
  • 5beda54374 do not clone @varset when appending to the cloned environment since appending will do its own clone josh 2014-04-15 09:36:30 -04:00
  • ae0ad98075 use @varset.append() instead of @varset.send(:append) josh 2014-04-15 09:32:35 -04:00
  • f5be3a3571 VarSet: implement deep copying ourselves instead of using Marshal for a speed increase josh 2014-04-15 09:16:30 -04:00
  • fdc5c8773c Issue #7 - store MD5 of build command instead of the full command in the cache josh 2014-04-14 17:17:54 -04:00
  • c61380b354 Issue #7 - change .rsconscache from using YAML to JSON to speed up parsing josh 2014-04-14 16:52:21 -04:00
  • d8dda291a5 ensure that Dir[] results are predictable in build tests josh 2014-04-14 13:13:31 -04:00
  • 1fe2c6401d expand ^/ in target paths to be relative to the build root josh 2014-03-27 13:30:11 -04:00
  • 4818fd10fe README.md: add more details about Environment cloning josh 2014-03-27 12:02:46 -04:00
  • 5989e24ee6 update some documentation josh 2014-03-27 11:54:36 -04:00
  • 1875a2ea66 Pass the Environment object to build hooks in the :env key of the build_op parameter josh 2014-03-27 10:44:10 -04:00
  • cbd5816b4b add VarSet#include? josh 2014-03-27 10:39:46 -04:00
  • b2c970c9ca add Environment#add_target and use it from Environment#method_missing josh 2014-03-26 11:29:02 -04:00
  • 92a9982988 use #super from #method_missing instead of method aliasing josh 2014-03-26 11:23:32 -04:00
  • 533ee9c16c add CFile builder to create C/C++ sources from lex/yacc input files josh 2014-03-18 21:57:53 -04:00
  • 831b9bf2c7 v1.3.0 v1.3.0 josh 2014-02-25 12:18:02 -05:00
  • 031395bb57 add v1.3.0 release notes josh 2014-02-25 12:17:49 -05:00
  • e3aeb7f4d7 Change Environment#execute() options Hash to contain :env and :options keys for Kernel#system() josh 2014-02-25 12:14:52 -05:00
  • 6aa5037234 v1.2.0 v1.2.0 josh 2014-02-20 16:42:10 -05:00
  • 0d8f661fd4 add :clone option to Environment#clone to control exactly which Environment attributes are cloned josh 2014-02-19 15:02:46 -05:00
  • e5ca8776a9 allow nil to be passed in to Environment#build_root= josh 2014-02-19 15:02:18 -05:00
  • 2dde39a0ec standardize on "Rscons" capitalization josh 2014-02-18 16:14:44 -05:00
  • af0679708c v1.1.0 v1.1.0 josh 2014-02-17 16:37:59 -05:00
  • 4b0d0c3957 README: add Release Notes section josh 2014-02-17 16:15:49 -05:00
  • 202f10b86f README: add example for custom builder with multiple output files josh 2014-02-17 16:14:10 -05:00
  • 1d47db3144 support passing multiple targets to Cache#up_to_date? and #register_build josh 2014-02-17 16:10:15 -05:00
  • f7b7a4fefa v1.0.0 v1.0.0 josh 2014-02-14 10:46:31 -05:00
  • 00b038ef50 use require_relative instead of require josh 2014-02-14 10:37:41 -05:00
  • 98f8f38715 remove String#set_suffix monkey patch josh 2014-02-14 10:36:15 -05:00
  • 2ffb5d525a remove String#absolute_path? monkey patch josh 2014-02-14 10:32:57 -05:00
  • fa7d17675b remove String#has_suffix? monkey-patch; use String#end_with? josh 2014-02-14 10:20:32 -05:00
  • b43c473762 README: add link to API documentation at rubydoc.info josh 2014-02-14 09:57:24 -05:00
  • f278b211f7 README: add more information about custom builders josh 2014-02-14 09:50:39 -05:00
  • c897bcf06e README.md fixes/tweaks josh 2014-02-14 09:42:04 -05:00
  • 7c89dddbd6 v0.3.1 v0.3.1 josh 2014-01-23 14:40:45 -05:00
  • c07d9f86a6 bugfix: loading a Cache without deps or user_deps stored causes an exception josh 2014-01-23 14:40:30 -05:00
  • ff26da8865 fix custom builder examples in README.md josh 2014-01-15 16:57:46 -05:00
  • 5ff555cf6a add Environment#expand_varref() josh 2014-01-02 11:49:08 -05:00
  • e3aadc562f Rscons::Varset: remove unused type parameter to #[] josh 2014-01-02 11:05:15 -05:00
  • 7ff2ec1f1a v0.3.0 v0.3.0 josh 2013-12-31 14:10:47 -05:00
  • 5362f761e6 move default builder classes into Rscons::Builders namespace module josh 2013-12-31 13:31:17 -05:00
  • cdb3352b4e remove module monkey-patching; add Builder#name() josh 2013-12-31 13:10:00 -05:00
  • 08bc390d40 Rscons::BuildError inherits from RuntimeError instead of Exception josh 2013-12-31 13:08:38 -05:00
  • f8af0630b0 pass env to Cache#up_to_date?() and #register_build() instead of user_deps josh 2013-12-31 12:46:30 -05:00
  • 1868193b54 do not prepend build_root to source files that are already inside build_root josh 2013-12-31 10:15:19 -05:00
  • 8976d7dea2 update README custom builder examples josh 2013-12-27 14:56:25 -05:00
  • 295324eafd add Environment#depends() to specify user dependencies for a build target josh 2013-12-27 14:31:46 -05:00
  • 7330e74ab8 modify Cache to store user-specified extra dependencies josh 2013-12-27 14:20:32 -05:00
  • a28cef9eb7 change "vars" parameters to be required josh 2013-12-27 13:53:40 -05:00
  • e667046da8 add Environment#clear_targets() josh 2013-12-27 13:35:16 -05:00
  • 539a49fe90 do not allow construction variables as arguments to Environment#initialize() or Environment#clone() josh 2013-12-27 12:10:54 -05:00
  • 7681c7584f add String#absolute_path? josh 2013-12-27 11:40:24 -05:00
  • 8fcbd39057 v0.2.2 v0.2.2 josh 2013-11-13 23:52:33 -05:00
  • d0bbc78751 Program: do not continue executing builder if building a source fails josh 2013-11-13 23:52:15 -05:00
  • 7249e57951 add info to error message when expanding unknown variable types josh 2013-11-13 23:50:46 -05:00
  • d01913641f v0.2.1 v0.2.1 josh 2013-11-11 11:36:10 -05:00
  • d5be569cd5 fix Environment#clone() to allow subclassing josh 2013-11-11 11:35:59 -05:00
  • 4d7ed373e7 v0.2.0 v0.2.0 josh 2013-11-08 15:45:35 -05:00
  • 72558391a2 clarify documentation about cloning Environments josh 2013-11-08 15:45:24 -05:00
  • d01767981c add Environment#build_root to be used if no build directories match josh 2013-11-08 14:52:39 -05:00
  • 01c847fa32 v0.1.0 v0.1.0 josh 2013-11-06 13:38:59 -05:00
  • 20f509ec27 rename *COM construction variables to *CMD josh 2013-11-06 13:35:41 -05:00
  • 243eb9a4ab rename "tweakers" to "build hooks" josh 2013-11-06 13:32:56 -05:00
  • 49be46199f define our own clean/clobber tasks josh 2013-11-06 13:29:24 -05:00
  • c9b670ae5c change default "echo" setting to :short josh 2013-11-06 13:22:30 -05:00
  • 6bcb984e8e README: add gem version badge josh 2013-11-06 13:18:09 -05:00
  • b377940252 begin expanding README documentation josh 2013-11-06 12:45:50 -05:00
  • 2e0c2688aa VarSet#expand_varref(): fix recursive expansion josh 2013-11-05 17:06:09 -05:00
  • 66f53a23f6 change construction variable reference format to ${var} josh 2013-11-05 16:53:55 -05:00
  • 545b893ef4 clean up a couple YARD warnings josh 2013-11-05 16:37:18 -05:00
  • 30564af558 add build test for D josh 2013-11-05 16:29:15 -05:00
  • cc2c2733fc move build_tests_spec.rb back into spec, remove build_tests rake task josh 2013-11-05 16:22:09 -05:00
  • ddb5357b02 explicitly set LD construction variable in one build test josh 2013-11-05 16:19:02 -05:00
  • b805e5379f execute all build tests in the top-level rake context instead of spawning subprocesses josh 2013-11-05 16:11:08 -05:00
  • 71344b4782 Program: do not check env.build_sources() return value (it will raise an exception if something was wrong) josh 2013-11-05 15:41:47 -05:00
  • b1cdd3d1db Object: simplify handling of known suffixes josh 2013-11-05 15:25:10 -05:00
  • ed11b05b97 add rscons_spec.rb josh 2013-11-05 14:37:26 -05:00
  • a418d31000 finish up Environment specs josh 2013-11-05 14:28:43 -05:00
  • 797580e937 Environment: remove support for specifying :builders key in constructor josh 2013-11-05 14:18:02 -05:00
  • 8b852bd2fd Environment: more specs josh 2013-11-05 14:14:03 -05:00
  • e863c9a564 Environment: rework process() josh 2013-11-05 12:43:50 -05:00
  • 7ce5a8f9d9 working on Environment specs josh 2013-11-05 12:26:42 -05:00
  • 1280cfb465 change Environment#parse_makefile_deps() to a class method josh 2013-11-05 11:44:07 -05:00
  • 0cd9dbd1bd add separate spec_helper.rb for build_tests directory josh 2013-11-05 11:36:30 -05:00
  • b38c56d446 move build_tests_spec.rb to build_tests directory; add build_tests task josh 2013-11-05 11:05:45 -05:00
  • d2b7c93f53 rename Rakefile -> Rakefile.rb josh 2013-11-05 10:52:56 -05:00
  • 67922b887d remove Environment#targets() and Environment#target_sources() which didn't seem to be used josh 2013-11-05 10:42:01 -05:00
  • 8100830c16 spec Cache josh 2013-11-05 09:54:50 -05:00
  • cb629bf7ec do not include spec files in simplecov report josh 2013-11-05 10:12:18 -05:00
  • 65a5838605 Cache: set :version when writing to file josh 2013-11-05 09:22:46 -05:00
  • 338a49ba9c v0.0.14 v0.0.14 josh 2013-10-29 16:18:14 -04:00