]> mj.ucw.cz Git - libucw.git/commitdiff
Split cf/library to cf/libucw and cf/libsherlock.
authorMartin Mares <mj@ucw.cz>
Thu, 30 Oct 2008 21:52:16 +0000 (22:52 +0100)
committerMartin Mares <mj@ucw.cz>
Thu, 30 Oct 2008 21:52:16 +0000 (22:52 +0100)
Each part is installed together in the respective library's install target.

cf/libucw [new file with mode: 0644]
ucw/Makefile

diff --git a/cf/libucw b/cf/libucw
new file mode 100644 (file)
index 0000000..38d2ea5
--- /dev/null
+++ b/cf/libucw
@@ -0,0 +1,174 @@
+# Configuration of the UCW library and related utilities (included by cf/sherlock)
+
+######## Memory Mapped Access to Files ##########################################
+
+# Whenever you specify 0 for I/O buffer size, memory mapping is used instead.
+FBMMap {
+
+# Map this many bytes at once (needs to be a multiple of CPU page size)
+WindowSize             1M
+
+# When in need to extend a file, grow it by so many bytes (>= page size)
+ExtendSize             1M
+
+}
+
+######## Direct Streamed I/O on Files ###########################################
+
+FBDirect {
+
+# Debug: Cheat by turning off O_DIRECT
+#Cheat                 1
+
+}
+
+######## Atomic Multi-Threaded I/O on Files #####################################
+
+FBAtomic {
+
+# Enable tracing
+#Trace                 1
+
+}
+
+######## Parametrized I/O on Files ##############################################
+
+FBParam {
+
+Defaults {
+
+# Access type (std|direct|mmap).
+Type                   std
+
+# Size of I/O buffer. Something of the order of megabytes for fast disks is recommended for direct I/O.
+BufSize                        64K
+
+# Optimize for mixed forward/backward reading (standard I/O only)
+KeepBackBuf            0
+
+# Perform read-ahead (direct I/O only)
+ReadAhead              1
+
+# Maximum number of write-back requests queued (direct I/O only)
+WriteBack              1
+
+}
+
+}
+
+######## Temporary files ########################################################
+
+Tempfiles {
+
+# By default, we use the system's default temporary directory ($TMPDIR or /tmp),
+# but sometimes it is better to store the temporary files in the local tree.
+Dir                    tmp
+
+# Prefix of temporary file names
+Prefix                 temp-
+
+# By default, we append a random number to Prefix to get a temporary file name.
+# If Prefix points to a directory that is not writable by malicious users,
+# we can be less careful and use more consistent names of temporary files
+# formed by adding "pid(-tid)-counter" instead.
+PublicDir              0
+
+}
+
+######## Threads ################################################################
+
+Threads {
+
+# Default thread stack size
+DefaultStackSize       64K
+
+}
+
+######## Sorter #################################################################
+
+Sorter {
+
+# Trace sorting (1=basic statistics, 2=more stats, 3 and more for debugging)
+Trace                  2
+
+# Trace array sorting (internal sorters)
+TraceArray             0
+
+# How much memory is the sorter allowed to use
+SortBuffer             4M
+
+# File access used by the sorter (see FBParam section for details)
+FileAccess             std 256K
+
+# Use a different file access method for small inputs (less than the specified size)
+SmallFileAccess                std 64K
+SmallInput             64M
+
+# Min-/Maximum number of bits to use in the external radix-sort (beware, we will open
+# 1+2^this files and require a stream buffer for each of them; however, while we are
+# doing that, the sort buffer is not allocated). Set both to zero to disable radix-sorting.
+MinRadixBits           2
+MaxRadixBits           4
+
+# The same for multi-way merging. The memory requirements are also the same,
+# but please keep in mind that this can create lots of SortBuffer-sized files,
+# so it is probably better to keep it disabled if you have a small SortBuffer.
+MinMultiwayBits                2
+MaxMultiwayBits                4
+
+# If we did not use radix-sorter to the full width, we still might add some more
+# bits to the width to get chunks which are even smaller than SortBuffer, because
+# it can speed up internal sorting later. However, we also want to avoid small
+# files, so we add only a little.
+AddRadixBits           2
+
+# Number of threads used for sorting (0=disable threading)
+Threads                        0
+
+# Minimum size of input (in bytes) to consider multi-threaded internal sorting
+ThreadThreshold                1M
+
+# Chunks smaller than ThreadThreshold are sorted by a sequential algorithm, but
+# if they are at least of the following size, different chunks are sorted in
+# parallel. There is a slight space penalty for setting up the parallel process,
+# so better avoid setting this number too small.
+ThreadChunk            256
+
+# Internal radix-sort stops at this size and switches to QuickSort (must be >0)
+RadixThreshold         4K
+
+# Debugging switches (see the source)
+Debug                  0
+
+}
+
+######## URL processing #########################################################
+
+URL {
+
+# Ignore spaces at the start/end of a URL
+IgnoreSpaces           1
+
+# Ignore underflows in relative paths (/../ from root)
+IgnoreUnderflow                1
+
+# Some URL's with many repeated components are filtered out to avoid infinite
+# URL's (e.g. http://czech.recoder.cz/win/iso/win/iso/file.html, or
+# http://a.com/?a=b&a=b&a=b, ...).
+# The URL is split to components divided by any of the specified separators.
+# Then the separators are forgotten and the components between them are
+# examined.
+ComponentSeparators    /&?
+
+# URL is filtered out if there's a sequence of components in a row with at most
+# MaxRepeatLength components and the sequence is repeated more than MinRepeatCount
+# times.  Default values are high MinRepeatCount and low MaxRepeatLength, so the
+# mechanism is disabled.
+MinRepeatCount         4
+MaxRepeatLength                4
+
+# Maximum number of occurences of a single component in the entire URL (possibly interleaved
+# by different components). The detector is disabled by default.
+MaxOccurences          4
+
+}
index e536663f00b42b8be4f61da7004a11e988385e7e..a26c9036b6fce0fdd66f7554432a43ad724e7543 100644 (file)
@@ -154,9 +154,10 @@ endif
 
 INSTALL_TARGETS+=install-libucw
 install-libucw:
-       install -d -m 755 $(DESTDIR)$(INSTALL_LIB_DIR) $(DESTDIR)$(INSTALL_INCLUDE_DIR)/ucw/ $(DESTDIR)$(INSTALL_PKGCONFIG_DIR)
+       install -d -m 755 $(DESTDIR)$(INSTALL_LIB_DIR) $(DESTDIR)$(INSTALL_INCLUDE_DIR)/ucw/ $(DESTDIR)$(INSTALL_PKGCONFIG_DIR) $(DESTDIR)$(INSTALL_CONFIG_DIR)
        install -m 644 $(addprefix run/include/ucw/,$(LIBUCW_MAIN_INCLUDES) autoconf.h config.h) $(DESTDIR)$(INSTALL_INCLUDE_DIR)/ucw/
        install -m 644 run/lib/pkgconfig/libucw.pc $(DESTDIR)$(INSTALL_PKGCONFIG_DIR)
        install -m 644 run/lib/libucw.$(LS) $(DESTDIR)$(INSTALL_LIB_DIR)
+       install -m 644 run/cf/libucw $(DESTDIR)$(INSTALL_CONFIG_DIR)
 
 .PHONY: install-libucw