]> mj.ucw.cz Git - libucw.git/log
libucw.git
10 years agoPackages: The version number appended to names of libraries is detected from ucw...
Pavel Charvat [Tue, 4 Feb 2014 12:29:25 +0000 (13:29 +0100)]
Packages: The version number appended to names of libraries is detected from ucw/default.cfg instead of the tag.

10 years agoDoc: Moskyto has a homepage
Jan 'Moskyt' Matejka [Thu, 30 Jan 2014 23:50:54 +0000 (00:50 +0100)]
Doc: Moskyto has a homepage

10 years agowebpage: Updated for v6.0, author list and feature list.
Tomas Valla [Thu, 30 Jan 2014 22:28:54 +0000 (23:28 +0100)]
webpage: Updated for v6.0, author list and feature list.

10 years agoDebian: Let git describe use unsigned tags, too
Martin Mares [Tue, 28 Jan 2014 23:52:40 +0000 (00:52 +0100)]
Debian: Let git describe use unsigned tags, too

10 years agoAPI: Include tbf.h and trie.h
Martin Mares [Tue, 28 Jan 2014 23:52:12 +0000 (00:52 +0100)]
API: Include tbf.h and trie.h

10 years agoDoc: Fixed function references v5.99
Martin Mares [Tue, 28 Jan 2014 23:40:15 +0000 (00:40 +0100)]
Doc: Fixed function references

10 years agoRelease: Use "make install-libucw-docs" to generate documentation
Martin Mares [Tue, 28 Jan 2014 23:11:37 +0000 (00:11 +0100)]
Release: Use "make install-libucw-docs" to generate documentation

10 years agoMaint: Automatic uploads of documentation
Martin Mares [Tue, 28 Jan 2014 22:14:52 +0000 (23:14 +0100)]
Maint: Automatic uploads of documentation

10 years agoDoc: Release dates
Martin Mares [Tue, 28 Jan 2014 22:13:49 +0000 (23:13 +0100)]
Doc: Release dates

10 years agoABI: Updated symbol renames
Martin Mares [Tue, 28 Jan 2014 21:56:32 +0000 (22:56 +0100)]
ABI: Updated symbol renames

10 years agoMaint: Moved ABI tools to maint/
Martin Mares [Tue, 28 Jan 2014 21:55:07 +0000 (22:55 +0100)]
Maint: Moved ABI tools to maint/

10 years agoDoc: Updated the list of contributors
Martin Mares [Tue, 28 Jan 2014 21:48:47 +0000 (22:48 +0100)]
Doc: Updated the list of contributors

10 years agoDoc: Documented growing arrays, generic allocators and related things
Martin Mares [Tue, 28 Jan 2014 21:39:20 +0000 (22:39 +0100)]
Doc: Documented growing arrays, generic allocators and related things

10 years agoIntroduced generic allocators
Martin Mares [Tue, 28 Jan 2014 20:50:04 +0000 (21:50 +0100)]
Introduced generic allocators

The concept of generic allocators, previously used locally in gary's,
turned out to be very promising and applicable to other data structures
in the future.

So I decided to decouple allocators from gary.[ch] and introduce them
to the society of libucw primitives.

<ucw/alloc.h> now provides allocators for malloc and zeroed malloc,
each mempool can also serve as an allocator (the current implementation
has an instance of struct ucw_allocator in each struct mempool, but
it is always accessed through an inline function, so it can be changed
if the overhead is deemed too heavy).

Growing arrays have been redefined in terms of generic allocators.

The realloc module has been merged to alloc.c to keep our malloc
wrappers together.

10 years agoConf: Dynamic arrays re-implemented as gary's
Martin Mares [Tue, 28 Jan 2014 20:18:48 +0000 (21:18 +0100)]
Conf: Dynamic arrays re-implemented as gary's

To the outside world, almost nothing changes as DARY_LEN is emulated.
However, static initializers are no longer possible, so DARY_ALLOC
is gone.

The current implementation is not elegant. It will be improved soon.

10 years agoOpt: OPT_MULTIPLE with clists replaced by OPT_CL_MULTIPLE with gary's
Martin Mares [Tue, 28 Jan 2014 17:28:57 +0000 (18:28 +0100)]
Opt: OPT_MULTIPLE with clists replaced by OPT_CL_MULTIPLE with gary's

10 years agoGary: Type-agnostic push
Martin Mares [Tue, 28 Jan 2014 17:28:20 +0000 (18:28 +0100)]
Gary: Type-agnostic push

10 years agoOpt: Document CT_USER with optional values
Martin Mares [Tue, 28 Jan 2014 17:00:25 +0000 (18:00 +0100)]
Opt: Document CT_USER with optional values

10 years agoOpt: User-defined types are specified as CT_USER, not OPT_CL_USER
Martin Mares [Tue, 28 Jan 2014 16:45:31 +0000 (17:45 +0100)]
Opt: User-defined types are specified as CT_USER, not OPT_CL_USER

10 years agoGary: Added growing arrays over mempools
Martin Mares [Tue, 28 Jan 2014 16:31:28 +0000 (17:31 +0100)]
Gary: Added growing arrays over mempools

10 years agoThreads: Renamed default_ucwlib_context to ucwlib_default_context
Martin Mares [Tue, 28 Jan 2014 16:03:53 +0000 (17:03 +0100)]
Threads: Renamed default_ucwlib_context to ucwlib_default_context

10 years agoGary: Symbol renames
Martin Mares [Tue, 28 Jan 2014 16:03:12 +0000 (17:03 +0100)]
Gary: Symbol renames

10 years agoAPI: Introduced exceptions for common mistakes of the symbol mapper
Martin Mares [Tue, 28 Jan 2014 16:02:42 +0000 (17:02 +0100)]
API: Introduced exceptions for common mistakes of the symbol mapper

10 years agoGary: Gary now works over a general allocator
Martin Mares [Tue, 28 Jan 2014 15:51:26 +0000 (16:51 +0100)]
Gary: Gary now works over a general allocator

Zeroed gary's are no longer a special case.

Maybe the same system of allocators could be useful in other
parts of the library, too. Let me know if you have an idea.

10 years agoDoc: Indentation
Martin Mares [Tue, 28 Jan 2014 15:30:41 +0000 (16:30 +0100)]
Doc: Indentation

10 years agoGary: GARY_PUSH and GARY_POP have lost the 2nd argument
Martin Mares [Tue, 28 Jan 2014 15:27:54 +0000 (16:27 +0100)]
Gary: GARY_PUSH and GARY_POP have lost the 2nd argument

Having to tell "yessir, just one element" on each call was just too
inconvenient.

10 years agoGary: Remove unused gary_free()
Martin Mares [Tue, 28 Jan 2014 15:13:01 +0000 (16:13 +0100)]
Gary: Remove unused gary_free()

10 years agoPrepared for release of Libucw 6.0
Martin Mares [Mon, 27 Jan 2014 23:51:11 +0000 (00:51 +0100)]
Prepared for release of Libucw 6.0

10 years agoOpt: Added missing reference
Martin Mares [Mon, 27 Jan 2014 23:41:02 +0000 (00:41 +0100)]
Opt: Added missing reference

10 years agoOpt: Forgot to describe help columns
Martin Mares [Mon, 27 Jan 2014 23:39:44 +0000 (00:39 +0100)]
Opt: Forgot to describe help columns

10 years agoMerge branch 'dev-opt'
Martin Mares [Mon, 27 Jan 2014 23:24:57 +0000 (00:24 +0100)]
Merge branch 'dev-opt'

10 years agoOpt: Documented opt and its interaction with conf
Martin Mares [Mon, 27 Jan 2014 23:24:27 +0000 (00:24 +0100)]
Opt: Documented opt and its interaction with conf

10 years agoDoc: Newer versions of AsciiDoc require [footer-text]
Martin Mares [Mon, 27 Jan 2014 20:32:22 +0000 (21:32 +0100)]
Doc: Newer versions of AsciiDoc require [footer-text]

10 years agoOpt: State of opt-conf moved to opt_context
Martin Mares [Mon, 27 Jan 2014 20:03:50 +0000 (21:03 +0100)]
Opt: State of opt-conf moved to opt_context

It gives a better feeling to get rid of magical static variables
in functions :)

10 years agoOpt: OPT_HELP_OPTION does not need passing pointer to current definitions
Martin Mares [Mon, 27 Jan 2014 19:59:02 +0000 (20:59 +0100)]
Opt: OPT_HELP_OPTION does not need passing pointer to current definitions

I have introduced a new flag OPT_INTERNAL / OPT_HOOK_INTERNAL, which
can be used by internal handlers and hooks to get the pointer to the
current opt_context.

10 years agoLet <ucw/lib.h> include <stdbool.h> automatically
Martin Mares [Mon, 27 Jan 2014 19:45:28 +0000 (20:45 +0100)]
Let <ucw/lib.h> include <stdbool.h> automatically

10 years agoOpt: TODO cleared
Martin Mares [Mon, 27 Jan 2014 19:29:04 +0000 (20:29 +0100)]
Opt: TODO cleared

10 years agoOpt: opt_failure() is public, opt_usage() not so
Martin Mares [Mon, 27 Jan 2014 19:28:16 +0000 (20:28 +0100)]
Opt: opt_failure() is public, opt_usage() not so

10 years agoOpt: Generalization of hooks
Martin Mares [Mon, 27 Jan 2014 19:23:18 +0000 (20:23 +0100)]
Opt: Generalization of hooks

Hooks can specify a subset of events they wish to receive.
Helps to get rid of lots of special-casing.

In particular, the end of parsing is also an event, so that we
can load configuration if it has not been loaded yet. (This was
a bug in the original implementation, which never turned up,
because opt-test has mandatory arguments.)

10 years agoOpt: Cleaned up opt-conf
Martin Mares [Mon, 27 Jan 2014 19:05:15 +0000 (20:05 +0100)]
Opt: Cleaned up opt-conf

First of all, the names of configuration options are no longer
fixed. Each of these options has its own handler and as long as
OPT_CONF_HOOK is used, the caller is free to define configuration
options with the names and help texts of his choice.

The same applies to --help.

To achieve these goals, the OPT_BEFORE_CONFIG flag has been
introduced.

10 years agoOpt: Make OPT_LAST_ARG actually work and document interface of opt_parse()
Martin Mares [Mon, 27 Jan 2014 18:38:25 +0000 (19:38 +0100)]
Opt: Make OPT_LAST_ARG actually work and document interface of opt_parse()

10 years agoOpt: Split to three separate modules
Martin Mares [Mon, 27 Jan 2014 18:23:30 +0000 (19:23 +0100)]
Opt: Split to three separate modules

One handles parsing, one displaying of help, and one interfaces
with conf.

10 years agoOpt: Rewritten formatting of help
Martin Mares [Mon, 27 Jan 2014 17:42:01 +0000 (18:42 +0100)]
Opt: Rewritten formatting of help

Previous implementation of opt_help() had several drawbacks:
First, it formatted each section separately, so the columns
did not aligh. Second, it did produced incorrect output for
options which possess only the short form.

I hope that the new implementation is cleaner and easier to extend.

10 years agoOpt: exit() does not return, no need to call va_end() afterwards
Martin Mares [Mon, 27 Jan 2014 16:18:02 +0000 (17:18 +0100)]
Opt: exit() does not return, no need to call va_end() afterwards

10 years agoOpt: Simpified and corrected processing of OPT_SINGLE
Martin Mares [Mon, 27 Jan 2014 16:13:46 +0000 (17:13 +0100)]
Opt: Simpified and corrected processing of OPT_SINGLE

OPT_SINGLE is now checked in opt_parse_value(). Previously, short,
long, and positional options had their own checks.

OPT_CL_SWITCH did not allow changing the value of the switch once
it is set, although documentation in opt.h claimed quite the opposite.
Changes are currently allowed unless OPT_SINGLE is set.

Test cases have been updated accordingly.

10 years agoOpt: Fix bug introduced by my cleanups
Martin Mares [Mon, 27 Jan 2014 16:03:19 +0000 (17:03 +0100)]
Opt: Fix bug introduced by my cleanups

10 years agoOpt: Improved reporting of errors
Martin Mares [Mon, 27 Jan 2014 15:59:13 +0000 (16:59 +0100)]
Opt: Improved reporting of errors

Introduced opt_name() and THIS_OPT, which can be used in error
messages whenever you have a pointer to struct opt_precomputed ready.

10 years agoOpt: Streamlined opt_parse_value()
Martin Mares [Mon, 27 Jan 2014 15:43:52 +0000 (16:43 +0100)]
Opt: Streamlined opt_parse_value()

10 years agoOpt: Streamlined parsing of long options
Martin Mares [Mon, 27 Jan 2014 15:14:56 +0000 (16:14 +0100)]
Opt: Streamlined parsing of long options

Also, in error messages, we call them options, not arguments.

10 years agoOpt: Accept arguments for short options even in bundles
Martin Mares [Mon, 27 Jan 2014 14:57:32 +0000 (15:57 +0100)]
Opt: Accept arguments for short options even in bundles

Traditional getopt() seems to support this, so we should, too.

10 years agoOpt: Updated test case
Martin Mares [Mon, 27 Jan 2014 14:55:20 +0000 (15:55 +0100)]
Opt: Updated test case

Printing non-ASCII characters for positional arguments is a little
bit crazy, I will hopefully clean it up later.

10 years agoOpt: Streamlined opt_shortopt()
Martin Mares [Mon, 27 Jan 2014 14:51:47 +0000 (15:51 +0100)]
Opt: Streamlined opt_shortopt()

Also, we reject non-ASCII short options, which enabled us to lower
OPT_POSITIONAL_TAIL to 128 and thus save memory.

10 years agoOpt: Start of positional arguments is not hard-wired
Martin Mares [Mon, 27 Jan 2014 14:37:07 +0000 (15:37 +0100)]
Opt: Start of positional arguments is not hard-wired

10 years agoOpt: Checking of required arguments simplified
Martin Mares [Mon, 27 Jan 2014 14:31:03 +0000 (15:31 +0100)]
Opt: Checking of required arguments simplified

10 years agoOpt: Cosmetics
Martin Mares [Mon, 27 Jan 2014 14:23:01 +0000 (15:23 +0100)]
Opt: Cosmetics

10 years agoOpt: Streamlined setting of default options
Martin Mares [Mon, 27 Jan 2014 14:18:47 +0000 (15:18 +0100)]
Opt: Streamlined setting of default options

OPT_ADD_DEFAULT_FLAGS has been replaced by a function,
OPT_ITEM_FLAGS is gone.

10 years agoOpt: Updated symbol renames
Martin Mares [Mon, 27 Jan 2014 14:09:18 +0000 (15:09 +0100)]
Opt: Updated symbol renames

10 years agoOpt: Simplified preprocessing of options
Martin Mares [Mon, 27 Jan 2014 14:04:07 +0000 (15:04 +0100)]
Opt: Simplified preprocessing of options

Replaced OPT_TRAVERSE_SECTIONS by proper recursion.

oc->opts now contains struct opt_precomputed's directly instead
of pointers to them, so that we need not allocate each struct
separately (and leak memory).

Counting of each OPT_CL_BOOL option twice has been removed, I hope
it is not necessary any longer as the "no-" prefix does not need
its own entry.

10 years agoOpt: Fixed a test case
Martin Mares [Mon, 27 Jan 2014 13:42:58 +0000 (14:42 +0100)]
Opt: Fixed a test case

10 years agoBuild: Make sure that we link against the locally compiled dynamic libraries.
Pavel Charvat [Wed, 15 Jan 2014 16:08:12 +0000 (17:08 +0100)]
Build: Make sure that we link against the locally compiled dynamic libraries.

10 years agoMerge branch 'master' into dev-opt
Pavel Charvat [Wed, 15 Jan 2014 12:33:15 +0000 (13:33 +0100)]
Merge branch 'master' into dev-opt

10 years agoPackages: Install subset of UCW utilities to /usr/sbin instead of /usr/bin.
Pavel Charvat [Wed, 15 Jan 2014 12:32:05 +0000 (13:32 +0100)]
Packages: Install subset of UCW utilities to /usr/sbin instead of /usr/bin.

10 years agoTrie: Improved Tom's warning about hell
Martin Mares [Wed, 15 Jan 2014 11:49:26 +0000 (12:49 +0100)]
Trie: Improved Tom's warning about hell

10 years agoOpt: Merged fixes from Gigamail.
Pavel Charvat [Tue, 14 Jan 2014 21:15:21 +0000 (22:15 +0100)]
Opt: Merged fixes from Gigamail.

10 years agoMerge branch 'master' into dev-opt
Pavel Charvat [Tue, 14 Jan 2014 19:51:05 +0000 (20:51 +0100)]
Merge branch 'master' into dev-opt

Conflicts:
ucw/ff-varint.c
ucw/varint.c

10 years agoDocs: Checked for problems with common var-len-arrays and alloca() (written by Tom).
Pavel Charvat [Tue, 14 Jan 2014 19:48:31 +0000 (20:48 +0100)]
Docs: Checked for problems with common var-len-arrays and alloca() (written by Tom).

10 years agoLibUCW: Fixed a bug in fb-atomic.
Pavel Charvat [Tue, 14 Jan 2014 17:33:41 +0000 (18:33 +0100)]
LibUCW: Fixed a bug in fb-atomic.

10 years agoLibUCW: Added missing includes in <ucw/io.h>
Pavel Charvat [Tue, 14 Jan 2014 16:08:32 +0000 (17:08 +0100)]
LibUCW: Added missing includes in <ucw/io.h>

10 years agoPackages: Fixed installation of obsolete ucw-daemon-helper.
Pavel Charvat [Tue, 14 Jan 2014 16:06:42 +0000 (17:06 +0100)]
Packages: Fixed installation of obsolete ucw-daemon-helper.

10 years agoPCRE regex: Fixed a harmless compilation warning.
Pavel Charvat [Tue, 14 Jan 2014 12:19:58 +0000 (13:19 +0100)]
PCRE regex: Fixed a harmless compilation warning.

10 years agovarints: Fixed format strings.
Tomas Valla [Tue, 14 Jan 2014 11:33:05 +0000 (12:33 +0100)]
varints: Fixed format strings.

10 years agoOpt: ABI cleanup
Martin Mares [Tue, 14 Jan 2014 11:13:37 +0000 (12:13 +0100)]
Opt: ABI cleanup

10 years agoMerge branch 'master' into dev-opt
Martin Mares [Tue, 14 Jan 2014 11:11:58 +0000 (12:11 +0100)]
Merge branch 'master' into dev-opt

Conflicts:
ucw/Makefile

10 years agoLibUCW: Fixed a stupid typo in the UCW_DIE_BY_ABORT switch.
Pavel Charvat [Tue, 14 Jan 2014 08:00:05 +0000 (09:00 +0100)]
LibUCW: Fixed a stupid typo in the UCW_DIE_BY_ABORT switch.

10 years agoLibUCW: Implemented UCW_DIE_BY_ABORT environment switch.
Pavel Charvat [Tue, 14 Jan 2014 07:58:15 +0000 (08:58 +0100)]
LibUCW: Implemented UCW_DIE_BY_ABORT environment switch.

10 years agoPackages: install-ucw-sorter-api make target moved into install-libucw-api.
Pavel Charvat [Tue, 14 Jan 2014 07:48:14 +0000 (08:48 +0100)]
Packages: install-ucw-sorter-api make target moved into install-libucw-api.

10 years agoPackages: Do not forget to install sorter's API.
Pavel Charvat [Tue, 7 Jan 2014 15:47:06 +0000 (16:47 +0100)]
Packages: Do not forget to install sorter's API.

10 years agoPackages: Removed customization of SONAME_SUFFIX to simplify Makefiles.
Pavel Charvat [Tue, 7 Jan 2014 15:19:51 +0000 (16:19 +0100)]
Packages: Removed customization of SONAME_SUFFIX to simplify Makefiles.

10 years agoPackages: Fixes in custom versioning.
Pavel Charvat [Tue, 7 Jan 2014 15:14:01 +0000 (16:14 +0100)]
Packages: Fixes in custom versioning.

10 years agoPackages: Created debian/tag-release script to easily tag new versions.
Pavel Charvat [Tue, 7 Jan 2014 15:00:36 +0000 (16:00 +0100)]
Packages: Created debian/tag-release script to easily tag new versions.

10 years agoPackages: Unit tests must be run sequentially (make -j1 tests).
Pavel Charvat [Tue, 7 Jan 2014 14:52:15 +0000 (15:52 +0100)]
Packages: Unit tests must be run sequentially (make -j1 tests).

10 years agoPackages: Fixed a typo in Makefile causing unnecessary dependencies.
Pavel Charvat [Tue, 7 Jan 2014 13:46:08 +0000 (14:46 +0100)]
Packages: Fixed a typo in Makefile causing unnecessary dependencies.

10 years agoPackages: Added missing dependencies.
Pavel Charvat [Tue, 7 Jan 2014 13:41:09 +0000 (14:41 +0100)]
Packages: Added missing dependencies.

10 years agoPackages: Fixed static linking.
Pavel Charvat [Tue, 7 Jan 2014 13:35:04 +0000 (14:35 +0100)]
Packages: Fixed static linking.

10 years agoPackages: pkg-config dependencies moved to Requires.private.
Pavel Charvat [Tue, 7 Jan 2014 13:30:53 +0000 (14:30 +0100)]
Packages: pkg-config dependencies moved to Requires.private.

10 years agoPackages: Dependencies on external dynamic libraries are now in pkg-config's Libs...
Pavel Charvat [Tue, 7 Jan 2014 13:00:26 +0000 (14:00 +0100)]
Packages: Dependencies on external dynamic libraries are now in pkg-config's Libs.private.

10 years agoPackages: We need to include SONAME symbolic links to shared libraries in packages.
Pavel Charvat [Tue, 7 Jan 2014 12:02:26 +0000 (13:02 +0100)]
Packages: We need to include SONAME symbolic links to shared libraries in packages.

10 years agoPackages: Do not install picstatic version of libs.
Pavel Charvat [Tue, 7 Jan 2014 09:15:13 +0000 (10:15 +0100)]
Packages: Do not install picstatic version of libs.

But they are still not removed completely from Makefiles and pkgconfig.

10 years agoMerge branch 'dev-api' into dev-package
Pavel Charvat [Tue, 7 Jan 2014 09:11:17 +0000 (10:11 +0100)]
Merge branch 'dev-api' into dev-package

Conflicts:
default.cfg

10 years agoDebug: check-configs tries static linking, too
Martin Mares [Fri, 3 Jan 2014 15:53:01 +0000 (16:53 +0100)]
Debug: check-configs tries static linking, too

10 years agoABI: Fix string.h
Martin Mares [Fri, 3 Jan 2014 15:52:42 +0000 (16:52 +0100)]
ABI: Fix string.h

10 years agoABI: Symbol renames for libimages
Martin Mares [Fri, 3 Jan 2014 15:36:39 +0000 (16:36 +0100)]
ABI: Symbol renames for libimages

10 years agoImages: Added missing include
Martin Mares [Fri, 3 Jan 2014 15:36:30 +0000 (16:36 +0100)]
Images: Added missing include

10 years agoImages: Clean up old-style function declarations
Martin Mares [Fri, 3 Jan 2014 15:36:05 +0000 (16:36 +0100)]
Images: Clean up old-style function declarations

10 years agoTools: It's 2014 now :)
Martin Mares [Fri, 3 Jan 2014 15:08:21 +0000 (16:08 +0100)]
Tools: It's 2014 now :)

10 years agoABI: Manual tweaks for ff-binary.h
Martin Mares [Fri, 3 Jan 2014 15:05:58 +0000 (16:05 +0100)]
ABI: Manual tweaks for ff-binary.h

Function names are generated by macros, thus hidden to tools/map-symbols.

10 years agoABI: rename-symbols does not touch timestamps of unmodified files
Martin Mares [Fri, 3 Jan 2014 15:05:39 +0000 (16:05 +0100)]
ABI: rename-symbols does not touch timestamps of unmodified files

10 years agoABI: Tables used by ucw/chartype.h are prefixed
Martin Mares [Fri, 3 Jan 2014 14:59:07 +0000 (15:59 +0100)]
ABI: Tables used by ucw/chartype.h are prefixed

10 years agoPackages: Added a custom string to names of compiled libraries.
Pavel Charvat [Fri, 3 Jan 2014 13:47:30 +0000 (14:47 +0100)]
Packages: Added a custom string to names of compiled libraries.

10 years agoPackages: Split each UCW library to its own set of packages.
Pavel Charvat [Fri, 3 Jan 2014 13:05:12 +0000 (14:05 +0100)]
Packages: Split each UCW library to its own set of packages.