[gobolinux-users] Scripts 2.4.0, Compile 1.6.0

Hisham Muhammad hisham.hm at gmail.com
Thu Aug 10 18:22:24 GMT 2006


Hi,

Another release of Scripts and Compile, integrating many bugfixes and
a bunch of cool stuff. Highlights:

* fixes problem with endless loop in FindPackage
* uses new and more powerful script CheckDependencies, which supports
version ranges
* new syntax for recipe type declarations (recipe_type=makefile
instead of is_makefile=yes)

http://gobo.calica.com/packages/official/Scripts--2.4.0--i686.tar.bz2
http://gobo.calica.com/packages/official/Compile--1.6.0--i686.tar.bz2

The full list of what's changed since the previous versions, extracted from
the CVS logs, follows below.

Enjoy!

-- Hisham

SCRIPTS
======

2006-08-09 17:25  hisham

	* bin/AllDependencies: remove obsolete script

2006-08-09 16:25  detsch

	* Resources/Defaults/Settings/Scripts/GetAvailable.conf: Reduced
	  default timeout for wget inside GetAvailable. It probably could
	  be even less than 7 seconds.

2006-08-09 15:54  detsch

	* bin/GetAvailable:
	  Avoid infinite waiting when a server is down.

2006-08-08 21:50  detsch

	* bin/SandboxInstall: Small hack: using NO_UNIONFS environment
	  variable at SandboxInstall to avoid unionfs usage.  Relevant for
	  ChrootCompile, since unionfs has problems within chroot
	  environments.

2006-08-08 17:47  lucasvr

	* bin/ColorMake: Fixes the assumption that menuconfig is always the
	  1st parameter (one might pass ARCH= and other parameters as
	  well).

2006-08-07 22:25  detsch

	* bin/CheckDependencies: Using CompatibilityList.

2006-08-06 20:52  mohjive

	* Resources/Defaults/Settings/Scripts/CompatibilityList: Added
	  sendmail and clones to the CompatibilityList

2006-08-06 17:54  mohjive

	* Resources/Defaults/Settings/Scripts/CompatibilityList: Added
	  BD/BerkeleyDB to the CompabilityList

2006-08-05 15:05  mohjive

	* bin/InstallPackage: Added make on the sources if the package was
	  Scripts

2006-08-04 17:52  lucasvr

	* bin/ScriptFunctions: ScriptFunctions is always sourced, so bad
	  things can happen if we unset goboCrossCompiling. Let's remove it
	  and add a fallback /Programs/Scripts/Current/Functions entry
	  which should be triggered in cross-compile mode instead (thanks
	  for Hisham for pointing that).

2006-08-04 16:42  hisham

	* Functions/LogNormal, Functions/LogVerbose, bin/ScriptFunctions:
	  Further cleanup the old assert stuff.

2006-08-04 16:35  lucasvr

	* Functions/Log, bin/ScriptFunctions: Removal of dead functions
	  from ScriptFunctions; Replacement of usage from PassAway() to
	  Pass_Away(); Do not look for script files under
	  $cross_prefix/Programs.

2006-08-03 17:03  mohjive

	* Functions/File: Removed trace, forgotten earlier

2006-08-03 10:46  lucasvr

	* src/LinkOrExpandAll.c: Added return status on main().

2006-08-02 13:27  lucasvr

	* bin/install: Removes 'strip' option on install if we're
	  cross-compiling. This is needed due to the fact that CoreUtils'
	  install has a hardcoded "strip" command on exec(), which fails
	  when treating binary files for other architectures. Since
	  replacing that hardcoded entry by a getenv() call might introduce
	  security problems, we're fine with this workaround.

2006-08-01 12:20  mohjive

	* bin/Hashes, bin/VerifyProgram, Functions/File: Made Hashes use
	  signing functions from Functions/File Made all verifying and
	  signing use ListProgramFiles instead of find

2006-08-01 10:24  lucasvr

	* Resources/Defaults/Settings/Scripts/CompatibilityList: Added a
	  new entry LibGLEW -> GLEW, as suggested by Hisham in
	  gobolinux-recipes.

2006-07-30 16:45  detsch

	* bin/InstallPackage: Replaced usage of Dependencies to
	  CheckDependencies. Btw, using --no-recursive and still calling
	  dependencies checking after package installation. So, overall
	  behaviour and assumptions are the same, but we gain features like
	  new format Resources/Dependencies support.

2006-07-30 15:59  detsch

	* bin/CreatePackage: If there is no Resources/Dependencies file,
	  create one using 'GenBuildInformation', not 'Dependencies'

2006-07-30 15:07  detsch

	* bin/GenBuildInformation: Added GenBuildInformation script, based
	  on Dependencies code.

2006-07-29 19:57  detsch

	* bin/CheckDependencies: Don't setting a lower limit on installed
	  version when checking dependencies for a recipe and the
	  dependency line (from Dependencies / BuildDependencies) follows
	  the old style (only <program> [version], without ranges).

2006-07-29 19:43  detsch

	* bin/CheckDependencies: Small cleanup, added some comments, better
	  messages when some default action (e.g. Compile All) was choosen
	  by the user.

2006-07-29 19:01  detsch

	* bin/CheckDependencies: Added support for BuildDependencies
	  (applies only on Recipes).  Small cleanup on 'get_rules_for'
	  function.

2006-07-29 18:47  detsch

	* bin/CheckDependencies: Changed function find_dependencies_file to
	  find_dependencies_files (not it returns a list of files).

2006-07-29 18:41  detsch

	* bin/CheckDependencies: Better handling of empty/invalid lines on
	  dependencies files.  Small identation adjustments.

2006-07-26 19:50  detsch

	* Makefile: Added DescribeProgram to Makefile.

2006-07-26 16:09  hisham

	* bin/DescribeProgram: Return an error code when a description is
	  not found.

2006-07-26 15:50  hisham

	* bin/DescribeProgram: Add --mode flag.  Code cleanups.

2006-07-26 15:49  hisham

	* Resources/Defaults/Settings/DescribeProgram.conf,
	  bin/DescribeProgram: Moving DescribeProgram to Scripts

2006-07-26 15:22  hisham

	* bin/CheckDependencies: Fix typo

2006-07-26 15:05  detsch

	* bin/CheckDependencies: Adjustment of global_always_do variable,
	  to allow it to be ok again when installing packages and
	  compilling recipes on a same CheckDependencies run.  Small
	  adjustments on yes variable: it has to be lower case.

2006-07-26 14:40  hisham

	* bin/CheckDependencies: Change wording of question, as discussed
	  in the mailing list.

2006-07-25 21:55  detsch

	* lib/python2.3/site-packages/PythonUtils.py: Handling comments and
	  empty lines when reading files like Dependencies.blacklist.

2006-07-25 10:25  lucasvr

	* Resources/Defaults/Settings/Scripts/Dependencies.blacklist:
	  Including a default Dependencies.blacklist, filled with Nvidia
	  and Glibc packages. The entry in the wiki has just been filled,
	  too.

2006-07-24 22:15  detsch

	* bin/CheckDependencies: Dependencies.blacklist support. Hardcoded
	  Glibc as blacklisted.

2006-07-24 22:08  detsch

	* lib/python2.3/site-packages/PythonUtils.py: Support for
	  file-based settings (i.e., the whole file is returned, not only a
	  specific attribute).

2006-07-24 12:22  lucasvr

	* Resources/Defaults/Settings/UpdateSettings.conf: Adding an
	  UpdateSettings.conf with 'auto' mode set as default.

2006-07-24 12:08  lucasvr

	* src/List.c: Printing the broken link instead of a strerror
	  message.

2006-07-23 20:12  hisham

	* bin/CheckDependencies: fix propagated typo

2006-07-23 20:11  hisham

	* bin/GrepQuick: Make filenames easier to spot and to copy-n-paste

2006-07-23 20:10  detsch

	* bin/CheckDependencies: Fixed exit code (now returns success) when
	  there is no missing dependency.

2006-07-23 18:05  hisham

	* bin/ScriptFunctions: Silence out error for when ScriptFunctions
	  is sourced within Python scripts

2006-07-23 01:10  detsch

	* bin/CheckDependencies: Removed an erroneous 'echo'.

2006-07-23 00:36  detsch

	* bin/CheckDependencies: Better question messages.  Placed 'main'
	  inside a 'try: except' block for KeyboardInterrupt.  Added
	  --quiet-progress option.

2006-07-22 11:54  hisham

	* bin/SandboxInstall: Cleanup tmp more aggressively (for Tetex)

2006-07-22 10:30  hisham

	* Functions/Log, bin/Dependencies, bin/InstallPackage:
	  Dependencies: Only retry when an attempted command returns a "not
	  found" code.	Have it die when a dependency is not filled, but
	  add a --keep-going mode to revert to the old behavior in
	  InstallPackage.  Die_With: a function to have scripts die with a
	  custom error code.

2006-07-21 20:46  detsch

	* bin/SymlinkProgram: Respecting '--relative' when linking
	  Environment file.

2006-07-21 00:36  lucasvr

	* src/Makefile: Ensuring that all files have their executable bit
	  set (fixes problems with permissions on CVS).

2006-07-20 14:14  lucasvr

	* bin/SymlinkProgram: Specifying the cache and config file for
	  ldconfig so that it also runs fine when cross-compiling.

2006-07-19 12:20  hisham

	* bin/PrepareProgram: Make PrepareProgram respect the given
	  capitalization. This is necessary in order to maintain
	  consistency with Compile, when two programs diferring only in
	  capitalization exist in /Programs.  (It's an erroneous condition,
	  I know, but the new behavior at least works -- in the old one, it
	  would PrepareProgram with one dir and build relative to another.)
	  Perhaps GuessProgramCase(?) should scream and shout when it finds
	  two entries diferring only in capitalization.

2006-07-19 12:06  hisham

	* bin/SandboxInstall: Check earlier, to avoid weird errors.

2006-07-18 11:24  lucasvr

	* bin/AddUser: Fixes a bug in the "full-name" test: if the last
	  command in the "||" block succeeded, the "&&" condition would
	  also evaluate true, replacing the user's full name by a blank
	  string.

2006-07-14 15:54  lucasvr

	* bin/Dependencies: Adding back "^" to the blacklist array; Moved
	  FilterLines to a single 'cat' pipeline.

2006-07-14 13:59  lucasvr

	* bin/Dependencies: Added a check to blacklist before asking for
	  the update of undesired packages; Moved the blacklist
	  construction to the top of the file; Removed "^" before "$app" in
	  the blacklist construction, as it was being included as a
	  printable character (I guess it was not the intention, right?).

2006-07-10 17:33  lucasvr

	* Resources/Defaults/Settings/Scripts/UpdateSettings.conf,
	  bin/UpdateSettings: Rollback: changing the default mode in the
	  conf file instead, as suggested by Dan.

2006-07-10 12:10  lucasvr

	* bin/UpdateSettings: Set 'quick' as default on UpdateSettings.

2006-07-10 12:09  lucasvr

	* bin/SandboxInstall: Remove temporary files left at
	  /System/Variable/tmp

2006-07-10 11:59  lucasvr

	* Functions/GoboLinux: Added missing quotes to avoid problems with
	  evaluations on null parameters.

2006-07-10 02:17  hisham

	* Functions/GoboLinux: avoid endless recursion on Release_Superuser

2006-06-27 11:26  lucasvr

	* Resources/Defaults/Settings/Scripts/CompatibilityList: Added
	  'MesaLib -> Mesa' entry.

2006-06-26 20:21  detsch

	* bin/CreatePackage: Removing Resources/Defaults/Settings
	  directory, is empty.

2006-06-26 17:17  lucasvr

	* bin/GetAvailable: Fixed TABs.

2006-06-25 18:33  detsch

	* Makefile: Avoiding error messages on Makefile 'rm'.

2006-06-24 13:43  drmoose

	* Functions/Hints,
	  Resources/Defaults/Settings/Scripts/UpdateSettings.conf,
	  bin/UpdateSettings: UpdateSettings has changed auto_merge was
	  made safer Yes, this is Haiku.

	  An announcement will soon be made on the -devel list describing
	  the change

2006-06-22 18:25  lucasvr

	* Functions/File, bin/GetAvailable: Added https support.

2006-06-15 14:42  lucasvr

	* bin/NoRecipe: needs to pass --type=recipe so that we don't mix
	  with installed,official and contrib binary packages.

2006-06-15 02:46  lucasvr

	* bin/NoRecipe: Calling FindPackage by default, which can be
	  disabled with '--no-web'.

2006-06-14 21:16  hisham

	* bin/CreateRootlessEnvironment: Improve zsh detection.

2006-06-14 21:11  hisham

	* bin/CreateRootlessEnvironment: Bump version number for Scripts

2006-06-14 20:45  drmoose

	* Resources/Defaults/Settings/bashrc,
	  Resources/Defaults/Settings/completion.bash,
	  bin/CreateRootlessEnvironment: Several rootless-related bugfixes
	  brought to my attention by Marco Cagnoli

2006-06-14 19:39  drmoose

	* Functions/Array, Functions/File, Functions/GoboLinux,
	  Functions/Hints, Functions/HintsFileParser.rb, Functions/String,
	  Functions/Versions, bin/UpdateSettings: Committing an
	  implementation of my UpdateSettings proposal, described at
	  http://www.wotfun.com/pipermail/gobolinux-devel/2006-June/001119.html

2006-06-14 16:31  hisham

	* bin/Dependencies: Adding relevant documentation, as suggested by
	  Andre

2006-06-06 20:48  hisham

	* Resources/Wrappers/Edit: Don't pass "" when no arguments were
	  given.

2006-06-06 09:20  drmoose

	* Functions/GoboLinux: [no log message]

2006-06-06 02:05  hisham

	* bin/: SandboxInstall, SymlinkProgram: Update notes in --help.

2006-06-05 21:39  drmoose

	* bin/KillProcess: Fixed 'is a directory' Parse_Conf bug.

2006-06-05 15:27  lucasvr

	* src/List.c: Fixed output for large files (>4gb), as reported by
	  Hisham.

2006-06-05 14:45  hisham

	* bin/SymlinkProgram: silence harmless error

2006-06-03 21:59  hisham

	* Functions/GoboLinux, Resources/Defaults/Settings/zshrc,
	  bin/CheckDependencies, bin/FindPackage, bin/GetAvailable,
	  bin/GoboPath, bin/TemplateScript,
	  lib/python2.3/site-packages/PythonUtils.py: goboUserSettings is
	  no longer relative to $HOME. Instead, its typical value now is
	  $HOME/.Settings. Removed hardcoded instances of ~/.Settings.

COMPILE
=======

2006-08-10 14:46  mohjive

	* bin/: Compile, MakeRecipe, NewVersion, RecipeLint: * Change
	  recipe type declarations * added checks for svn variables

2006-08-10 13:37  hisham

	* bin/GenRecipeStore: Fix documentation, die properly on error.

2006-08-10 13:35  hisham

	* bin/RecipeLint: Fixed checks that were not being performed
	  correctly (thanks to Lucas for the report).  Added missing
	  checks. RecipeLint is now stricter than ever. ;)

2006-08-10 13:06  hisham

	* bin/RecipeLint: Revert: this is a _lint_ tool: it's not about
	  cutting corners. ;)

2006-08-10 13:04  hisham

	* bin/Compile: Reuse makefile logic in xmkmf recipes

2006-08-10 12:04  lucasvr

	* bin/RecipeLint: Added unmanaged_files to the list of supported
	  constructions; Removed Glibc from the list of dependency
	  checkings.

2006-08-09 22:18  mohjive

	* bin/Compile: Changing to check for direct dependencies before
	  calling post_install()

2006-08-07 19:52  mohjive

	* bin/Compile: reverted to old behaviour regarding exit(0) and a
	  small test fix

2006-08-07 19:22  hisham

	* bin/Compile: Add missing quote

2006-08-07 19:18  mohjive

	* bin/Compile: * added check for direct dependencies * moved
	  exit(0) out of cleanup (one might want to do things after wrapup)
	  * moved call of post_install to after wrapup - files are
	  installed in wrapup

2006-08-07 18:41  mohjive

	* bin/Compile: converted tabs to three spaces

2006-08-07 18:05  mohjive

	* bin/Compile: * added some cleanup before packing the recipe *
	  made svn nadling more "correct"

2006-08-07 11:15  lucasvr

	* bin/NewVersion: Replacement of tabs by 3 spaces.

2006-08-07 10:21  mohjive

	* Functions/Compile: added compileSupportedArchitectures variable

2006-08-07 07:49  mohjive

	* bin/NewVersion: Added some support for arch-specific recipes

2006-08-06 18:42  mohjive

	* bin/NewVersion: Simplified the version substitution entry

2006-08-06 18:29  mohjive

	* bin/NewVersion: Updated path in message to correct path

2006-08-04 18:19  lucasvr

	* Resources/Defaults/Settings/Compile/Cross/: Cross-Native.conf,
	  empty_cache.conf: Two new files required for creating native
	  builds from BootStrap.

2006-08-04 09:07  mohjive

	* bin/FetchArchive: Make cvs check case insensitive

2006-08-02 16:07  hisham

	* bin/Compile: Export path variables only when applying variables
	  for .patch.in files

2006-08-02 15:05  hisham

	* bin/RecipeLint: Oops, this wasn't supposed to get in.

2006-08-02 14:52  hisham

	* bin/RecipeLint: Make recipe parser more flexible.  Accept
	  patch.in files in tarball.  Be case-insensitive when checking CVS
	  in compile_version.

2006-08-02 11:37  lucasvr

	* bin/RecipeLint: Added sh4 to the list of subdirectories.

2006-08-02 09:40  mohjive

	* bin/Compile: fixed regression with environmental variables not
	  beeing accessable by ApplyVariables due to not beeing exported

2006-07-31 18:07  lucasvr

	* bin/Compile: Hisham: fixes incorrectly exported variables.

2006-07-31 00:51  lucasvr

	* bin/Compile: Little change in the Log_Normal messages.

2006-07-31 00:47  lucasvr

	* bin/Compile: Little typo fix.

2006-07-30 15:51  detsch

	* bin/Compile: Generating 'BuildInformation' file. Not using
	  'Dependencies' script anymore.

2006-07-30 11:55  lucasvr

	* bin/RecipeLint: Checking for wget usage on recipes.

2006-07-28 11:25  hisham

	* bin/RecipeLint: Check cache only once.

2006-07-28 11:07  lucasvr

	* bin/RecipeLint: Perform full tests if the file is cached at
	  /Files/Compile/Archives.

2006-07-26 16:28  hisham

	* bin/GenRecipeStore: Added an option to pack a single recipe (or
	  all local recipes of a program, if a version is not passed).
	  GenRecipeStore now calls RecipeLint to perform sanity checks on
	  the recipe.  GenRecipeStore now tries to put a
	  Resources/Description file in the recipe if one is not found,
	  using DescribeProgram (recently 'graduated' from Manager into the
	  Scripts package).  Added --no-lint and --no-web options to allow
	  reverting to the old behavior and being offline friendly (though
	  the lint results when running with --no-web should be taken with
	  a grain of salt).

2006-07-26 16:19  hisham

	* bin/RecipeLint: Added a --no-web option. Not sure about its
	  usefulness, but offline users may want to run some of
	  RecipeLint's checks.

2006-07-25 23:14  lucasvr

	* Resources/Defaults/Settings/Compile/Cross/: Cross-ARM.conf,
	  Cross-Common.conf, Cross-SH4.conf: Since we make reference to
	  host directories inside Cross-Common.conf, it's better to ensure
	  that we're not prefixing cross dirs when parsing it.

2006-07-25 16:45  lucasvr

	* bin/Compile: Added '--no-dependencies' flag to Compile; Ensuring
	  that further dependencies don't fulfill dependencies again, since
	  the entire dependency tree is collected once.

2006-07-25 16:10  lucasvr

	* bin/GetRecipe: Ensuring to execute this script with paths
	  relative to the host and not the target when cross-compiling.

2006-07-25 12:39  lucasvr

	* bin/Compile: Small cleanup, removing unused variables.

2006-07-24 01:39  hisham

	* bin/Compile: Use Temporary_File (I had totally forgotten about
	  that!)

2006-07-23 18:05  hisham

	* bin/Compile: Have Compile respect CheckDependencies' error code
	  on Ctrl-C

2006-07-23 00:33  detsch

	* bin/Compile: Small adjustments at dependencies checking loop.

2006-07-22 12:28  detsch

	* bin/Compile: Using CheckDependencies for dependencies matching.

2006-07-22 10:35  hisham

	* bin/Compile: Added a cleanup function for failure terminations as
	  well.  Removed replication of install_extras, and had it happen
	  later in the process.  Return a "not found" code when Compile
	  fails because a recipe isn't found, to play nice with
	  Dependencies.  Factored out creation of the tree into
	  build_tree_if Use version with GuessProgramCase in case there's
	  something in /Programs with incorrect capitalization.  Have
	  dependencies check happen earlier, so that freshly installed
	  programs are found and used in the dependency variables
	  (foo_path).

2006-07-20 10:37  hisham

	* bin/MakeRecipe: Make it smarter when processing an URL that does
	  not contain the proper archive name: try to talk to the HTTP
	  server and fetch the Content-Disposition header to figure out
	  what name should we save the file to.  Ah, and also remove some
	  TABS!

2006-07-20 10:11  hisham

	* bin/MakeRecipe: Have it detect better when package contents are
	  stored under more than one directory level.

2006-07-14 13:56  lucasvr

	* bin/Compile: Fixed usage of a wrong flag to Dependencies.

2006-07-11 02:09  hisham

	* bin/Compile: Revert last commit, bring back the
	  update_each_settings variable.

2006-07-11 00:41  lucasvr

	* bin/Compile: Removed broken test for 'update_each_settings', as
	  it was not being referenced as a variable and there wasn't any
	  references for it in the entire cvs.

2006-07-10 14:19  detsch

	* Makefile: Avoid failing when running make without arguments.

2006-06-22 18:21  lucasvr

	* bin/GetRecipe: Added support to https.

2006-06-21 15:51  lucasvr

	* Resources/Defaults/Settings/Compile/Cross/sh4_cache.conf: Added
	  an autoconf cache file for SH4.

2006-06-21 13:26  lucasvr

	* Resources/Defaults/Settings/Compile/Cross/arm_cache.conf:
	  Defaults to y on ac_cv_sysv_ipc

2006-06-20 12:21  lucasvr

	* bin/MakeRecipe: Let NamingConventions deduce the package's name,
	  as FindPackage can return a URL, making packagename to be
	  "recipe-store".

2006-06-18 12:09  hisham

	* doc/README: Updated manifest info with docs from
	  http://wiki.gobolinux.org/Recipe_format_specification Added info
	  on docs.  We should probably do away with this README and ship a
	  copy of the recipe format spec wiki page instead (with a better
	  name such as Recipe_format_specification.txt (or even html).

2006-06-18 11:45  lucasvr

	* doc/README: added a practical example to the use of manifest=

2006-06-10 14:22  lucasvr

	* doc/README: documented pre_patch()


More information about the gobolinux-users mailing list