Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: devel
Fetching contributors…

Cannot retrieve contributors at this time

7746 lines (6444 sloc) 352.856 kb
2015-02-16 Tue Jari Aalto <>
* bin/template/ New file.
* bin/ (CygbuildDefineGlobalMain): Add
(CygbuildCmdConfBefore): New.
(CygbuildCmdConfMain): Call CygbuildCmdConfBefore.
2015-02-16 Mon Jari Aalto <>
* bin/ (CygbuildCmdConfAutomake): Check multiple
files, including
2015-02-15 Sun Jari Aalto <>
* bin/lib/ (CygbuildCmdInstallCheckBinFiles): Skip
(CygbuildCmdInstallCheckSetupHintFieldNames): Change ERROR
to WARN on requires field check.
2015-02-14 Sat Jari Aalto <>
* bin/ (CygbuildCmdConfMain): Add missing command
continuation backslash while testing
2015-02-12 Thu Jari Aalto <>
* doc/Makefile (realclean): New.
(index.html, index.txt): rework targets.
commands::download): Add new option -c|--clean to remove cache.
Document location of cache file and its automatic update time of 7
days. Add new option -a|--arch to download package by
* bin/ (CygbuildCmdDownloadCygwinPackage): Add option
-c|--clean to remove cache. Lower cache update time from 30 days
to 7 days. Add new option -a|--arch to download package by
(CygbuildConfigGuessDownload): New.
(CygbuildCmdFileUpdateConfigs): New.
2015-02-11 Wed Jari Aalto <>
* bin/ (CygbuildInstallFixEtcdirInstall):
Correct for loop which checks preremove postinstall.
Incorectly added absolute paths to LIST which cause tar
to use full path names.
2014-06-16 Mon Jari Aalto <>
* bin/ (CygbuildMakefileRunTarget): Return 0
if no makefile.
(CygbuildCmdBuildStdMakefile): Adjust message.
(CygbuildInstallFixEtcdirInstall): No action if etc/ is empty
* bin/lib/ (GLOBAL::$systemName): Read NAME
2014-06-15 Sun Jari Aalto <>
* bin/lib/ (HELP::Patch management commands):
Document */tmp/* or /*.tmp/* directories in "patch" command.
* bin/ (CygbuildPatchFileList): Disregard
files in */tmp/* or /*.tmp/* directories
(CygbuildPatchApplyQuiltMaybe): Improve checking of
quilt status code.
(CygbuildCmdInstallList): Warn about unknown variables.
2014-06-14 Sat Jari Aalto <>
* bin/ (CygbuildInstallExtraBinFiles): Ignore
*.tmp files. Do not remote extension. Add support for
bin/FILE.cyginstdir install instructions for FILE. See
HELP::OPTIONAL EXTERNAL DIRECTORIES::bin/ for more information.
Document bin/ and patches/ directories.
2014-06-13 Fri Jari Aalto <>
* bin/ (CygbuildObjDumpLibraryDepList): Ignore MPR.dll.
(CygbuildPreRemoveWrite): chmod 755.
2014-06-12 Thu Jari Aalto <>
Document delete.lst
2014-06-10 Tue Jari Aalto <>
* bin/ Update find option -perm +111 to newer
-perm /u+x,g+x,o+x search.
2014-04-16 Wed Jari Aalto <>
* bin/lib/ (BinPkgListing): Change to --xz option.
* bin/
- Chnage default package extension from bz2 to xz.
(CygbuildFileConvertToUnix): Skip .xz files.
(CygbuildCommandMain): Chnage from bz2 to xz.
(CygbuildDefineGlobalMain): New variable NAME_PKG_EXT=xz.
(CygbuildCompressTarOpt): New.
(CygbuildCmdPkgBinaryStandard): Call CygbuildCompressTarOpt()
and don't hard code -jcf, but obey COMPRESS_OPTION variable.
(CygbuildCmdPkgSourceStandard): Call CygbuildCompressTarOpt()
and don't hard code -jcf.
2014-04-10 Thu Jari Aalto <>
* bin/lib/ (CygbuildCmdInstallCheckDirStructure):
Adjust /bin directory message.
* bin/lib/ (Help::OPTIONS): Document --xz option.
* bin/ (CygbuildBootVariablesGlobalMain): Add
.xz to cygbuild_opt_exclude_archive_files.
(CygbuildTarOptionCompress): Add *.xz
(CygbuildVersionInfo): Add *.xz
(CygbuildStrRemoveExt): Add *.xz
(CygbuildCygbuildDefineGlobalSrcOrigGuess): Add .tar.xz check.
(CygbuildCompress): Add xz check.
(CygbuildFilePackageGuessMain): Add .xz check.
(CygbuildCommandMain): Add option --xz.
(CygbuildObjDumpLibraryDepList): Ignore ADVAPI32.dll and
2013-09-19 Thu Jari Aalto <>
* bin/ (CygbuildConfPerlMain): check DESTDIR
support and adjust PREFIX.
* bin/lib/ (MakefileDestdirSupport): Check Makefile.PL
2013-09-14 Sat Jari Aalto <>
* bin/lib/ (CygbuildCygcheckLibraryDepSourceCpp):
Remove "include.*getopt" check.
* bin/ (CygbuildInstallExtraChmodMain): New.
(CygbuildInstallExtraChmodBin): New.
(CygbuildConfCC): Correct log output.
2013-09-13 Fri Jari Aalto <>
* bin/ (CygbuildCmdDownloadCygwinPackage): Add ARCH
support. By default download 32bit repository packages.
2013-09-11 Wed Jari Aalto <>
Document config.{sub,guess} files ussage.
* bin/ (CygbuildCmdBuildPython): Change
CYGBUILD_LDFLAGS from -no-undefined to -Wl,--no-undefined.
(CygbuildFindConfigFileDir): New.
(CygbuildDefineGlobalMain): New FILE_CONFIG_GUESS,
(CygbuildCmdConfConfigFilesCopy): New.
(CygbuildCmdConfMain): Call CygbuildCmdConfConfigFilesCopy().
(CygbuildWasLibraryInstall): old WasLibraryInstall
(CygbuildWasLibraryInstallMakefile): old WasLibraryInstallMakefile
(CygbuildCmdScriptRunMain): Support -d flag.
2013-03-08 Fri Jari Aalto <>
* bin/lib/ (CygbuildCygcheckLibraryDepSourcePython):
Do not warn about os.rename any longer. See
2013-03-07 Thu Jari Aalto <>
* bin/ (CygbuildBootVariablesGlobalMain):
2013-03-06 Wed Jari Aalto <>
* bin/ (CygbuildCmdMkpatchMain): undo and restore
patched in srcdir.
(CygbuildPatchDiffstat): Add message: Patches touch files.
(CygbuildPatchApplyQuiltMaybe): Respect verbose option in quilt
messages better.
(CygbuildCmdMkpatchMain): Copy also quilt .pc/ directory. Otherwise
unpatching does not work and patch reports modified files.
(CygbuildCmdCleanBasic): Add -o options. Serious error caused
deleting almost all source files.
2013-03-05 Tue Jari Aalto <>
* bin/lib/ (CygbuildCmdInstallCheckReadme): No longer
* bin/ (CygbuildTreeSymlinkCopy): Change from
grep to bash regexp match for $CYGBUILD_SHADOW_TOPLEVEL_IGNORE.
(CygbuildCmdInstallMain): Create .inst directory.
(CygbuildBootVariablesGlobalMain): Move .pc directory to
(CygbuildPatchApplyQuiltMaybe): pop does not support color option.
(CygbuildDefineGlobalMain): New SCRIPT_CLEAN_CYGFILE.
(CygbuildCmdCleanMain): Add support for external
(CygbuildCmdDeleteList): New.
(CygbuildInstallPackageDocs): Remove quoted from
$CYGBUILD_INSTALL_IGNORE to pass args in $@.
(CygbuildBootVariablesGlobalMain): Add backslashes to
CYGBUILD_INSTALL_IGNORE to not use newlines.
(CygbuildDllToLibName): Add libargp
2013-02-01 Fri Jari Aalto <>
* bin/ (CygbuildCmdCleanBasic): New.
(CygbuildCmdCleanMain): If no Makefile, call CygbuildCmdCleanBasic().
(CygbuildInstallFixManSymlinks): Correct variable name from
dir to mandir.
2012-12-11 Tue Jari Aalto <>
* bin/ (CygbuildCmdInstallMain): Remove variable
$dir and use $instdir. Check that $instdir exists. Remove extra
call to CygbuildPopd() in scriptAfter case.
2012-11-24 Sat Jari Aalto <>
* bin/ (CygbuildInstallCygwinPartMain): change
package-version.README to package.README.
2012-11-01 Thu Jari Aalto <>
* bin/ (CygbuildCommandMainCheckSpecial): Add alias
'fetch' for cygport source download compatibility. Add alias
'deps' for cygport compatibility.
(CygbuildCmdDependMain): Change from cygcheck to objdmp.
2012-10-31 Wed Jari Aalto <>
* bin/
(top level): Improve all <cd $dir> commands to read <cd "$dir">.
(CygbuildCygcheckLibraryDepMain): Adjust comments.
(CygbuildPreRemoveWrite): Adjust message.
(CygbuildPatchApplyQuiltMaybe): Add color support. Disable in Emacs
M-x shell.
2012-10-25 Fri Jari Aalto <>
* bin/ (CygbuildBootVariablesGlobalMain): Add
(CygbuildIsCmakePackage): New.
(CygbuildCmdBuildStdMakefile): Add CMake support.
(CygbuildCmdConfMain): Add CMake support.
(CygbuildConfCmakeMain): New.
2012-10-24 Wed Jari Aalto <>
* bin/ (CygbuildCmdPkgDevelStandardAbiVersion): New.
(CygbuildCmdPkgDevelStandardMain): Take another look (not ready).
2012-10-23 Tue Jari Aalto <>
* bin/ (CygbuildInstallExtraBinFiles): Adjust message.
(CygbuildCommandMain): In shadow cmmand, call CygbuildCmdMkdirs().
2012-10-22 Mon Jari Aalto <>
* bin/ (CygbuildCmdPrepMain): Use AND to connect
cd commadn to CygbuildPatchApplyMaybe.
(CygbuildCheckRunDir): No checking in CygbuildIsGbsCompat mode.
(CygbuildCmdGPGVerifyMain): Adjust message.
(CygbuildPatchApplyRun): Correct --binary option to use variable patchopt.
Enable check CygbuildFileIsCRLF.
(CygbuildPatchApplyMaybe): Retry with --binary option.
2012-10-20 Sat Jari Aalto <>
* bin/ (CygbuildCmdInstallFinishMessage): Don't
display message in GBS mode.
2012-10-13 Sat Jari Aalto <>
* bin/data/python-2.6.8.lst: New.
2012-10-11 Thu Jari Aalto <>
* bin/ (CygbuildInstallExtraDirsFile): remove
sub shell call and use $retval.
(CygbuildCmdInstallList): Correct mkdir if-case.
(CygbuildCmdConfAutomake): Adjust quotes.
2012-10-10 Wed Jari Aalto <>
* bin/template/dirs.ex: New.
* bin/lib/
(Help::OPTIONAL EXTERNAL FILES::mime, dirs): New.
(Help::OPTIONAL EXTERNAL FILES::install.lst): Document mkdir.
* bin/template/install.lst.ex: Add mkdir example.
* bin/ (CygbuildCmdConfMain): Adjust message.
(CygbuildCmdInstallList): Add mkdir support.
(CygbuildConfCC): rm config.cache
(CygbuildInstallExtraMimeFile): Use $INSTALL_FILE_MODES.
(CygbuildInstallExtraDirsFile): New.
* bin/template/ (Run): Accept empty message.
2012-10-09 Tue Jari Aalto <>
* bin/template/mime.ex: New.
* bin/ (CygbuildInstallExtraMimeFiles): New.
(CygbuildDefineGlobalMain): Add FILE_INSTALL_MIME, rename
2012-10-08 Mon Jari Aalto <>
* bin/ (CygbuildDllToLibName): Correct libmagic1.
(CygbuildConfCC): Make $conf file executable.
2012-10-07 Sun Jari Aalto <>
* bin/lib/ (CygbuildCmdInstallCheckManualPages): find
also symlinked manual pages.
* bin/ (CygbuildDllToLibName): Add gnome libs.
(CygbuildInstallFixManSymlinks): New.
2012-10-04 Thu Jari Aalto <>
* TODO: Minor udpates.
* README: Minor adjustments.
* INSTALL: Add install-symlinks choice.
* Makefile (doc): Add docstring.
* bin/ (CygbuildMakeRunInstallFixPerlPostinstall): Mot used.
(CygbuildMakeRunInstallFixPerlMain): Do not use
CygbuildMakeRunInstallFixPerlPostinstall(). perllocal.pod handling no
longer needed.
2012-10-03 Wed Jari Aalto <>
* bin/ (CygbuildPatchApplyMaybe): in mode unpatch, do
not immediately return if patch file is empty but check also quilt.
(CygbuildDllToLibName): Add cases for libpng15 and libX11.
(CygbuildCmdGPGVerifyMain): Do not fail on missing GPG key.
(CygbuildPathBinFast): Move /usr/sbin test later.
(CygbuildTarOptionCompress): Correct lzma case.
(CygbuildStrToRegexpSafe): Return value in quotes.
(CygbuildMatchPatternRemoveWord): Add function arg comments.
(CygbuildIsEmpty): Add fast empty check.
(CygbuildIsCygwin): Faster Cygwin arch test.
(CygbuildIsSourceProgram): require -N, not just N.
(CygbuildIsSourceUnpacked): Add quotes.
(CygbuildExit): Simplify if statement.
(CygbuildExitIfNoDir): Check arg before shift.
(CygbuildExitIfNoFile): Check empty file arg.
2012-09-30 Sun Jari Aalto <>
* bin/lib/ (Help::OPTIONAL EXTERNAL FILES::manpages): Explain
how this is different from install.lst
* bin/ (CygbuildPatchApplyMaybe): Correct quilt unpatch.
(CygbuildInstallExtraManualList): Support locale man pages.
(CygbuildPatchApplyRun): Always use --binary options for patch(1).
2012-09-29 Sat Jari Aalto <>
* bin/ (CygbuildCmdInstallList): Optimize sed by removing empty lines.
2012-09-27 Thu Jari Aalto <>
* bin/ (CygbuildInstallPackageDocs): Return if no dir found.
* bin/template/ (CURDIR): improve.
2012-09-26 Wed Jari Aalto <>
* bin/ (CygbuildCmdInstallList): Support glob wildcard
install in SOURCE.
(CygbuildInstallExtraManualCompress): Remove *.sh etc. extensions.
* bin/template/manualpage.1.pod.ex: Move DESCRIPTION before OPTIONS.
2012-09-25 Wed Jari Aalto <>
* bin/ (CygbuildCmdInstallList): Correct tofile not to include
SOURCE path component.
* bin/template/install.lst.ex: Adjust the syntax comment.
2012-09-25 Tue Jari Aalto <>
* bin/template/ New.
* bin/template/manualpage.1.redirection.ex: New example how to
redirect to another manual page.
* bin/template/manualpage.1.pod.ex: (AUTHORS): Update GPL stanza.
* bin/ (CygbuildHelpShort): Add colons to AUTHOR
section output.
(CygbuildCmdInstallList): Add better ln-case checks.
(CygbuildCmdTestAdditional): Add --debug option support.
(CygbuildCmdTestAdditional): adjust path in message.
(CygbuildCmdInstallList): Allow install.lst::FROM be directory.
(CygbuildCmdInstallList): Use tar --dereference to copy real files.
2012-09-24 Mon Jari Aalto <>
* bin/ (CygbuildPatchApplyMaybe): unpatch quilt last.
(CygbuildDefineGlobalCommands): require quilt or die.
2012-09-23 Sun Jari Aalto <>
* bin/ (CygbuildInstallExtraManualList): New. Add
CYGWIN-PATCHES/manpages support.
(CYGBUILD_HOMEPAGE_URL): Correct *.net to *.com URL.
(CygbuildCmdInstallMain): Really, run last.
2012-09-22 Sun Jari Aalto <>
* bin/lib/ (CygbuildCmdInstallCheckBinFiles): Improve
verbose message to notice symbolic links.
* bin/ (CygbuildFileConvertToUnix): Add missing
slash to Perl regexp line.
2012-09-22 Sat Jari Aalto <>
* bin/lib/ (HELP::Install commands): Remove all
import and repackage commands.
(HELP::OPTIONAL EXTERNAL FILES::install.lst): Add ln summport.
* bin/ (CygbuildCommandMain): Remove all import and
repackage commands
(CygbuildDefineGlobalPerlVersion): Correct for Perl 5.14
(CygbuildCmdInstallPatchVerify): List patches with --verbose.
(CygbuildPatchFileQuilt): Search only under
(CygbuildPatchFileList): Search only under
(CygbuildCmdInstallList): Add ln command support to install.lst.
* bin/lib/ (CygbuildCmdInstallCheckBinFiles): Do not
check */doc/* directories.
(CygbuildCmdInstallCheckBinFiles): Ignore Perl *.pm modules.
2012-09-21 Fri Jari Aalto <>
* bin/template/cygwin-announce.mail.ex (License): Use (at) sign.
* bin/ (CygbuildPatchFileList): Replace complex
find command with simple *.patch search under
(CygbuildDefineGlobalMain): New SCRIPT_DELETE_LST_CYGFILE variable.
(CygbuildCmdDeleteListExists): New.
(CygbuildCmdDeletellList): New.
* bin/ (CygbuildPatchFileList): Correct
search from *patch to *.patch.
2012-09-19 Wed Jari Aalto <>
* bin/ (CygbuildPostinstallWriteMain): Add quotes
to dest variable in postinstall script.
(CygbuildInstallPostinstallPartInfo): Add quotes to file variable
in postinstall script.
(CygbuildDllToLibName): Handle liblzo2_2.
* bin/lib/
(Help::EVERYTHING): Remove all shell prefix charcters '$'.
(Help::Preparation commands::files): Update .tmp to .ex suffix.
(Help::OPTIONS): Move -h, -V to the end of options. GNU standard.
(Help::OPTIONAL EXTERNAL DIRECTORIES): Remove. The comment tag "#
cyginstdir: " is no longer supported in scrips. Use file
install.lst instead.
2012-02-18 Sat Jari Aalto <>
* bin/ (CygbuildCmdInstallMain): Fix call to
(CygbuildMakeRunInstallFixPerlPostinstall): Correct
regexp to detect installed pod: EXE_FILES.
2012-05-22 Tue Jari Aalto <>
* bin/ (CygbuildCmdMkpatchMain): Copy quilt .pc
directory to make unpatching work.
2012-03-25 Sun Jari Aalto <>
* bin/lib/ (CygbuildCmdInstallCheckReadme): Handle
special characters in package name.
* bin/ (CygbuildCmdDownloadCygwinPackage): Handle
special characters in package name.
(CygbuildBootVariablesGlobalMain): Add ".pc" to
cygbuild_opt_exclude_dir to exclude quilt(1) patch directories.
2012-02-26 Sun Jari Aalto <>
* bin/ (CygbuildCmdInstallList): Fix default install
destination for scripts. Drop all path names.
2012-02-23 Thu Jari Aalto <>
* bin/lib/ (CygbuildPerlLibraryList): Include
"use" statements.
2012-02-20 Mon Jari Aalto <>
* bin/ (CygbuildCmdInstallList): Add symlink support.
2012-02-19 Sun Jari Aalto <>
* bin/ (CygbuildInstallFixInterpreterPerl): Use
unified diff.
(CygbuildIndentFilter): New.
(CygbuildCmdDeleteList): Use CygbuildIndentFilter.
(CygbuildCmdInstallList): Use CygbuildIndentFilter.
(CygbuildCmdStripMain): Adjust message
* bin/lib/ (CygbuildCmdInstallCheckReadme): Adjust
return status codes. Turn WARN into ERROR messages.
2012-02-18 Sat Jari Aalto <>
* bin/lib/ (CygbuildCmdInstallCheckBinFiles): Set
variable str to empty before checking is binary exists.
(CygbuildPerlLibraryDependsGuess): Improve Std Module::Name
(CygbuildPerlLibraryDependsCache): Better Std module detection.
* bin/ (CygbuildCmdInstallMain): Fix call to
(CygbuildCmdInstallAfterListExists): New.
(CygbuildCmdInstallAfterList): New.
(CygbuildCmdInstallMain): Call CygbuildCmdInstallAfterList.
(CygbuildCmdDeleteAfterListExists): New.
(CygbuildCmdInstallMain): Move CygbuildCmdDeleteListExists call.
(CygbuildWhich): Define PATH
(CygbuildObjDumpLibraryDepList): Ignore Windows 7 core dll files.
(CygbuildCygcheckLibraryDepListFull): Ignore Windows 7 core dll files.
2012-02-11 Sat Jari Aalto <>
* bin/lib/ (Help::OPTIONAL EXTERNAL FILES): Document
delete.lst file. Move --help option to the end. Document --xz
* bin/ (CygbuildCmdDeleteListExists): New.
(CygbuildCmdInstallList): Correct variable name to "retval".
(CygbuildCmdDeleteList): New.
(CygbuildDefineGlobalMain): New variable set SCRIPT_DELETE_LST_CYGFILE.
2012-02-04 Sat Jari Aalto <>
* bin/template/ New.
* bin/ (CygbuildDefineGlobalMain): Add SCRIPT_CLEAN_CYGFILE,
(CygbuildCmdCleanMain): Add support for custom,
2012-02-01 Wed Jari Aalto <>
* bin/ (CygbuildTarOptionCompress): Add XZ support. Correct
LZMA support.
(CygbuildCommandMain): Add option --xz.
(CygbuildCompress): Add XZ support.
(CygbuildTarOptionInUse): New.
(CygbuildStrRemoveExt): Add XZ support.
(CygbuildCygbuildDefineGlobalSrcOrigGuess): Add XZ support.
(CygbuildInstallExtraManualCompress): Add XZ support.
(CygbuildFilePackageGuessMain): In call to CygbuildFilePackageGuessArchive(),
support LZMA and XZ.
(CygbuildDefineGlobalMain): Use $OPTION_COMPRESS and not hard coded bz2.
(CygbuildCommandMain): Add missing --verbose option from getopt call.
* bin/lib/ (CygbuildCmdInstallCheckLibrariesPerlListLocal): New.
(CygbuildCmdInstallCheckLibrariesPerl): Filter out local libs.
* bin/template/cygwin-announce.mail.ex: Replace @ with (at).
2012-01-29 Sun Jari Aalto <>
* bin/lib/ (ReadmeFix): Check empty file. Check
identical content by examining first line.
* bin/lib/ (CygbuildCmdInstallCheckShellFiles): Improve
(CygbuildPerlLibraryList): Improve package matching regexp to see
More::ThanTwo, Like::This::One.
* bin/template/install.lst.ex: Improve comments.
* bin/template/ (Main): Add libdir variable.
* bin/ (CygbuildMakefileRunInstallMain):
Correct PFX variable sent to CygbuildMakefileRunInstallCygwinOptions()
(CygbuildMakefileRunInstallCygwinOptions): Add leading slash to
docpfx variable.
(CygbuildMakeRunInstallFixPerlPostinstall): Before writing stanza,
delete path up till .inst/ directory for postinstall script.
(CygbuildCmdGPGVerifyMain): Do not stop on signature failure.
(CygbuildPatchFileList): Use more strict "tmp" directory exclusion.
(CygbuildDllToLibName): Add libpng14
(CygbuildPatchApplyQuiltMaybe): Call CygbuildPatchFileQuilt() with
$DIR_CYGPATCH directory.
(CygbuildPatchFileList): Call CygbuildPatchFileQuilt() with
$DIR_CYGPATCH directory.
2011-11-12 Sat Jari Aalto <>
* bin/ (CygbuildCmdPkgDevelStandardBin):
Change tar group from nobody to $CYGBUILD_TAR_GROUP.
(CygbuildBootVariablesGlobalMain): define
(CygbuildCmdMkpatchMain): Use $CYGBUILD_TAR_GROUP.
(CygbuildInstallPackageDocs): Use $CYGBUILD_TAR_GROUP.
(CygbuildInstallFixDocdirInstall): Use $CYGBUILD_TAR_GROUP.
(CygbuildInstallFixEtcdirInstall): Use $CYGBUILD_TAR_GROUP.
2011-06-16 Fri Jari Aalto <>
* bin/ (CygbuildPatchFileQuilt): Correct
"-o" option to "-a" to ignore */tmp directories.
(CygbuildPatchApplyQuiltMaybe): Check for empty
quilt "series" file in for-loop.
(CygbuildHelpShort): Fix typo in heading.
(CygbuildProgramVersion): Use comma to separate License
(CygbuildAskYes): Simplify code. Remove local variable.
2011-04-22 Fri Jari Aalto <>
* bin/ (CygbuildPatchFileList): Ignore .s?inst
and .build directories.
2011-04-09 Sat Jari Aalto <>
* bin/ (CygbuildPreRemoveWrite): Improve
generated script. Use *.prev file.
(CygbuildPatchApplyQuiltMaybe): Correct return status on
failure. Add check for message "no patch.*removed".
(CygbuildBootVariablesGlobalMain): The [mkpatch] command did not
unpatch quilt. This was due to tar not mirroring the .pc directory
during snapshot. Remove .pc from
$cygbuild_opt_exclude_version_control. Add .pcto
(CygbuildPatchFileList): Use PWD not DIR_CYGPATCH.
(CygbuildPatchFileQuilt): Use PWD not DIR_CYGPATCH.
(CygbuildPatchApplyQuiltMaybe): Add support for --debug option.
2011-04-08 Fri Jari Aalto <>
* bin/
(top level): Fix typos in coments.
(CygbuildCmdInstallList): Install *.sh, *.pl,
(CygbuildTarOptionCompress): Add LZMA support.
(CygbuildInstallPostinstallPartEtc): Rewrite /etc install
(CygbuildPreRemoveWrite): Complete rewrite. This function
was not previously used.
(CygbuildInstallFixEtcdirInstall): Use CygbuildPreRemoveWrite().
(CygbuildCmdInstallList): Support *.txt file install without
<destination> directory.
(CygbuildPreRemoveWrite): Remove timestamp.
*.py under /usr/bin by default. SuImplyfy mode 755 detection for
all files matching */bin/* in their path.
2011-04-07 Thu Jari Aalto <>
* bin/lib/ (OPTIONAL EXTERNAL FILES::install.lst).
Improve documentation. Add $DOC, add *.1 manual files examples.
* bin/template/install.lst.ex: Add more examples.
* bin/ (CygbuildCmdInstallList): Add $DOC susbtitution
variable support in install.lst Default file install mode is now
644. All */bin* files are 755 by default.
* bin/ (CygbuildInstallExtraManual): Correct reading
patch to manual page from CYGWIN-PATCHES/install.lst
2011-04-07 Thu Jari Aalto <>
* bin/ (CygbuildCommandMainCheckSpecial): In ls-patch
command, define DIR_CYGPATCH which is needed in
CygbuildPatchFileQuilt(), called from CygbuildPatchFileList().
2011-03-28 Mon Jari Aalto <>
* bin/ (top level::Cancel any environment settings):
Correct unlalias to unalias. Thanks to Ken Jackson
2011-03-17 Thu Jari Aalto <>
* bin/ (CygbuildCmdInstallList):
FROM files that end to a number, like program.1, automatically
determine TO part. This allows installing manual pages without
specifying the destination path in CYGWIN-PATCHES/install.lst file.
2011-02-11 Sat Jari Aalto <>
* bin/ (CygbuildCmdInstallMain): Call
(CygbuildCmdInstallListExists): New.
(CygbuildCmdInstallList): Check common files like *.conf
and adjust mode accordingly.
2011-02-11 Fri Jari Aalto <>
* bin/lib/ (HELP::install.lst): Fix typos.
* bin/ (CygbuildInstallExtraManual): Suport POD manual
pages in separate directories.
(CygbuildCmdInstallList): Compress */man/* files.
2011-02-10 Jari Aalto <>
* bin/ (CygbuildGPGsignFiles): Dispaly message if GPG
is not in PATH. Return success, not error to continue making package.
2010-11-21 Jari Aalto <>
* bin/ (CYGBUILD_SRCPKG_URL): Change from to
2010-06-24 Jari Aalto <>
document install.lst to remove suffixes .sh .pl .py
* bin/
(top level): Update comments. Add unalias.
(top level::CYGBUILD_INSTALL_INFO): New variable.
(CygbuildMakefileRunInstallPythonFix): Update displayed message.
(CygbuildPatchApplyQuiltMaybe): Improve quilt message.
Add handling for quilt error messages.
(CygbuildDllToLibName): Add openssl. Improve libz detection.
(CygbuildInstallPostinstallPartEtc): Change complex
process substitution <() to plain out/in file read.
(CygbuildCmdInstallList): During install remove suffixes
.sh .pl and .py. Substitute various CYGWIN-PATCHES/ prefixes.
(CygbuildHelpShort): New section INSTALL INSTARUCTIONS .
2010-06-23 Jari Aalto <>
* bin/ (CygbuildCmdInstallList): Use prox '+:'
variabe substitution.
(CygbuildDefineGlobalPythonVersion): New global variable
(CygbuildMakefileRunInstallPythonDistutilsStart): New.
(CygbuildMakefileRunInstallPythonDistutilsStop): New.
(CygbuildMakefileRunInstallPythonMain): Add support for installing
libraries that use *.pth. Requires custom ~/.pydistutils.cfg
(CygbuildIsPythonLibrary): New.
(CygbuildCygDirCheck): Tim leading path in displayed warning
(CygbuildDefineGlobalMain): instead of PK-VER install to
(CygbuildPatchFileList): Filter out quilt directories. Fix
find(1) bug to ignore tmp* directories.
(CygbuildPatchFileQuilt): New.
(CygbuildPatchApplyQuiltMaybe): New.
(CygbuildPatchApplyMaybe): Add quilt 'series' file support.
2010-06-22 Jari Aalto <>
* bin/lib/
(CygbuildCmdInstallCheckSetupHintDependExists) correct library
handllinga which contains special regexp characters, like in
* bin/lib/ (FileScanWantedGeneral): Replace $MATCH
with $1.
(HELP::OPTIONAL EXTERNAL FILES): Document new file install.lst
* bin/ (CygbuildCommandMain): Make 's' optional in
'mkdir' command.
(CygbuildCmdInstallList): New. Add support for install.lst
control file.
(CygbuildCmdInstallMain): Call `CygbuildCmdInstallList'.
(CygbuildDefineGlobalMain): Add SCRIPT_INSTALL_LST_CYGFILE.
(CygbuildDllToLibName): add libgcc_s1.
(CygbuildCygcheckLibraryDepSetup): correct library handlling
which contains special regexp characters, like in libstdc++
(CygbuildCygcheckLibraryDepReadme): correct library handlling
which contains special regexp characters, like in libstdc++
(CygbuildInstallExtraManual): Allow also CYGWIN-PATCHES/man
(CygbuildCmdDownloadUpstream): Correct pwget option from --Tag
to --tag.
2010-06-20 Jari Aalto <>
* bin/
(CygbuildGPGsignFiles): don't return error on memory lock warning.
(CygbuildCmdMkpatchMain): Add
--no-same-owner --no-same-permissions to tar extract call.
(CygbuildCmdDownloadCygwinPackage): Add
--no-same-owner --no-same-permissions to tar extract call.
(CygbuildInstallPackageDocs): Add
--no-same-owner --no-same-permissions to tar extract call.
(CygbuildInstallFixDocdirInstall): Add
--no-same-owner --no-same-permissions to tar extract call.
(CygbuildInstallFixEtcdirInstall): Add
--no-same-owner --no-same-permissions to tar extract call.
(CygbuildInstallFixEtcdirInstall): Add
--no-same-owner --no-same-permissions to tar extract call.
(CYGBUILD_LICENSE): Change to one word: GPL-2+
(CygbuildCmdPkgDevelStandardBin): Add --group=nobody to tar create.
(CygbuildCmdMkpatchMain): Add --group=nobody to tar create.
(CygbuildInstallFixDocdirInstall): Add --group=nobody to tar create.
(CygbuildInstallFixEtcdirInstall): Add --group=nobody to tar create.
2010-06-17 Jari Aalto <>
* bin/ (CygbuildRunPythonSetupCmd): Check python
binary before use.
2010-03-13 Sat Jari Aalto <>
* Makefile (doc/manual/index.txt): New.
(doc/manual/index.html): New.
(doc): New.
* bin/lib/ (HELP::Other Commands): Fix typo in 'cysrc'
command option syntax.
(HELP::DESCRIPTION): Move after SYNOPSIS as per POSIX manual page
(HELP::Now the real thing; making a Cygwin package): Fix example.
(HELP::Contributing packages): Add wget link conributing example.
2010-01-28 Jari Aalto <>
* bin/ (PATH): Define at top level to
overrride any user settings.
(unset -f awk...): Define at top level to remove any
functions in current environment that mask real programs.
(CygbuildCmdMkpatchMain): Improve failed patch message.
(CygbuildInstallFixInterpreterMain): Improve Python check regexp.
2009-12-28 Jari Aalto <>
* bin/template/Makefile.ex (EXT): New variable.
* bin/lib/ (MakefileDestdirSupport):
Improve debug.
* bin/ (CygbuildCmdDownloadCygwinPackage): Use
setup.ini, not setup-2.ini. Cygwin 7 has been released and
is now official.
* bin/lib/ (CygbuildCmdInstallCheckBinFiles):
Check that all executables have *.exe suffix.
2009-12-15 Jari Aalto <>
* bin/lib/ (MakefileDestdirSupport): Require that
all Makefiles support DESTDIR before returning success.
2009-12-14 Jari Aalto <>
Add --with-intl
(CygbuildConfOptionAdjustment): Add --with-* option
support check.
(CygbuildProgramVersion): Adjust display. Add URL.
2009-12-12 Jari Aalto <>
* bin/template/perl-cpan-patch.ex: New.
* bin/template/Makefile.ex (INSTALL_OBJS_DOC): New.
(install-doc): New.
2009-12-10 Jari Aalto <>
* bin/lib/ (UpdateAnnouncement): Accept 'New:' prefix,
not just 'New package:'
(UpdateAnnouncement): Remove extra debug call.
* bin/ (CygbuildDefineGlobalCompile): treat libpython
as python.
(CygbuildDefineGlobalCompile): use SRCDIR to check Makefiles for
(CygbuildShellEnvironenment): add CXXFLAGS.
(CygbuildDefineGlobalCompile): Add '-Wl,' to --no-undefined
linker flag.
2009-12-09 Jari Aalto <>
* bin/lib/ (CygbuildCmdInstallCheckFSFaddress): adjust
* bin/lib/ (UpdateAnnouncement): Replace generic
"package" with readl package name.
* bin/ (PackageUsesLibtoolMain): Adjust regexp
'\blibtool\b' to '\blibtoo' to notice "INTL_LIBTOOL_SUFFIX_PREFIX"
(CygbuildCommandMainCheckSpecial): Add alias ls-patch.
(CygbuildCmdDownloadCygwinPackage): Use setup-2.ini for Cygwin 1.7
(CygbuildDllToLibName): Add "mhash" case. Change zlib (doc) to
zlib0 (runtime).
2009-12-08 Jari Aalto <>
* bin/ (CygbuildInstallFixInterpreterMain): Correct
first line 'Suspicious Python' check. See if the line is comment.
2009-11-27 Jari Aalto <>
* bin/ (CygbuildObjDumpLibraryDepList): ignore Cygwin
1.7 MPR.DLL.
2009-10-22 Jari Aalto <>
* bin/lib/
(CygbuildCmdInstallCheckSetupHintFieldCategory): Add a missing
backslash to continued line CYGBUILD_SETUP_HINT_CATEGORY.
* bin/template/Makefile.ex (maintainer-clean): New.
Add comments to all *clean targets.
2009-09-30 Jari Aalto <>
* bin/template/Makefile.redirect.ex: Remove extra variables
and shape up.
* bin/lib/ (Help): Work around Perl bug in
pod2text. Change option presentation to notation
'-o, --option'.
* bin/lib/ (top level): change all
tail/head command to use --lines=N option.
(CygbuildCmdInstallCheckBinFiles): Correct *Waen() call to
(CygbuildPythonLibraryDependsCache): Generate cache.
(CygbuildRubyLibraryDependsMain): Generate cache.
(CygbuildCmdInstallCheckSetupHintDependExists): search
for exact library match. On failure, show close library
(CygbuildPerlLibraryDependsMain): Generate Perl cache.
* bin/ (top level): change all
tail/head command to use --lines=N option.
(CygbuildChmodExec): Return correct status.
(CygbuildPostinstallWriteStanza): remove
CygbuildChmodExec(). Add more quoting.
(CygbuildInstallCygwinPartPostinstall): Install
with modes 755, not 644.
(CygbuildBootVariablesGlobalCachePerl): Correct typo.
(CygbuildBootVariablesGlobalCachePython): Correct typo.
(CygbuildHelpShort): Adjust layout.
(CygbuildHelpLong): Move exit command to correct place.
(CygbuildBootVariablesGlobalCachePerlGenerate): New.
(CygbuildCygcheckLibraryDepListFull): Fix indentation.
(CygbuildBootVariablesGlobalCachePythonGenerate): New.
(CygbuildBootVariablesGlobalCacheGenerate): New.
(CygbuildDefineGlobalRubyVersion): New.
(CygbuildBootVariablesGlobalCacheRubyGenerate): New.
(CygbuildBootVariablesGlobalCacheRuby): New.
(CygbuildDefineGlobalPythonVersion): Return status
(CygbuildDefineGlobalPerlVersion): Return status.
(CygbuildCmdFilesWrite): Use *.ex, not *.tmp extension.
(CygbuildInstallPackageDocs): Improve debug.
(CygbuildCmdMkpatchMain): Verify destination patch
(CygbuildBootVariablesGlobalMain): Add *.ex to variable
(CygbuildFindLowlevel): Add *.ex.
(CygbuildCommandMainCheckSpecial): Add alias lspatch.
(CygbuildCmdMkpatchMain): Check that $diffsrc exists.
(CygbuildBootVariablesGlobalMain): Add *.mo
2009-09-29 Jari Aalto <>
* bin/ (CygbuildCommandMain): Add
alias 'dirs' to 'mkdirs' command.
2009-09-28 Jari Aalto <>
* bin/ (CygbuildProgramVersion): Add
option 'short'.
2009-09-27 Jari Aalto <>
* bin/lib/ (CygbuildCmdInstallCheckBinFiles):
Ignore *.dll and *.pyc files and others. Change
for loop to more efficient while loop which preferves
file names correctly. Use stat(1) to read file size.
(CygbuildCmdInstallCheckEverything): Use real if-statements.
This fixes 'stat' value settings.
* bin/ (CygbuildMakefileRunInstallPythonFix):
Adjust 'may take a while..." message.
(CygbuildFileSizeRead): Improve handling of file names
with spaces.
(CygbuildFileSize): Add quotes.
(CygbuildInstallFixInterpreterGeneric): Improve message.
(CygbuildProgramVersion): Do not announce URL by default.
(CYGBUILD_AUTHOR): New variable.
(CYGBUILD_LICENSE): New variable.
(CygbuildProgramVersion): Display CYGBUILD_AUTHOR
2009-09-25 Jari Aalto <>
* bin/ (CygbuildDefineGlobalCommands): Define
command stat(1) in variable STAT.
(CygbuildFileSizeRead): New. Use stat(1) where available.
(CygbuildFileSize); use more robust
* bin/lib/ (CygbuildCmdInstallCheckBinFiles):
Correct ls -l output handling: Read file sizes correctly.
2009-09-16 Jari Aalto <>
* bin/
(CygbuildMatchGlob): New.
(CygbuildDefineGlobalCommands): Add missing double quote.
(CygbuildSrcDirCheck): Adjust message.
(CygbuildCmdDownloadUpstream): change external
command name from 'mywebget' to 'pwget'. Use
'type -p', not which(1).
2009-08-06 Jari Aalto <>
* bin/Makefile (install-man): Call target 'man'.
(INSTALL_OBJS_MAN1): Remove unneeded lib/*.1
* bin/ (CygbuildCommandMain):
Display word FATAL if getopt is not available.
(CygbuildDefineGlobalCommands): Check that file(1)
utility exists.
2009-02-06 Fri Jari Aalto <>
* bin/Makefile (man): Add cygbuild.1
(doc): New target.
(cygbuild.1): New target.
(clean): Clean manual pages.
2009-02-05 Thu Jari Aalto <>
* doc/index.html: (Install from Version Control): correct
'make install-etc' to 'make install-symlink'
* bin/lib/ (UpdateAnnouncement): Call UpdateYears().
* Makefile: (help): New target.
(install-symlink): New target.
* TODO: Add headings: incomplete, planned.
* README: (Important files): Update directory information.
* doc/devel/README.txt: (Information for developers): Clean up
(Policies): Update. Add CODING STYLE.
* doc/Makefile (help): New target. Document other targets.
* bin/Makefile: (help): New target. Document other targets.
(install-symlink): Adjust comment.
* bin/ (CygbuildIsDirMatch): Check directory before
(CygbuildCommandMain): Add getopt safeguards. If 'getopt' is not
available, options cannot be parsed. If `CygbuildIsGbsCompat', do
not run `CygbuildBootVariablesGlobalShareMain'.
(CygbuildTreeSymlinkCopy): Simplify 'lndir' error message.
(CygbuildDefineGlobalCommands): Verify that commands make, gcc. perl
are in PATH.
(CygbuildMsgFilter): Use cat if perl is not available.
2009-02-05 Jari Aalto <>
* bin/lib/ (UpdateAnnouncement): Improve call to Date().
(UpdateNewVersionStanza): Improve call to Date().
(UpdateYears): Improve call to Date().
(UpdateAnnouncement): Delete 'New Package' line.
* bin/ (CygbuildDefineGlobalMain): Correct
CYGBUILD_FILE_MANIFEST_TO from 'manifest.lst' to 'manifest-to.lst'.
(CygbuildIsDirMatch): New.
(CygbuildInstallExtraManual): Support CYGWIN-PATCHES/man directory.
(CygbuildInstallPostinstallPartEtc): Change variable `dest'
to `destdir'. Use command line arg `dest'.
(CygbuildPostinstallWriteMain): Assign command line argument
$1 to variable dest.
(CygbuildCommandMain): Correct -d option without numeric argument.
(CygbuildCmdConfMain): Move 'configure command' message.
(CygbuildCmdConfAutomake): Simplify if-statement.
2009-02-04 Jari Aalto <>
* bin/template/cygwin-announce.mail.tmp (License): Add Copyright
* bin/template/
(top level): Correct argument order in synapsis.
(main): Fix positional arguments.
* bin/ (CygbuildCmdInstallMain): Fix call message about
calling $scriptAfter.
2009-02-02 Jari Aalto <>
* bin/ (CygbuildFileReadOptionsMaybe): Improve
external option read message.
2008-12-05 Jari Aalto <>
* bin/ (CygbuildCommandMain): Suggest 'util-linux' package
of 'getopt' is not available.
2008-11-05 Jari Aalto <>
* bin/ (CygbuildInstallFixEtcdirInstall): Rewrite
.inst/etc handling for preremove and postinstall.
2008-11-04 Jari Aalto <>
* etc/lib/ (HELP::OPTIONAL EXTERNAL FILES): Document
new file CYGWIN-PATCHES/mandir.
* bin/ (CygbuildPatchApplyMaybe): Check
content of done-patch.tmp in more detail. The old cygbuild
versions did not record PATH names. Offer support for
backward compatibility in case of 'unpatch' so that that
both 'path/file.patch' and 'file.patch' records are removed.
(CygbuildIsCplusplusPackage): Add 'g++' check for Makefiles.
(CygbuildPatchApplyRun): Signal 'Unpatching' during
--reverse patch.
(CygbuildDefineGlobalMain): New EXTRA_MANDIR_FILE 'mandir'.
(CygbuildInstallExtraManual): Add support for reading manual pages
from subdirectory CYGWIN-PATCHES/manpages.
(CygbuildDefineGlobalMain): Make SCRIPT_BUILD_CYGFILE and
(CygbuildCommandMain): from command
'repackage-all|repackage|repkg', remove publish.
(CygbuildCmdPublishExternal): Use standard two dash(--) in output.
* etc/template/ Add --verbose to rm(1) command.
2008-10-24 Jari Aalto <>
* bin/ (CygbuildCmdFixFilesReadme):
Rewrite logid. Remove else.
(CygbuildCmdFixFilesAnnounce): New.
* etc/lib/ (ReadmeFix): Before file write, check
length of $orig, not $file.
(UpdateAnnouncement): New.
(TestDriverUpdateAnnouncement): New.
2008-08-21 Jari Aalto <>
* etc/lib/ (UpdatePackageTags): Change
placeholder text to '$placeholder'
2008-08-20 Jari Aalto <>
* bin/ (CygbuildDllToLibName): Correct 'cyg'
prefix handling. Add zlib special case.
(CygbuildDefineVersionVariables): Improve error message.
(CygbuildInstallCygwinPartMain): Improve error message.
(CygbuildFilePackageGuessMain): New variable 'ext'. Rewrite
archive extension regexp.
(top level::CYGBUILD_SRCPKG_URL): Change to use
2008-08-20 Jari Aalto <>
* etc/lib/ (HELP::Patch management
commands::patch/unpatch): Document that *.patch files are sorted.
* etc/lib/ (CygbuildCmdInstallCheckBinFiles): Remove
* bin/
(CygbuildDefineGlobalCommand): Improve error messages.
(CygbuildCmdDownloadUpstream): Announce URL
is program was not found. Drop *.pl extension. Improve
error message if CYGWIN-PATCHES/ not found.
2008-05-08 Jari Aalto <>
* bin/ (CygbuildInstallFixInterpreterGeneric):
Handle '/usr/bin/env interpreter' shebang lines better.
2008-03-29 Jari Aalto <>
* etc/lib/ (CygbuildCmdInstallCheckEverything): New.
* bin/
-- Relocate massive amount of functions to
(CygbuildCmdInstallCheckMain): Rewritten. Move
logic to `CygbuildCmdInstallCheckEverything'.
(CygbuildInstallFixInterpreterMain): At beginning, change incorrect
variable debinition pybin to `rbbin'. This error caused all
python file to have ruby interpreters.
(CygbuildTarOptionCompress): Return --gzip, --bzip2, not j, z.
(CygbuildCmdPkgDevelStandardBin): Make taropt more readable.
(CygbuildCmdPkgDevelStandardMain): Remove unuset tar variable
(CygbuildExtractTar): Make tar options more readable.
(CygbuildPod2man): Set mansect to 1 if empty. Add new arg 3,
2008-03-28 Jari Aalto <>
* etc/template/Makefile.tmp (BINDIR): Remove extra /bin.
2008-03-18 Jari Aalto <>
* bin/ (CygbuildCmdStripMain): Use plain find,
which is faster. Convert for-loop to while loop. Change
Support filenames with spaces.
(CygbuildStripCheck): All -L to find.
2008-03-17 Jari Aalto <>
* bin/ (CygbuildCmdDownloadCygwinPackage): Return
error code instead of die if cannot download.
(CygbuildCommandMainCheckSpecial): Remove created directory
if download failed.
2008-03-14 Jari Aalto <>
* etc/lib/ (HELP::Patch management commands):
Document new command [patch-list].
* bin/ (CygbuildPerlLibraryList): Remove var SORT.
(CygbuildObjDumpLibraryDepList): Remove var SORT.
(CygbuildCygcheckLibraryDepListFull): Remove var SORT.
(CygbuildCygcheckLibraryDepMain): Show also objdump results.
(CygbuildDefineGlobalCommands): Define GPGOPT.
(CygbuildGPGsignFiles): Use GPGOPT.
(CygbuildGPGverify): Use GPGOPT.
(CygbuildDllToLibName): new.
(CygbuildCygcheckLibraryDepMain): Use objdump result and
(CygbuildPatchFileList): Was CygbuildPatchList.
(CygbuildFindLowlevel): New.
(CygbuildPatchFileList): Use CygbuildFindLowlevel
(CygbuildCommandMainCheckSpecial): New command [patch-list].
(CygbuildCygcheckLibraryDepMain): Adjust objdump handling.
(CygbuildDefineGlobalCommands): Move prefix of perl, python
and ruby from /usr/bin to /bin.
2008-03-13 Jari Aalto <>
* bin/
-- Move all checking functions to separate library:
etc/lib/ Commit: 1eb59c7
(CygbuildBootVariablesGlobalMain): Move
(CygbuildCmdInstallCheckMain): Use
(CygbuildInstallPackageDocs): Adjust docdirguess.
(CygbuildPatchList): Use `CygbuildFindDo'.
* etc/lib/ New file.
(CygbuildCygcheckLibraryDepSourceMake): Fix regexp
* Makefile
(install-lib-symlinks): New.
(install-share-lib): New.
(install-share): Add install-share-lib.
(install-in-place): Add install-lib-symlinks.
[ commit: fb2dca2]
* bin/ (CygbuildCygcheckLibraryDepSource): Add
xmlto, asciidoc check. Add *.mk search.
(CygbuildCmdInstallCheckBinFiles): Add /usr/games.
(CygbuildInstallFixFileExtensions): Add /usr/games. Ignore
find error (no directories to search).
(CygbuildCmdInstallCheckDirStructure): Add /usr/games.
(CygbuildInstallExtraManualCompress): Support space in
file names.
(CygbuildCygcheckLibraryDepReadme): Use `CygbuildDetermineReadmeFile'.
(CygbuildCygcheckLibraryDepSourceMake): New.
(CygbuildCygcheckLibraryDepSourceMain): Renames. Was
(CygbuildCygcheckLibraryDepSourcePython): New.
2008-03-12 Jari Aalto <>
* etc/lib/
(top level): Drop 'use 5.004'. Prototypes are standard in Perl.
(UpdateNewVersionStanza): New.
(ReadmeFix): Call `UpdateNewVersionStanza'.
(HELP): Add export NAME and EMAIL examples to the beginning.
Adjust "Case A".
* bin/ (CygbuildBootVariablesGlobalMain):
(CygbuildCygcheckLibraryDepSource): Improve getopt regexp.
Correct python grep statement. New logic.
(CygbuildCmdInstallCheckBinFiles): Add lib/ and /share/PKG.
(CygbuildInstallFixFileExtensions): Correct find call.
Add handling for manual pages.
(CygbuildCmdInstallCheckBinFiles): Add Ruby library support.
(CygbuildInstallFixInterpreterMain): Add Ruby support. Change
to use recursive find. Include lib/ and share/ directories.
(CygbuildInstallFixInterpreterGeneric): New.
(CygbuildRubyLibraryList): New.
(CygbuildDefineGlobalCommands): Add RUBYBIN
(CygbuildInstallFixInterpreterMain): Correct find -type call.
(CygbuildConfOptionAdjustment): Fix detection of extra configure
(CygbuildCygcheckMain): Simplify function.
(CygbuildDefineGlobalCommands): emove CYGPATH. Not needed.
(CygbuildAskYes): Fix return status.
(CygbuildInstallPackageDocs): Handle filenames with spaces.
(CygbuildMakefileRunInstallCygwinOptions): Fix DOCDIR setting.
2008-03-11 Jari Aalto <>
* etc/lib/
-- Change all open command to 3-parameter form.
(HELP::Packaging commands): Update
`readmefix' command documentation.
(UpdateYears): New.
(UpdatePackageTags): New.
(FileWrite): Add binmode. Add debug.
* etc/template/Makefile.redirect.tmp (EXE): Add missing target ending
* bin/ (CygbuildCmdInstallCheckCygpatchDirectory):
Change find(1) call to `CygbuildFindDo'.
(CygbuildFindDo): Add more ignores. Like temporary,
monotone VCS and patch reject files.
(CygbuildCmdInstallCheckFSFaddress): New.
(CygbuildCmdInstallCheckMain): Use `CygbuildCmdInstallCheckFSFaddress'.
(CygbuildCmdReadmeFixMain): Completely rewritten.
(CygbuildCmdFixFilesReadme): New.
(CygbuildCmdFixFilesOther): New.
(CygbuildCmdReadmeFixFile): Completely rewritten.
(CygbuildCmdPerlModuleCall): Renamed. Was `CygbuildCmdReadmeFixFile'.
(CygbuildCmdFixFilesOther): Convert to recursive search.
(CygbuildCygcheckLibraryDepSource): Search for getopt. Add
option --with-filename to grep calls.
(CygbuildCmdDownloadUpstream): Use default for DIR_CYGPATCH.
(CygbuildCommandMainCheckSpecial): Move download command here.
(CygbuildCmdDownloadUpstream): Rewrote.
2008-03-09 Jari Aalto <>
* etc/template/ Document new arguments
to program: PRG and VER.
* bin/ (CygbuildGPGverify): Add to gpg call:
--no-permission-warning --no-secmem-warning --no-mdc-warning
(CygbuildCmdConfMain): Remove option -r from autoconf call.
No such options exists.
(CygbuildDefineVersionVariables): check for disk read error.
(CygbuildCmdInstallMain): Send PKG and VER to
(CygbuildBootVariablesGlobalMain): Add to config.guess, config.sub
(CygbuildPatchApplyRun): Make sure patch target files are writable.
2008-03-08 Jari Aalto <>
section `Porting and Python os.rename'.
command [shadow].
(OPTIONAL EXTERNAL FILES): Rephrase initial paragraph.
* bin/
(CygbuildInstallFixDocdirInstall): Ensure that target directory for
tar move exists.
(CygbuildInstallFixFileExtensions): check documentation for
(CygbuildIsCygwin): New.
(CygbuildIsLinux): New.
(CygbuildCygcheckLibraryDepSource): Rewrite logic. Detect SMTPSERVER
(CygbuildFindDo): Exclude version control directories.
(CygbuildTreeSymlinkCopy): Use `CygbuildFindDo'.
(CygbuildInstallPackageInfo): Use `CygbuildFindDo'.
(CygbuildTarDirectory): Simplify `status' check.
(CygbuildPatchApplyRun): Use `CygbuildIsCygwin' to check if
--binary option is needed.
(CygbuildTreeSymlinkCopy): Add missing continuation marker to
call `CygbuildFindDo'.
(CygbuildCommandMain): Remove command [reshadow].
* etc/template/ New file.
2008-03-07 Jari Aalto <>
* etc/lib/ Remove option -P|--prefix. Unneeded.
* bin/
(CygbuildCmdMkpatchMain): Remove j or z
option check. Convert tar options to --long format.
(CygbuildTarDirectory): Fix tar directory detection. If there
were files that conatined spaces, the function failed. Moving
$(NF) to column $6 fixes this. Remove j or z option check.
Convert tar options to --long format.
(CygbuildInstallFixDocdirInstall): Convert tar options to
--long format.
(CygbuildCmdDownloadCygwinPackage): Remove j or z option check.
(CygbuildCommandMain): Remove option -P|--prefix. Unneeded.
(CygbuildMakefileRunInstallMain): Rename. Was
`CygbuildMakefileRunInstall'. Obey --install-prefix option.
(CygbuildMakefilePrefixCheck): Rewrite logic how to
detect prefix= and PREFIX=.
(CygbuildBootVariablesGlobalCachePython): New. Add
(CygbuildDefineGlobalPythonVersion): New.
(CygbuildPythonLibraryDependsCache): New.
(CygbuildPerlLibraryDependsCache): Improve lib search regexp.
(CygbuildCmdInstallCheckPythonLibraries): New.
(CygbuildPythonLibraryList): New.
(CygbuildCmdInstallCheckBinFiles): Add python library check.
Moved Perl library code check to its own case. Removed
`continue' from file extension check if-statement.
(CygbuildCmdInstallCheckPerlLibraries): Sort dependencies.
(CygbuildBootVariablesGlobalMain): From
`cygbuild_opt_exclude_object_files' remove *.egg-info. This is
essential Python install information file.
(CygbuildCygcheckLibraryDepAdjustOld): Remove unused function.
(CygbuildStripCR): new.
(CygbuildCygcheckMain): Check is cygcheck is available.
(CygbuildPythonCheckImport): New.
(CygbuildPythonLibraryDependsMain): New.
(CygbuildBootVariablesGlobalMain): Remove *.egg-info from
from cygbuild_opt_exclude_object_files
(CygbuildMakefileRunInstallPythonFix): Remove subshell call.
(CygbuildCmdInstallCheckCygpatchDirectory): Remove subshell call.
(CygbuildInstallFixPermissions): New.
(CygbuildInstallFixMain): Use `CygbuildInstallFixPermissions'.
2008-03-06 Jari Aalto <>
* etc/lib/ (HELP::Contributing packages): Fix
ITP message example.
(GPG EXAMPLES): Cosmetic changes.
* bin/
-- Change Verb() calls to Warn() calls near [WARN] messages.
(CygbuildCmdAllMain): Remove interactive
step if signatures failed.
(top level): Change var+value into POSIX var:+value format.
Change -s (short) options in cat, diff ln, mv, rm, tar etc. to
--long options.
(CygbuildCmdInstallCheckShFile): New.
(CygbuildCmdInstallCheckShellFiles): Add cases for Bourne and
(CygbuildCmdInstallCheckPythonFile): Add arg FILE check.
(CygbuildCmdInstallCheckPerlFile): Add arg FILE check.
(CygbuildTarDirectory): Remove subshell from `wc' call. Remove
`cut' command.
(CygbuildInstallFixInterpreterPerl): Remove extra `set' command
near `wc'.
(CygbuildCmdAllMain): Add back signature verification and
interactive question.
(CygbuildCmdGPGVerifyMain): Add support for OPTION_FORCE.
(CygbuildPatchList): Simplify call to find command.
(CygbuildBootVariablesGlobalMain): Remove call to
`CygbuildIsGbsCompat'. Always call
(CygbuildBootVariablesId): If GBS, set correct CYGBUILD_PROG_LIBPATH.
(CygbuildIsDestdirSupported): Return immediately if no perl module.
Remove unneeded variable `out'.
(CygbuildTreeSymlinkCopy): Ignore version control directories.
(CygbuildCmdInstallCheckShellFiles): Pass -O extglob to bash checks.
(CygbuildCommandMainCheckSpecial): Correct regexp to detect command
(CygbuildCmdDownloadCygwinPackage9: Improve error message if package
was not found.
(CygbuildConfCC): Correct retval.log.1 to retval.log
(CygbuildInstallFixInfoInstall): Correct install to /etc/defaults.
(CygbuildInstallFixDocdirInstall): Correct /usr/share/doc/<pkg>/
relocation code.
2008-03-05 Jari Aalto <>
* README: (Dependencies): Remove.
* doc/README.txt: (Information for developers): Delete obsolete
Sourceforge information. Document commit message convention.
(Dependencies): Moved from top level REAME here.
* doc/cygbuild-rebuild.pod: Move location from bin/
* etc/data/etc/data/perl-5.8.8.lst: New file.
* etc/lib/ Move location from bin/
(HELP::QUICK OVERVIEW): Present import command.
(SYNOPSIS): Add brackets around -r. Not mandatory any more.
* bin/ (CygbuildDefineGlobalCommands):
Define GPG, WGET conditionally.
(CygbuildGPGavailableCheck): Change from negative tests
to positive tests.
(CygbuildCmdDownloadCygwinPackage): Rewrite WGET test.
(CygbuildCommandMain): Move `CygbuildDefineGlobalCommands'
here from CygbuildCommandMain().
(CygbuildCmdDownloadCygwinPackage): Rewite wget test.
(CygbuildDefineGlobalCommands): Remove variable BASH.
(CygbuildPathBinFast): Fix serious error. Return 1 if
path is not found.
(CygbuildMatchPatternList): Renamed. Was
(CygbuildBootVariablesId): Set CYGBUILD_PROG_PATH by searching
PATH as last resort.
(CygbuildCmdConfMain): Use CygbuildIsPerlPackage.
Add Python handling.
(CygbuildInstallCygwinPartMain): Improve error message.
(CygbuildBootVariablesGlobalCacheSet): Display message only
if verbose mode is on.
(CygbuildCmdMkdirs): Display message only
if verbose mode is on.
(CygbuildCommandMain::import): Add readmefix and move mkdir command.
(CygbuildCmdConfMain): Display message inly under verbose mode.
(CygbuildCmdInstallFinishMessage): Suggest sort. Handle test mode
(CygbuildBootVariablesGlobalCacheSet): Whole new logic. Remove
dependency to 'cygcheck -l perl'.
(CygbuildBootVariablesGlobalCachePerl): New.
(CygbuildBootVariablesGlobalLibSet): Set perl cache.
(CygbuildBootVariablesGlobalShareDir): New.
(CygbuildExitIfNoDir); Renamed. Was CygbuildExitNoDir.
(CygbuildExitIfNoFile); Renamed. Was CygbuildExitNoFile.
(CygbuildBootVariablesGlobalShareMain): Correct variable dir
at the end of function.
(CygbuildProgramVersion): Use ## prefix in non-color mode too.
(CygbuildCmdInstallCheckCygpatchDirectory): Correct refactored FIND.
(CygbuildCmdInstallCheckSetupHintDependExists): Under Linux, do not
check the install database.
(CygbuildHelpLong): Remove unneeded *.pl check.
(CygbuildHelpSourcePackage): Remove unneeded *.pl check.
(CygbuildPerlModuleLocation): Remove unneeded *.pl check.
(CygbuildCmdDependCheckMain): Remove unneeded *.pl check.
(CygbuildMakeRunInstallFixPerlMain): Streamline code.
(CygbuildIsDestdirSupported): Remove unneeded *.pl check.
(CygbuildCommandPath): Remove. Not used any more.
(CygbuildPerlModuleLocation): Remove. Not used any more.
(CygbuildBootVariablesGlobalLibSet): Display warning if *.pl
not found.
(CygbuildBootVariablesId): Remove PATH setting. Trust user.
(CygbuildCmdInstallCheckDocdir): Ignore image files.
(CygbuildCmdInstallCheckSetupHintDependExists): Correct
installed.db check.
(CygbuildCmdInstallCheckPerlLibraries): Display message only
if depends found.
(CygbuildCmdInstallCheckPerlFile): Display message only
if perl notes found. Replace bang-slash line in better way
by using tail command.
(CygbuildCmdInstallCheckPerlLibraries): Adjust displayed
(CygbuildInstallFixInterpreterPerl): Use variable retval.
(CygbuildInstallFixInterpreterPython): Use variable retval.
(CygbuildInstallFixPerlPacklist): Use variable retval.
(CygbuildDefineGlobalCommands): New variables PERLBIN PYTHONBIN.
(CygbuildInstallFixInterpreterMain): Use PERLBIN PYTHONBIN.
(CygbuildCmdInstallCheckBinFiles): Use PERLBIN PYTHONBIN.
(CygbuildInstallFixInterpreterPython): Use PYTHONBIN.
(CygbuildInstallFixInterpreterPerl): Display diff message
only under verbose. Detect and fix multiple shebang lines.
(CygbuildCmdInstallCheckPerlFile): Ignore warnigns from Perl base.
Display perl warnings only under verbose.
(CygbuildPatchList): Correct refactor leak SORT.
(CygbuildPatchCheck): Correct refactor leak SORT.
(CygbuildBootVariablesGlobalMain): Do not call
`CygbuildBootVariablesGlobalShareMain' when running GBS.
[ commit: 21c6baa ]
* bin/ (CygbuildBootVariablesGlobalCacheSet): Move
message. Clear CYGBUILD_CACHE_PERL_FILES if no cache can be set.
(CygbuildPerlLibraryDependsCache): Check cache variable.
[ commit: 0a6b221..6cc78b6 ]
* bin/ REFACTORING: Convert all $LS, $MV etc.
variables into regular calls in series of commits.
[ up to commit: 0a6b221 ]
* bin/ (HELP::QUICK OVERVIEW): Remove key id
and use $GPGKEY variable in example.
* README: Adjust short description.
(Version control information): Add new topic.
(Version control information): Moved from INSTALL.
(Dependencies): Moved from INSTALL.
* INSTALL: (Install instructions): Mention /usr/local and
prefix= setting. Remove verything but install instructions.
* Makefile: (install-etc-main-symlink): disable installing
/etc/cygbuild/programs.conf. No longer used.
(PL): Update location to etc/lib
($(DOCDIR)/cygbuild-rebuild.1): Update location to
(install-in-place): Remove target `install-etc-main-symlink'.
(install-etc-dir-template): Add data/
(install-etc-dir-structure): Renamed. Was `install-etc-dir-template'.
(install-etc): Add `install-etc-data'.
(install-in-place): Remove `install-man'.
(install-template-symlinks): Renamed. Was `install-etc-template-symlink'.
(install-share-data): Renamed. Was `install-etc-data'.
(install-share-template): Renamed. Was `install-etc-template'.
(install-share): Renamed. Was `install-etc'.
(install-data-symlinks): New.
(install-dir-structure): Renamed. Was `install-etc-dir-structure'.
* bin/ (CygbuildInstallFixInterpreterPerl): Improve
perl replace code. Display message only if something was done.
(CygbuildInstallFixInterpreterMain): Move message to function
(CygbuildDefineGlobalCommands): Disable loading configuration
(CygbuildBootVariablesGlobalEtcSet): Remove
CYGBUILD_CONFIG_PROGRAMS (/etc/programs.conf).
(CygbuildVersionControlType): Mention why ARCH and RCS are
not tested.
2008-03-04 Jari Aalto <>
* bin/ (HELP::LIBRARY USAGE): Remove initial
boot call.
(TROUBLESHOOTING): Adjust paragraph wording.
(Perl and double install is needed): Removed.
(Install commands): Remove traces of --init-db option.
(MISCELLANEOUS::Use of hardlinks): Add new topic.
(MISCELLANEOUS::setup.hint should list all dependencies): Add new
* bin/ (CygbuildCmdInstallCheckBinFiles): Add
bash and gawk dependency check.
(CygbuildIsDarcsPackage): New.
(CygbuildIsMonotonePackage): New.
(CygbuildVersionControlType): Add Monotone, Darcs detection.
(CygbuildMain): Under CYGBUILD_LIB, boot few variables.
(CygbuildCmdInstallCheckPerlFile): Add cp -l check.
(CygbuildCmdInstallCheckShellFiles): Activate function.
Funtion was unused due to file name bug in for-loop.
(CygbuildCmdInstallCheckPerlFile): Use relative filenames in
(CygbuildFindDo): New.
(CygbuildBootVariablesGlobalMain): Adjust CYGBUILD_FIND_EXCLUDE.
(CygbuildCmdInstallCheckTexiFiles): New.
(CygbuildCmdInstallCheckMain): Use `CygbuildCmdInstallCheckTexiFiles'.
(CygbuildCygcheckLibraryDepGrepTraditonal): Use variable CYGCHECK
(CygbuildDefineGlobalCommands): Move CYGCHECK and CYGPATH to
the beginning.
(CygbuildPostinstallWriteMain): Add comment about '#:<stanza>'
(CygbuildNoticeDevel): New.
(CygbuildCmdPackageBinMain): Remove unneeded status variable.
Call CygbuildNoticeDevel.
(CygbuildMakefilePrefixIsStandard): Change + to * in regext.
This finds prefix=value.
2008-03-03 Jari Aalto <>
* bin/ (CygbuildBootVariablesGlobalMain): Add
VERSION file to variable cygbuild_opt_exclude_tmp_files.
(CygbuildMakefilePrefixCheck): Adjust grep to find prefix=
(CygbuildCmdFilesWrite): Fix variable name from 'to' to 'todir'.
(CygbuildPatchList): Ignore */tmp/* directories.
(CygbuildConfOptionAdjustment): Notify about --with and --without
options in ./configure.
(CygbuildCmdBuildStdMakefile): move set -x call.
(CygbuildInstallFixEtcdirInstall): Add --quiet to egrep.
(CygbuildBootVariablesGlobalCacheSet): Add
(CygbuildDefineGlobalPerl): New.
(CygbuildDefineGlobalCommands): Define CYGPATH, CYGCHECK.
(CygbuildPerlLibraryDependsGuess): New
(CygbuildPerlLibraryDependsMain): Rewrite.
(CygbuildPerlLibraryDependsCache): New. Use
(CygbuildPerlLibraryList): Improve regexp to ignore comment lines.
2008-03-02 Jari Aalto <>
* bin/
(CygbuildIsMakefileCstandard): New.
(CygbuildIsMakefileCstandard): Restore from revno:40a593c
(CygbuildIsCplusplusPackage): Restore from revno:40a593c
(CygbuildBootVariablesGlobalMain): Add perllocal.pod
(CygbuildCygcheckLibraryDepMain): Add prefix 'depends: '
to all messages.
2008-03-01 Jari Aalto <>
* bin/ (dir): (CygbuildMakefileRunInstallCygwinOptions):
Fix reading of variable makefile.
(CygbuildMakefilePrefixCheck): Improve prefix check.
(CygbuildMakefilePrefixIsStandard): Improve prefix check.
(CygbuildBootVariablesId): Adjust PATH setting.
(CygbuildMakeRunInstallFixPerlPostinstall): Improve postinstall
(CygbuildInstallFixEtcdirInstall): Disregard pre/postinstall
(CygbuildCmdInstallCheckDocdir): Remeove head(1); won't work
on image files.
(CygbuildInstallFixInterpreterMain): Tighten regexp.
(CygbuildInstallFixInterpreterPerl): Improce substitution.
(CygbuildMakeRunInstallFixPerlPostinstall): Add -E to grep call.
2008-02-29 Jari Aalto <>
* bin/ (HELP::OPTIONS): Remove --init-pkgdb and
* bin/ (CygbuildCmdInstallFinishMessage): Restore
old code that used pwd. This is correct in packaging scripts.
(CygbuildIsRubyPackage): New.
(CygbuildMakefileRunInstallRubyMain): New.
(CygbuildCmdBuildMain): Add ruby support.
(CygbuildCmdCleanMain): Add ruby support.
(CygbuildCmdShadowMain): Add ruby support.
(CygbuildCmdConfMain): Add ruby support.
(CygbuildConfRubyMain): New.
(CygbuildDefineGlobalPackageDatabase): Remove
(CygbuildBootVariablesGlobalCacheSet): Remove CYGBUILD_CACHE_PAKAGES.
(CygbuildCommandMain): Remove options --init-pkgdb,
--nomore-space. Add option --lzma.
(CygbuildCompressManualPage): New.
(CygbuildBootVariablesGlobalMain): Add lzma, lzop, rzip to
(CygbuildFileTypeByExtension): Add Ruby.
(CygbuildCygcheckMainOld): Remove.
(CygbuildCmdInstallCheckBinFiles): Add Ruby.
(CygbuildIsMakefileCplusplus): Remove.
(CygbuildIsCplusplusPackage): Remove.
(CygbuildBootVariablesGlobalMain): Add RPM *.spec to
(CygbuildInstallPackageDocs): Fix error in include and exclude
(CygbuildCmdInstallCheckDocdir): Correct empty file check.
(CygbuildPostinstallWriteStanza): New.
(CygbuildPostinstallWriteMain): Rewrite logic. Add new input
argument STANZA.
(CygbuildInstallPostinstallPartEtc): Rename. Was
(CygbuildInstallFixInfoInstall): New.
(CygbuildInstallFixMain). Use CygbuildInstallFixInfoInstall.
(CygbuildInstallPostinstallPartInfo): New.
(CygbuildBootVariablesGlobalMain); Update
CYGBUILD_SETUP_HINT_CATEGORY according to setup.exe
2008-02-28 Jari Aalto <>
* bin/ Add support for new option
(CygbuildExitIfEmpty): New.
(CygbuildMakefileRunInstallCygwinOptions): Check missing
Makefile. Adjust PREFIX for perl installs.
(CygbuildMakefileRunInstall): Change 'docdir' from /usr/share/doc/PKG
to package specific /usr/share/doc/PKG-VER.
(CygbuildConfPerlMain): Read configure.env.options.
Display Perl call with --verbose.
(CygbuildCommandMain): Improve command 'import'.
(CygbuildPod2man): Fix call to date(1).
(CygbuildCommandMainCheckSpecial): Support multiple packages with
command cygsrc.
(CygbuildStrToRegexpSafe): Add characters: ()[].
* etc/template/install.tar.options.tmp: Add new options
* bin/ (HELP::OPTIONAL EXTERNAL FILES::install.tar.options)
Document new option cygbuild-no-docdir-guess
2008-02-27 Jari Aalto <>
* bin/ (CygbuildInstallDefaultsPostinstall): Escape
variable correcly, so the postinstall file contains contains the
name, not the value.
(CygbuildInstallPackageDocs): Use relative paths for ../examples
as necessary.
2008-02-26 Jari Aalto <>
* bin/
(CygbuildMakefileRunInstall): Remove call to
(CygbuildDebianRules2MakefileMaybe): Remove.
(CygbuildDebianRules2Makefile): Remove.
(CygbuildMakefileRunInstall): Notify about missing makefile.
(CygbuildInstallPackageDocs): Install also directories
examples, example and sample.
* bin/ (DebianRulesInstalldirs): Remove.
(DebianRulesInstall): Remove.
(DebianRulesProcess): Remove.
(DebianMakefile): Remove.
(DebianRulesMain): Remove.
(CygbuildInstallFixPermissions): Incorrect variable at the end.
Use `readList'.
(CygbuildMakefilePrefixCheck): Grep more files.
(CygbuildMakefileRunInstallCygwinOptions): correct
variable name verb to verbose.
2008-02-25 Jari Aalto <>
* bin/ (CygbuildDefineGlobalScript): Use
`CygbuildVersionInfo' instead of unreliable bash substitution
(CygbuildDefineVersionVariables): Remove exit and return
error code.
(CygbuildDefineVersionVariables): Remove extra code from end.
Die if `CygbuildDefineVersionVariables' fails.
(CygbuildCmdInstallCheckBinFiles): Warn about .py and .pl
(CygbuildDefineGlobalScript): Adjust SCRIPT_PKGVER.
2008-02-24 Jari Aalto <>
* bin/ (CygbuildPod2man): Add --release to pod2man.
(CygbuildCygcheckMain): Make sure slashes are correct.
(CygbuildInstallPackageDocs): Streamline function. If there
is no doc/ dir, still run the install if --include option is set.
(CygbuildIsDirEmpty): Remove die call.
(CygbuildFileConvertToUnix): Ignore *.rtf etc
2008-02-22 Jari Aalto <>
* bin/ (OPTIONAL EXTERNAL FILES::manualpage.1.pod):
Rename. Was manualpage.pod. Explain basics of manual page
* bin/
(CygbuildBootVariablesGlobalMain) Add *.{rej,bak,tmp} to
(CygbuildInstallPackageDocs): Comment out
pattern match code and use solely CYGBUILD_INSTALL_IGNORE.
(CygbuildInstallFixDocdirInstall): Protect regexp with
(CygbuildInstallFixDocdirInstall): Add --test mode support.
(CygbuildCmdFilesWrite): Add unpack support for template files.
E.g. install cygwin-announce.mail.tmp as cygwin-announce.mail.
(CygbuildInstallFixDocdirInstall): Return of nothing to do.
(CygbuildInstallExtraMain): Add `CygbuildMakeRunInstallFixPerlManpage'.
(CygbuildPerlLibraryDepends): New.
(CygbuildPerlLibraryList): New.
(CygbuildCmdInstallCheckPerlLibraries): New.
(CygbuildCmdInstallCheckBinFiles): Use
(CygbuildCmdDownloadCygwinPackage): Rename. Was
`CygbuildCmdGetSource'. Download binary package too.
(CygbuildCommandMain): Add option --dir to command 'cygsrc'.
(CygbuildCommandMainCheckSpecial): Renamed. Was
(CygbuildCmdDownloadCygwinPackage): Check wget error status.
(CygbuildCmdDownloadCygwinPackage): add MODE argument to
select only binary package download.
(CygbuildBootVariablesGlobalMain): Remove *.ps from
2008-02-21 Jari Aalto <>
* bin/ (top level): Remove old BASH test and change
to more reliable process substitution test.
(CygbuildPatchApplyMaybe): Add 2nd argument MSG.
(CygbuildCmdPrepMain): Move message 'applying included patches ...'
to the `CygbuildPatchApplyMaybe'. Improve error code handling
after `CygbuildPatchApplyMaybe'.
(CygbuildMakefileRunClean): Remove unused function.
(CygbuildCmdCleanMain): write messages only during verbose.
(CygbuildHelpShort): Correct option -C to -c. Rephrase few
(CygbuildIsSourceUnpacked): New.
(CygbuildCmdPrepPatch): Use `CygbuildIsSourceUnpacked'. Remove
extra rm *.o call.
(CygbuildPatchApplyRun): Add 'local opt', which causes nasty bug
During source package 'prep' phase.
(CygbuildCmdInstallCheckReadme): Shorten path names in messages.
2008-02-20 Jari Aalto <>
* bin/ (CygbuildVersionInfo): Fix small error
in version detection: foo1.2b was interpreted as [foo 1.2], not
[foo 1.2b].
(CygbuildMakefileName): Add few more guesses for the makefile.
(CygbuildMakefilePrefixIsStandard): Reduce guessed to $@ and *.mk.
Add error checking for empty files.
(CygbuildMakefileRunInstall): Send makefile name to
`CygbuildMakefilePrefixCheck' and `CygbuildMakefilePrefixIsStandard'.
(CygbuildMakefilePrefixCheck): Add input arg MAKEFILE and throw away
Makefile name guessing code.
(CygbuildCmdMkpatchMain): Check unpatch failure.
(CygbuildDefineGlobalCompile): Remove C++ autodetections.
(CygbuildPatchPrefixStripCountFromFilename): Return error code.
(CygbuildPatchPrefixStripCountFromContent): Return error code.
Improve -p1 detection.
(CygbuildMatchRemoveWord): New.
(CygbuildBootVariablesGlobalMain): Remove --binary from CYGBUILD_PATCH_OPT,
Under Cygwin it is legal only if destination file has CRLF.
(CygbuildPatchApplyRun): Use `CygbuildFileIsCRLF' to set patch
option --binary
(CygbuildFileIsCRLF): Check that FILE exists.
(CygbuildCmdInstallPatchVerify): New
(CygbuildCmdInstallMain): Use `CygbuildCmdInstallPatchVerify'
(CygbuildMsgFilter): Show patch patch in different color.
2008-02-19 Jari Aalto <>
* bin/ (CygbuildCmdReadmeRemoveFileSection): Remove
awk edit. Moved to perl library.
(CygbuildBootVariablesGlobalMain): Add --binary to CYGBUILD_PATCH_OPT.
(CygbuildPatchApplyMaybe): Fix problem with `unpatch' where not
all files ere patched.
(CygbuildBootVariablesGlobalMain): Remove
(CygbuildCmdPkgSourceCvsMain): Remove.
(CygbuildCmdPkgSourceMain): Remove version contol handling.
(CygbuildCommandMain): Remove --checkout option.
(CygbuildCmdPkgSourceCvsdiff): Remove.
(CygbuildBootVariablesGlobalMain): Remove CYGBUILD_CVSDIFF_OPTIONS.
Move CYGBUILD_DIFF_OPTIONS opions to new variable
(CygbuildCmdConfMain): Add case for
(CygbuildCmdReadmeFixFile): Remove binpkg tar `CygbuildExitNoFile' call.
(CygbuildCmdReadmeFixMain): Remove binpkg tar file check.
(CygbuildDefineGlobalMain): Change SCRIPT_CONFIGURE_CYGFILE and
SCRIPT_BUILD_CYGFILE use relative paths.
* bin/ (ReadmeFix): Add Copyright year update.
Remove 'files included...' section.
(HELP::OPTIONS): Remove --checkout option and related documentation.
Change -C to -c (color) short option.
(HELP::Other commands::download): Update perl webget project URL.
(PackageCVScoScript): Remove.
(PackageCVSmain): Remove.
(ReadmeFix): Add missing \n to 'Files included in' substitution.
2008-02-18 Jari Aalto <>
* bin/ (HELP::Packaging commands): Remove functionality
no longer presend in command `readmefix.
* etc/template/package.README (Language): Typo in word
'Licensed ...'. Corrected to Licensed.
* etc/template/build.env.options.tmp: Remove obsolte file.
* bin/
(CygbuildDefineGlobalMain): Remove obsolete EXTRA_BUILD_ENV_OPTIONS.
(CygbuildCmdBuildStdMakefile): Do not use EXTRA_BUILD_ENV_OPTIONS.
(CygbuildCmdPkgSourceStandard): Tighten regexp to *not*
include binary package in src package.
(CygbuildCmdBuildStdMakefile): Display Gcc version information.
(CygbuildCmdInstallCheckManualPages): Verify integrity of
compressed files.
(CygbuildCmdReadmeRemoveFileSection): New
(CygbuildCmdReadmeFixFile): Call `CygbuildCmdReadmeRemoveFileSection'
(CygbuildFileCmpReplaceIfDiffer): New.
2008-02-17 Jari Aalto <>
* etc/template/ New.
* etc/template/ New.
* bin/ (HELP::Other commands): Change
getsrc command to cygsrc.
* bin/ (CygbuildBootVariablesId): Remove unused
CVS based variables.
(CygbuildCommandMain): Change getsrc command to cygsrc.
(CygbuildFileConvertCRLF): New
(CygbuildFileConvertLF): New.
(CygbuildFileIsCRLF): New.
(CygbuildDefineGlobalMain): Define SCRIPT_PATCH_BEFORE,
(CygbuildBootFunctionExport): Export new functions.
2008-02-16 Jari Aalto <>
* etc/etc/programs.conf: Replace EGREPP with EGREP.
* bin/ (HELP::Patch management commands::patch):
Document new behavior that patches are searches recursively.
Mention about the use of sequential number in patch filenames.
* bin/
-- Replace all EGREPP with EGREP.
(CygbuildPatchList): New. Find any *patch
(CygbuildPatchApplyMaybe): Use `CygbuildPatchList'.
(CygbuildInstallFixEtcdirInstall): Ignore cd call error.
(CygbuildPatchApplyRun): Display patch name always.
(CygbuildCmdInstallCheckCygpatchDirectory): Loose dot from file
extension check so that *patch matches both .dpatch and .patch.
(CygbuildCmdInstallCheckDirStructure): Fix empty dir check.
(CygbuildCmdInstallCheckDocdir): Warn about missing doc/PKG dir.
(CygbuildInstallPackageDocs): Add files: Copyright, Install
(CygbuildBootVariablesGlobalMain): Remove 'debian' from
variable `cygbuild_opt_exclude_dir'.
(CygbuildCmdInstallCheckDocdir): Correct typo in find command
that cause error: -type: command not found
(CygbuildCmdInstallCheckLineEndings): Ignore error after head(1).
(CygbuildCmdInstallCheckSetupHintFieldNames): Renamed. Was
(CygbuildBootVariablesGlobalMain): New variable
(CygbuildCmdInstallCheckSetupHintFieldCategory): New.
(CygbuildCmdInstallCheckSetupHintMain): Use
(CygbuildCmdReadmeFixMain): Check missing archive and suggest
running command `package'.
(CygbuildPatchListDisplay): Fix displayed names.
(CygbuildPatchCheck): Display files first, then directories.
(CygbuildPatchList): Sort the patches. Ignore version controlled
2008-02-15 Jari Aalto <>
* bin/ (CygbuildCmdInstallDirClean): New.
(CygbuildCmdInstallFinishMessage): New.
(CygbuildInstallFixDocdirInstall): New.
(CygbuildInstallFixEtcdirInstall): New.
(CygbuildInstallFixEtcdirPostinstall): New.
(CygbuildDefineGlobalMain): Define $DIR_ETC_GENERAL
(CygbuildInstallFixMain): Use `CygbuildInstallFixDocdirInstall'
and `CygbuildInstallFixEtcdirInstall'.
(CygbuildInstallFixDocdirInstall): Remove empty directories.
(CygbuildCmdInstallCheckDirStructure): Check that there are no
files in tolevel usr/share usr/lib.
(CygbuildConfCC): Always include users' options from
configure.options. Do not clear e.g. --datadir. Move call
`CygbuildFileReadOptionsMaybe' after the libtool check.
(CygbuildCmdInstallMain): Move postinstall call to end.
(CygbuildInstallFixEtcdirInstall): Support test mode.
(CygbuildInstallFixDocdirInstall): Support test mode. Fix
nasty bug where variables weremixed up with the environment.
(CygbuildInstallFixEtcdirPostinstall): change cp(1) to
install(1) in postinstall script.
(CygbuildInstallFixDocdirInstall): Better doc/ check with ls(1).
Exclude Cygwin dir from doc/ check.
(CygbuildInstallFixEtcdirPostinstall): Correct /etc/default/<files> to
(CygbuildInstallDefaultsPostinstall): Rename. Was
`CygbuildInstallFixEtcdirPostinstall'. Make more general.
(CygbuildCmdBuildStdMakefile): Show make call if -v option is set.
(CygbuildShellEnvironenment): Fix bug where 'list' was newer
filled in.
(CygbuildPostinstallWrite): Shorten pathname in warning message.
* etc/template/package.README (Build instructions): Change
<PKG>-<VER>-<REL>-src to more generic <PKG>-*-src
(layout): Make all '------' lines equal lenght.
* bin/ (Package): Delete trailing slash from 'package-'
(ReadmeFix): Don't call ReadMeFilesIncluded().
2008-02-14 Jari Aalto <>
* bin/ (HELP::Packaging commands::publish): Document
new PACKAGE argument sent to external publish command.
* bin/ (CygbuildMakefilePrefixIsStandard): New.
(CygbuildMakefileRunInstallCygwinOptions): Use
`CygbuildMakefilePrefixIsStandard' and change automatically
to PREFIX if prefix= is not detected.
(CygbuildCmdReadmeFixFile): Adjust message display only
in verbose mode.
(CygbuildMakefileRunInstall): Remove debug `exit' calls.
(CygbuildPatchListDisplay): Remove unnecessary `cat'. Add sort -u.
(CygbuildCommandMain): Add alias `pcheck'
(CygbuildVersionInfo): Improve parsing packages like
(CygbuildCmdPublishSignature): Delete trailing slash from
input arg `dest'.
(CygbuildCmdPublishExternal): Send $PKG to external publish
(CygbuildReadmeReleaseMatchCheck): Improve release check.
(CygbuildMakefileRunInstall): check PREFIX for Makefiles.
(CygbuildMakefileRunInstallCygwinOptions): Change input argument
`pfx' to accept raw syntax `prefix=<value>'.
(CygbuildMakeRunInstallFixPerlPostinstall): Add PKG to
.postinstall_append to make the file unique.
(CygbuildCmdInstallCheckSetupHintQuotes): New.
(CygbuildCmdInstallCheckSetupHintMain): Use
(CygbuildMakefileRunInstallCygwinOptions): Display
make command if option -v is set.
(CygbuildIsDirEmpty): New.
(CygbuildMakeRunInstallFixPerlPostinstall): Refactor how
the postinstall script does things. Use
(CygbuildBootVariablesGlobalMain): Add [#~] to
(CygbuildCmdBuildStdMakefile): Fix message.
2008-01-31 Jari Aalto <>
* bin/ (CygbuildBootVariablesGlobalMain):
Fix typo at in variable `cygbuild_opt_exclude_version_control'.
2008-01-26 Jari Aalto <>
* bin/ (cygbuild_opt_exclude_version_control):
Add ignore pattern for quilt's state directories.
2007-12-21 Jari Aalto <>
* bin/ (Version): Support foo1.2.3
(Package): Support foo1.2.3
* bin/ (CygbuildCygcheckLibraryDepListFull): New,
replaces `CygbuildObjDumpLibraryDepList'.
(CygbuildCygcheckLibraryDepMain): Use
(CygbuildCygcheckLibraryDepMain): Add error checking.
(CygbuildCygcheckLibraryDepGrepPgkNamesMain): Add error checking.
(CygbuildVersionInfo): Support foo1.2.3
(CygbuildFilePackageGuessFromDirectory): Loosend version check.
(CygbuildCmdInstallCheckPkgDocdir); Ignore certain files.
(CygbuildHelpShort): Mention long options.
(CygbuildInstallTaropt2type): New.
(CygbuildInstallPackageDocs): Improve treatment of
(CygbuildInstallPackageInfo): Ignore .sinst
(CygbuildTreeSymlinkCopy): Remove egrep and use find -prune.
Delete *.dll *.la *.so if included in original package.
(CygbuildConfCC): Adjust --option list output (perl call).
2007-12-20 Jari Aalto <>
* bin/ (HELP::QUICK OVERVIEW): Mention command
* bin/ (CygbuildMakefileRunInstallPythonFix):
Check manual page location and fix it if needed.
(CygbuildInstallPackageInfo): change mkdir(1) to install(1).
(CygbuildCmdInstallCheckManualPages): Improve missing manual
page check.
(CygbuildMakefileRunInstall): Always run
(CygbuildCommandMain): Use quotes.
(CygbuildHelpLong): Call `CygbuildBootVariablesGlobalShareMain'
(CygbuildCygbuildDefineGlobalSrcOrigGuess): Support *.tgz *.tbz
(CygbuildTarOptionCompress): Support *.tbz
(CygbuildInstallPackageDocs): Obey directory references
like --include=contrib/* and create needed directory.
(CygbuildCygcheckMain): Send cygcheck output forward.
(CygbuildCmdInstallCheckPkgDocdir): Add contrib/ dir check.
2007-12-19 Jari Aalto <>
* bin/ (CygbuildCmdInstallCheckDirStructure):
Ignore /etc/X11/app-defaults
(CygbuildCmdInstallCheckSetupHintDependExists): Restore and remove
2007-12-18 Jari Aalto <>
* bin/
(CygbuildCmdPkgDevelStandardDev): Remove
process substitution.
(CygbuildCmdInstallCheckDirEmpty): Remove process substitution.
(CygbuildCmdInstallMain): Send path to custom install script.
(CygbuildLibInstallEnvironment): Add quotes.
(CygbuildDefineEnvClear): Unset INCLUDE_PATH
(CygbuildShellEnvironenment): Remove INCLUDE_PATH
(CygbuildCmdStripMain): Strip also *.so.
(CygbuildObjDumpLibraryDepList): New.
(CygbuildCygcheckMain: New implementation.
(CygbuildCygcheckLibraryDepGrepTraditonal): New.
(CygbuildCmdInstallMain): Send absolute path to external install
(CygbuildBootVariablesId): Add CYGBUILD_PROG_FULLPATH
(CygbuildBootVariablesGlobalMain): Add *.dll to
(CygbuildInstallFixPermissions): New implementation.
2007-12-15 Jari Aalto <>
* bin/ (CygbuildCmdInstallMain): Feed messages from through `CygbuildMsgFilter'.
(CygbuildMsgFilter): Treat >> and --- messages. Ner perl $ENV
(CygbuildBootVariablesGlobalColors): Add more color variations.
(CygbuildCmdInstallCheckBinFiles): Fix 'Binary name clash' message.
2007-12-14 Jari Aalto <>
* etc/template/ (InstallConffiles): Add cmp(1).
(CygbuildDefineGlobalMain): Rename CYGBUILD_FILE_MANIFEST_TO and
(CygbuildInstallCygwinPartMain): Treat new postinstall-manifest.lst
(CygbuildCmdInstallCheckPkgDocdir): Renamed. Was
(CygbuildCmdInstallCheckDocdir): New.
(CygbuildCmdInstallCheckMain): Use `CygbuildCmdInstallCheckDocdir'.
(CygbuildFileSize): New.
(CygbuildCmdInstallCheckSetupHintSdesc): Check that starting
sentence is capitalized.
(CygbuildPatchApplyMaybe): Fine tune message display. Unpatch: exit
immediately is there is no CYGWIN-PATCHES/done-patch.tmp. Adjust
verbose during 'GBS compat' mode.
(CygbuildCmdInstallMain): Display relative paths.
(CygbuildDefineGlobalMain): Use absolute path for
(CygbuildShellEnvironenment): Empty INCLUDE_PATH during compile
to make sure the environment is clean.
2007-12-13 Jari Aalto <>
* bin/ (CygbuildCmdBuildPython): Change to
use `CygbuildRunPythonSetupCmd' will will print less output.
(CygbuildRunPythonSetupCmd): On error dispay results.
(CygbuildCmdInstallMain): Send $0 to custom
2007-12-12 Jari Aalto <>
* bin/ (CygbuildConfPerlMain): Remove SITEPREFIX
(CygbuildMakeRunInstallFixPerlManpage): improve POD to manpage
(WasLibraryInstallMakefile): New.
(WasLibraryInstall): Use `WasLibraryInstallMakefile'.
2007-12-08 Jari Aalto <>
* bin/
-- Comment out all `CygbuildPerlModuleLocation' calls and
(CygbuildCommandMain): Add option -F|--force.
(CygbuildCmdPkgDevelStandard): Move manual pages from
devel-lib to devel-dev. Rewrote devel-dev. Split function.
(CygbuildCmdPkgDevelStandardDev): New.
(CygbuildCmdPkgDevelStandardLib): New. Fix version number.
(CygbuildCmdPkgDevelStandardBin): New.
(CygbuildCmdPkgDevelStandardDoc): New.
2007-12-07 Jari Aalto <>
* bin/
-- Add `trap' to clean temporary files.
(CygbuildCmdInstallCheckMain): Fix status code assignment.
(CygbuildCygcheckLibraryDepGrepPgkNames): Check
missing cache file better.
(CygbuildCmdGetSource): Now handles multiple patches
in Cygwin Net release source packages. Detect *.cygport
(CygbuildCmdConfAutomake): Simplify.
(CygbuildCmdConfMain): Run `CygbuildCmdConfAutomake' inside
.build, not $srcdir.
(CygbuildCmdPkgDevelStandard): Improve manual page search.
Add color support. Add bin package support
(CygbuildCmdPackageBinMain): New
(CygbuildCmdPackageDevMain): New
(WasLibraryInstall): New
(CygbuildCommandMain): Change indentation level in for-command loop.
(CygbuildReadmeReleaseMatchCheck): Do not display error
if CYGWIN/<pkg>.README is not found.
2007-12-05 Jari Aalto <>
* bin/
(CygbuildInstallPackageDocs): Fix --test more behavior. Do not
run the tar command.
(CygbuildInstallExtraBinFiles): New. Treat CYGWIN-PATCHES/bin
(CygbuildCmdInstallCheckMakefiles): New. Try to detect use of
static libraries.
(CygbuildConfCC): Warn about static library linking during
(CygbuildReadmeReleaseMatchCheck): Use relative path in message
(CygbuildCmdInstallCheckSetupHintMain): Broke long function
into pieces. Now also uses `CygbuildMsgFilter' everywhere to
display colored errors.
(CygbuildCmdInstallCheckSetupHintCategory): New. Improve
Perl and Python checks.
(CygbuildCmdInstallCheckSetupHintDependExists): New (split).
Change [OK] to plain OK.
(CygbuildCmdInstallCheckSetupHintLdesc): New (split)
(CygbuildCmdInstallCheckSetupHintSdesc): New (split)
(CygbuildCmdInstallCheckSetupHintFields): Completely new.
(CygbuildMsgFilter): Do not print() if there is no output.
Remove `unset' and add `local' declarations.
(CygbuildCmdInstallCheckDirEmpty): Add [0-9] to detect all
numeric content.
2007-12-03 Jari Aalto <>
* bin/ (BinPkgListing): Add support for *.gz
tar file.
(HELP::OPTIONS): Document -C|--color option.
New topic. Document new feature CYGWIN-PATCHES/bin.
* bin/ (CygbuildRunShell): Less output.
Collect python output to file and dispay them only
if verbose is set.
`cygbuild_opt_exclude_version_control' add .mtn.
`cygbuild_opt_exclude_version_control' add INSTALL.
(CygbuildPatchCheck): Display relative path to patch file.
(CygbuildInstallPackageDocs): Fix missing quotes from
(CygbuildCmdStripMain): Add '**' start message.
(CygbuildInstallExtraManualCompress): Ignore already compressed
(CygbuildPatchCheck): Use relative patch in messages.
(CygbuildCmdShadowDelete): Write message only if verbose on.
(CygbuildCmdShadowMain): Display relative paths.
(CygbuildCommandMain): New command line option -C|--color and
new variable OPTION_COLOR.
(CygbuildBootVariablesGlobalMain): Define CYGBUILD_COLOR_*
(CygbuildEcho): New
(CygbuildMsgFilter): New. Support colored messages.
(CygbuildProgramVersion): prepend '-- ' to output.
(CygbuildProgramVersion): Add color support
(CygbuildHelpShort): Remove non-essential option -x, -m and
add new option -C.
(CygbuildMsgFilter): Treat FATAL texts.
2007-12-02 Jari Aalto <>
* bin/ (ReadmeFix): Correct tags like: YYYY-MM-DD,
Firstname Lastname and YYYY.
* bin/
- Adjust indentation of all messages to '-- '
Check 1st line Perl and Python interpreter correctness.
(CygbuildInstallFixInterpreterPerl): New.
(CygbuildInstallFixInterpreterPython): New
(CygbuildInstallFixInterpreterMain): New
(CygbuildInstallFixPerlPacklist): New
(CygbuildInstallFixMain): Use
`CygbuildInstallFixInterpreterMain' and
(CygbuildCmdAllMain): New.
(CygbuildCommandMain): New command 'almostall'.
Changed command 'upstream-download' to 'download'
(Help): Document 'almostall'.
(CygbuildBootVariablesGlobalMain): New variable
`cygbuild_opt_exclude_other'. Update variable
(CygbuildWhichCheck); New.
(CygbuildRunIfExist): New.
(CygbuildPatchDiffstat): New.
(CygbuildGPGsignFiles): Display relative filename
(CygbuildGPGsignFiles): Adjust output messages.
2007-11-30 Jari Aalto <>
* etc/template/install.tar.options.tmp: Remove Copyright
* etc/template/upstream.perl-webget: Remove Copyright
* etc/template/setup.hint: Adjust comments
* bin/
CYGBUILD_DIFF_OPTIONS: Ignore config.status.
(CygbuildCommandMain): Add alias 'pchk' as 'patch-check'.
Fix 'setup.hint category should include...'. The
awk variable 'line' was replaced with correct '$0'.
Read user options from CYGWIN-PATCHES/configure.options.
Add INSTALLDIRS=vendor and set correct PREFIX=/usr
(CygbuildInstallFixPermissions): Wrong syntax FIND => $FIND
(CygbuildMakeRunInstallFixPerl): Impre error checking of
(CygbuildMakeRunInstallFixPerlManpage): New.
2007-11-29 Jari Aalto <>
* etc/template/ (InstalInfo): Added quotes
and removed extra $(ls ...) call. Not neeed in for-loop.
2007-11-06 Jari Aalto <>
* bin/
Improve ldesc: double quote check.
2007-11-04 Jari Aalto <>
* bin/ (CygbuildCmdInstallCheckSetupHint):
Add check for finding double quotes from ldesc: portion.
2007-10-29 Jari Aalto <>
* bin/ (CygbuildVersionInfo): Add support for
foo_V1.1, foo-1.1-rc1
* bin/ (Version): Add support for
foo_V1.1, foo-1.1-rc1
2007-10-28 Jari Aalto <>
* etc/template/package.README: Remove 'Other version' tag
from the end.
2007-10-27 Jari Aalto <>
* etc/template/Makefile.tmp (install): Replace
$(PACKAGE) target with 'all'.
(EXE): Fix rule to use $OBJS, not $SRCS
2007-10-26 Jari Aalto <>
* bin/ (CygbuildInstallExtraManualCompress):
Remove find(1) calls from if-statements. This fixes bug,
where function got stalled, because there was no files
to compress.
(CygbuildCmdInstallCheckCygpatchDirectory): Ignore
*.tmp and *[#~] files from whitespace check.
(CygbuildMakefileRunInstall): If there is no Makefile,
Call CygbuildNoticeBuilddirMaybe() first.
(CygbuildCmdInstallCheckDirStructure): Added /use/share/
content check.
2007-10-18 Jari Aalto <>
* etc/template/*: Change all 'Your Name' phrases to
'Firstname Lastname'.
* bin/ (CygbuildCmdInstallCheckReadme): Search
phrase 'Firstname Lastname'.
(CygbuildConfCC): Change variable $conf from srcdir to
(CygbuildCmdConfMain): Handle autoreconf case better.
(CygbuildBootVariablesGlobalMain): Add .git and
2007-10-01 Jari Aalto <>
* bin/ (CygbuildCmdInstallCheckShellFiles):
shorten message by using relative path. Display symlink destination.
Correct for-loop to check only files.
(CygbuildCmdInstallCheckSetupHint): Correct variable name 'retval'.
Added 'category:' line check.
(CygbuildDefineGlobalCommands): Rewrote perl and python handling.
(CygbuildSetLDPATHpython): Use PYTHON_LIBDIR.
(CygbuildPatchApplyMaybe): if there is no *.patch, ignore ls(1)
cygbuild_opt_exclude_object_files: exclude *egg-info
(CygbuildPatchCheck): Adjusted regexp to check *.c files.
Display file name in message 'patch contains files'.
(CygbuildInstallFixPermissions): New.
(CygbuildChmodExec): Change +x to ugo+x.
(CygbuildChmodDo): New.
2007-09-30 Jari Aalto <>
* bin/ (CygbuildPatchApplyMaybe): Unpatch files
in reverse order.
2007-09-28 Jari Aalto <>
* bin/ (CygbuildCmdInstallCheckReadme):
Corrected version regexp.
(CygbuildCmdInstallCheckLibFiles): Fix call to cygcheck function.
(CygbuildReadmeReleaseMatchCheck): Impreoved awk gsub() regexp.
(CygbuildInstallFixMain): New.
(CygbuildInstallFixMandir): New.
(CygbuildCmdInstallCheckLibFiles): Comment out one echo.
2007-09-20 Jari Aalto <>
* etc/template/ (InstallConffiles): Use 'egrep -E'
and better regexp to ignore also empty lines.
preremove-manifest-from.lst): Correct #PKGDIR to $PKGDIR.
* bin/ (CygbuildVersionInfo): Rewrote substitution
commands. Now Debian special *.orig extension is handled correctly.
(CygbuildCommandMain::repackage-all,repackage-bin): Remove check
(CygbuildRunShell): Removed 'cd'. Run in current directory.
(CygbuildSetLDPATHpython): More careful LD_LIBRARY_PATH and
$LD_RUN_PATH treatment.
(CygbuildCmdInstallCheckDirStructure): Added /etc check
(CygbuildShellEnvironenment): Define DESTDIR and prefix.
(CygbuildCmdInstallCheckManualPages): Tighten manual page directory
2007-09-19 Jari Aalto <>
* etc/template/install.tar.options.tmp: Mention
* bin/ (HELP::OPTIONAL EXTERNAL FILES::diff.options):
Clarify paragraphs.
(HELP::OPTIONAL EXTERNAL FILES::install.tar.options): Document
* etc/template/Makefile.tmp (clean): Added comments next
to targets.
(ETCDIR): Remove extra $.
* bin/ (CygbuildFileReadOptionsMaybe):
Shorten displayed message.
(CygbuildCmdBuildMain): Shorten displayed message.
(CygbuildInstallPackageDocs): Support new option
(CygbuildCmdInstallCheckCygpatchDirectory): Ignore *.orig* files.
(CygbuildMatchBashPatternList): Moved to primitives.
(CygbuildIsMakefileCplusplus): Change \t to [[:space:]].
(CygbuildMakefilePrefixCheck): Change \t to [[:space:]].
(CygbuildCmdInstallCheckCygpatchDirectory): Change \t to [[:space:]].
(MakefileUsesRedirect): Change \t to [[:space:]].
(CygbuildInstallPackageDocs): Add option --dereference to tar,
so that documentation is copied 'as is'.
(CygbuildCmdInstallCheckSetupHint): Convert PKG into safe regexp
before testing words from 'ldesc:'.
(CygbuildPatchApplyMaybe): Use grep option --fixed-strings to
match already applied patches. Fixed $continue variable name
which caused reapplying already applied patch.
(CygbuildIsCplusplusPackage): New.
(CygbuildMakefileName): Fix "$@" handling.
(CygbuildDefineGlobalCompile): Fix C++ code check and definition
of 'ccache g++'.
(CygbuildDefineGlobalMain): Remove call to
`CygbuildDefineGlobalCompile'. It is too early when package
may not be even unpacked yet (Cygwin source pacakging GBS).
(CygbuildCmdBuildMain): Call `CygbuildDefineGlobalCompile'
2007-09-18 Jari Aalto <>
* etc/etc/programs.conf (EGREP): Replace option
--perl-regexp with --extended-regexp.
(EGREPP): New.
* bin/
- Fix source package generation with version number like
(CygbuildCmdMkpatchMain): Shorten
paths in messages.
(CygbuildStrToRegexpSafe): New
(CygbuildCmdInstallCheckReadme): Use `CygbuildStrToRegexpSafe'.
(CygbuildCmdPkgSourceStandard): Use `CygbuildStrToRegexpSafe'.
(CygbuildFilePackageGuessMain): Use `CygbuildStrToRegexpSafe'.
(CygbuildDefineGlobalCommands): EGREP Replace option
--perl-regexp with --extended-regexp. New variable EGREPP.
(CygbuildHelpSourcePackage): Cosmetic change to displayed
(CygbuildIsSourceProgram): New.
(CygbuildIsGbsCompat): Use `CygbuildIsSourceProgram'
(CygbuildPerlModuleLocation): Use `CygbuildIsSourceProgram'
2007-09-15 Jari Aalto <>
* bin/
- Converted all \< and \> in egrep calls to perl syntax \b.
(CygbuildCmdMkpatchMain): Force unapplying local patches, no
matter what while taking the diff.
(CygbuildPatchApplyMaybe): Added call argument modifiers options
'-force', '-quiet' and '-nostat'.
(CygbuildPatchCheck): Removed message that lists applied
(CygbuildPatchListDisplay): New.
(CygbuildCommandMain::patch-check): Call `CygbuildPatchListDisplay'.
2007-09-14 Jari Aalto <>
* bin/ (HELP::OPTIONS): Document new option --bzip2.
* etc/etc/programs.conf (GREP): Changed --extended-regexp
to --perl-regexp. Needed for TAB \t in regexps.
* bin/
- Check CYGWIN-PATCHES/* for trailing whitespace.
- Shorted many messages relative to srcdir.
(CygbuildCygcheckMain): Renamed. Was
(CygbuildCygcheckLibraryDepMain): Exit immediately if
no library dependencies found.
(CygbuildCmdInstallCheckSymlinkExe): Renamed. Was
(CygbuildCmdInstallCheckCygpatchDirectory): New.
(CygbuildCmdInstallCheckMain): Use
(CygbuildPatchApplyRun): Improved handling of additional options
by using $@.
(CygbuildPatchApplyMaybe): Improved patch/unpatch and error
checking in case the commands were called multiple times.
Show the full patch command only if --verbose is set.
(CygbuildCmdInstallCheckDirStructure): Changer ERROR
to WARN if /bin was found.
(CygbuildInstallExtraManual): The *.N.pod pages are converted
into *.N. Delete these generated pages after the install.
(CygbuildCmdInstallCheckCygpatchDirectory): Display file in error:
Possible unfilled template line
(CygbuildCmdInstallCheckSymlinks): Fix iWARN indentation: 2 more
spaces to the right.
(CygbuildCmdInstallCheckCygpatchDirectory): Adjust 'your name'
regexp by leaving out [<] test.
(CygbuildInstallPackageDocs): Adjust indentation of message
'Fixing permission'
(CygbuildVersionInfo): once again fix version number handling
with multiple word names: one-two-three-N.N.
2007-09-13 Jari Aalto <>
* bin/
- Added new option --bzip2 to choose *.bz2 compression.
(CygbuildDefineGlobalCommands): GZIP
incorrectly defined as 'bzip'. New variable BZIP.
(CygbuildCompress): New. Support both gzip and bzip2.
(CygbuildInstallExtraManualCompress): Call `CygbuildCompress'
(CygbuildProgramVersion): New.
(CygbuildCommandMain): Added getop handling for --bzip2 and
treatment in while loop to set OPTION_BZIP. Removed
options -V|--version that are already handled in
`CygbuildCommandMainCheckHelp'. Call `CygbuildProgramVersion'.
Don't call `CygbuildReadmeReleaseMatchCheck' when GBS mode
in on (when running the *.sh source script).
(CygbuildGPGverify): Added missing backslash from comand
continuation at gpg --verify. The log file appeared empty and caused
message 'FAILED! Signature not published'.
2007-09-11 Jari Aalto <>
* bin/ (Version): Support exotic version number like
* bin/
- Fix "perl: warning: Setting locale failed" by defininf LC_ALL=C
in suitable places.
(CygbuildMakefileRunInstallPythonMain): Set
prefix to /usr, not /usr/share. Rewrote input argument
handling to use shift and $@.
(CygbuildCmdInstallCheckDirStructure): Warn about deprecated
X11R6 directory.
(CygbuildVersionInfo): Support exotic version number like
(CygbuildBootVariablesGlobalEtcMain): Check GBS compat and do
not require ETC to be installed.
(CygbuildCmdInstallCheckDirEmpty): New.
(CygbuildVersionInfo): Greatly simplified the version explode
(CygbuildIsNumberLike): Relax regexp not to include leading anchor.
(CygbuildCmdInstallCheckReadme): README file name checking
(CygbuildCommandMain): Move `CygbuildDefineGlobalScript'
to the beginning.
(CygbuildCmdBuildStdMakefile): Renamed, was
(CygbuildCmdPrepMain): Move `CygbuildCmdPrepPatch' call inside
(CygbuildDefineGlobalScript): Moved initialization of variables
(CygbuildHelpSourcePackage): Message improved for no-build-source.
(CygbuildSrcDirLocation): Improved recognition.
2007-09-10 Jari Aalto <>
* bin/ (CygbuildCmdInstallCheckSymlinks); New.
2007-09-07 Jari Aalto <>
* bin/
- Moved many function to the beginning as "primitives"
- Added initial support to run program under Linux
(CygbuildPerlModuleLocation): Check
'in place installation'. If user has just unpacked the sources
or uses a VCS checkout, then determine the Perl library location.
(CygbuildBootVariablesGlobal): New variable
(CygbuildBootVariablesGlobalCacheSet): New.
(CygbuildBootVariablesGlobalCacheMain): New.
(CygbuildBootVariablesGlobalShareSet): New.
(CygbuildBootVariablesGlobalShareMain): New.
(CygbuildBootVariablesGlobalEtcSet): New.
(CygbuildBootVariablesGlobalEtcMain): New.
(CygbuildBootVariablesGlobalLibSet): New.
(CygbuildBootVariablesGlobal): Moved functionality to new
functions above.
(CygbuildBootVariablesGlobalMain): Renamed. Was
(CygbuildBootVariablesId): New variables CYGBUILD_PROG_PATH and
(CygbuildTemplatePath): Removed.
(CygbuildCmdFilesMain): Removed call to `CygbuildTemplatePath'
* bin/ Send 2 additional arguments to
CYGBUILD_PUBLISH_BIN: version and release.
* bin/ (HELP::Packaging commands::publish). Document
that CYGBUILD_PUBLISH_BIN now takes 5 arguments instead of previous
2007-09-06 Jari Aalto <>
* etc/etc/programs.conf: Arrange all entries in alphabetical
order. Added missing GPG variable.
* bin/ (CygbuildBootVariablesId): Put quotes around
(CygbuildDefineGlobalCommands): Removed /usr/local special
case for GPG.
2007-09-01 Sat Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (function CygbuildDefineGlobalCommands()): 1.937
Streamlines. The PATH makes sure /usr/bin programs are used.
(function CygbuildCygcheckLibraryDepGrepPgkNames()): 1.937
Completely rewritten. Now uses solely awk. The new implemention
is simpler and faster.
(top level::CYGBUILD_HOMEPAGE_URL): Updated to freecode.
2007-08-30 Thu Jari Aalto <jari dot aalto A T cante dot net>
* etc/template/install.tar.options.tmp: 1.4 Added example for new
option: --include
* bin/ (Version): 1.257 Correct handling of complex
package name foo-1.80+dbg-0.61.tar.gz
* bin/ (function CygbuildShellEnvironenment()): 1.937
(function CygbuildRunShell()): 1.937 Slimmed. Moved code to
(function CygbuildCmdBuildMainMakefile()): 1.937 Removed duplicate
environment code. Use `CygbuildShellEnvironenment'
(function CygbuildDefineGlobalCompile()): 1.937 Initially
set CC=gcc and CXX=g++
(function CygbuildMakefilePrefixCheck()): 1.937 Check
if there already is custom and do not display
message about it.
(function CygbuildInstallTaropt2match ()): 1.937 Added input
parameter $type, which control if exclude or include is wanted.
(function CygbuildInstallPackageDocs()): 1.937 Support new
--include from install.tar.options
(function CygbuildPatchPrefixStripCountFromContent()): 1.937
Removed `mercurical' variable and replaced with generic one.
(CygbuildInstallPackageDocs): Use builddir, not srcdir for
installation source directory.
2007-08-29 Wed Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (function CygbuildCmdPrepPatch()): 1.937
More accurate check for determining if cygwin patch was
already applied.
2007-08-28 Tue Jari Aalto <jari dot aalto A T cante dot net>
* bin/ 1.8 Removed Id. Changed VERSION.
* bin/ (function CygbuildCommandMainCheckHelp()): 1.937
Moved -V|--version here from `CygbuildCommandMain'.
(function CygbuildHelpLong()): 1.937 Added new argument $exit.
(function CygbuildHelpShort()): 1.937 Added new argument $exit.
(CygbuildHelpShort::NOTES): 1.937 Removed checkout instructions.
(function CygbuildCygcheckLibraryDepAdjust()): 1.937
The indentation level proved to be unreliable source of depend
information. Restoeed old behavior. See
<> for
more information.
* bin/cygbuild-rebuild.pod: (HELP): Removed AVAILABILITY
* bin/ ($URL): Unused variable removed.
(top level::Id): tag removed.
(HELP::OPTIONS): Removed version control software names
from --checkout option description.
* README: (Information for developers): Removed sourceforge
information. Removed all CVS information and replaced it
with generic VCS instructions.
(Information for developers::Using CVS commands from Emacs):
Topic removed.
* etc/makefile/ (TAR_OPT_NO):Ignore git, bzr, hg, RCS.
* etc/etc/programs.conf (EGREP): Added
* bin/ 1.937
(CygbuildCygcheckLibraryDepMain): Renamed.
Was `CygbuildCygcheckLibraryDep'. Call
`CygbuildCygcheckLibraryDepAdjust'. Added check for missing library
from package.README.
(CygbuildCygcheckLibraryDepAdjust): New.
(CygbuildFileDeleteLine): New.
(CygbuildCygcheckLibraryDepList): New.
(CygbuildCygcheckLibraryDepReadme): New.
(CygbuildCygcheckLibraryDepSource): New.
(CygbuildCygcheckLibraryDepSetup): New.
(CygbuildCygcheckLibraryDepGrepPgkNames): New.
(CygbuildBootVariablesId::CYGBUILD_RETVAL): Added $USER to make
it multiuser resistant.
(CygbuildDefineGlobalCommands::EGREP): Added
and CYGBUILD_VERSION at the beginning.
2007-08-27 <jari aalto A T cante net>
* bin/ (CygbuildCmdInstallCheckDirStructure):
Added check for /bin which should be /usr/bin. Added
check for /doc which should be /usr/doc.
(CygbuildIsGitPackage): New.
(CygbuildVersionControlType): Use `CygbuildIsGitPackage'.
(CygbuildCmdInstallCheckReadme): Handle special character '+'
in version, like 0.3+git20070827-1
* bin/ (Package): Fixed 'regexp quote'. Package
name that contained plus sign did not work. E.g.
2007-08-25 <jari aalto A T cante net>
* bin/ (CygbuildCmdStripMain): Call strip(1)
only once instead of for every file. This is faster.
* etc/template/ (PATH): Added quotes.
* etc/template/ (PATH): Added quotes.
* etc/template/ (PATH): Added quotes.
* etc/template/ (InstallMake): Simplified a bit.
Changed from /bin/bash to /bin/sh
2007-08-24 <jari aalto A T cante net>
* bin/ (CygbuildCmdInstallSymlinkExe): New check.
(CygbuildCmdInstallCheckMain): Call `CygbuildCmdInstallSymlinkExe'.
(CygbuildPathResolveSymlink): Duplicate PATH/PATH/binary, when
shoudl have been PATH/binary fixed. Introduced new $abs variable
for absolute path.
(CygbuildPathBinFast): Added /usr/sbin and /sbin checks.
(CygbuildCygcheckLibraryDep): Added setup.hint check.
Use `CygbuildWarn', not `echo'.
2007-08-23 <jari aalto A T cante net>
* bin/ (CygbuildCygcheckLibraryDep):
Added search for execvp() call from *.c and *.cc files
to warn about need for additional dependencies.
(PackageUsesLibtoolMain): Tightened regexp. Require
word boundary \< .. \>
(CygbuildDefineGlobalCompile): Define CYGBUILD_AM_LDFLAGS
2007-08-22 <jari aalto A T cante net>
* etc/template/package.README: Added 'Forum or Wiki:'
* bin/ (CygbuildIsSrcdirOk): Allow excotic
version numbers: *-*[0-9] => *-*[0-9]*
Removed --set-utc
(CygbuildConfOptionAdjustment): Adjust proper options that
./configure supports.
(CygbuildConfCC): Call CygbuildConfOptionAdjustment to
get proper options.
(CygbuildCommandMain): Debug option (-d) can now be
given without LEVEL. It defaults to 1 with warning.
(CygbuildInstallPackageDocs): Under --test mode
variables $mode644 and $mode755 are empty. Added check.
2007-08-21 <jari aalto A T cante net>
* etc/template/install.tar.options.tmp: Clarified comment
at the beginning.
* bin/ (CygbuildCommandMain): Commands
'repkgbin' and 'repkgdev': Removed call to publish.
(CygbuildBootVariablesGlobal): Added *,v to variable
(CygbuildCmdInstallCheckDirStructure): Added missign $pfx
from usr/sbin and X11 directory (incorrect check fixed).
(CygbuildCmdInstallCheckShellFiles): Changed plain `return' to
`return 0' to fix incorrect return code. Added /usr/sbin
check. Added $CYGBUILD_PREFIX.
(CygbuildCmdInstallCheckBinFiles): Added /usr/sbin check.
(CygbuildCommandMain): Adjusted command 'all'. When running
under GBS mode, do not try to build source package.
(PackageUsesLibtoolMain): Regexp fixed.
(CygbuildRunShell): Adjusted flag settings.
(CygbuildDefineGlobalMain): Removed unused FILE_LIST_ALL.
(CygbuildCmdGPGSignMain): Removed FILE_LIST_PKG.
(CygbuildCmdPkgDevelStandard): Major surgery to make this
even remote working.
(CygbuildInstallPackageDocs): Simplified chmod for-loop.
Much faster now with separate $mode644 and $mode755 variables.
(CygbuildMakefileRunInstallCygwinOptions): Added DOCDIR to
makefile call
(CygbuildCmdInstallCheckDirStructure): Check incorrect
(CygbuildConfigureOptionsExtra): Added --with-app-defaults
(CygbuildIsX11appDefaults): Check also configure
(CygbuildGrepCheck): Changed short options to readable --long
(PackageUsesLibtoolMain): tightened regexp. Just word 'libtool'
search is too simple. The text could be in comments.
(CygbuildConfCC): Print options in sorted order.
(CygbuildInstallExtraManualCompress): Removed for-loop from
gzip. Compressing all files at once is faster.
(CygbuildPathResolveSymlink): initialize $patch with current
directory ".". Changed /bin paths to /usr/bin.
Fixed bug concerning the symbolically linked manual pages;
Dind't compress those.
2007-08-20 Jari Aalto <jari aalto A T cante net>
* bin/ (CygbuildCmdInstallCheckSetupHint):
Removed option -F and added option --files-with-matches
from grep(1) in for-loop. Print [OK] messages always, not
just during verbose.
(CygbuildCmdPkgDevelStandard): Major improvements. But there
is still work to do. Command 'pkgdev' does not yet work
2007-08-19 Jari Aalto <jari aalto A T cante net>
* etc/etc/programs.conf (WGET): New.
* bin/ (CygbuildCmdGetSource): Require
end anchor in AWK 're' during search of package name.
(CygbuildFileDaysOld): New.
(CygbuildDefineGlobalCommands): Added WGET
(CygbuildCmdGetSource): Check if cache file is too old and
retrieve new one automatically.
(CygbuildCygcheck): Change patch from /bin to /usr/bin
(CygbuildCygcheckLibraryDep): New.
(CygbuildDefineGlobalCommands::EGREP): Changed -E to
more readable --extended-regexp.
(CygbuildCmdInstallCheckBinFiles): Do not display
absolute path for possible Perl, Python dependency for
file; only relative to .inst/ directory.
2007-08-18 Jari Aalto <jari aalto A T cante net>
* bin/ (CygbuildCmdInstallCheckBinFiles):
Improved messages to print relevant file names as well.
2007-08-17 Jari Aalto <jari aalto A T cante net>
* bin/ (Version): Use version check
\d+[^-]+, not \d+\.[^-]+ because there really exotic pakages
like xterm-229.tar.gz
NOTE: 1.905 includes extensive changes
- Includes support for exotic verion schemes, like 1.3.4beta2+1
- Many statements were converted to a safer format.
- Example: [ -d $var ] => [ -d "$var" ]
- Example: cp $from $to => cp "$from" "$to"
* bin/ (CygbuildCmdPkgBinaryMain): typo
(CygbuildHelpSourcePackage): Check $CYGBUILD_STATIC_PERL_MODULE
(CygbuildCommandMain): Added `shift' at the beginnign to
remove $1, in case it's the program name.
(CygbuildCmdGetSource): Small fixes, more accurate handling and
better messages.
(CygbuildBootVariablesGlobal): Renamed CYGBUILD_DATA_DIR
to CYGBUILD_SHARE_DIR. Fixed Location of
(CygbuildDefineVersionVariables): Use version check
[0-9]*, not [0-9]*.*[0-9] because there really exotic pakages
like xterm-229.tar.gz
(CygbuildCheckRunDir): New. Warn about incorrect $cwd.
(CygbuildCommandMain): Call `CygbuildCheckRunDir'
2007-08-16 Jari Aalto <jari aalto A T cante net>
* etc/makefile/ (install-bin-pl): New.
(install-bin-sh): New.
(install-bin-pl): New. Install to /usr/share/cygbuild/lib
instead of /usr/bin
(install-bin-symlink): Remove *.sh extension during install.
(clean-install): Removed.
* bin/ (HELP::Packages with non-standard versioning
schemes): Topic removed.
(HELP::QUICK OVERVIEW) Case B removed: unusual verison schemes.
(CygbuildMakefileName): Changed $* to $@ and added quotes
around filename variables.
(HELP::Other commands::getsrc): Document new command.
(HELP::Patch management commands): New topic.
(Release): Added support for foo-N-Npre3-2 style versioning
(Version): Added support for foo-N-Npre3-2 style versioning
* bin/ (CygbuildDefineGlobalCommands):
Check variable $file better.
(CygbuildVersionInfo): Now understands other than foo-N.N, like
foo-N.NpreN etc. version schemes.
(CygbuildFilePackageGuessFromDirectory): Restored change made
in 2007-08-12
(CygbuildCmdConfMain): Call `CygbuildCmdShadowDelete' before
(CygbuildDefineVersionVariables): Use [0-9]*.*[0-9]* and not
[0-9]*.*[0-9] to match version number: e.g. '1.20beta'
(CygbuildBootVariablesGlobal): New CYGBUILD_DATA_DIR.
Relocated to /usr/share/cygbuild/lib
(CygbuildCommandMain): Assume release number 1, if user hasn't
set -r RELEASE. Added new command `getsrc'.
(CygbuildCmdGetSource): New.
(CygbuildCmdBuildMainMakefile): Rewrote how to pass CFLAGS,
LDFLAGS flags to `make' call
2007-08-14 Jari Aalto <jari aalto A T cante net>
* bin/ (CygbuildMakefilePrefixCheck):
check also src/Makefile for DESTDIR. Added -q to grep options
when verbose is not in effect.
2007-08-12 Jari Aalto <jari aalto A T cante net>
* bin/ (CygbuildFilePackageGuessFromDirectory).
Require that the directory name ends to *[0-9], not just *[0-9]*.
(CygbuildCmdBuildPython): Changed LDFLAGS from
-Wl,-no-undefined to plain -no-undefined
(CygbuildRunShell): LDFLAGS treatment fix.
(CygbuildReadmeReleaseMatchCheck): Simplified call to
(CygbuildCmdPkgSourceStandard): Downgraded message 'Deleting old
release' from WARN to NOTE
2007-08-10 Jari Aalto <jari aalto A T cante net>
* bin/ (CygbuildCmdPkgSourceStandard): Clean also
destination src.tar.bzr $FILE_SRC_PKG
(CygbuildCmdPkgBinaryStandard): Clean also FILE_BIN_PKG
(CygbuildReadmeReleaseMatchCheck): New.
(CygbuildCmdPkgSourceStandard): Use 'cp -f' to copy original
source file. This fixes the read-only problem.
2007-08-09 Jari Aalto <jari aalto A T cante net>
* bin/ (CygbuildPatchPrefixStripCountFromContent):
Make awk call stop at first patch file. Serious error fixed.
(CygbuildCmdInstallCheckSetupHint): Rewrote incorrect setup.hint
'requires:' package list check.
(CygbuildTarDirectory): Added check for empty $retval.
2007-08-08 Jari Aalto <jari aalto A T cante net>
* bin/ (CygbuildCmdMkdirs): removed $objdir. This
was the foo-N.N which already exists.
(CygbuildCmdConfMain): Repharased 'runnig it for you now' =>
'running it now'.
2007-08-06 Jari Aalto <jari aalto A T cante net>
* bin/ (Help::POD): Documnted commands
patch, patch-check, unpatch.
* bin/ (CygbuildPatchPrefixStripCountFromContent):
Added mercurial (hg) patch detection support.
'cygbuild_opt_exclude_version_control' added .git
(CygbuildPatchApplyMaybe): Removed pushd/popd
(CygbuildPatchPrefixStripCountFromContent): Incorrect variable
$data changed to $patchin Mercurical patch test.
(CygbuildPatchCheck): Tightened awk regexp.
(CygbuildCommandMain): Added command 'patch-check'.
(CygbuildDefineGlobalMain): Renamed DIR_CYGPATCH_DONE_PATCHES
(CygbuildPatchCheck): New feature. Display applied patches
(CygbuildTarDirectory): If tar file included symbolic links the
function got confused. Tightened awk code.
2007-08-03 Jari Aalto <jari aalto A T cante net>
* bin/ (CygbuildPatchApplyRun): Message 'you may need
to rm...' is only displayed if -v option is set.
(CygbuildPatchPrefixStripCountFromContent): Fixed awk exit code.
if no '+++' was found, return error 1. Fixed recognization of
patch path from '+++' => '---'
(CygbuildCommandMain): Added command 'unpatch'.
(CygbuildCmdBuildMainMakefile): Fixed $debug setting.
(CygbuildDefineGlobalMain): DIR_CYGPATCH_DONE_PATCHES renamed from
(CygbuildCmdInstallCheckShellFiles): Rewrote perl, python check.
Use file(1) instead of unreliable find(1) and limit search
to usr/bin only.
(CygbuildPatchPrefixStripCountFromContent): Run echo(1)
return value only if count is set.
*.lst to *.tmp so that it gets ignored during making the patch.
(CygbuildCmdMkpatchMain): Run 'CygbuildPatchApplyMaybe unpatch'
to remove local patches, before taking the diff.
2007-07-25 Jari Aalto <jari aalto A T cante net>
* etc/template/ replaced $* with $@.
Added ":" true(1) commands to functions that are initially
"empty". Bash won't execute empty function bodies, that
contain comments only.
(InstallMake): Added LANG=C
2007-04-26 Jari Aalto <jari aalto A T cante net>
* bin/
(top level): Detech 'sh' and relaunch under 'bash' automatically.
(PackageUsesLibtoolMain): Changed $* to $@
(PackageUsesLibtoolCompile): Changed $* to $@
(Help): Text formatting changes.
2007-04-12 Jari Aalto <jari aalto A T cante net>
* bin/
(top level): Added LC_ALL=C and removed it from all functions.
(CygbuildBootVariablesIdx): New.
(CygbuildBootVariablesCache): New.
(CygbuildCommandMain): Use
`CygbuildBootVariablesCache' and
(CygbuildCmdMkpatchMain): Removed verbose from rm(1) call.
(CygbuildDefineEnvClear): Changed to more informative message
2007-04-12 Jari Aalto <jari aalto A T cante net>
* bin/ (CygbuildCmdShadowMain): Removed
message 'preparing compile'. Fixed indentation in messages:
added 2 more spaces.
2007-04-11 Jari Aalto <jari aalto A T cante net>
* bin/ (CygbuildCmdBuildMainMakefile):
Changed status from 10 to 17, so that the error point
is more easily found from code.
2007-03-25 Jari Aalto <jari aalto A T cante net>
* bin/ readlink case fixed. Didn't add slash
after DIR ($dir$file => $dir/$file).
2007-03-24 Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (function CygbuildCmdInstallCheckLineEndings): New.
Added head(1) to make scanning faster.
(function CygbuildCmdInstallCheckMain): Call
2007-03-23 Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (function CygbuildCommandMainCheckHelp): New.
Replace old and broken -h|--help option check.
(function CygbuildCommandMain): Use `CygbuildCommandMainCheckHelp'.
(function CygbuildBootGlobals ()): New. Wrap variable initializations
inside a function so that they are not evaluated right away.
(function CygbuildPathResolveSymlink): Removed extra "/" from PATH
setting. This corrected "//".
(function CygbuildBootExport): New.
2007-03-22 Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (CygbuildWhich): Incorrect variable bin => $1
2007-03-21 Jari Aalto <jari dot aalto A T cante dot net>
* etc/template/Makefile.tmp: Added assembler compiling rule
* bin/ (CygbuildMatchRegexp): Removed double quotes
from regexp match (error in bash 3.x fixed).
(CygbuildCommandMain): Added check that 'getopt' is present.
2007-03-18 Sun Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (function CygbuildWhich ()): 1.871 New.
(function CygbuildPathAbsoluteSearch()): 1.871 Use
(function CygbuildTreeSymlinkCopy()): 1.871 Use
(function CygbuildCmdInstallCheckBinFiles()): 1.871 Use
2006-11-21 Jari Aalto <jari aalto A T cante net>
* etc/template/Makefile.tmp: Added .asm support.
($(EXE)): Use $@
2006-11-20 Jari Aalto <jari aalto A T cante net>
* etc/template/Makefile.tmp ($(EXE)): Missing CFLAGS added.
2006-06-28 Jari Aalto <jari dot aalto A T cante dot net>
* etc/template/manualpage.pod.tmp: Moved OPTIONS before
* bin/ (CygbuildGPGverify): Filter 'insecure
memory|faq.html' lines.
(CygbuildExtractTar): Added warning if archive does not contain
package-N.N dir. Remove push/pop and used -C option of tar to
extract file.
(CygbuildTarDirectory): Did not find top level directory correctly.
(CygbuildCmdMkpatchMain): If archive did not have top level dir,
the patch making failed. Remove push/pop and used -C option of tar to
extract file.
2006-06-16 Jari Aalto <jari aalto A T cante net>
* etc/template/Makefile.tmp (SRCS): New.
(OBJS): Corrected.
(EXE): rewritten PACKAGE compile rule.
(EXE): New.
(clean): Added $(PACKAGE) and *.exe
2006-05-14 Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (CygbuildVersionInfo): PErl code fine tuning.
Lifter @a off the if-statement for easier debug.
2006-03-28 Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (CygbuildInstallPackageInfo):
Better find(1) statement.
Better error message.
2006-03-09 Jari Aalto <jari dot aalto A T cante dot net>
* etc/template/Makefile.tmp (INSTALL_SUID): New.
2006-02-27 Mon Jari Aalto <jari dot aalto A T cante dot net>
* etc/template/Makefile.tmp (ETCDIR): 1.12 $PACKAGE => $(PACKAGE)
* bin/
(function CygbuildMakefileRunTarget()): 1.866 Changed WARN
to NOTE if target was missing.
* etc/template/install.env.options.tmp: PREFIX =>
2006-02-23 Thu Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (function CygbuildCmdStripMain()): 1.858 Removed
unnecessary find(1) option -print.
(function CygbuildCmdInstallCheckDocPages()): 1.858 Removed
unnecessary find(1) option -print.
(function CygbuildCmdInstallCheckManualPages()): 1.858 Removed
unnecessary find(1) option -print.
(function CygbuildInstallPackageInfo()): 1.858 Removed
unnecessary find(1) option -print.
(function CygbuildCmdCleanMain()): 1.858 Removed
unnecessary find(1) option -print.
(function CygbuildGPGsignMain()): 1.858 Removed
unnecessary find(1) option -print.
(function CygbuildCmdFinishMain()): 1.862 List with ls(1) source
and binary files in GBS mode.
(CygbuildcommandMain): Command [all]: Removed
`CygbuildCmdInstallCheckMain'. It's a devel option.
(CygbuildCmdInstallCheckManualPages): 1.863 REmoved separate
*postinstall* file check. Already covered by
CYGBUILD_IGNORE_ETC_FILES. Corrected 'leading dot' check.
(function CygbuildCmdPrepMain()): 1.863 Moved
`CygbuildCmdMkdirs' upward.
2006-02-22 Wed Jari Aalto <jari dot aalto A T cante dot net>
* etc/makefile/ (echo-vars): Corrected makefile Rule:
* bin/ (build binary): 1.246 (HELP::OPTIONS::--gbs):
New option. This is the g-b-s compatibility mode.
* bin/ (function CygbuildRunPythonSetupCmd()):
1.852 Removed `CygbuildRun'. Use `CygbuildRunShell'.
(function CygbuildRun()): 1.852 $* => "$@"
(function CygbuildCommandMain()): 1.852 Added option --gbs and
(function CygbuildCmdPkgBinaryStandard()): 1.852 Added
(function CygbuildDefineGlobalMain()): 1.852 Added
(function CygbuildIsGbsCompat()): 1.854 New.
(function CygbuildDefineGlobalScript()): 1.854 Set
OPTION_GBS_COMPAT automatically.
(function CygbuildCmdDependMain()): 1.854 Added missing -o
to find(1).
(function CygbuildInstallPackageInfo()): 1.854 Added missing -o
to find(1).
(function CygbuildCmdInstallCheckShellFiles ()): 1.854 Added missing -o
to find(1).
(function CygbuildCmdInstallCheckLibFiles()): 1.854 Added missing -o
to find(1).
(function CygbuildCmdInstallCheckLibFiles()): 1.854 Added missing -o
to find(1).
(function CygbuildStripCheck()): 1.854 Added missing -o
to find(1).
(function CygbuildFilesExecutable()): 1.854 Added missing -o
to find(1).
(function CygbuildFilesExecutable()): 1.854 Removed unnecessary option
(top level::CYGBUILD_PUBLISH_DIR): 1.854 Renamed. Was
(function CygbuildIsSrcdirOk()): 1.856 Added support for Debian
*.orig directories.
(function CygbuildFilePackageGuessMain()): 1.857 Use
`CygbuildWarn' for message.
(function CygbuildCmdPkgExternal()): 1.857 Use
`CygbuildWarn' for message.
(function CygbuildCmdPkgSourceExternal ()): 1.857 Use
`CygbuildWarn' for message.
(function CygbuildCmdPkgSourceCvsdiff()): 1.857 Use
`CygbuildWarn' for message.
(function CygbuildFilePackageGuessFromDirectory()): 1.857
Added short circuit test.
(function CygbuildFilePackageGuessMain()): 1.857 Added
Debian *.orig support.
(function CygbuildInstallCygwinPartMain()): 1.858 Added
error checking for missing README.
(function CygbuildCmdMkpatchMain()): 1.858 Added Debian
.orig support.
(function CygbuildGrepCheck()): 1.858 $* => "@$"
2006-02-21 Tue Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (top level): 1.840 Removed
$CYGBUILD_HOMEPAGE_URL and added CVS instructions. (function
CygbuildCommandMain()): 1.840 Added 'src-package', 'conf*',
'unpack', 'list', 'checksig', 'auto*' g-b-s compatibility
(CygbuildCmdAutotool): New.
(function CygbuildRunShell()): 1.840 Check for empty
CYGBUILD_CC and CYGBUILD_CXX. Set Cc and CXX to their default
values if not set.
(function CygbuildRunShell()): 1.846 Removed $OPTION_DEBUG,
becasye can't suppose bash -x. The running command could be
anything; like python.
(function CygbuildIsEmpty()): 1.846 New. Use bash 3.x
(function CygbuildRunShell()): 1.846 Added guard against
empty CC, CXX.
(function CygbuildIsNumber()): 1.846 New. Use bash 3.x
(function CygbuildMatchRegexp ()): 1.846 New.
(function CygbuildIsReleaseMatch()): 1.846 Removed.
(function CygbuildMatchBashPatternList()): 1.846 Renamed.
Was `CygbuildBashPatternListMatch'.
(function CygbuildIsVersion()): 1.846 Removed. Unused.
(function CygbuildIsNumberLike()): 1.846 New.
(function CygbuildIsVersionMatch()): Removed. Replaced by
2006-02-20 Mon Jari Aalto <jari dot aalto A T cante dot net>
* bin/ 1.840 (CygbuildCommandMain): Added
alias 'bin-package'.
(function CygbuildCmdInstallCheckSetupHint()): 1.840 Added check
for obsolete lib*. Should be cyg*.
2006-02-18 Sat Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (function CygbuildCmdStripMain()): 1.838 Changed
WARN => NOTE: 'Hm, no installed files to strip'
2006-02-17 Fri Jari Aalto <jari dot aalto A T cante dot net>
* etc/template/Makefile.tmp (install-man): 1.11 Incorrect
* bin/ (function CygbuildCmdInstallCheckLibFiles()): 1.826
Added *.a (usr/lib/) and *.dll (usr/bin/) checks.
(function CygbuildCmdInstallCheckReadme()): 1.826 Fixed verison
check to comply with g-b-s. Added <date> and <older VER>
tag checks.
(CYGBUILD_FIND_OBJS=): Removed unnecessary '-o'
(CYGBUILD_FIND_EXCLUDE=): Removed unnecessary '-o'
(function CygbuildFilesExecutable()): 1.829 Removed unnecessary '-o'
(function CygbuildCmdDependMain()): 1.829 Removed unnecessary '-o'
(function CygbuildInstallPackageInfo()): 1.829 Removed unnecessary '-o'
(function CygbuildCmdInstallCheckBinFiles()): 1.829 Removed
unnecessary '-o'
(function CygbuildStripCheck()): 1.829 Removed unnecessary '-o'
(function CygbuildCmdInstallCheckReadme()): 1.830 Corrected verison
(function CygbuildCmdPrepClean()): 1.830 Incorrect $TOPDIR
replaced with $srcdir.
(function CygbuildPathAbsoluteSearch()): 1.832 Removed $WHICH,
use builtin 'type -p'.
(function CygbuildPathAbsoluteSearch()): 1.832 Rewritten.
(function CygbuildPathResolveSymlink()): 1.832 New.
(function CygbuildCmdInstallCheckPythonFile ()): 1.832 Wrong
python path check. Added '/usr/bin/env python'.
(function CygbuildTreeSymlinkCopy()): 1.833 Removed $WHICH.
Use type -p.
(function CygbuildCmdInstallCheckBinFiles()): 1.833 Removed $WHICH.
Use type -p.
(function CygbuildDefineGlobalCommands()): 1.833 Comented out
(function CygbuildCmdInstallCheckBinFiles()): 1.833 Added symlink
(function CygbuildFilePackageGuessMain()): 1.833 Added packaging
script detection. Added *.sig file ignore to call
(OVERALL): 1.836 Added '** ' to all main commands. Was '-- '
2006-02-16 Thu Jari Aalto <jari dot aalto A T cante dot net>
commands::check): 1.242 Added note to option --file.
(HELP::OPTIONS::--file): Explain how the option is used
to check any Cygwin binary packaging.
* bin/ (function CygbuildFileReleaseGuess()): 1.820
Changed incorrect 'let -a' to 'local -a'.
(CygbuildDefineGlobalMain): 1.820 when $templatepkg was set,
it contained incorrect variable $arg. Fixed to $argPkg.
(function CygbuildCmdInstallCheckDirStructure()): 1.820 Removed
extra '/' => -d $dir$try.
(function CygbuildCommandMain()): 1.820 DElete trailing
slash from input to --cyginstdir
(function CygbuildCmdInstallCheckSetupHint()): 1.820 Removed
text from message: 'report this bug'.
(function CygbuildFilesExecutable()): 1.820 Added missing "-o" options
from find(1). Added */bin/* and */sbin/* searches. Added -L
option to follow symbolic links.
(function CygbuildCmdInstallCheckBinFiles()): 1.820 Added -L
option to find(1)
(function CygbuildCmdInstallCheckLibFiles()): 1.820 Added -L
option to find(1)
(CYGBUILD_IGNORE_FILE_TYPE): 1.820 Correct '+(' => '@('
(CYGBUILD_IGNORE_ETC_FILES): 1.820 Correct '+(' => '@('
(function CygbuildCmdInstallCheckShellFiles ()): 1.820 Added -L
option to find(1)
(function CygbuildCmdInstallCheckReadme()): 1.820 Added -L
option to find(1)
(function CygbuildCmdInstallCheckManualPages()): 1.820 Added -L
option to find(1)
(function CygbuildCmdInstallCheckDocPages()): 1.820 Added -L
option to find(1)
(function CygbuildCmdInstallCheckBinFiles()): 1.820 Added -L
option to find(1)
(function CygbuildCmdInstallMain()): 1.820 1.820 Added -L
option to find(1)
(function CygbuildCmdInstallCheckTempFiles()): 1.820 Added -L
option to find(1)
(function CygbuildCmdInstallCheckInfoFiles()): 1.820 Added -L
option to find(1)
(function CygbuildCmdInstallCheckReadme()): 1.820 Added missing
backslash to [ERROR] message continuation line.
(function CygbuildCmdInstallCheckReadme()): 1.820 Added missing
backslash to [WARN] message continuation line.
(function CygbuildCmdInstallCheckShellFiles ()): 1.822 Better
[NOTE] message. Added Python check.
(function CygbuildCmdInstallCheckReadme()): 1.822 Added $verbose;
if set, print all foudn $version lines.
(function CygbuildCmdInstallCheckSetupHint()): 1.822 Add
check for non-existing $dir.
(function CygbuildCygcheck()): 1.823 New.
(function CygbuildCmdInstallCheckBinFiles()): 1.823 Removed
code. Use `CygbuildCygcheck'.
(function CygbuildCmdInstallCheckLibFiles()): 1.823 Under
verbose, call `CygbuildCygcheck'.
(function CygbuildCmdInstallCheckMain()): 1.823 Added DONE
message to the end. Skip $DIR_CYGPATCH check if it does not exist.
2006-02-14 Tue Jari Aalto <jari dot aalto A T cante dot net>
* etc/template/setup.hint: 1.7 Added category 'Gnome'.
* bin/ 1.817 (CygbuildMain): From command
[repackage-bin] removed `CygbuildCmdReadmeFix'.
(function CygbuildHelpLong()): 1.817 Removed [ -s $retval ] test.
(function CygbuildCmdPkgSourceStandard()): 1.817 Added $RM
and $verbose. Moved 'local pkg' upward.
(function CygbuildCmdPkgSourceStandard()): 1.817 SERIOUS BUG:
the source tar archive did not contain original package if
it was in Debian .orig.tar.gz format. Fixed.
2006-02-12 Sun Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (function CygbuildMakefileRunInstall()): 1.791
Added && to make sure all Python and Perl install steps succeed.
(function CygbuildCmdInstallCheckEtc()): 1.791 If there are
no .inst/etc/* files, then don't check.
(function CygbuildCmdInstallCheckLibFiles()): 1.791 Changed WARN
to INFO when no man pages are included. No more return (1) error
(function CygbuildCmdBuildPython()): 1.791 Added -no-undefined
LDFLAGS when making pythong *.dll files.
(function CygbuildMakefileRunCleanPythonMain()): 1.791 Added
(function CygbuildCmdBuildMainMakefile()): 1.791 Added
(function CygbuildCmdShadowMain()): 1.810 Added Python
'clean' command.
(function CygbuildCygDirCheck()): 1.810 Droppe $id from the
[WARN] message 'contains tags'. Incorrect grep(1) regexp
'\<' changed to '[<]'.
(CYGBUILD_PROGRAM): 1.811 Changed '' to 'Cygbuild'.
(function CygbuildCmdCleanMain()): 1.812 Use
(function CygbuildRunPythonSetupCmd()): 1.813 Renamed.
Was `CygbuildMakefileRunCleanPythonMain'.
(function CygbuildMakefileRunPythonInDir()): 1.813 New.
(function CygbuildMakefileRunInstallPythonMain()): 1.813 Use
(function CygbuildCmdShadowMain()): 1.813 Use
(function CygbuildRunPythonSetupCmd()): 1.815 Removed
'Looks like ...' message.
(CygbuildCmdPkgSourceStandard): 1.815 added vetter 'ls' parameter
to make more strict file list.
(function CygbuildCmdDistcleanMain): 1.817 Changed 'or similar
to 'or equiv.'
2006-02-09 Thu Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (function CygbuildHelpSourcePackage()): 1.791
Streamlined error message.
(function CygbuildCmdPkgSourceStandard()): 1.791 Added
`CygbuildGPGsignFiles' to sign the result script.
(function CygbuildCmdInstallCheckSetupHint()): 1.791 Added
check for find(1) failure.
* etc/template/ (InstallConffiles ()): 1.19
Added $dest for `$from', so that the verifying works for
.inst/ directory.
2006-02-08 Wed Jari Aalto <jari dot aalto A T cante dot net>
* bin/
(HELP::OPTIONS): Grammar fixes.
(HELP::OPTIONS::--no-strip): 1.238 Added
note that this option should not be used.
(HELP::PACKAGE MAINTENANCE COMMANDS::files): Added and short description.
(HELP::PACKAGE MAINTENANCE COMMANDS::clean): Corrected syntax.
how to run in test mode.
Similar to 'postinstall' script test command.
(HELP::PACKAGE MAINTENANCE COMMANDS:package): Old documentation
corrected. The result is not put ../ but to under .sinst/ directory.
documentation corrected. The result is not put ../ but to under
.sinst/ directory.
(HELP::PACKAGE MAINTENANCE COMMANDS:publish): Changed to better
path name in example. Now menion .sinst/ directory. Added missing
brackets [] from command names.
(Commands B<[package]>): 1.238 Change from -s to --sign.
(HELP::DESCRIPTION): Grammar fixes.
(HELP::OPTIONAL EXTERNAL FILES): Emplain .tmp suffix.
* index.html: 1.33 Corrected page according to
* bin/ (CYGBUILD_IGNORE_ETC_FILES): 1.791 Added
(function CygbuildCmdInstallCheckManualPages()): 1.791 Exclude
from manual page check files: */usr/share* */usr/lib*
(function CygbuildCommandMain()): 1.791 command [all]: Added call
to CygbuildCmdInstallCheckMain(). Added new command [preremove].
(function CygbuildDependsList()): 1.791 New.
(function CygbuildCmdInstallCheckBinFiles()): 1.791 Added call to
CygbuildDependsList. The shell dependencies must be listed. Added
check for Perl, Python executables under /bin, so that they are
required to appear in setup.hint 'requires:' as well.
(function CygbuildCmdPreremoveInstallMain()): 1.791 New.
(function CygbuildCmdPostInstallMain()): 1.791 Changed
`scriptPostInstall' variable to cimple `script'.
(function CygbuildCmdScriptRunMain()): 1.791 New.
* etc/template/ (InstallConffiles ()): 1.19 Incorrect
variable in grep: changed to $conffiles_to.
* etc/template/ (RemoveConffiles ()): 1.4 Incorrect
variable in grep: changed to $conffiles_to.
(RemoveConffiles ()): 1.4 Changed `diff' command to `cmp'. This
may be faster.
2006-02-07 Tue Jari Aalto <jari dot aalto A T cante dot net>
* etc/template/upstream.perl-webget.tmp: 1.2 Added missing
* etc/template/ (RemoveConffiles ()): 1.4 Changed
* bin/ (function CygbuildCmdInstallCheckEtc()): 1.791
Exclude from check: /etc/preremove and /etc/postinstall
(function CygbuildCmdInstallCheckManualPages()): 1.791 Use
(function CygbuildIsSrcRootOk ()): 1.791 New.
(function CygbuildCmdMkpatchMain()): 1.791 Before making patch,
verify that the build directory conforms de facto package-N.N
otherwise created patch will fail when applied later.
(function CygbuildCmdStripMain()): 1.791 Wording changed
'not an x86 executable' => 'not a binary executable'.
* etc/template/setup.hint (ldesc:): 1.7 Removed 'some text' and
left sdesc and ldesc empty. Easier to fill in when no text needs
to be deleted.
2006-02-06 Mon Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (function CygbuildDefineGlobalCompile()): 1.791
Added '[INFO] Good, seems to be libtool enabled' if package uses
libtool. Enabled only with --verbose option.
(function PackageUsesLibtoolMain ()): 1.791 Renamed. Was
(function PackageUsesLibtoolCompile ()): 1.791 Renamed. Was
(function CygbuildDefineGlobalCompile()): 1.791 Improved
libtool check by looking at file `configure' as well.
(function CygbuildConfCC()): 1.791 Improved
libtool check by looking at file `configure' as well.
(function CygbuildCmdBuildMainMakefile()): 1.791 Incorrect variable
LFLAGS => LDFLAGS. Incorrect variable flag => flags. Incorrect
variable $CYGBUILD_LDLAGS => $CYGBUILD_LDFLAGS. Did not use the
CC, CXX, LDFLAGS at all.
2006-02-04 Sat Jari Aalto <jari dot aalto A T cante dot net>
* etc/template/ (): 1.19
(Environment): 1.4 Corrected initialization of variable $dest.
(InstallConfFiles) Added $dest in front of find(1) directory.
* etc/template/preremove-manifest-from.lst.tmp: New.
* etc/template/
Added comments to the beginning how to test the script.
(Main ()): 1.4 Wrong function
called. InstallConffiles => RemoveConffiles
(RemoveConffiles ()): 1.4 Added missing `read' command to
while loop. Allow comments in /etc/preremove/geoip-manifest-from.lst
and /etc/preremove/geoip-manifest.lst (added grep filter).
Added variable $tmpprefix. Added $dest in front of find(1)
(Environment): 1.4 Corrected initialization of variable $dest.
* bin/ (HELP::QUICK OVERVIEW): 1.238 Added
'... -v depend' command to the example run. Reworded
'nasty-package' to 'some-package'.
* bin/ (function CygbuildCommandMain()): 1.791
Added synonym 'depends' for 'depend command.
(function CygbuildDefineEnvClear()): 1.791 Added '[INFO]' tag
to message 'Clearing environment...'
(function CygbuildPatchApplyRun()): 1.791 Added '[NOTE]'
to the text of 'If patch fails ...'.
(function CygbuildRunShell()): 1.791 Added 'local' to
undefined variable 'cmd'.
(function CygbuildHelpShort()): 1.791 Extra newline removed
from top of help text.
(function CygbuildCmdInstallCheckEtc()): 1.791 New.
(function CygbuildCmdInstallCheckMain()): 1.791 Call
2006-01-23 Mon Jari Aalto <jari dot aalto A T cante dot net>
* etc/template/configure.options.tmp: 1.4 Added --disable-nls
* etc/template/upstream.perl-webget.tmp: 1.1 Added
sourceforge download example.
2006-01-15 Sun Jari Aalto <jari dot aalto A T cante dot net>
* etc/template/Makefile.tmp (INSTALL_OBJS_ETC): 1.10 New.
* bin/ (function CygbuildCmdFilesWrite()): 1.787
Don't overwrite existing files.
2006-01-14 Sat Jari Aalto <jari dot aalto A T cante dot net>
* etc/template/upstream.perl-webget.tmp: New template for upstream
* bin/ (function CygbuildCmdMkpatchMain()): 1.787 To
make a patch two things happen. A) the original source archive is
unpacked to ./build/foo-1.3 and then it is moved under name
./build/foo-1.3-orig. B) Next the user made changed are copied to
./build/foo-1.3. The Diff is taken between these two. However,
when next round [mkpatch] happens, there IS OLD DIRECTORY
./build/foo-1.3 (user's changes) that's being overwritten by the
archive unpack. => no differences. Now fixed: remove both
directories A and B before doing anything else
(function CygbuildPatchApplyMaybe()): 1.787 Incorrect call:
CygbuildCygbuildDie => CygbuildDie
(Top Level::CYGBUILD_PATCH_OPT): Added '--strip=0' because
without it applying the patch will fail.
It needs to work inside foo-1.3/ directory
2006-01-12 Thu Jari Aalto <jari dot aalto A T cante dot net>
* etc/template/Makefile.tmp (SHAREDIR): 1.10 New.
(LIBDIR): 1.10 New.
2005-12-20 Tue Jari Aalto <jari dot aalto A T cante dot net>
* bin/ 1.237 (HELP::STANDARDS): Added note to compile
using -Wl,--enable-auto-image-base as per message by Yitzchak
Scott-Thoennes 2005-12-19 in cygwin-apps mailing list.
2005-12-02 Jari Aalto <jari dot aalto A T cante dot net>
* etc/template/upstream.perl-webget.tmp: New.
2005-11-24 Thu Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (function
CygbuildMakefileRunInstallPythonFix()): 1.785 Typo in output.
2005-10-16 Sun Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (function CygbuildCommandMain()): 1.784
Added new command [upstream-download].
* bin/ 1.236 (HELP::Other commands): Moved
[all] to the beginning (alphabetical ordering).
(HELP::Other commands): Documented new command
2005-10-15 Sat Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (function CygbuildPythonCompileFiles()): 1.782
Rewrote compiling by using pure python. No more shell calls
for every file to compile python file.
2005-10-01 Sat Jari Aalto <jari dot aalto A T cante dot net>
-- This is preliminary release where it is possible to
create packages directly from Version controlled checkout (CVS).
-- The option "--checkout source-pkg" make package than can
retrieve the exact snapshot.
* etc/etc/programs.conf: 1.7 Added LN.
* bin/ (function CygbuildExtractWithScript()): 1.779
Added error checking after symlink and mkdir.
(function CygbuildDefineGlobalCommands()): 1.779 Added LN.
(function CygbuildTreeSymlinkCopy()): 1.780 Removed
local LN.
(function CygbuildPythonCompileFiles()): 1.780 New.
(function CygbuildPythonCompileDir()): 1.780 New.
(function CygbuildMakefileRunInstallPythonMain()): 1.780 Added
recompiling all files.
2005-09-30 Fri Jari Aalto <jari dot aalto A T cante dot net>
* bin/
(top level): New variable `cygbuild_opt_exclude_cygbuild'
Do not include CYGWIN-PATCHES/ to *.patch
(function CygbuildCmdPkgSourceCvsdiff()): 1.770
Improved error checking.
(function CygbuildDefineGlobalMain()): 1.770 removed *.tmp
(function CygbuildCmdPkgSourceCvsMain()): 1.770 Check that
$template exists.
(function CygbuildCommandMain()): 1.774 Added
call to CygbuildVersionControlType() to noticy about
option --checkout.
(function CygbuildCmdPkgSourceCvsMain()): 1.776 Extra .sh
was added to the CVS checkout script: =>
(function CygbuildCmdPkgSourceCvsMain()): 1.777 incorrect
'build' script. Used cygbuild-*.sh when it shoudl have been
<package>-*.sh. Fixed.
(function CygbuildFilePackageGuessMain()): 1.777 Incorrect
regexp parameter to CygbuildFilePackageGuessArchive(). Didn't
allow YYYYMMDD version numbers, but only NN.NN.
(function CygbuildFilePackageGuessArchive()): 1.777 Removed -v
options from AWK call.
(function CygbuildFilePackageGuessMain()): 1.777 Return ! if
cannot find source package.
* etc/template/ (top level): 1.1 Added
PATH. Added variable `verbose'. Added :CHECKOUTMODULE: tag.
(PrintBanner ()): 1.1 New.
(CheckBinList ()): 1.1 Use HERE doc, not double quotes.
* bin/ (sub Date): 1.234 Return HH:MM with leading
(sub PackageCVScoScript): 1.234 Added :CHECKOUTMODULE: tag.
2005-09-27 Tue Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (HELP::Build commands::clean): 1.223
documented new *clean commands: clean, distclean, realclean etc.
-- Massive replacements: All 'Exit 1' calls changed to
CygbuildDie(). Exit is now namespace clean => CygbuildExit.
* bin/ (function CygbuildCommandMain()): 1.767
Command [clean] is now generic. I.e. `distclean', `realclean'
or just `clean' runs the appropriate make targets.
Call CygbuildCmdCleanByType(). Removed separate
command [distclean]
(function CygbuildMakefileRunTarget()): 1.767 New.
(function CygbuildCmdCleanByType()): 1.767 New.
(function CygbuildDie()): 1.767 New.
(function CygbuildExitNoDir()): 1.767 Use CygbuildDie()
(function CygbuildExitNoFile()): 1.767 Use CygbuildDie()
(function CygbuildCmdDistcleanMain): 1.767 Removed code
which is now handled in call to CygbuildMakefileRunTarget()
(function CygbuildCmdTestMain()): 1.767 Excess code removed.
2005-09-22 Thu Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (HELP::FILES): 1.223 Documented
the use of /var/cache/cygbuild.
(HELP::OPTIONS): Documented new user options
--cyginstdir, --cygbuilddir, --cygsinstdir
(HELP::Install commands::check): 1.223 Documented that
--cyginstdir is useful with the [check] command to test
other packages' installations.
* bin/ (function CygbuildStrRemoveExt()): 1.759
Added *.tbz2
(function CygbuildTarOptionCompress()): 1.759 Typo: condition
case must be *tgz) not tgz).
(function CygbuildCmdInstallCheckReadme()): 1.760 Instead of 3
lines of INFO warnings, now print only 2.
(CYGBUILD_LIB_DIR_ROOT): 1.761 Moved /var/lib/cygbuild
to /var/cache/cygbuild
(function CygbuildCygDirCheck()): 1.761 More strict check:
fo not use *README*, but $PKG.README
(function CygbuildCommandMain()): 1.761 Added new options
--cyginstdir, --cygbuilddir, --cygsinstdir. Added `unset' commands for
new $OPTION_* variables.
(function CygbuildDefineGlobalMain()): 1.761 Use
OPTION_PREFIX_CYGSINST if they are set. These replace hard
codes paths like .inst, .build, .sinst.
(function CygbuildCmdInstallCheckLibFiles()): 1.764 Added for-loop
to show library files, instead of cryptic one line echo.
(function CygbuildPatchApplyRun()): 1.766 Print PWD where
the patch is being applied. Helps in debugging.
(function CygbuildDefineGlobalMain()): 1.767 Changed
DIR_CYGPATCH_DONE_PATCHES frm done.patch.tmp => done-patch.lst
2005-09-21 Wed Jari Aalto <jari dot aalto A T cante dot net>
-- New command [patch] can now apply all *.patch files included
in CYGWIN-PATCHES. The --strip=N count can be indicated in the
the file name by placing word 'strip+N' somewhere. Like
* bin/ (HELP::Other commands): 1.223 Documented
new command [patch].
* bin/ (function CygbuildPatchApply()): 1.757
Removed hard coded patch file name. Now takes argument $1,
the patch file name.
(function CygbuildCmdPrepPatch()): 1.757 Send $FILE_SRC_PATCH
to CygbuildPatchApply().
(function CygbuildPatchApplyMaybe()): 1.757 New.
(function CygbuildCmdPrepMain()): 1.757 Call
(Main ()): New user command [patch] to apply all external
patches under CYGWIN-PATCH/*.patch.
(function CygbuildPatchPrefixStripCountFromFilename()): 1.757 New.
(function CygbuildPatchPrefixStripCountFromContent()): 1.757 New.
(function CygbuildPatchApplyRun()): 1.757 Added --test option
support. Do not actually patch.
(top level::CYGBUILD_PATCH_OPT): Removed --strip=0.
* etc/template/package.README (IRC channel:): 1.17 Added
new heading 'IRC channel'.
2005-09-20 Tue Jari Aalto <jari dot aalto A T cante dot net>
* bin/
(OPTIONAL EXTERNAL FILES::)preremove-manifest-from.lst: 1.223
New file. Documented its use.
* etc/template/ (Environment): 1.14 Added double
quotes around every variable settings, because `$dest' CAN
nclude directory with spaces.
(InstallConffiles ()): 1.14 New.
* etc/template/ (Environment): 1.2 Added double
quotes around every variable settings, because `$dest' CAN
nclude directory with spaces.
(InstallConffiles ()): 1.2 New.
2005-09-19 Mon Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (function CygbuildDefineGlobalMain()): 1.755
Many global variables were renamed.
(function CygbuildInstallCygwinPartMain()): 1.755 Rewrote
whole function.
2005-09-18 Sun Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (function CygbuildInstallPackageInfo()): 1.752
Added LC_ALL=C
(function CygbuildCmdInstallCheckBinFiles()): 1.753 Check if file
size is too big and print warning. User may have forgot to
compile the file against shared libraries.
2005-09-17 Sat Jari Aalto <jari dot aalto A T cante dot net>
-- command [source-package] mistakenly added binary package in that
tar file. Now fixed.
-- 1.751 is stable again and can be used for production.
* etc/template/preremove-manifest.lst.tmp: New empty file.
See manual page for explanation.
* bin/ (Help::Using preremove and postinstall for /etc
configuration files): 1.223 New topic in section
(HELP::OPTIONAL EXTERNAL FILES): 1.223 Documented and
preremove-manifest.lst files.
* bin/ (function CygbuildInstallCygwinPartMain()): 1.747
Added variable `tofile'. Better message.
(function CygbuildInstallCygwinPartPostinstall()): 1.747
Added variable `tofile'. Better message.
(top level::cygbuild_opt_exclude_version_control): 1.748 Added
.cvsignore, .svnignore, .hgignore, .bzrignore
(function CygbuildCmdPkgSourceStandard()): 1.750 mistakenly
added binary package inside source archive. Fixed.
(function CygbuildDefineGlobalMain()): 1.750 New
(function CygbuildInstallCygwinPartMain()): 1.750 Added install
of preremove-manifest.lst file.
* etc/template/ 1.14 Fixed PATH.
Added variable `manifest' => manifest-PACKAGE.lst file.
* etc/template/ (Main "$@"): 1.1 Added
initial content.
2005-09-16 Fri Jari Aalto <jari dot aalto A T cante dot net>
-- setup.hin is no examined with [check] command and the obvious
mistakes are reposted.
* etc/template/package.README (Mailing List:): 1.17 typo:
License => License:
* bin/ (Help::CYGWIN PACKAGE POLICY NOTES): 1.223 New
heading 1. Wrote topic 'Music file formats *.mp3, *.ogg etc.'
* bin/ (top level::cygbuild_opt_exclude_object_files):
1.744 New.
(top level::CYGBUILD_TAR_EXCLUDE): Use
(function CygbuildDefineGlobalMain()): 1.744 New variable
use hard coded name.
(function CygbuildCmdInstallCheckReadme()): 1.746 Do not test
find(1) exit status, but the $retval- This is better error handling.
(function CygbuildCmdInstallCheckSetupHint()): 1.746 New.
2005-09-13 Tue Jari Aalto <jari dot aalto A T cante dot net>
-- Radical changes in the code. The last known good version is 1.737. See CVS tag 'devel-2005-09-13'.
-- Support ./.sinst with custom
packaging locations, like under usr/local.
-- New option --install-usrlocal must be included in
every command to use url/local prefixes instead of the
cygwin Net Release's standard usr/ install location. This
makes it possible to create privatedly installed packages.
-- setup.hint 'requires:' dependency check code completely
rewritten in Perl module It now needs reliable
package database to do it right. To build the database,
added new option --init-pkgdb to (the first
time db generation takes OODLES of time)
* bin/ (HELP::Install commands): 1.217 Documented command
(HELP::OPTOIONS): Documented new option --install-prefix.
(sub ReadmeFixSearch): 1.217 NEw.
(sub FileRead): 1.217 New function. Faster. The old one
was moved under name FileReadSlow().
(sub ListSearch): 1.217 New.
(sub CygcheckFilter): 1.217 Removed all extra code that tried to
guess correct package name from e.g. DLL name cygICE-6.dll. It
wasn't reliable.
(sub CygcheckDepsNeeded): 1.217 Added NEW code to find out the
exact library from where the DLL comes from.
(verbose option): 1.217 Documented new option --init-pkgdb.
* bin/ (function CygbuildFilePackageGuessMain()): 1.736
Do not run `CygbuildCmdDependCheckMain' any more automatically
during check. It's too difficult to determine what
are the correct libraies in require: statement. Moved this
functionality to separate command `check-deps'.
(function CygbuildCommandMain()): 1.736 Added option --version.
(export CYGBUILD_TAR_INSTALL_EXCLUDE): 1.736 Comment above, typos
fixed. Patch thanks to Dr. Volker Zell <Dr.Volker.Zell>.
(Main): Comment below `CygbuildDefineGlobalScript', typos
fixed. Patch thanks to Dr. Volker Zell <Dr.Volker.Zell>.
(function CygbuildDefileInstallVariables()): 1.736 New. Moved
Variable definitions from the beginning to this function.
(function CygbuildCommandMain()): 1.736 Added options
--install-prefix, --install-man-prefix, --install-usrlocal
(function CygbuildMakefileRunInstallCygwinOptions()): 1.736
(function CygbuildCmdPostInstallMain()): 1.736 Use
(function CygbuildDefileInstallVariables()): 1.736 New variables:
(function CygbuildCmdInstallCheckBinFiles()): 1.736 Use
(function CygbuildCmdInstallCheckDirStructure()): 1.736 Added
/usr/local/bin check.
(function CygbuildCmdInstallCheckDirStructure()): 1.739 Use
$CYGBUILD_PREFIX not hard coded usr/bin to allow usr/local/bin
(function CygbuildCmdInstallCheckDocPages()): 1.739 Use
$CYGBUILD_PREFIX not hard coded usr/doc.
(function CygbuildCmdInstallCheckManualPages()): 1.739 Use
$CYGBUILD_MANDIR_RELATIVE, not hard coded usr/share/man
(function CygbuildDefineGlobalPackageDatabase()): 1.743 New.
(function CygbuildCommandMain()): 1.743 New option --init-pkgdb
(top level::CYGBUILD_LIB_DIR_ROOT): 1.743 New.
(top level::CYGBUILD_LIB_DIR_PKG): 1.743 New.
2005-09-12 Mon Jari Aalto <jari dot aalto A T cante dot net>
* Makefile (OBJS_ETC_TMPL): Added missing double quote.
(OBJS_ETC_MAIN): Added missing double quote.
* bin/ (function CygbuildFilePackageGuessMain()): 1.730
REmoved extra calls to `pwd'. Use variable instead.
(function CygbuildFilePackageGuessMain()): 1.730 Improved
source archive search from current directory. Added tar.bz2 search.
(function CygbuildCmdPkgSourceStandard()): 1.735 When -src.tar.bz2
was made the content of .sinst/ was traaed up. But if there were
older release files like -1, -2 and current was -3, then ALL
these files end up in tar. Now cleans other releases.
2005-09-11 Sun Jari Aalto <jari dot aalto A T cante dot net>
* etc/template/cygwin-announce.mail.tmp (PACKAGE CHANGES): 1.1 New.
* etc/template/build.options.tmp: 1.3 Typo: libraies => libraries
* etc/template/ 1.14 Changed `$*' => `$@'
* etc/template/manualpage.pod.tmp: 1.4 Added URL inside commant
to point to POD manual. Added ENVIRONMENT section. Syntax checked
with `podchecker' program.
* bin/ (Help::OPTIONS): 1.214 Corrected text in
many options.
* bin/ (function CygbuildDefineGlobalCommands()): 1.728
Print 'reading config file' only during --verbose option.
(function CygbuildCommandMain()): 1.728 Don't print
the '-- YYYY-MM-DD ...' string if --version
or -V is asked.
(function CygbuildCmdBuildMainMakefile()): 1.728 Added
'set -x' under $debug to show makefile flags.
2005-09-10 Sat Jari Aalto <jari dot aalto A T cante dot net>
* etc/template/package.README (Mailing List:): 1.16 Added
new heading 'Mailing List:'
* bin/ (function CygbuildHelpShort()): 1.720 Delete
path portion from `bin'. Moved URL to separate line.
(CygbuildCommandMain::all): Display NOTE why `all' option
is not really useful for development. It is used for
build verification only.
(CygbuildCommandMain::source-package): Added && tests to
prevent calling other functions in case of error.
(TOP): Added URL link to GPL. Removed FSF address, it has
been changed.
(top level): Moved `CYGBUILD_ID' to the beginning of file.
It was printed in initial shell check.
(function CygbuildFilesInstallMaybe()): 1.720 Wrong function
IsTemplateFilesInstalled => CygbuildIsTemplateFilesInstalled
(function CygbuildFilesInstallMaybe()): 1.720 Removed. Not
(CygbuildCmdFilesWrite): 1.720 Do not copy already
existing *.tmp files.
(function CygbuildCmdInstallCheckPythonFile ()): 1.720 Wrong
variable $PERL => $PYTHON. Added
'head -1' to filter multiple bang slash #! paths.
(function CygbuildCmdInstallCheckPerlFile ()): 1.720 Added
'head -1' to filter multiple bang slash #! paths.
2005-09-09 Fri Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (function CygbuildHelpSourcePackage()): 1.704
Improved message that says what to do.
(CygbuildCommandMain::all): Do not display error
if sourcepackage cannot be built.
Call CygbuildHelpSourcePackage() to check for environment
(function CygbuildVersionControlType()): 1.704 Incorrect
commands: CygbuildIsHgPackage => CygbuildIsMercurialPackage,
CygbuildBzrPackage => CygbuildIsBzrPackage
2005-09-07 Wed Jari Aalto <jari dot aalto A T cante dot net>
* etc/template/ 1.10 (Cmd): Rewrote.
2005-09-06 Tue Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (function CygbuildCmdPkgDevelStandard()):
1.704 Exclude *.dll files from the devel-bin packaging.
(function CygbuildCmdBuildMainMakefile()): 1.704 Added subshell wrapper
around MAKE, so that `source' wouldn't pollute the programs's namespace.
Display content of `optfile' when verbose is on.
(function CygbuildMakefileRunInstall()): 1.704 Removed
EXTRA_ENV_OPTIONS_INSTALL `source' command to read
(function CygbuildMakefileRunInstallCygwinOptions()): 1.704 Added
subshell while reading install.env.options.
* bin/ 1.197 (Help::) All `-NN.NN' were replaced
with `-N.N'
2005-09-04 Sun Jari Aalto <jari dot aalto A T cante dot net>
* etc/template/ New
* bin/ (sub Date): 1.197 Added new ARG to select
UTC time.
(my $PASSORD_RET_SITES): 1.197 New.
(sub PrintHash): 1.197 New.
(sub Date): 1.197 Converted input args to HASH. Added option
-time and -utc.
(sub PackageCVScoScript): 1.197 Rewrote whole function.
(Help::QUICK OVERVIEW::The big picture): 1.197 Updated.
(sub DiffToExclude): 1.197 Added debugging support.
* bin/ (declare CYGBUILD_RETVAL): 1.704 Removed
extra `$'.
(function CygbuildIsMercurialPackage()): 1.704 New distributed
revision control system.
(function CygbuildIsBzrPackage()): 1.704 New distributed
revision control system.
(function CygbuildVersionControlType()): 1.704 Added new
verion control system checks.
(function CygbuildDefineGlobalMain()): 1.704
New variables: $builddir_relative_vc_root, $builddir_vc_root.
Changed $builddir_relative from .build/.build to .build/build
(CygbuildCmdPkgSourceCvsdiff): 1.704 Moved checkout directory
from ./build/.build/tmp/cvsout => ./build/vc
(declare CYGBUILD_RETVAL): 1.704 Added quotes around variable.
(function CygbuildFileCleanTemp()): 1.704 Corrected rm(1)
(function CygbuildCmdPkgSourceCvsMain()): 1.704 Changed
script name:
(function CygbuildSourceDownloadScript()): 1.704 Use
$SCRIPT_SOURCE_GET_BASE. Removed hard coded name.
(function CygbuildCmdShadowDelete()): 1.704 Use
$builddir_relative, removed hard coded test.
2005-09-03 Sat Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (function CygbuildHelpShort()): 1.701
Added note that --help requires full cygbuild suite.
(Everywhere): Changed NN.NN => N.N version items.
(top level::PATH): 1.704 Removed extra trailing '/'.
(function CygbuildMakefileRunInstallPythonFix()): 1.704 Added
new variable `root'. Makes code cleaner.
(function CygbuildMakefileRunInstallPythonMain()): 1.704 Added
new variable `root'. Makes code cleaner.
(top level::export CYGBUILD_MANDIR_FULL): 1.704 Was `PREFIX'.
Now it is namespace clean. Replaced all occurrances in other
parts of the code.
(top level::declare CYGBUILD_STATIC_VER_PACKAGE): 1.704 Renamed.
Was `STATIC_VER_PACKAGE'. Replaced all other similart STATIC_VER_*
packages. This makes them namespace clean.'
(top level::declare -a CYGBUILD_STATIC_PERL_MODULE): 1.704 Ditto
(top level::declare $CYGBUILD_RETVAL): 1.704 Ditto.
2005-09-02 Fri Jari Aalto <jari dot aalto A T cante dot net>
* etc/template/Makefile.tmp (INSTALL_OBJSMAN1): 1.9 New.
(MANDIR1): 1.9 Renamed. Was `MANDIR'
* etc/makefile/ (sf-upload-doc): Correctd
target order from: doc sf-uload-no-root => sf-uload-no-root doc
* etc/template/manualpage.pod.tmp (please see): 1.3 Added
heading OPTIONS.
* bin/ (Help::LIBRARY USAGE): 1.197 Small fixes
and reformatting of example code.
(Help::MISCELLANEOUS::Cygwin postinstall script conventions): 1.197
New topic.
(Help::PACKAGE MAINTENANCE COMMANDS::Packaging commands::repackage-all):
1.197 Corrected spelling mistakes.
(Help::PACKAGE MAINTENANCE COMMANDS::Packaging commands::finish):
1.197 Text updated. Command is not disabled any more.
(Help::PACKAGE MAINTENANCE COMMANDS::Other commands::shadow):
1.197 Added note that 'reshadow' is all that is needed.
(Help::FILES): Clarified 'no user files should be placed...'.
(Help::::Packages with no version number): Clarified package format
from NN.NN => N[N.]+.
(Help::DESCRIPTION::Packaging directly from version controll repositories):
(Help::QUICK OVERVIEW): Added "The big picture" with ascii graphics.
* bin/ (function CygbuildGPGverify()): 1.695
Fixed gpg --verify command's file names: *.sig..sig => *.sig
(function CygbuildCmdPublishSignature()): 1.698 Fix echo
messages that show if signature is valid or not and ready
for publish.
(function CygbuildDefineEnvClear()): 1.698 New.
(function Main): 1.698 Call `CygbuildDefineEnvClear'
(function CygbuildBashPatternListMatch()): 1.700 New.
(function CygbuildInstallPackageDocs()): 1.700 Use `CygbuildBashPatternListMatch'
(export CYGBUILD_MANDIR_FULL): 1.700 New variable.
(function CygbuildCmdInstallCheckTempFiles()): 1.700 rewrote to use for-loop.
2005-09-01 Thu Jari Aalto <jari dot aalto A T cante dot net>
commands::publish): 1.197 Variable CYGBUILD_PUBLISH_BIN which can
contain custom script takes now 3 arguments, instead of 1 (gpgp
signer, gpg pass phrase added).
* bin/ (CYGBUILD_GPG_SIGN_EXT): New variable.
(CygbuildSignCleanAllMaybe): Use CYGBUILD_GPG_SIGN_EXT.
(CygbuildGPGverify): Use CYGBUILD_GPG_SIGN_EXT.
(CygbuildGPGsignFiles): Use CYGBUILD_GPG_SIGN_EXT.
(CygbuildGPGsignMain): Use CYGBUILD_GPG_SIGN_EXT.
(CygbuildCmdGPGVerifyMain): Use CYGBUILD_GPG_SIGN_EXT.
(CygbuildCmdPublishSignature): Use CYGBUILD_GPG_SIGN_EXT.
(CygbuildCmdPkgBinaryStandard): Use CYGBUILD_GPG_SIGN_EXT.
(CygbuildCmdPkgSourceStandard): Use CYGBUILD_GPG_SIGN_EXT.
(CygbuildCmdMkpatchMain): Use CYGBUILD_GPG_SIGN_EXT.
(function CygbuildCmdPublishMain()): 1.695
to external script.
(function CygbuildCmdPublishExternal()): 1.695 Added
`signer' and `pass' variables.
2005-08-31 Jari Aalto <jari dot aalto A T cante dot net>
--libexecdir=/usr/lib which is FHS compliant. Was /usr/sbin
in Cygwin documentation.
<>. See thread
* index.html: Added note, that is supported. Added
WARNING that the setup.exe download method is not up to date.
* bin/ (Help::Top page): CASE A, B, C clarified and
2005-08-30 Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (CygbuildVerb): Check $1 before
printing message.
(CygbuildDefineGlobalCompile): Use `CygbuildVerb'.
(cygbuild_opt_exclude_bin_files): Added *.pyc.
(cygbuild_opt_exclude_version_control): Added distributed
version control dirs: .bzr, .hg.
(CygbuildDefineGlobalMain): New variables
`builddir_relative_root', `builddir_root'.
(CygbuildCmdMkpatchMain): Use `builddir_root'; the .build
directory instead of .build/.build to make patches.
(CygbuildFileCleanTemp): Removed '-r' from rm(1).
2005-08-30 Jari Aalto <jari dot aalto A T cante dot net>
* bin/ Don't clear CFLAGS, CXXCLAGS and LDFLAGS. They
may be set in Makefile. Rewrote the code to define `flags' variable.
2005-08-29 Jari Aalto <jari dot aalto A T cante dot net>
* etc/template/setup.hint: Added new category 'Audio'.
2005-08-20 Jari Aalto <jari dot aalto A T cante dot net>
-- Fixed Python compilation errors (must ignore user's CFLAGS
-- Overall: Python package detection and checks were improved
* etc/template/ (Cmd): Typo '}}' => '}'.
* bin/ (CygcheckDependencies): Skip directories.
Tightened /bin directory check so that bin/this.exe is
accepted but not /bin/lib/some/here/
* bin/ (CygbuildRunShell): New.
(CygbuildMakefileRunInstallPythonFix): Improved `mv' sequence.
Added `bin/lib/python*' move.
(CygbuildConfCC): Removed code and moved it to `CygbuildRunShell'.
(CygbuildCmdBuildPython): Use CygbuildRunShell' so that CFLAGS and
all are set properly.
8top level): Renamed `opt_exclude_*' to `cgbuild_opt_exclude_*'
(CygbuildFileTypeMain): Ignore compiled pythong files etc.
(CygbuildCmdInstallCheckBinFiles): Ignore Python *site-packages*
(CygbuildFileIgnore): New.
(CygbuildCmdInstallCheckBinFiles): Ignore site-packages (Python)
install dir.
(CygbuildCmdInstallCheckReadme): Fixed egrep regexp. Th \<
is word boundary, not literal. Use [<] instead.
2005-08-07 Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (CygbuildCmdShadowMain): Added text
'(ignore errors; if any)' to cleaning so that user does not
get upset on missing target messages like
'make: *** No rule to make target clean'
2005-04-13 Jari Aalto <jari dot aalto A T cante dot net>
* etc/template/package.README: Added new topic
'Version control repository:'
2005-04-09 Sat Jari Aalto <jari dot aalto A T cante dot net>
* bin/
(function CygbuildMakefileRunInstallPythonFix()): 1.682
Fix /usr/share/lib to /usr/lib
2005-03-20 Sun Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (opt_exclude_tmp_files): 1.681 Added
DEADJOE file from joe(1) editor.
2005-03-08 Tue Jari Aalto <jari dot aalto A T cante dot net>
* etc/template/Makefile.tmp (DEBUG): 1.7 Commented out -g
* etc/template/ 1.13 Removed bash. Now
runs under /bin/sh.
* bin/ (set -x): 1.675 Did not
install for package. Fixed.
* etc/template/ 1.13 Added `sharedir'.
2005-03-03 Thu Jari Aalto <jari dot aalto A T cante dot net>
* etc/template/package.README (Cygwin port): 1.14 Extra
newline removed.
* bin/ (function CygbuildInstallExtraManual()): 1.675
Added check for '[' in file name (expand problem fix in for-loop)
* etc/template/ 1.8 Removed -z test.
2005-03-02 Wed Jari Aalto <jari dot aalto A T cante dot net>
* bin/ (function CygbuildTreeSymlinkCopy()): 1.675
Use -q, removed /dev/null in egrep.
(function CygbuildMakeRunInstallFixPerl()): 1.675
Use -q, removed /dev/null in egrep.
(function CygbuildCommandMain()): 1.675
Use -q, removed /dev/null in egrep.
(function CygbuildCmdInstallCheckReadme()): 1.675 Added quotes
around $PKG check.
2005-03-01 Tue Jari Aalto <jari dot aalto A T cante dot net>
* etc/template/Makefile.tmp ($(PACKAGE)): 1.7 Target fixed.
added $<
2005-02-28 Mon Jari Aalto <jari dot aalto A T cante dot net>
* etc/makefile/ (SHAREDIR): 1.17 New.
* Makefile (install-etc-dir-template): 1.26 Clean template
(ETCDIR_TMPL): 1.26 Changed from /etc/cygbuild/template to
(install-etc-dir-template): 1.26 Install ETCDIR_TMPL_USER.
(install-etc-template): 1.26 Clean ETCDIR_TMPL before
(install-etc-template-symlink): 1.26 Clean ETCDIR_TMPL before
Documented new file `configure.env.options'.
(HELP::FILES): 1.191 Document /usr/share/cygbuild/template and
(HELP::OPTIONAL EXTERNAL FILES): 1.194 Documented 'manualpage.pod'
* etc/template/build.env.options: New.
* bin/ (function CygbuildConfCC()): 1.672 Missing
backslash Added.
(function CygbuildDefineGlobalMain()): 1.672 New variable
(function CygbuildCmdBuildMainMakefile()): 1.672 Source
(function CygbuildDefineGlobalMain()): 1.672 New variable
(function CygbuildConfCC()): 1.672 use $EXTRA_CONF_ENV_OPTIONS
$CYGBUILD_TEMPLATE_DIR. Changed from /etc/cygbuild/template
to /use/share/cygbuild/template
(function CygbuildCmdFilesMain()): 1.672 Use
(function CygbuildCmdFilesWrite()): 1.672 Changed call args.
Now `to' is first and $* can have any directories.
(function CygbuildFileExists()): 1.672 New.
(function CygbuildCmdFilesWrite()): 1.672 Rewritten.
Use `CygbuildFileExists' and accept $* args.
(function CygbuildCmdFilesWrite()): 1.675 Incorrect test '='
changed to '=='. Didn't copy package.README correctly.