Move global initialization and cleanup code into main.c.
[pspp] / src / ChangeLog
index 0d65dcd8ac2617801c62312bf53d1fef1414b62f..98bd9d092656ca72edc7b79ca4db12c583d998b9 100644 (file)
@@ -1,3 +1,238 @@
+Tue Dec 13 22:34:42 2005  Ben Pfaff  <blp@gnu.org>
+
+       Move global initialization and cleanup code into main.c.
+       Remove vestigial log infrastructure.
+       Minor related cleanups.
+       
+       * command.c: (shell) When execl() fails, use _exit(), not
+       err_hcf().
+
+       * error.c: (err_hcf) Move into main.c, rename terminate().  All
+       callers updated.
+       (err_done) New function with just the error.c-specific code for
+       err_hcf().  Called by terminate().
+
+       * glob.c: Removed all Borland C, DJGPP cruft.
+       (init_glob) Merged into main().
+       (done_glob) Merged into terminate().
+       (get_date) Removed.
+       (get_start_date) New function.  All users of curdate updated to call
+       this function instead.
+
+       * lexer.c: (lex_init) Moved initialization of tokstr here, from
+       init_glob().
+       (lex_done) Moved destruction of tokstr here, from done_glob().
+
+       * main.c: (global var pgmname) Removed.  Changed all references to
+       program_name, which is defined by gnulib.
+       (global var curdate) Removed.
+       (main) Moved init_glob() code here.  Merged parse_script() in
+       here.
+       (parse_script) Removed.
+       (terminate) Moved err_hcf() here from error.c and renamed
+       terminate().  Merged done_glob() code in here.  Call err_done().
+       All callers updated.
+       (i18n_init) New function.
+       (fpu_init) New function.
+
+       * output.c: (outp_init) Make void.
+       (init_default_drivers) New function.
+       (outp_read_devices) If no drivers are initialized successfully,
+       call init_default_drivers() to initialize a default driver.
+       (outp_done) Make void.
+       (static var prog) Make const.
+       (parse_options) Make parameter const.
+       (colon_tokenize) Make return value const.
+       (configure_driver) Change prototype to take a broken-down driver
+       configuration instead of a line of text.
+       (configure_driver_line) New function that does what
+       configure_driver() did before.
+
+       * q2c.c: (global var pgmname) Rename program_name.
+
+       * settings.c: (settings_init) Renamed from init_settings().
+       (settings_done) Renamed from done_settings().
+
+       * vfm.c: (global var last_vfm_invocation) Make static.
+       (vfm_last_invocation) New function.  All references to
+       last_vfm_invocation update to call this.
+       (procedure) Call update_last_vfm_invocation().
+       (internal_procedure) Ditto.
+       (update_last_vfm_invocation) New function.
+       
+Sat Dec 10 23:30:19 2005  Ben Pfaff  <blp@gnu.org>
+
+       Separate random numbers from other settings because of GSL
+       dependency.
+
+       * Makefile.am: Add random.c, random.h to sources.
+
+       * glob.c: (init_glob) Call random_init().
+       (done_glob) Call random_done().
+
+       * settings.c: (static var rng) Move to random.c.
+       (done_settings) Move freeing of RNG to random_done().
+       (get_rng) Move to random.c
+       (set_rng) Ditto.
+
+       * random.c: New file.
+
+       * random.h: New file.
+
+Sat Dec 10 18:13:36 2005  Ben Pfaff  <blp@gnu.org>
+
+       Separate settings and the SET command, for modularity.
+       
+       * Makefile.am: Add settings.c to sources.
+
+       * glob.c: (global variable test_mode) Removed.
+
+       * set.q: Remove all the set_* variables.  Remove a lot of obsolete
+       SPSS/PC+ settings.  Remove the aux_*() routines.  Moved the
+       get_*() functions into settings.c.  Rewrite the settings code and
+       functions to call the new set_*() functions.  Rewrite custom
+       currency parsing.  Write new by-hand cmd_show().
+
+       * esttings.c: New file.  Moved the get_*() functions here from
+       set.q.  Created new set_*() functions to correspond with them.
+       Regularized the names and types of some functions and updated
+       their callers.  Added static, file-scope variables to support the
+       settings.
+
+       * q2c.c: Remove "aux" support, which was only needed by set.q.
+       
+Sun Nov 27 06:43:46 WST 2005 John Darrington <john@darington.wattle.id.au>
+
+       * data-out.c format.h: Added return value to data_out function.
+
+       * value-labels.c: Fixed bug in val_labs_remove.
+
+Sat Nov  5 18:37:26 2005  Ben Pfaff  <blp@gnu.org>
+
+       * Makefile.am: Remove devind.c, devind.h from list of source
+       files.
+
+       * devind.c: Removed.
+
+       * devind.h: Removed.
+
+       * list.q: Removed "support" for devind.
+
+       * output.c: Don't add devind class.
+
+Sat Nov  5 18:21:00 2005  Ben Pfaff  <blp@gnu.org>
+
+       * var.h: (struct variable) Make `init', `reinit' bool values.
+       Rearrange fields.
+
+Fri Nov  4 19:43:01 2005  Ben Pfaff  <blp@gnu.org>
+
+       * recode.c: Rewrote whole file, as clean-up.
+
+Fri Nov  4 19:37:50 2005  Ben Pfaff  <blp@gnu.org>
+
+       * pool.c: Don't make alignment exception for x86.
+       (pool_alloc) Return null for 0-size blocks.
+       (pool_alloc_unaligned) New function.
+       (pool_strndup) Removed.  Changed callers to use pool_clone_unaligned().
+       (pool_clone_unaligned) New function.
+       (pool_strdup) Use pool_clone_unaligned().
+
+       * var.h: (enum var_type) Give the NUMERIC, ALPHA enum this name.
+       (struct variable) Use `enum var_type' for `type'.
+
+       * vars-atr.c: (var_type_adj) New function.
+       (var_type_noun) New function.
+
+       * vars-prs: (parse_mixed_vars) Fix freeing code.
+       (parse_mixed_vars_pool) New function.
+
+Wed Nov  2 21:24:48 2005  Ben Pfaff  <blp@gnu.org>
+
+       * file-handle-def.c: Needed another #include, to avoid missing
+       prototype warning.
+
+       * file-handle.q: (cmd_file_handle) Declarations must precede
+       statements.  Free parse data on success as well as on failure, to
+       avoid memory leak.
+
+       * get.c: (parse_write_command) Destroy dict on success, to avoid
+       memory leak.
+       
+       * data-list.c: (cmd_repeating_data) Fix usage of saw_occurs,
+       saw_length, saw_continued, saw_id, which were boolean but
+       incorrectly treated as bitmaps as result of a previous
+       half-finished cleanup.
+
+       * weight.c: (struct weight_trns) Unused, so removed.
+
+       * Makefile.am: Add range-prs.h to sources.
+
+Wed Nov  2 21:24:15 2005  Ben Pfaff  <blp@gnu.org>
+
+       DO IF, LOOP cleanup.
+
+       * Makefile.am: Add ctl-stack.c, ctl-stack.h to source files.
+       Reformat source file list to list one file per file, so that
+       patches for future changes will be easier to read.
+
+       * ctl-stack.c, ctl-stack.h: New files.
+
+       * do-if.c: Rewrote whole file.
+
+       * do-ifP.h: Removed.
+
+       * loop.c: Rewrote whole file.
+
+       * glob.c: (global var ctl_stack) Move into ctl-stack.c.
+
+       * temporary.c: (cmd_temporary) Use ctl_stack_is_empty().
+
+       * vfm.c: (open_active_file) Use ctl_stack_clear().
+
+Wed Nov  2 21:18:13 2005  Ben Pfaff  <blp@gnu.org>
+
+       New pool functions.
+       
+       * pool.c: (pool_create_at_offset) New function.
+       (pool_add_subpool) New function.
+
+       * pool.h: (pool_create_container) New macro.
+       
+       * expressions/parse.c: (expr_parse_pool) New function.
+       
+       * autorecode.c: (recode) Use pool_create_container().
+
+       * count.c: (cmd_count) Ditto.
+
+Wed Nov  2 19:59:32 2005  Ben Pfaff  <blp@gnu.org>
+
+       Clean up transformations, by getting rid of `struct trns_header',
+       replacing it by `struct transformation' that has a void *
+       `private' member.  Updated all uses of transformations to match,
+       which was a lot of code.  Only major related changes listed below.
+
+       * compute.c: (cmd_if) Use get_proc_func().
+       (cmd_compute) Use get_proc_func().
+       (get_proc_func) New function.
+
+       * glob.c: (global var m_trns) Change type to size_t.
+       (global var n_trns) Ditto.
+       (global var f_trns) Ditto.
+       (global var t_trns) Change type to struct transformation *.
+
+       * var.h: (struct trns_header) Removed.
+       (struct transformation) New.
+       (typedef trns_proc_func) Takes a void * instead of a struct
+       trns_header *.
+       (typedef trns_free_func) Ditto.
+
+       * vfm.c: (execute_transformations) Takes an array of
+       transformations instead of trns_headers.
+       (add_transformation) Change prototype from (trns_header *) to
+       (trns_proc_func *, trns_free_func *, void *).
+       (next_transformation) New function.
+
 Sat Oct 29 16:25:36 2005  Ben Pfaff  <blp@gnu.org>
 
        * count.c: Major cleanups.  Rename practically everything.