Project

General

Profile

  • svn:executable: *

# Date Author Comment
13318 04/25/2014 06:15 AM Aaron Marcuse-Kubitza

lib/sh/make.sh: set_make_vars: don't display make vars at verbosity 2 to avoid clutter

13317 04/24/2014 05:34 PM Aaron Marcuse-Kubitza

bugfix: lib/sh/make.sh: begin_target: don't echo_func twice

12983 03/30/2014 05:09 PM Aaron Marcuse-Kubitza

fix: lib/sh/make.sh: direct the user to use begin_target instead of set_make_vars (set_make_vars is now used by begin_target)

12969 03/29/2014 04:10 AM Aaron Marcuse-Kubitza

lib/sh/make.sh: with_rm(): documented that it only works inside a runscript target that starts w/ begin_target

12967 03/29/2014 03:58 AM Aaron Marcuse-Kubitza

lib/sh/make.sh: self_make(): renamed to with_rm() for clarity, since this is used only to progagate $rm, and does not also invoke a command with the same name as the current function, as the name might suggest

12854 03/22/2014 03:19 AM Aaron Marcuse-Kubitza

lib/sh/make.sh: echo_target: use `log-- echo_func`, which now puts the target name first but also provides much-needed indentation

12829 03/21/2014 11:48 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: clog*: renamed to log* for clarity (possible now that log* is no longer used for function-local log_level setting)

12823 03/21/2014 10:57 PM Aaron Marcuse-Kubitza

: use clog instead of "log*"

12782 03/20/2014 08:08 PM Aaron Marcuse-Kubitza

lib/sh/make.sh: begin_target: echo all targets to facilitate debugging without needing the verbose stack trace mode

12781 03/20/2014 08:06 PM Aaron Marcuse-Kubitza

bugfix: lib/sh/make.sh: echo_target: don't include filename/line #, since this is not for the stack trace mode

12780 03/20/2014 07:59 PM Aaron Marcuse-Kubitza

lib/sh/make.sh: added echo_target

12777 03/20/2014 07:48 PM Aaron Marcuse-Kubitza

lib/sh/make.sh: added make target template

12775 03/20/2014 07:41 PM Aaron Marcuse-Kubitza

lib/sh/make.sh: added begin_target alias

11976 01/20/2014 07:15 PM Aaron Marcuse-Kubitza

lib/sh/make.sh: remaking alias: documented that you MUST use set_make_vars at the beginning of any function that uses this, so that $_remake is properly set to $remake and not left at its previous value

11970 01/20/2014 11:33 AM Aaron Marcuse-Kubitza

moved everything into /trunk/ to create the standard svn layout, for use with tools that require this (eg. git-svn). IMPORTANT: do NOT do an `svn up`. instead, re-use your working copy's existing files with `svn switch` (http://svnbook.red-bean.com/en/1.6/svn.ref.svn.c.switch.html).

11588 11/06/2013 02:39 PM Aaron Marcuse-Kubitza

bugfix: lib/sh/make.sh: $remake: need to explicitly propagate this to invoked commands if it was set from $rm

10996 09/16/2013 12:13 AM Aaron Marcuse-Kubitza

bugfix: lib/sh/make.sh: don't allow rm to override remake if an invoked script uses this file. this fixes a bug in `rm=1 inputs/.../.../run` where the remake action would be invoked on the map_table command even though it had been suppressed, because it was run externally (i.e. make.sh was reloaded) and the rm=1 flag was still active

10069 06/26/2013 03:00 PM Aaron Marcuse-Kubitza

lib/sh/make.sh: make(): run sys_cmd_path at a higher log_level since the make() steps should not be displayed by default

10066 06/26/2013 02:26 PM Aaron Marcuse-Kubitza

bin/make: moved $make_filter_active test to lib/sh/make.sh make() so that it's also used when make() is run directly (e.g. in a runscript) rather than via the bin/make wrapper in the PATH

10065 06/26/2013 02:22 PM Aaron Marcuse-Kubitza

bugfix: lib/sh/make.sh: make(): need to match absolute `make` paths such as /usr/bin/make

10047 06/26/2013 12:28 AM Aaron Marcuse-Kubitza

bugfix: lib/sh/make.sh: make(): invoke only the system make command instead of any wrapper for it in the PATH (by using self_sys instead of self), to prevent infinite recursion. single recursion is resolved by nonrecursive=1, but there are cases where mutual recursion occurs due to the presence of two, different bin/makes in the PATH (e.g. if you have two working copies with bin/make, and one is symlinked in your ~/bin/ folder), and these cases can only be resolved by clearing out the PATH completely (since the bin/makes do not know of each other's existence, in order to remove their parent dirs from the PATH).

9942 06/19/2013 06:51 PM Aaron Marcuse-Kubitza

lib/sh/make.sh: added deferred_check_target_exists alias and use it in check_fake_target_exists

9940 06/19/2013 06:41 PM Aaron Marcuse-Kubitza

lib/sh/make.sh: added check_wildcard_target_exists alias

9753 06/06/2013 07:24 AM Aaron Marcuse-Kubitza

lib/sh/make.sh: make(): time all invocations of make

9752 06/06/2013 07:14 AM Aaron Marcuse-Kubitza

lib/sh/make.sh: make() at verbosity < 4, hide messages about making included Makefiles: use sed with a range expression (/.../,/.../) to also exclude all log messages between an opening "make ...Makefile" and a closing "make[#]: ...Makefile"

9750 06/06/2013 05:52 AM Aaron Marcuse-Kubitza

bugfix: lib/sh/make.sh: make(): use [:char_class:] exprs instead of \X char class abbrs because the \ abbrs are not supported on Linux

9739 06/06/2013 02:23 AM Aaron Marcuse-Kubitza

lib/sh/make.sh: make(): log the messages about making included Makefiles at log_level 4 instead of 3, so that verbosity 3 can be used to see the vars being used by the filtering process (i.e. the filtering process must still be enabled at verbosity 3)

9734 06/06/2013 01:33 AM Aaron Marcuse-Kubitza

lib/sh/make.sh: make(): fixed func name in usage

9729 06/06/2013 12:22 AM Aaron Marcuse-Kubitza

lib/sh/make.sh: make(): log the filter setup operations at log_level 2 so they do not clutter up normal output

9721 06/05/2013 10:37 PM Aaron Marcuse-Kubitza

lib/sh/make.sh: make(): at verbosity < 3, hide messages about making included Makefiles. this makes the make output much more readable when a Makefile contains an include statement, because there won't be a ton of log messages every time a Makefile is included. this filtering is so useful that it probably makes sense to run make for any of our Makefiles using `lib/runscripts/util.run make ...` instead of plain make. compare e.g. `make inputs/ACAD/Specimen/map.csv` (53 lines of output) and `lib/runscripts/util.run make inputs/ACAD/Specimen/map.csv` (17 lines of output, 1/3 as much).

9710 06/05/2013 03:28 AM Aaron Marcuse-Kubitza

lib/sh/make.sh: make(): determine --silent status based on the verbosity (<=0) instead of a kw param

9708 06/05/2013 03:10 AM Aaron Marcuse-Kubitza

lib/sh/make.sh: make(): removed extra space after --silent

9693 06/01/2013 06:35 PM Aaron Marcuse-Kubitza

lib/sh/make.sh: self_make(): documented that it should be preceded by set_make_vars

9691 06/01/2013 06:33 PM Aaron Marcuse-Kubitza

lib/sh/make.sh: set_make_vars: echo_vars $_remake to help debugging

9679 06/01/2013 05:12 AM Aaron Marcuse-Kubitza

lib/sh/make.sh: added self_make(), which progagates the $remake flag (normally it is not progagated, because prerequisites should not also be remade)

9674 06/01/2013 03:29 AM Aaron Marcuse-Kubitza

bugfix: lib/sh/make.sh: set_make_vars: can't use end-of-line comment in alias because it will comment out whatever is after the alias where it's used. can't just put a newline or ; after the end-of-line comment because the alias's lines will be combined onto one line using ; , so end-of-line comments would not be supported.

9667 05/30/2013 08:18 PM Aaron Marcuse-Kubitza

lib/sh/make.sh: set_make_vars: don't progagate remake to prerequisites, so that remake=1 only applies to the outermost target rather than forcing every prerequisite to be remade, too

9666 05/30/2013 07:58 PM Aaron Marcuse-Kubitza

lib/sh/make.sh: moved remaking section before set_make_vars so that it can be used in set_make_vars

9584 05/24/2013 01:21 PM Aaron Marcuse-Kubitza

lib/runscripts/table_dir.run: table_make(): moved $silent flag to lib/sh/make.sh make() so all make callers can use it

9505 05/23/2013 12:11 PM Aaron Marcuse-Kubitza

lib/sh/make.sh: added top_make()

9431 05/16/2013 09:23 PM Aaron Marcuse-Kubitza

lib/sh/make.sh: set_make_vars: set $target_stem

9354 05/15/2013 09:25 AM Aaron Marcuse-Kubitza

lib/sh/make.sh: set_make_vars: usage: added "use $target" to indicate that vars are made available by this alias

9353 05/15/2013 09:24 AM Aaron Marcuse-Kubitza

lib/sh/make.sh: inline_make(): take the script stdin from caller-provided stdin and get make's stdin from global stdin, so that the caller can just use <<'EOF' rather than having to include a specific fd before the <<

9348 05/15/2013 08:22 AM Aaron Marcuse-Kubitza

inputs/GBIF/raw_occurrence_record/run table.tsv/make() and functions used by it: added usage comments for cmd line usage, caller usage, and declaring function usage

9237 05/12/2013 05:55 AM Aaron Marcuse-Kubitza

*{.sh,run}: use new local_export instead of local...export. this still requires calling echo_vars manually, because local_export is an alias (and must be, to define the var in the caller's context).

9214 05/11/2013 09:07 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: command(): use just one control var $cmd_log_fd instead of three flags (limit_log_fd, limit_stdout, stderr_is_errors) that indicated various common fd configurations. this is much clearer (you state which fd the common uses as its logging fd), more configurable (the logging fd can be any fd, not just 1 or 2), and more automatic (redirecting fd 2 to err_fd happens automatically if it isn't used for logging).

9194 05/11/2013 04:57 PM Aaron Marcuse-Kubitza

*{.sh,run}: use new limit_stdout=1 instead of stdout2stderr=1 limit_stderr=1

9192 05/11/2013 04:41 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: merged limit_stderr_cmd/limit_stdout_cmd into command(), using flag vars to control what limiting actions it needs to perform. in command invocations, this involves setting the appropriate flag vars instead of using a limit_std*_cmd alias.

9149 05/11/2013 11:49 AM Aaron Marcuse-Kubitza

*{.sh,run}: use new limit_stdout_cmd instead of `stdout2stderr=1 limit_stderr_cmd`

9147 05/11/2013 07:25 AM Aaron Marcuse-Kubitza

lib/sh/make.sh: added $rm short var for $remake

9130 05/11/2013 05:15 AM Aaron Marcuse-Kubitza

lib/sh/make.sh: inline_make: use new convention for command-specific alternate stdin

9122 05/11/2013 04:32 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: renamed require_exists() to require_not_exists() because the command actually checks if the file doesn't exist

9074 05/10/2013 12:08 PM Aaron Marcuse-Kubitza

*{.sh,run}: removed extra space between function name and (), which is apparently not needed even though `help function` includes it. this greatly improves readability, including when function names are pasted into commit messages!

9063 05/10/2013 10:53 AM Aaron Marcuse-Kubitza

lib/sh/util.sh to_file, make.sh check_target_exists: use new require_exists to print message if file skipped because it already exists. this is useful for troubleshooting why certain make commands don't run.

9061 05/10/2013 10:33 AM Aaron Marcuse-Kubitza

*{.sh,run}: use `test !` instead of `! test` so that the ! is right next to the operator it's negating

9059 05/10/2013 10:31 AM Aaron Marcuse-Kubitza

lib/sh/make.sh: added check_fake_target_exists (analogous to check_target_exists), which defers the target existence check until to_file (when the target name will presumably have been resolved to a path)

9055 05/10/2013 10:02 AM Aaron Marcuse-Kubitza

lib/sh/make.sh: check_target_exists: if remaking, consider target not to exist

9054 05/10/2013 10:01 AM Aaron Marcuse-Kubitza

lib/sh/make.sh: added remaking alias

9016 05/10/2013 05:01 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: split make utils out into separate make.sh