view release on metacpan or search on metacpan
src/subversion/subversion/bindings/javahl/tests/org/tigris/subversion/javahl/BasicTests.java
src/subversion/subversion/bindings/javahl/tests/org/tigris/subversion/javahl/RunTests.java
src/subversion/subversion/bindings/javahl/tests/org/tigris/subversion/javahl/SVNAdminTests.java
src/subversion/subversion/bindings/javahl/tests/org/tigris/subversion/javahl/SVNTests.java
src/subversion/subversion/bindings/javahl/tests/org/tigris/subversion/javahl/WC.java
src/subversion/subversion/bindings/swig/core.i
src/subversion/subversion/bindings/swig/include/apr.swg
src/subversion/subversion/bindings/swig/include/proxy.swg
src/subversion/subversion/bindings/swig/include/proxy_apr.swg
src/subversion/subversion/bindings/swig/include/svn_containers.swg
src/subversion/subversion/bindings/swig/include/svn_global.swg
src/subversion/subversion/bindings/swig/include/svn_string.swg
src/subversion/subversion/bindings/swig/include/svn_swigcompat.swg
src/subversion/subversion/bindings/swig/include/svn_types.swg
src/subversion/subversion/bindings/swig/INSTALL
src/subversion/subversion/bindings/swig/NOTES
src/subversion/subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.c
src/subversion/subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.h
src/subversion/subversion/bindings/swig/perl/native/Base.pm
src/subversion/subversion/bindings/swig/perl/native/Client.pm
src/subversion/subversion/bindings/swig/perl/native/core.c
src/subversion/CHANGES view on Meta::CPAN
* make 'svn rm' remove externals registrations below its targets (r1361256)
* fix crashes in ra_serf where AVG 2012 Surf-Shield is in use (issue #4175)
* don't raise conflicts on identical binary files (issue #4128)
* improve error messages when wc.db missing (issue #4118)
* fix 'svn diff' showing wrong text change (issue #4270)
* fix 'svn diff -rN' failing to show local replace (issue #3797)
* fix 'svn diff' showing wrong revision (issue #4010)
* fix 'svn merge' showing spurious notifications (issue #2910)
* parse '.@HEAD' correctly (issue #3606)
* fix 'svn revert' after conflict in sparse working copy (issue #4168)
* fix bug in global/per-server config handling in serf (r1421516)
* properly display errors from serf (r1398742)
* fix crash in ra_serf (r1408291)
* fixed svnmucc propset and propdel on repository root (issue #3663)
* fix 'svn info' output with ancient svnserve servers (pre-1.2) (r1409732)
* ra_serf shows error message for 408 Request Timeout response (r1410983)
* fix handling of "\ No newline ..." in diff/patch (r1411723, r1412382)
* allow infinite http timeout in ra_serf (r1411976)
* using unknown svn: property names now requires --force (issue #4261)
* fix handling of case insensitive configuration files (r1215089)
* properly handle errors during password caching (r1380695)
src/subversion/CHANGES view on Meta::CPAN
Version 1.6.16
(02 Mar 2011, from /branches/1.6.x)
http://svn.apache.org/repos/asf/subversion/tags/1.6.16
User-visible changes:
* more improvement to the 'blame -g' memory leak from 1.6.15 (r1041438)
* avoid a crash in mod_dav_svn when using locks (r1071239, -307)
See CVE-2011-0715, and descriptive advisory at
http://subversion.apache.org/security/CVE-2011-0715-advisory.txt
* avoid unnecessary globbing for performance (r1068988)
* don't add tree conflicts when one already exists (issue #3486)
* fix potential crash when requesting mergeinfo (r902467)
* don't attempt to resolve prop conflicts in 'merge --dry-run' (r880146)
* more fixes for issue #3270.
Developer-visible changes:
* ensure report_info_t is properly initialized by ra_serf (r1058722)
* locate errors properly on a malfunction (r1053208)
* fix output param timing of svn_fs_commit_txn() on fsfs (r1051751)
* for svn_fs_commit_txn(), set invalid rev on failed commit (r1051632, -8)
src/subversion/CHANGES view on Meta::CPAN
* 'svnadmin setuuid' command added (r28511)
* 'svnsync sync' now shows commit progress like 'svn commit'
* 'svnsync' now takes '-q, --quiet' option (r26465)
* 'svnsync' now supports separate authn for source/target (issue #2717)
* 'svnsync copy-revprops' now supports revision ranges (r23498)
* 'svnsync copy-revprops' now supports "HEAD" revision alias (r23500)
* 'svnmucc' is new name for contrib tool formerly called 'mucc'
* 'svnmucc' now has propset and propdel subcommands (issue #2758)
* 'svnmucc' now has more authentication options
* 'svnmucc' now now takes '--non-interactive' option (r25977)
* 'svnmucc' now takes a global base revision, for extra safety (r23764)
* 'svnlook' now takes '--extensions' option (issue #2912)
* 'svnlook' now takes '-N' option (issue #2663)
* 'svnlook history' now takes '-l' / '--limit' option (r25843)
* 'svnserve' now takes '--config-file' option (r24119)
* 'mod_dav_svn' now uses Apache default mime-type for files (issue #2304)
* new '--with-revprop' option on all commands that commit (issue #1976)
* now accept "peg dates" (URL@{DATE}), behaving like peg revs (issue #2602)
* easier to try out experimental ra_serf http:// access module
* select ra_neon vs ra_serf on a site-by-site basis in config (r25535)
* client-side post-commit processing now more efficient (issue #2607)
* windows binaries now use a custom crash handler (issue #1628)
* add vim swap file patterns to default global-ignores (r24348)
* add "*.pyc" and "*.pyo" patterns to default global-ignores (issue #2415)
* add unix/libtool library patterns to default global-ignores (issue #2415)
* naming scheme for conflict files is now configurable (issue #2474)
* removed svn-ref.tex as it's extremely out of date (issue #2762)
* improved cancellation response in many situations
* support Neon up to 0.28
* character set conversion now uses native API on Windows (r25650)
* HTTP authn protocol now configurable (for Neon 0.26 and higher) (r21531)
* http:// (over Neon) supports HTTP redirection / relocation (issue #660)
* support PKCS#11-provided (smartcard) SSL client certs with Neon (r29421)
* authz now supports aliases (r21982)
* authz token rules for authenticated-only, anonymous, and inverse (r23750)
src/subversion/CHANGES view on Meta::CPAN
* 'svnserve --root PATH' checks that PATH exists (r22580, r22701)
* 'svnlook propget -t TXN_NAME' reports errors better (r22772)
* make location of mod_dav_svn activity database configurable (r24873)
* select only paths that are proper children of requested path (r25231)
* http:// commit error could leave empty transactions behind (r23594)
* 'svn switch --relocate' now works against unreadable repos root (r23848)
* many other minor bugfixes too numerous to list here
- Contributed tools improvements and bugfixes:
* svn_load_dirs.pl:
- Support global-ignores list (issue #2470)
- Allow "@" in filenames (r22203, Debian bug 359145)
- Add -no_auto_exe option (r26399)
* svnmerge.py:
- fixed: Always get end_rev from source instead of target (issue #2863)
- fixed: 'init' now chooses a better default revision range (issue #2810)
- fixed: Consider revs changing blocking status as reflected (issue #2814)
- Performance inmprovement (issue #2812)
- initialized revisions can be excluded (issue #2851)
* new 'svn-populate-node-origins-index' tool (issue #3024)
* new 'svn-merge-vendor.py' to assist in merging vendor branches (r23030)
src/subversion/CHANGES view on Meta::CPAN
* remove svn-config script
* empty-file and README.txt removed from WC admin areas (r17181 -268 -364)
* replace cmdline client XML DTDs with RNG schemas (r16379 -80 -93 -571 17248)
* fixed: log --limit against old svnserve leaves unusable session (r19638)
* fixed: Solaris build problems (r19636)
* fixed: blame of WORKING revision shouldn't give BASE (r19558)
* fixed: svn_client_copy and _move should fail if target exists (issue #2188)
* fixed: svn_io_file_rename and readonlyness on Windows and UNIX (r17366 -69)
* fixed: ra_dav memory leak when reusing session (issue #2247)
* fixed: console character encoding problems when built with VS2005 (r20108)
* fixed: various problems with --enable-dso and global pools (r20996, r20999)
* fixed: installer file syntax error in new versions of Inno Setup (r21022)
* SWIG bindings:
- SWIG/python bindings:
- new support for svn_client_info (r19413)
- SWIG/ruby bindings:
- full support for Subversion 1.4 APIs, including :
svn_ra_replay and svn_diff_summarize
- numerous bug fixes
- add ruby documentation (make install-swig-rb-doc) (r20166)
- add APIs for adding a provider (r21079)
src/subversion/CHANGES view on Meta::CPAN
* fixed: 'svn log' performance regression, general (r14116, 14772, 14759)
* fixed: 'svn log -v' performance regression, FSFS-specific (r15016)
* fixed: mod_dav_svn bug sets content-type incorrectly (r15046)
Developer-visible changes:
* fixed: win32 innosetup's add/repair/remove features (r14830)
* fixed: OBOE with 'limit' parameter of svn_repos_get_logs3(). (r15119)
* redhat RPM fixes (r15050)
* perl bindings:
- accessors for svn_lock_t (r15082)
- call utf_initialize, adjust global pool usage (r15076, r15080,
r15081, r15117)
Version 1.2.0
(21 May 2005, from /branches/1.2.x)
http://svn.apache.org/repos/asf/subversion/tags/1.2.0
See the 1.2 release notes for a more verbose overview of the changes since
the 1.1 release: http://subversion.apache.org/docs/release-notes/1.2.html
src/subversion/CHANGES view on Meta::CPAN
User-visible changes:
* new compatibility rule: require only that each interim release be
compatible with the one before it (see HACKING)
* ra_svn is still new so above rule doesn't yet apply
(i.e. 0.20 over ra_svn is NOT compatible with previous releases)
* merge infers the target path (see book chapters 4 & 8)
* merge continues in presence of missing target file
* merge's add notifications are no longer duplicated
* commands can be safely interrupted (Ctrl-C)
* --encoding global default in ~/.subversion/config
* new option --editor-cmd
* begin multi-release transition to escape binary properties over DAV
* misc performance improvements
Developer-visible changes:
* RA vtable functions take pool argument
* svn-config --includes path fixed
* uuid at creation now complete
* start having test failures throw exceptions rather than return errors
* test suite option --cleanup with --verbose being default mode
src/subversion/CHANGES view on Meta::CPAN
* cvs2svn.py api fix
* hot_backup.py now correctly removes old backups
Developer-visible changes:
* various rpm package fixes
Version 0.18.0 (released 19 Feb 2003, revision 4968, branches/release-0.18)
User-visible changes:
* renamed the [default] section to [global] in the servers config file
* compression option is now http-compression and lives in servers file
* use internal diff by default rather than external program (#405 in progress)
* symlinked hook scripts now run
* read-only access flag (-R) for svnserve
* quiet flag (--quiet) for svnadmin dump
* --ignore-uuid and --force-uuid for svnadmin load
* miscellaneous performance improvements
* more work on the Book
Developer-visible changes:
src/subversion/CHANGES view on Meta::CPAN
better checksum error reporting,
Version 0.17.0 (released 20 Jan 2003, revision 4468, branches/0.17)
User-visible changes:
* 'svn add' is now recursive by default, -N to disable (#1073)
* new 'svnversion' program summarizes mixed-revs of a working copy
* huge improvements to the mailer.py tool
* more work on the Book and man page
* default global-ignores now built-in, new runtime-config file commented out
Developer-visible changes:
* checksums, checksums everywhere (issues #649, #689):
- filesystem stores them, and verifies them when reading/writing
- working copy stores them, and verifies them when reading/writing
- checksums transferred both ways over network, RA layers verify them
* finish draft of internal diff/diff3 library -- ready for testing/optimizing
* more utf8<->apr conversion work (#872)
* more work on swig/python and ruby bindings
* improvements to win32-innosetup package
src/subversion/CHANGES view on Meta::CPAN
* tool changes:
- new svnshell.py tool
- new mirror_dir_through_svn.cgi script
- new svn_load_dirs.pl features
- updates to vc-svn.el
* --message-encoding is now just --encoding, and affects svn: propvals too.
* major rewrites of chapters 3, 4, 5 of the Subversion Book.
Developer-visible changes:
* new network layer, libsvn_ra_svn! still experimental.
* all svn_error_t's now allocated in subpool of global pool.
* reorganize svnlook/svnadmin subcommands & option-parsing (#540, #915, #910)
* all log messages and svn: props now stored as UTF8/LF endings (#896)
* huge cleanup/reorg of all svn_path_* routines
* svn_client_status sends feedback, distinguishes unversioned vs. ignored
* improvements to swig typemappings and build processes
* fixes to pool cleanup handlers
* begin abstraction of gen_make.py
* entry-caching improvements
* stop using global apr_xlate objects
* win32-innosetup code added to packages/
* new work on ruby bindings and swig-java bindings
* many, many bug fixes: various small coredumps, svn_error_t leaks,
copy props correctly (#976), copy executable bits correctly (#982),
test-system fix (#882), accidentally imported tmpfile (#964),
ra_local checkout memleak (#985), accidental wc deletion (#988),
better text vs. binary detection (#994), dav log-report error
handling, bad 'svn switch' dav caching (#1000), don't call NULL
callbacks (#1005), bogus switch feedback (#1007), eol-style file
corruption (#920), getdate.y fix (#1009), ra_local error reporting (#900),
src/subversion/CHANGES view on Meta::CPAN
* lots of branch work on the delta-combiner and on libsvn_wc rewrite
* numerous bugfixes: 'svn merge .' bug (#748), bug #764, two new
ghudson-dirversioning bugs, #756, #675, #783, #796, wc-root bugs,
#799, #800, #797, directory-removal bugs (#611, #687)
Version 0.13.2 [Pre-Alpha] (released 28 June 2002, revision 2376)
User-visible changes:
* fixed various buggy commandline outputs
* allow global/local config-files on win32
* prevent overwrites with 'svn cp URL URL'
* improvements to svn_load_dirs.pl
* mod_dav_svn can generate xml output for directory GETs
* new svnadmin(1) man page
Developer-visible changes:
* finished notification callback system, no more buggy output
* fs-changes:
- revisions table nothing but an index to txns table
- branch work-in-progress: new 'changes' table to store changed paths
src/subversion/build.conf view on Meta::CPAN
# under the License.
######################################################################
#
# This file is processed by gen-make.py, creating build-outputs.mk
#
# ----------------------------------------------------------------------------
#
# PREDEFINED SECTION
#
# This [options] section is global in scope, providing information to the
# process, rather than defining a build target, as all other sections do.
#
[options]
includes = subversion/include/*.h
include-wildcards = *.h *.i *.swg
private-includes =
subversion/include/private/*.h
subversion/bindings/swig/include/*.swg
subversion/libsvn_delta/compose_delta.c
src/subversion/build/config.sub view on Meta::CPAN
| tron-* \
| ubicom32-* \
| v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
| vax-* \
| we32k-* \
| x86-* | x86_64-* | xc16x-* | xps100-* \
| xstormy16-* | xtensa*-* \
| ymp-* \
| z8k-* | z80-*)
;;
# Recognize the basic CPU types without company name, with glob match.
xtensa*)
basic_machine=$basic_machine-unknown
;;
# Recognize the various machine names and aliases which stand
# for a CPU type and a company and sometimes even an OS.
386bsd)
basic_machine=i386-unknown
os=-bsd
;;
3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
src/subversion/build/generator/gen_base.py view on Meta::CPAN
# specific language governing permissions and limitations
# under the License.
#
#
#
# gen_base.py -- infrastructure for generating makefiles, dependencies, etc.
#
import os
import sys
import glob
import re
import fileinput
import filecmp
try:
# Python >=3.0
import configparser
except ImportError:
# Python <3.0
import ConfigParser as configparser
import generator.swig
src/subversion/build/generator/gen_base.py view on Meta::CPAN
self.conf = build_path(os.path.abspath(fname))
self.sections = { }
self.graph = DependencyGraph()
# Allow derived classes to suppress certain configuration sections
if not hasattr(self, 'skip_sections'):
self.skip_sections = { }
# The 'options' section does not represent a build target,
# it simply contains global options
self.skip_sections['options'] = None
# Read in the global options
self.includes = \
_collect_paths(parser.get('options', 'includes'))
self.private_includes = \
_collect_paths(parser.get('options', 'private-includes'))
self.private_built_includes = \
parser.get('options', 'private-built-includes').split()
self.scripts = \
_collect_paths(parser.get('options', 'test-scripts'))
self.bdb_scripts = \
_collect_paths(parser.get('options', 'bdb-test-scripts'))
src/subversion/build/generator/gen_base.py view on Meta::CPAN
for dep_section in dep_section_objects:
for target in section.get_targets():
self.graph.bulk_add(dep_type, target.name,
dep_section.get_dep_targets(target))
def compute_hdrs(self):
"""Get a list of the header files"""
all_includes = list(map(native_path, self.includes + self.private_includes))
for d in unique(self.target_dirs):
for wildcard in self.include_wildcards:
hdrs = glob.glob(os.path.join(native_path(d), wildcard))
all_includes.extend(hdrs)
return all_includes
def compute_hdr_deps(self):
"""Compute the dependencies of each header file"""
include_deps = IncludeDependencyInfo(self.compute_hdrs(),
list(map(native_path, self.private_built_includes)))
for objectfile, sources in self.graph.get_deps(DT_OBJECT):
src/subversion/build/generator/gen_base.py view on Meta::CPAN
'DT_OBJECT', # an object filename, depending upon .c filenames
'DT_SWIG_C', # a swig-generated .c file, depending upon .i filename(s)
'DT_LINK', # a libtool-linked filename, depending upon object fnames
'DT_NONLIB', # filename depends on object fnames, but isn't linked to them
'DT_SQLHDR', # header generated from a .sql file
]
# create some variables for these
for _dt in dep_types:
# e.g. DT_INSTALL = 'DT_INSTALL'
globals()[_dt] = _dt
class DependencyNode:
def __init__(self, filename, when = None):
self.filename = filename
self.when = when
def __str__(self):
return self.filename
class ObjectFile(DependencyNode):
src/subversion/build/generator/gen_base.py view on Meta::CPAN
self.gen_obj.projects.append(self)
return
# the specified install area depends upon this target
self.gen_obj.graph.add(DT_INSTALL, self.install, self)
sources = sorted(_collect_paths(self.sources or '*.c' or '*.cpp', self.path))
for srcs, reldir in sources:
for src in srcs.split(" "):
if glob.glob(src):
if src[-2:] == '.c':
objname = src[:-2] + self.objext
elif src[-4:] == '.cpp':
objname = src[:-4] + self.objext
else:
raise GenError('ERROR: unknown file extension on ' + src)
ofile = ObjectFile(objname, self.compile_cmd, self.when)
# object depends upon source
src/subversion/build/generator/gen_base.py view on Meta::CPAN
l = len(path)
result = [ ]
for file in files:
if len(file) > l and file[:l] == path and file[l] == '/':
result.append(file[l+1:])
else:
result.append(file)
return result
def _collect_paths(pats, path=None):
"""Find files matching a space separated list of globs
pats (string) is the list of glob patterns
path (string), if specified, is a path that will be prepended to each
glob pattern before it is evaluated
If path is none the return value is a list of filenames, otherwise
the return value is a list of 2-tuples. The first element in each tuple
is a matching filename and the second element is the portion of the
glob pattern which matched the file before its last forward slash (/)
"""
result = [ ]
for base_pat in pats.split():
if path:
pattern = build_path_join(path, base_pat)
else:
pattern = base_pat
files = sorted(glob.glob(native_path(pattern))) or [pattern]
if path is None:
# just append the names to the result list
for file in files:
result.append(build_path(file))
else:
# if we have paths, then we need to record how each source is located
# relative to the specified path
reldir = build_path_dirname(base_pat)
for file in files:
src/subversion/build/generator/gen_win.py view on Meta::CPAN
try:
# Python >=2.5
from hashlib import md5 as hashlib_md5
except ImportError:
# Python <2.5
from md5 import md5 as hashlib_md5
import sys
import fnmatch
import re
import subprocess
import glob
import string
import generator.swig.header_wrappers
import generator.swig.checkout_swig_header
import generator.swig.external_runtime
if sys.version_info[0] >= 3:
# Python >=3.0
from io import StringIO
else:
# Python <3.0
src/subversion/build/generator/gen_win.py view on Meta::CPAN
template = ezt.Template(compress_whitespace = 0)
template.parse_file(os.path.join('build', 'generator', tname))
template.generate(fout, data)
self.write_file_if_changed(fname, fout.getvalue())
def write_zlib_project_file(self, name):
if not self.zlib_path:
return
zlib_path = os.path.abspath(self.zlib_path)
zlib_sources = map(lambda x : os.path.relpath(x, self.projfilesdir),
glob.glob(os.path.join(zlib_path, '*.c')) +
glob.glob(os.path.join(zlib_path,
'contrib/masmx86/*.c')) +
glob.glob(os.path.join(zlib_path,
'contrib/masmx86/*.asm')))
zlib_headers = map(lambda x : os.path.relpath(x, self.projfilesdir),
glob.glob(os.path.join(zlib_path, '*.h')))
self.move_proj_file(self.projfilesdir, name,
(('zlib_path', os.path.relpath(zlib_path,
self.projfilesdir)),
('zlib_sources', zlib_sources),
('zlib_headers', zlib_headers),
('zlib_version', self.zlib_version),
('project_guid', self.makeguid('zlib')),
('use_ml', self.have_ml and 1 or None),
))
def write_serf_project_file(self, name):
if not self.serf_lib:
return
serf_path = os.path.abspath(self.serf_path)
serf_sources = map(lambda x : os.path.relpath(x, self.serf_path),
glob.glob(os.path.join(serf_path, '*.c'))
+ glob.glob(os.path.join(serf_path, 'auth', '*.c'))
+ glob.glob(os.path.join(serf_path, 'buckets',
'*.c')))
serf_headers = map(lambda x : os.path.relpath(x, self.serf_path),
glob.glob(os.path.join(serf_path, '*.h'))
+ glob.glob(os.path.join(serf_path, 'auth', '*.h'))
+ glob.glob(os.path.join(serf_path, 'buckets', '*.h')))
if self.serf_ver_maj != 0:
serflib = 'serf-%d.lib' % self.serf_ver_maj
else:
serflib = 'serf.lib'
apr_static = self.static_apr and 'APR_STATIC=1' or ''
openssl_static = self.static_openssl and 'OPENSSL_STATIC=1' or ''
self.move_proj_file(self.serf_path, name,
(('serf_sources', serf_sources),
('serf_headers', serf_headers),
src/subversion/build/generator/swig/header_wrappers.py view on Meta::CPAN
# specific language governing permissions and limitations
# under the License.
#
#
#
# header_wrappers.py: Generates SWIG proxy wrappers around Subversion
# header files
#
import os, re, sys, glob, shutil, tempfile
if __name__ == "__main__":
parent_dir = os.path.dirname(os.path.abspath(os.path.dirname(sys.argv[0])))
sys.path[0:0] = [ parent_dir, os.path.dirname(parent_dir) ]
from gen_base import unique, native_path, build_path_basename, build_path_join
import generator.swig
class Generator(generator.swig.Generator):
"""Generate SWIG proxy wrappers around Subversion header files"""
def __init__(self, conf, swig_path):
src/subversion/build/install-sh view on Meta::CPAN
chgrpprog=${CHGRPPROG-chgrp}
chmodprog=${CHMODPROG-chmod}
chownprog=${CHOWNPROG-chown}
cmpprog=${CMPPROG-cmp}
cpprog=${CPPROG-cp}
mkdirprog=${MKDIRPROG-mkdir}
mvprog=${MVPROG-mv}
rmprog=${RMPROG-rm}
stripprog=${STRIPPROG-strip}
posix_glob='?'
initialize_posix_glob='
test "$posix_glob" != "?" || {
if (set -f) 2>/dev/null; then
posix_glob=
else
posix_glob=:
fi
}
'
posix_mkdir=
# Desired mode of installed file.
mode=0755
chgrpcmd=
src/subversion/build/install-sh view on Meta::CPAN
# The umask is ridiculous, or mkdir does not conform to POSIX,
# or it failed possibly due to a race condition. Create the
# directory the slow way, step by step, checking for races as we go.
case $dstdir in
/*) prefix='/';;
-*) prefix='./';;
*) prefix='';;
esac
eval "$initialize_posix_glob"
oIFS=$IFS
IFS=/
$posix_glob set -f
set fnord $dstdir
shift
$posix_glob set +f
IFS=$oIFS
prefixes=
for d
do
test -z "$d" && continue
prefix=$prefix$d
if test -d "$prefix"; then
src/subversion/build/install-sh view on Meta::CPAN
{ test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
{ test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
{ test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
# If -C, don't bother to copy if it wouldn't change the file.
if $copy_on_change &&
old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
eval "$initialize_posix_glob" &&
$posix_glob set -f &&
set X $old && old=:$2:$4:$5:$6 &&
set X $new && new=:$2:$4:$5:$6 &&
$posix_glob set +f &&
test "$old" = "$new" &&
$cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
then
rm -f "$dsttmp"
else
# Rename the file to the real destination.
$doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
# The rename failed, perhaps because mv can't rename something else
src/subversion/build/libtool.m4 view on Meta::CPAN
# Same as above, but do not quote variable references.
double_quote_subst='s/\([["`\\]]\)/\\\1/g'
# Sed substitution to delay expansion of an escaped shell variable in a
# double_quote_subst'ed string.
delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
# Sed substitution to delay expansion of an escaped single quote.
delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
# Sed substitution to avoid accidental globbing in evaled expressions
no_glob_subst='s/\*/\\\*/g'
])
# _LT_PROG_LTMAIN
# ---------------
# Note that this code is called both from 'configure', and 'config.status'
# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
# 'config.status' has no value for ac_aux_dir unless we are using Automake,
# so we pass a copy along to make sure it has a sensible value anyway.
m4_defun([_LT_PROG_LTMAIN],
[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
src/subversion/build/libtool.m4 view on Meta::CPAN
case $host_os in
rhapsody* | darwin*)
AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
AC_CHECK_TOOL([LIPO], [lipo], [:])
AC_CHECK_TOOL([OTOOL], [otool], [:])
AC_CHECK_TOOL([OTOOL64], [otool64], [:])
_LT_DECL([], [DSYMUTIL], [1],
[Tool to manipulate archived DWARF debug symbol files on Mac OS X])
_LT_DECL([], [NMEDIT], [1],
[Tool to change global to local symbols on Mac OS X])
_LT_DECL([], [LIPO], [1],
[Tool to manipulate fat objects and archives on Mac OS X])
_LT_DECL([], [OTOOL], [1],
[ldd/readelf like tool for Mach-O binaries on Mac OS X])
_LT_DECL([], [OTOOL64], [1],
[ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
[lt_cv_apple_cc_single_mod=no
if test -z "$LT_MULTI_MODULE"; then
src/subversion/build/libtool.m4 view on Meta::CPAN
# find the maximum length of command line arguments
AC_MSG_CHECKING([the maximum length of command line arguments])
AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
i=0
teststring=ABCD
case $build_os in
msdosdjgpp*)
# On DJGPP, this test can blow up pretty badly due to problems in libc
# (any single argument exceeding 2000 bytes causes a buffer overrun
# during glob expansion). Even if it were fixed, the result of this
# check would be larger than it should be.
lt_cv_sys_max_cmd_len=12288; # 12K is about right
;;
gnu*)
# Under GNU Hurd, this test is not required because there is
# no limit to the length of command line arguments.
# Libtool will interpret -1 as no limit whatsoever
lt_cv_sys_max_cmd_len=-1;
;;
src/subversion/build/libtool.m4 view on Meta::CPAN
;;
esac
;;
tpf*)
lt_cv_deplibs_check_method=pass_all
;;
esac
])
file_magic_glob=
want_nocaseglob=no
if test "$build" = "$host"; then
case $host_os in
mingw* | pw32*)
if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
want_nocaseglob=yes
else
file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
fi
;;
esac
fi
file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
test -z "$deplibs_check_method" && deplibs_check_method=unknown
_LT_DECL([], [deplibs_check_method], [1],
[Method to check whether dependent libraries are shared objects])
_LT_DECL([], [file_magic_cmd], [1],
[Command to use when deplibs_check_method = "file_magic"])
_LT_DECL([], [file_magic_glob], [1],
[How to find potential files when deplibs_check_method = "file_magic"])
_LT_DECL([], [want_nocaseglob], [1],
[Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
])# _LT_CHECK_MAGIC_METHOD
# LT_PATH_NM
# ----------
# find the pathname to a BSD- or MS-compatible name lister
AC_DEFUN([LT_PATH_NM],
[AC_REQUIRE([AC_PROG_CC])dnl
AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
[if test -n "$NM"; then
src/subversion/build/libtool.m4 view on Meta::CPAN
AC_REQUIRE([AC_PROG_CC])dnl
AC_REQUIRE([AC_PROG_AWK])dnl
AC_REQUIRE([LT_PATH_NM])dnl
AC_REQUIRE([LT_PATH_LD])dnl
m4_require([_LT_DECL_SED])dnl
m4_require([_LT_DECL_EGREP])dnl
m4_require([_LT_TAG_COMPILER])dnl
# Check for command to grab the raw symbol name followed by C symbol from nm.
AC_MSG_CHECKING([command to parse $NM output from $compiler object])
AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
[
# These are sane defaults that work on at least a few old systems.
# [They come from Ultrix. What could be older than Ultrix?!! ;)]
# Character class describing NM global symbol codes.
symcode='[[BCDEGRST]]'
# Regexp to match symbols that can be accessed directly from C.
sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
# Define system-specific variables.
case $host_os in
aix*)
symcode='[[BCDT]]'
;;
src/subversion/build/libtool.m4 view on Meta::CPAN
esac
# If we're using GNU nm, then use its standard symbol codes.
case `$NM -V 2>&1` in
*GNU* | *'with BFD'*)
symcode='[[ABCDGIRSTW]]' ;;
esac
if test "$lt_cv_nm_interface" = "MS dumpbin"; then
# Gets list of data symbols to import.
lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'"
# Adjust the below global symbol transforms to fixup imported variables.
lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"
lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'"
lt_c_name_lib_hook="\
-e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\
-e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'"
else
# Disable hooks by default.
lt_cv_sys_global_symbol_to_import=
lt_cdecl_hook=
lt_c_name_hook=
lt_c_name_lib_hook=
fi
# Transform an extracted symbol line into a proper C declaration.
# Some systems (esp. on ia64) link data and code symbols differently,
# so use this general approach.
lt_cv_sys_global_symbol_to_cdecl="sed -n"\
$lt_cdecl_hook\
" -e 's/^T .* \(.*\)$/extern int \1();/p'"\
" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"
# Transform an extracted symbol line into symbol name and symbol address
lt_cv_sys_global_symbol_to_c_name_address="sed -n"\
$lt_c_name_hook\
" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\
" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'"
# Transform an extracted symbol line into symbol name with lib prefix and
# symbol address.
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\
$lt_c_name_lib_hook\
" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\
" -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\
" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'"
# Handle CRLF in mingw tool chain
opt_cr=
case $build_os in
mingw*)
opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
src/subversion/build/libtool.m4 view on Meta::CPAN
# Try without a prefix underscore, then with it.
for ac_symprfx in "" "_"; do
# Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
symxfrm="\\1 $ac_symprfx\\2 \\2"
# Write the raw and C identifiers.
if test "$lt_cv_nm_interface" = "MS dumpbin"; then
# Fake it for dumpbin and say T for any non-static function,
# D for any global variable and I for any imported variable.
# Also find C++ and __fastcall symbols from MSVC++,
# which start with @ or ?.
lt_cv_sys_global_symbol_pipe="$AWK ['"\
" {last_section=section; section=\$ 3};"\
" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
" /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\
" /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\
" /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\
" \$ 0!~/External *\|/{next};"\
" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
" {if(hide[section]) next};"\
" {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\
" {split(\$ 0,a,/\||\r/); split(a[2],s)};"\
" s[1]~/^[@?]/{print f,s[1],s[1]; next};"\
" s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\
" ' prfx=^$ac_symprfx]"
else
lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
fi
lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
# Check to see that the pipe works correctly.
pipe_works=no
rm -f conftest*
cat > conftest.$ac_ext <<_LT_EOF
#ifdef __cplusplus
extern "C" {
#endif
char nm_test_var;
src/subversion/build/libtool.m4 view on Meta::CPAN
void nm_test_func(void){}
#ifdef __cplusplus
}
#endif
int main(){nm_test_var='a';nm_test_func();return(0);}
_LT_EOF
if AC_TRY_EVAL(ac_compile); then
# Now try to grab the symbols.
nlist=conftest.nm
if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
# Try sorting and uniquifying the output.
if sort "$nlist" | uniq > "$nlist"T; then
mv -f "$nlist"T "$nlist"
else
rm -f "$nlist"T
fi
# Make sure that we snagged all the symbols we need.
if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
src/subversion/build/libtool.m4 view on Meta::CPAN
#else
# define LT@&t@_DLSYM_CONST const
#endif
#ifdef __cplusplus
extern "C" {
#endif
_LT_EOF
# Now generate the symbol file.
eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
cat <<_LT_EOF >> conftest.$ac_ext
/* The mapping between symbol names and symbols. */
LT@&t@_DLSYM_CONST struct {
const char *name;
void *address;
}
lt__PROGRAM__LTX_preloaded_symbols[[]] =
{
src/subversion/build/libtool.m4 view on Meta::CPAN
return lt__PROGRAM__LTX_preloaded_symbols;
}
#endif
#ifdef __cplusplus
}
#endif
_LT_EOF
# Now try linking the two files.
mv conftest.$ac_objext conftstm.$ac_objext
lt_globsym_save_LIBS=$LIBS
lt_globsym_save_CFLAGS=$CFLAGS
LIBS=conftstm.$ac_objext
CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then
pipe_works=yes
fi
LIBS=$lt_globsym_save_LIBS
CFLAGS=$lt_globsym_save_CFLAGS
else
echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
fi
else
echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
fi
else
echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
fi
else
echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
cat conftest.$ac_ext >&5
fi
rm -rf conftest* conftst*
# Do not use the global_symbol_pipe unless it works.
if test yes = "$pipe_works"; then
break
else
lt_cv_sys_global_symbol_pipe=
fi
done
])
if test -z "$lt_cv_sys_global_symbol_pipe"; then
lt_cv_sys_global_symbol_to_cdecl=
fi
if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
AC_MSG_RESULT(failed)
else
AC_MSG_RESULT(ok)
fi
# Response file support.
if test "$lt_cv_nm_interface" = "MS dumpbin"; then
nm_file_list_spec='@'
elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
nm_file_list_spec='@'
fi
_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
[Take the output of nm and produce a listing of raw symbols and C names])
_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
[Transform the output of nm in a proper C declaration])
_LT_DECL([global_symbol_to_import], [lt_cv_sys_global_symbol_to_import], [1],
[Transform the output of nm into a list of symbols to manually relocate])
_LT_DECL([global_symbol_to_c_name_address],
[lt_cv_sys_global_symbol_to_c_name_address], [1],
[Transform the output of nm in a C name address pair])
_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
[lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
[Transform the output of nm in a C name address pair when lib prefix is needed])
_LT_DECL([nm_interface], [lt_cv_nm_interface], [1],
[The name lister interface])
_LT_DECL([], [nm_file_list_spec], [1],
[Specify filename containing input files for $NM])
]) # _LT_CMD_GLOBAL_SYMBOLS
# _LT_COMPILER_PIC([TAGNAME])
# ---------------------------
src/subversion/build/libtool.m4 view on Meta::CPAN
[AC_REQUIRE([LT_PATH_LD])dnl
AC_REQUIRE([LT_PATH_NM])dnl
m4_require([_LT_PATH_MANIFEST_TOOL])dnl
m4_require([_LT_FILEUTILS_DEFAULTS])dnl
m4_require([_LT_DECL_EGREP])dnl
m4_require([_LT_DECL_SED])dnl
m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
m4_require([_LT_TAG_COMPILER])dnl
AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
m4_if([$1], [CXX], [
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
_LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
case $host_os in
aix[[4-9]]*)
# If we're using GNU nm, then we don't want the "-C" option.
# -C means demangle to AIX nm, but means don't demangle with GNU nm
# Also, AIX nm treats weak defined symbols like other global defined
# symbols, whereas GNU nm marks them as "W".
if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
_LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
else
_LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
fi
;;
pw32*)
_LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds
;;
cygwin* | mingw* | cegcc*)
case $cc_basename in
cl*)
_LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
;;
*)
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | ...
_LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
;;
esac
;;
*)
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
;;
esac
], [
runpath_var=
_LT_TAGVAR(allow_undefined_flag, $1)=
_LT_TAGVAR(always_export_symbols, $1)=no
_LT_TAGVAR(archive_cmds, $1)=
_LT_TAGVAR(archive_expsym_cmds, $1)=
_LT_TAGVAR(compiler_needs_object, $1)=no
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
_LT_TAGVAR(export_dynamic_flag_spec, $1)=
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
_LT_TAGVAR(hardcode_automatic, $1)=no
_LT_TAGVAR(hardcode_direct, $1)=no
_LT_TAGVAR(hardcode_direct_absolute, $1)=no
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
_LT_TAGVAR(hardcode_libdir_separator, $1)=
_LT_TAGVAR(hardcode_minus_L, $1)=no
_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
_LT_TAGVAR(inherit_rpath, $1)=no
_LT_TAGVAR(link_all_deplibs, $1)=unknown
_LT_TAGVAR(module_cmds, $1)=
src/subversion/build/libtool.m4 view on Meta::CPAN
;;
cygwin* | mingw* | pw32* | cegcc*)
# _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
# as there is no search path for DLLs.
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
_LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
_LT_TAGVAR(always_export_symbols, $1)=no
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | ...
_LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
# If the export-symbols file already is a .def file, use it as
# is; otherwise, prepend EXPORTS...
_LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
cp $export_symbols $output_objdir/$soname.def;
else
echo EXPORTS > $output_objdir/$soname.def;
src/subversion/build/libtool.m4 view on Meta::CPAN
*Sun\ C*) # Sun C 5.9
_LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
_LT_TAGVAR(compiler_needs_object, $1)=yes
tmp_sharedflag='-G' ;;
*Sun\ F*) # Sun Fortran 8.3
tmp_sharedflag='-G' ;;
esac
_LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
if test yes = "$supports_anon_versioning"; then
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
echo "local: *; };" >> $output_objdir/$libname.ver~
$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
fi
case $cc_basename in
xlf* | bgf* | bgxlf* | mpixlf*)
# IBM XL Fortran 10.1 on PPC cannot create shared libs itself
_LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
_LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
if test yes = "$supports_anon_versioning"; then
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
echo "local: *; };" >> $output_objdir/$libname.ver~
$LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
fi
;;
esac
else
_LT_TAGVAR(ld_shlibs, $1)=no
fi
;;
src/subversion/build/libtool.m4 view on Meta::CPAN
aix[[4-9]]*)
if test ia64 = "$host_cpu"; then
# On IA64, the linker does run time linking by default, so we don't
# have to do anything special.
aix_use_runtimelinking=no
exp_sym_flag='-Bexport'
no_entry_flag=
else
# If we're using GNU nm, then we don't want the "-C" option.
# -C means demangle to AIX nm, but means don't demangle with GNU nm
# Also, AIX nm treats weak defined symbols like other global
# defined symbols, whereas GNU nm marks them as "W".
if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
_LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
else
_LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
fi
aix_use_runtimelinking=no
# Test if we are trying to use run time linking or normal
# AIX style linking. If -brtl is somewhere in LDFLAGS, we
src/subversion/build/libtool.m4 view on Meta::CPAN
echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
else
$SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
fi~
$CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
linknames='
# The linker will not automatically build a static lib if we build a DLL.
# _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
_LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1,DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols'
# Don't use ranlib
_LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
_LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
lt_tool_outputfile="@TOOL_OUTPUT@"~
case $lt_outputfile in
*.exe|*.EXE) ;;
*)
lt_outputfile=$lt_outputfile.exe
lt_tool_outputfile=$lt_tool_outputfile.exe
;;
src/subversion/build/libtool.m4 view on Meta::CPAN
fi
_LT_TAGVAR(archive_cmds_need_lc, $1)='no'
_LT_TAGVAR(hardcode_libdir_separator, $1)=:
;;
solaris*)
_LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
if test yes = "$GCC"; then
wlarc='$wl'
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
$CC -shared $pic_flag $wl-z ${wl}text $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
else
case `$CC -V 2>&1` in
*"Compilers 5.0"*)
wlarc=''
_LT_TAGVAR(archive_cmds, $1)='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
$LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
;;
*)
wlarc='$wl'
_LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
$CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
;;
esac
fi
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
case $host_os in
solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
*)
# The compiler driver will combine and reorder linker options,
src/subversion/build/libtool.m4 view on Meta::CPAN
# from the output so that they don't get included in the library
# dependencies.
output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list ...
;;
xl* | mpixl* | bgxl*)
# IBM XL 8.0 on PPC, with GNU ld
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
_LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
_LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
if test yes = "$supports_anon_versioning"; then
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
echo "local: *; };" >> $output_objdir/$libname.ver~
$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
fi
;;
*)
case `$CC -V 2>&1 | sed 5q` in
*Sun\ C*)
# Sun C++ 5.9
_LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
src/subversion/build/libtool.m4 view on Meta::CPAN
esac
;;
solaris*)
case $cc_basename in
CC* | sunCC*)
# Sun C++ 4.2, 5.x and Centerline C++
_LT_TAGVAR(archive_cmds_need_lc,$1)=yes
_LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
_LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
$CC -G$allow_undefined_flag $wl-M $wl$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
case $host_os in
solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
*)
# The compiler driver will combine and reorder linker options,
# but understands '-z linker_flag'.
# Supported since Solaris 2.6 (maybe 2.5.1?)
src/subversion/build/libtool.m4 view on Meta::CPAN
# The C++ compiler must be used to create the archive.
_LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
;;
*)
# GNU C++ compiler with Solaris linker
if test yes,no = "$GXX,$with_gnu_ld"; then
_LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs'
if $CC --version | $GREP -v '^2\.7' > /dev/null; then
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
$CC -shared $pic_flag -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
# linking a shared library.
output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
else
# g++ 2.7 appears to require '-G' NOT '-shared' on this
# platform.
_LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
$CC -G -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
# linking a shared library.
output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
fi
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir'
case $host_os in
src/subversion/build/libtool.m4 view on Meta::CPAN
fi # test yes != "$_lt_caught_CXX_error"
AC_LANG_POP
])# _LT_LANG_CXX_CONFIG
# _LT_FUNC_STRIPNAME_CNF
# ----------------------
# func_stripname_cnf prefix suffix name
# strip PREFIX and SUFFIX off of NAME.
# PREFIX and SUFFIX must not contain globbing or regex special
# characters, hashes, percent signs, but SUFFIX may contain a leading
# dot (in which case that matches only a dot).
#
# This function is identical to the (non-XSI) version of func_stripname,
# except this one can be used by m4 code that may be executed by configure,
# rather than the libtool script.
m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
AC_REQUIRE([_LT_DECL_SED])
AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
func_stripname_cnf ()
src/subversion/build/ltmain.sh view on Meta::CPAN
/g
s/^$_G_bs2$_G_dollar/$_G_bs&/
s/\\([^$_G_bs]\\)$_G_bs2$_G_dollar/\\1$_G_bs2$_G_bs$_G_dollar/g
s/\n//g"
## ----------------- ##
## Global variables. ##
## ----------------- ##
# Except for the global variables explicitly listed below, the following
# functions in the '^func_' namespace, and the '^require_' namespace
# variables initialised in the 'Resource management' section, sourcing
# this file will not pollute your global namespace with anything
# else. There's no portable way to scope variables in Bourne shell
# though, so actually running these functions will sometimes place
# results into a variable named after the function, and often use
# temporary variables in the '^_G_' namespace. If you are careful to
# avoid using those namespaces casually in your sourcing script, things
# should continue to work as you expect. And, of course, you can freely
# overwrite any of the functions or variables defined here before
# calling anything to customize them.
EXIT_SUCCESS=0
src/subversion/build/ltmain.sh view on Meta::CPAN
;;
esac
func_quote_for_expand_result=$_G_arg
}
# func_stripname PREFIX SUFFIX NAME
# ---------------------------------
# strip PREFIX and SUFFIX from NAME, and store in func_stripname_result.
# PREFIX and SUFFIX must not contain globbing or regex special
# characters, hashes, percent signs, but SUFFIX may contain a leading
# dot (in which case that matches only a dot).
if test yes = "$_G_HAVE_XSI_OPS"; then
eval 'func_stripname ()
{
$debug_cmd
# pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
# positional parameters, so assign one to ordinary variable first.
func_stripname_result=$3
src/subversion/build/ltmain.sh view on Meta::CPAN
$require_term_colors
func_echo_infix_1 "${tc_red}warning$tc_reset" "$*" >&2
}
# func_warning CATEGORY ARG...
# ----------------------------
# Echo program name prefixed warning message to standard error. Warning
# messages can be filtered according to CATEGORY, where this function
# elides messages where CATEGORY is not listed in the global variable
# 'opt_warning_types'.
func_warning ()
{
$debug_cmd
# CATEGORY must be in the warning_categories list!
case " $warning_categories " in
*" $1 "*) ;;
*) func_internal_error "invalid warning category '$1'" ;;
esac
src/subversion/build/ltmain.sh view on Meta::CPAN
$debug_cmd
func_usage_message
$ECHO "$long_help_message"
exit 0
}
# func_missing_arg ARGNAME
# ------------------------
# Echo program name prefixed message to standard error and set global
# exit_cmd.
func_missing_arg ()
{
$debug_cmd
func_error "Missing argument for '$1'."
exit_cmd=exit
}
src/subversion/build/ltmain.sh view on Meta::CPAN
echo "disable static libraries"
fi
exit $?
}
# func_enable_tag TAGNAME
# -----------------------
# Verify that TAGNAME is valid, and either flag an error and exit, or
# enable the TAGNAME tag. We also add TAGNAME to the global $taglist
# variable here.
func_enable_tag ()
{
# Global variable:
tagname=$1
re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$"
re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$"
sed_extractcf=/$re_begincf/,/$re_endcf/p
src/subversion/build/ltmain.sh view on Meta::CPAN
{
$debug_cmd
my_outputname=$1
my_originator=$2
my_pic_p=${3-false}
my_prefix=`$ECHO "$my_originator" | $SED 's%[^a-zA-Z0-9]%_%g'`
my_dlsyms=
if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then
if test -n "$NM" && test -n "$global_symbol_pipe"; then
my_dlsyms=${my_outputname}S.c
else
func_error "not configured to extract global symbols from dlpreopened files"
fi
fi
if test -n "$my_dlsyms"; then
case $my_dlsyms in
"") ;;
*.c)
# Discover the nlist of each of the dlfiles.
nlist=$output_objdir/$my_outputname.nm
src/subversion/build/ltmain.sh view on Meta::CPAN
if test yes = "$dlself"; then
func_verbose "generating symbol list for '$output'"
$opt_dry_run || echo ': @PROGRAM@ ' > "$nlist"
# Add our own program objects to the symbol list.
progfiles=`$ECHO "$objs$old_deplibs" | $SP2NL | $SED "$lo2o" | $NL2SP`
for progfile in $progfiles; do
func_to_tool_file "$progfile" func_convert_file_msys_to_w32
func_verbose "extracting global C symbols from '$func_to_tool_file_result'"
$opt_dry_run || eval "$NM $func_to_tool_file_result | $global_symbol_pipe >> '$nlist'"
done
if test -n "$exclude_expsyms"; then
$opt_dry_run || {
eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T'
eval '$MV "$nlist"T "$nlist"'
}
fi
if test -n "$export_symbols_regex"; then
src/subversion/build/ltmain.sh view on Meta::CPAN
*cygwin* | *mingw* | *cegcc* )
eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
eval 'cat "$nlist" >> "$output_objdir/$outputname.def"'
;;
esac
}
fi
fi
for dlprefile in $dlprefiles; do
func_verbose "extracting global C symbols from '$dlprefile'"
func_basename "$dlprefile"
name=$func_basename_result
case $host in
*cygwin* | *mingw* | *cegcc* )
# if an import library, we need to obtain dlname
if func_win32_import_lib_p "$dlprefile"; then
func_tr_sh "$dlprefile"
eval "curr_lafile=\$libfile_$func_tr_sh_result"
dlprefile_dlbasename=
if test -n "$curr_lafile" && func_lalib_p "$curr_lafile"; then
src/subversion/build/ltmain.sh view on Meta::CPAN
fi
fi
$opt_dry_run || {
if test -n "$dlprefile_dlbasename"; then
eval '$ECHO ": $dlprefile_dlbasename" >> "$nlist"'
else
func_warning "Could not compute DLL name from $name"
eval '$ECHO ": $name " >> "$nlist"'
fi
func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32
eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe |
$SED -e '/I __imp/d' -e 's/I __nm_/D /;s/_nm__//' >> '$nlist'"
}
else # not an import lib
$opt_dry_run || {
eval '$ECHO ": $name " >> "$nlist"'
func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32
eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'"
}
fi
;;
*)
$opt_dry_run || {
eval '$ECHO ": $name " >> "$nlist"'
func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32
eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'"
}
;;
esac
done
$opt_dry_run || {
# Make sure we have at least an empty file.
test -f "$nlist" || : > "$nlist"
if test -n "$exclude_expsyms"; then
src/subversion/build/ltmain.sh view on Meta::CPAN
else
sort +2
fi |
uniq > "$nlist"S; then
:
else
$GREP -v "^: " < "$nlist" > "$nlist"S
fi
if test -f "$nlist"S; then
eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$my_dlsyms"'
else
echo '/* NONE */' >> "$output_objdir/$my_dlsyms"
fi
func_show_eval '$RM "${nlist}I"'
if test -n "$global_symbol_to_import"; then
eval "$global_symbol_to_import"' < "$nlist"S > "$nlist"I'
fi
echo >> "$output_objdir/$my_dlsyms" "\
/* The mapping between symbol names and symbols. */
typedef struct {
const char *name;
void *address;
} lt_dlsymlist;
extern LT_DLSYM_CONST lt_dlsymlist
src/subversion/build/ltmain.sh view on Meta::CPAN
lt_${my_prefix}_LTX_preloaded_symbols[] =
{ {\"$my_originator\", (void *) 0},"
if test -s "$nlist"I; then
echo >> "$output_objdir/$my_dlsyms" "\
{\"@INIT@\", (void *) <_syminit},"
fi
case $need_lib_prefix in
no)
eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$my_dlsyms"
;;
*)
eval "$global_symbol_to_c_name_address_lib_prefix" < "$nlist" >> "$output_objdir/$my_dlsyms"
;;
esac
echo >> "$output_objdir/$my_dlsyms" "\
{0, (void *) 0}
};
/* This works around a problem in FreeBSD linker */
#ifdef FREEBSD_WORKAROUND
static const void *lt_preloaded_setup() {
return lt_${my_prefix}_LTX_preloaded_symbols;
src/subversion/build/ltmain.sh view on Meta::CPAN
finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"`
;;
esac
;;
*)
func_fatal_error "unknown suffix for '$my_dlsyms'"
;;
esac
else
# We keep going just in case the user didn't refer to
# lt_preloaded_symbols. The linker will fail if global_symbol_pipe
# really was required.
# Nullify the symbol file.
compile_command=`$ECHO "$compile_command" | $SED "s% @SYMFILE@%%"`
finalize_command=`$ECHO "$finalize_command" | $SED "s% @SYMFILE@%%"`
fi
}
# func_cygming_gnu_implib_p ARG
# This predicate returns with zero status (TRUE) if
# ARG is a GNU/binutils-style import library. Returns
# with nonzero status (FALSE) otherwise.
func_cygming_gnu_implib_p ()
{
$debug_cmd
func_to_tool_file "$1" func_convert_file_msys_to_w32
func_cygming_gnu_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $EGREP ' (_head_[A-Za-z0-9_]+_[ad]l*|[A-Za-z0-9_]+_[ad]l*_iname)$'`
test -n "$func_cygming_gnu_implib_tmp"
}
# func_cygming_ms_implib_p ARG
# This predicate returns with zero status (TRUE) if
# ARG is an MS-style import library. Returns
# with nonzero status (FALSE) otherwise.
func_cygming_ms_implib_p ()
{
$debug_cmd
func_to_tool_file "$1" func_convert_file_msys_to_w32
func_cygming_ms_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $GREP '_NULL_IMPORT_DESCRIPTOR'`
test -n "$func_cygming_ms_implib_tmp"
}
# func_win32_libid arg
# return the library type of file 'arg'
#
# Need a lot of goo to handle *both* DLLs and import libs
# Has to be a shell function in order to 'eat' the argument
# that is supplied when $file_magic_command is called.
# Despite the name, also deal with 64 bit binaries.
src/subversion/build/ltmain.sh view on Meta::CPAN
# that the program can be linked against the static library.
echo
$ECHO "*** Warning: This system cannot link to static lib archive $lib."
echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a"
echo "*** shared version of the library, which you do not appear to have."
if test yes = "$module"; then
echo "*** But as you try to build a module library, libtool will still create "
echo "*** a static module, that should work as long as the dlopening application"
echo "*** is linked with the -dlopen flag to resolve symbols at runtime."
if test -z "$global_symbol_pipe"; then
echo
echo "*** However, this would only work if libtool was able to extract symbol"
echo "*** lists from a program, using 'nm' or equivalent, but libtool could"
echo "*** not find such a program. So, this module is probably useless."
echo "*** 'nm' from GNU binutils and a full rebuild may help."
fi
if test no = "$build_old_libs"; then
build_libtool_libs=module
build_old_libs=yes
else
src/subversion/build/ltmain.sh view on Meta::CPAN
if test yes = "$allow_libtool_libs_with_static_runtimes"; then
case " $predeps $postdeps " in
*" $a_deplib "*)
func_append newdeplibs " $a_deplib"
a_deplib=
;;
esac
fi
if test -n "$a_deplib"; then
libname=`eval "\\$ECHO \"$libname_spec\""`
if test -n "$file_magic_glob"; then
libnameglob=`func_echo_all "$libname" | $SED -e $file_magic_glob`
else
libnameglob=$libname
fi
test yes = "$want_nocaseglob" && nocaseglob=`shopt -p nocaseglob`
for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
if test yes = "$want_nocaseglob"; then
shopt -s nocaseglob
potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null`
$nocaseglob
else
potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null`
fi
for potent_lib in $potential_libs; do
# Follow soft links.
if ls -lLd "$potent_lib" 2>/dev/null |
$GREP " -> " >/dev/null; then
continue
fi
# The statement above tries to avoid entering an
# endless loop below, in case of cyclic links.
# We might still enter an endless loop, since a link
src/subversion/build/ltmain.sh view on Meta::CPAN
;;
esac
if test yes = "$droppeddeps"; then
if test yes = "$module"; then
echo
echo "*** Warning: libtool could not satisfy all declared inter-library"
$ECHO "*** dependencies of module $libname. Therefore, libtool will create"
echo "*** a static module, that should work as long as the dlopening"
echo "*** application is linked with the -dlopen flag."
if test -z "$global_symbol_pipe"; then
echo
echo "*** However, this would only work if libtool was able to extract symbol"
echo "*** lists from a program, using 'nm' or equivalent, but libtool could"
echo "*** not find such a program. So, this module is probably useless."
echo "*** 'nm' from GNU binutils and a full rebuild may help."
fi
if test no = "$build_old_libs"; then
oldlibs=$output_objdir/$libname.$libext
build_libtool_libs=module
build_old_libs=yes
src/subversion/build/ltmain.sh view on Meta::CPAN
test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols
$opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"'
fi
if test : != "$skipped_export" && test -n "$orig_export_symbols"; then
# The given exports_symbols file has to be filtered, so filter it.
func_verbose "filter symbol list for '$libname.la' to tag DATA exports"
# FIXME: $output_objdir/$libname.filter potentially contains lots of
# 's' commands, which not all seds can handle. GNU sed should be fine
# though. Also, the filter scales superlinearly with the number of
# global variables. join(1) would be nice here, but unfortunately
# isn't a blessed tool.
$opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter
func_append delfiles " $export_symbols $output_objdir/$libname.filter"
export_symbols=$output_objdir/$libname.def
$opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols
fi
tmp_deplibs=
for test_deplib in $deplibs; do
case " $convenience " in
src/subversion/build/ltmain.sh view on Meta::CPAN
test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols
$opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"'
fi
if test -n "$orig_export_symbols"; then
# The given exports_symbols file has to be filtered, so filter it.
func_verbose "filter symbol list for '$libname.la' to tag DATA exports"
# FIXME: $output_objdir/$libname.filter potentially contains lots of
# 's' commands, which not all seds can handle. GNU sed should be fine
# though. Also, the filter scales superlinearly with the number of
# global variables. join(1) would be nice here, but unfortunately
# isn't a blessed tool.
$opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter
func_append delfiles " $export_symbols $output_objdir/$libname.filter"
export_symbols=$output_objdir/$libname.def
$opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols
fi
}
libobjs=$output
# Restore the value of output.
src/subversion/build/ltmain.sh view on Meta::CPAN
case $host in
*-*-rhapsody* | *-*-darwin1.[012])
# On Rhapsody replace the C library is the System framework
compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's/ -lc / System.ltframework /'`
finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's/ -lc / System.ltframework /'`
;;
esac
case $host in
*-*-darwin*)
# Don't allow lazy linking, it breaks C++ global constructors
# But is supposedly fixed on 10.4 or later (yay!).
if test CXX = "$tagname"; then
case ${MACOSX_DEPLOYMENT_TARGET-10.0} in
10.[0123])
func_append compile_command " $wl-bind_at_load"
func_append finalize_command " $wl-bind_at_load"
;;
esac
fi
# Time to change all our "foo.ltframework" stuff back to "-framework foo"
src/subversion/build/win32/make_dist.py view on Meta::CPAN
#
#
import os
import sys
import shutil
import getopt
try:
my_getopt = getopt.gnu_getopt
except AttributeError:
my_getopt = getopt.getopt
import glob
import traceback
try:
# Python >=3.0
import configparser
except ImportError:
# Python <3.0
import ConfigParser as configparser
# The script directory and the source base directory
_scriptdir = os.path.dirname(sys.argv[0])
src/subversion/build/win32/make_dist.py view on Meta::CPAN
else:
name = self.name
self._copy_file(path, os.path.join(dir, name))
class FileGlob(Action):
def __init__(self, pattern):
self.pattern = pattern
def run(self, dir, cfg):
pattern = self._expand(cfg, self.pattern)
for source in glob.glob(pattern):
self._copy_file(source, os.path.join(dir, os.path.basename(source)))
class InstallDocs(Action):
def __init__(self, config, path):
self.config = config
self.path = path
def run(self, dir, cfg):
config = self._expand(cfg, self.config)
pattern = os.path.join(self._expand(cfg, self.path), '*.*')
src/subversion/build/win32/make_dist.py view on Meta::CPAN
print('make_dist: Creating jar %s' % self.jar)
_system('"%s" cvf "%s" -C "%s" .'
% (cfg.get('tools', 'jar'), jarfile, source))
class InstallMoFiles(Action):
def __init__(self, source):
self.source = source
def run(self, dir, cfg):
pattern = os.path.join(self._expand(cfg, self.source), '*.mo')
for mofile in glob.glob(pattern):
localedir = os.path.join(dir, os.path.basename(mofile)[:-3],
'LC_MESSAGES')
os.makedirs(localedir)
self._copy_file(mofile, os.path.join(localedir, 'subversion.mo'))
# This is the distribution tree
_disttree = {'': OptFile('%(readme)s', 'README.txt'),
'bin': (File('%(blddir)s/svn/svn.exe'),
File('%(blddir)s/svn/svn.pdb'),
src/subversion/build/win32/make_dist.py view on Meta::CPAN
}
# Define Perl module DLLs
for module in ('Client', 'Core', 'Delta', 'Fs', 'Ra', 'Repos', 'Wc'):
_disttree['perl/site/lib/auto/SVN/_' + module] = (
File('%(binddir)s/swig/perl/native/_' + module + '.dll'),
File('%(binddir)s/swig/perl/native/_' + module + '.pdb'))
def _system(command):
def reopen_log():
global _logfile
_logfile = open(_logname, 'a')
sys.stdout = _logfile
sys.stderr = _logfile
try:
_logfile.close()
sys.stdout = _stdout
sys.stderr = _stderr
os.system('"%s >>%s 2>&1"' % (command, _logname))
except:
reopen_log()
src/subversion/build/win32/make_dist.py view on Meta::CPAN
for opt in optcfg.options('options'):
if not opt[:7] == '--with-':
continue
optdir = os.path.abspath(os.path.join(_srcdir, optcfg.get('options', opt)))
if not os.path.isdir(optdir):
print('make_dist: %s = %s' % (opt, optdir))
print('make_dist: Target is not a directory')
_exit(1)
cfg.set('DEFAULT', '@' + opt[7:], optdir)
# Also add the global parameters to the defaults
cfg.set('DEFAULT', 'srcdir', os.path.abspath(_srcdir))
cfg.set('DEFAULT', 'blddir', os.path.join(_srcdir,
'%(svnrel)s', 'subversion'))
cfg.set('DEFAULT', 'svndir', os.path.join(_srcdir, 'subversion'))
cfg.set('DEFAULT', 'binddir', '%(blddir)s/bindings')
cfg.set('DEFAULT', 'bindsrc', '%(svndir)s/bindings')
if _distname is not None:
cfg.set('DEFAULT', 'distname', os.path.abspath(_distname))
src/subversion/build/win32/make_gem.rb view on Meta::CPAN
spec = Gem::Specification.new do |s|
s.name = "subversion"
s.date = Time.now
s.version = Svn::Core::VER_NUM
s.summary = "The Ruby bindings for Subversion."
s.email = "dev@subversion.apache.org"
s.homepage = "http://subversion.apache.org/"
s.description = s.summary
s.authors = ["Kouhei Sutou"]
s.files = Dir.glob(File.join("**", "*")).delete_if {|x| /\.gem$/i =~ x}
s.require_paths = ["ruby/ext", "ruby/lib"]
s.platform = Gem::Platform::WIN32
s.required_ruby_version = '>= 1.8.2'
end
generated_gem_file = File.expand_path(Gem::Builder.new(spec).build)
end
gem_file = File.join(options.output_dir, File.basename(generated_gem_file))
FileUtils.mv(generated_gem_file, gem_file)
src/subversion/configure view on Meta::CPAN
else
as_fn_append ()
{
eval $1=\$$1\$2
}
fi # as_fn_append
# as_fn_arith ARG...
# ------------------
# Perform arithmetic evaluation on the ARGs, and store the result in the
# global $as_val. Take advantage of shells that can avoid forks. The arguments
# must be portable across $(()) and expr.
if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
eval 'as_fn_arith ()
{
as_val=$(( $* ))
}'
else
as_fn_arith ()
{
as_val=`expr "$@" || test $? -eq 1`
src/subversion/configure view on Meta::CPAN
# Same as above, but do not quote variable references.
double_quote_subst='s/\(["`\\]\)/\\\1/g'
# Sed substitution to delay expansion of an escaped shell variable in a
# double_quote_subst'ed string.
delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
# Sed substitution to delay expansion of an escaped single quote.
delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
# Sed substitution to avoid accidental globbing in evaled expressions
no_glob_subst='s/\*/\\\*/g'
ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
$as_echo_n "checking how to print strings... " >&6; }
# Test print first, because it will be a builtin if present.
if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
src/subversion/configure view on Meta::CPAN
if ${lt_cv_sys_max_cmd_len+:} false; then :
$as_echo_n "(cached) " >&6
else
i=0
teststring=ABCD
case $build_os in
msdosdjgpp*)
# On DJGPP, this test can blow up pretty badly due to problems in libc
# (any single argument exceeding 2000 bytes causes a buffer overrun
# during glob expansion). Even if it were fixed, the result of this
# check would be larger than it should be.
lt_cv_sys_max_cmd_len=12288; # 12K is about right
;;
gnu*)
# Under GNU Hurd, this test is not required because there is
# no limit to the length of command line arguments.
# Libtool will interpret -1 as no limit whatsoever
lt_cv_sys_max_cmd_len=-1;
;;
src/subversion/configure view on Meta::CPAN
tpf*)
lt_cv_deplibs_check_method=pass_all
;;
esac
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
$as_echo "$lt_cv_deplibs_check_method" >&6; }
file_magic_glob=
want_nocaseglob=no
if test "$build" = "$host"; then
case $host_os in
mingw* | pw32*)
if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
want_nocaseglob=yes
else
file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[\1]\/[\1]\/g;/g"`
fi
;;
esac
fi
file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
test -z "$deplibs_check_method" && deplibs_check_method=unknown
src/subversion/configure view on Meta::CPAN
# If no C compiler flags were specified, use CFLAGS.
LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
# Allow CC to be a program name with arguments.
compiler=$CC
# Check for command to grab the raw symbol name followed by C symbol from nm.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5
$as_echo_n "checking command to parse $NM output from $compiler object... " >&6; }
if ${lt_cv_sys_global_symbol_pipe+:} false; then :
$as_echo_n "(cached) " >&6
else
# These are sane defaults that work on at least a few old systems.
# [They come from Ultrix. What could be older than Ultrix?!! ;)]
# Character class describing NM global symbol codes.
symcode='[BCDEGRST]'
# Regexp to match symbols that can be accessed directly from C.
sympat='\([_A-Za-z][_A-Za-z0-9]*\)'
# Define system-specific variables.
case $host_os in
aix*)
symcode='[BCDT]'
;;
src/subversion/configure view on Meta::CPAN
esac
# If we're using GNU nm, then use its standard symbol codes.
case `$NM -V 2>&1` in
*GNU* | *'with BFD'*)
symcode='[ABCDGIRSTW]' ;;
esac
if test "$lt_cv_nm_interface" = "MS dumpbin"; then
# Gets list of data symbols to import.
lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'"
# Adjust the below global symbol transforms to fixup imported variables.
lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"
lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'"
lt_c_name_lib_hook="\
-e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\
-e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'"
else
# Disable hooks by default.
lt_cv_sys_global_symbol_to_import=
lt_cdecl_hook=
lt_c_name_hook=
lt_c_name_lib_hook=
fi
# Transform an extracted symbol line into a proper C declaration.
# Some systems (esp. on ia64) link data and code symbols differently,
# so use this general approach.
lt_cv_sys_global_symbol_to_cdecl="sed -n"\
$lt_cdecl_hook\
" -e 's/^T .* \(.*\)$/extern int \1();/p'"\
" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"
# Transform an extracted symbol line into symbol name and symbol address
lt_cv_sys_global_symbol_to_c_name_address="sed -n"\
$lt_c_name_hook\
" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\
" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'"
# Transform an extracted symbol line into symbol name with lib prefix and
# symbol address.
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\
$lt_c_name_lib_hook\
" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\
" -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\
" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'"
# Handle CRLF in mingw tool chain
opt_cr=
case $build_os in
mingw*)
opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
src/subversion/configure view on Meta::CPAN
# Try without a prefix underscore, then with it.
for ac_symprfx in "" "_"; do
# Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
symxfrm="\\1 $ac_symprfx\\2 \\2"
# Write the raw and C identifiers.
if test "$lt_cv_nm_interface" = "MS dumpbin"; then
# Fake it for dumpbin and say T for any non-static function,
# D for any global variable and I for any imported variable.
# Also find C++ and __fastcall symbols from MSVC++,
# which start with @ or ?.
lt_cv_sys_global_symbol_pipe="$AWK '"\
" {last_section=section; section=\$ 3};"\
" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
" /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\
" /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\
" /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\
" \$ 0!~/External *\|/{next};"\
" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
" {if(hide[section]) next};"\
" {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\
" {split(\$ 0,a,/\||\r/); split(a[2],s)};"\
" s[1]~/^[@?]/{print f,s[1],s[1]; next};"\
" s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\
" ' prfx=^$ac_symprfx"
else
lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
fi
lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
# Check to see that the pipe works correctly.
pipe_works=no
rm -f conftest*
cat > conftest.$ac_ext <<_LT_EOF
#ifdef __cplusplus
extern "C" {
#endif
char nm_test_var;
src/subversion/configure view on Meta::CPAN
int main(){nm_test_var='a';nm_test_func();return(0);}
_LT_EOF
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
(eval $ac_compile) 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
# Now try to grab the symbols.
nlist=conftest.nm
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist\""; } >&5
(eval $NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; } && test -s "$nlist"; then
# Try sorting and uniquifying the output.
if sort "$nlist" | uniq > "$nlist"T; then
mv -f "$nlist"T "$nlist"
else
rm -f "$nlist"T
fi
src/subversion/configure view on Meta::CPAN
#else
# define LT_DLSYM_CONST const
#endif
#ifdef __cplusplus
extern "C" {
#endif
_LT_EOF
# Now generate the symbol file.
eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
cat <<_LT_EOF >> conftest.$ac_ext
/* The mapping between symbol names and symbols. */
LT_DLSYM_CONST struct {
const char *name;
void *address;
}
lt__PROGRAM__LTX_preloaded_symbols[] =
{
src/subversion/configure view on Meta::CPAN
return lt__PROGRAM__LTX_preloaded_symbols;
}
#endif
#ifdef __cplusplus
}
#endif
_LT_EOF
# Now try linking the two files.
mv conftest.$ac_objext conftstm.$ac_objext
lt_globsym_save_LIBS=$LIBS
lt_globsym_save_CFLAGS=$CFLAGS
LIBS=conftstm.$ac_objext
CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
(eval $ac_link) 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; } && test -s conftest$ac_exeext; then
pipe_works=yes
fi
LIBS=$lt_globsym_save_LIBS
CFLAGS=$lt_globsym_save_CFLAGS
else
echo "cannot find nm_test_func in $nlist" >&5
fi
else
echo "cannot find nm_test_var in $nlist" >&5
fi
else
echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5
fi
else
echo "$progname: failed program was:" >&5
cat conftest.$ac_ext >&5
fi
rm -rf conftest* conftst*
# Do not use the global_symbol_pipe unless it works.
if test yes = "$pipe_works"; then
break
else
lt_cv_sys_global_symbol_pipe=
fi
done
fi
if test -z "$lt_cv_sys_global_symbol_pipe"; then
lt_cv_sys_global_symbol_to_cdecl=
fi
if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5
$as_echo "failed" >&6; }
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5
$as_echo "ok" >&6; }
fi
# Response file support.
if test "$lt_cv_nm_interface" = "MS dumpbin"; then
nm_file_list_spec='@'
src/subversion/configure view on Meta::CPAN
$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
runpath_var=
allow_undefined_flag=
always_export_symbols=no
archive_cmds=
archive_expsym_cmds=
compiler_needs_object=no
enable_shared_with_static_runtimes=no
export_dynamic_flag_spec=
export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
hardcode_automatic=no
hardcode_direct=no
hardcode_direct_absolute=no
hardcode_libdir_flag_spec=
hardcode_libdir_separator=
hardcode_minus_L=no
hardcode_shlibpath_var=unsupported
inherit_rpath=no
link_all_deplibs=unknown
module_cmds=
src/subversion/configure view on Meta::CPAN
;;
cygwin* | mingw* | pw32* | cegcc*)
# _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless,
# as there is no search path for DLLs.
hardcode_libdir_flag_spec='-L$libdir'
export_dynamic_flag_spec='$wl--export-all-symbols'
allow_undefined_flag=unsupported
always_export_symbols=no
enable_shared_with_static_runtimes=yes
export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols'
exclude_expsyms='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'
if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
# If the export-symbols file already is a .def file, use it as
# is; otherwise, prepend EXPORTS...
archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then
cp $export_symbols $output_objdir/$soname.def;
else
echo EXPORTS > $output_objdir/$soname.def;
src/subversion/configure view on Meta::CPAN
*Sun\ C*) # Sun C 5.9
whole_archive_flag_spec='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
compiler_needs_object=yes
tmp_sharedflag='-G' ;;
*Sun\ F*) # Sun Fortran 8.3
tmp_sharedflag='-G' ;;
esac
archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
if test yes = "$supports_anon_versioning"; then
archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
echo "local: *; };" >> $output_objdir/$libname.ver~
$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
fi
case $cc_basename in
xlf* | bgf* | bgxlf* | mpixlf*)
# IBM XL Fortran 10.1 on PPC cannot create shared libs itself
whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
if test yes = "$supports_anon_versioning"; then
archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
echo "local: *; };" >> $output_objdir/$libname.ver~
$LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
fi
;;
esac
else
ld_shlibs=no
fi
;;
src/subversion/configure view on Meta::CPAN
aix[4-9]*)
if test ia64 = "$host_cpu"; then
# On IA64, the linker does run time linking by default, so we don't
# have to do anything special.
aix_use_runtimelinking=no
exp_sym_flag='-Bexport'
no_entry_flag=
else
# If we're using GNU nm, then we don't want the "-C" option.
# -C means demangle to AIX nm, but means don't demangle with GNU nm
# Also, AIX nm treats weak defined symbols like other global
# defined symbols, whereas GNU nm marks them as "W".
if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
else
export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
fi
aix_use_runtimelinking=no
# Test if we are trying to use run time linking or normal
# AIX style linking. If -brtl is somewhere in LDFLAGS, we
src/subversion/configure view on Meta::CPAN
echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
else
$SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
fi~
$CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
linknames='
# The linker will not automatically build a static lib if we build a DLL.
# _LT_TAGVAR(old_archive_from_new_cmds, )='true'
enable_shared_with_static_runtimes=yes
exclude_expsyms='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1,DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols'
# Don't use ranlib
old_postinstall_cmds='chmod 644 $oldlib'
postlink_cmds='lt_outputfile="@OUTPUT@"~
lt_tool_outputfile="@TOOL_OUTPUT@"~
case $lt_outputfile in
*.exe|*.EXE) ;;
*)
lt_outputfile=$lt_outputfile.exe
lt_tool_outputfile=$lt_tool_outputfile.exe
;;
src/subversion/configure view on Meta::CPAN
fi
archive_cmds_need_lc='no'
hardcode_libdir_separator=:
;;
solaris*)
no_undefined_flag=' -z defs'
if test yes = "$GCC"; then
wlarc='$wl'
archive_cmds='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
$CC -shared $pic_flag $wl-z ${wl}text $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
else
case `$CC -V 2>&1` in
*"Compilers 5.0"*)
wlarc=''
archive_cmds='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'
archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
$LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
;;
*)
wlarc='$wl'
archive_cmds='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'
archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
$CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
;;
esac
fi
hardcode_libdir_flag_spec='-R$libdir'
hardcode_shlibpath_var=no
case $host_os in
solaris2.[0-5] | solaris2.[0-5].*) ;;
*)
# The compiler driver will combine and reorder linker options,
src/subversion/configure view on Meta::CPAN
# from the output so that they don't get included in the library
# dependencies.
output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list ...
;;
xl* | mpixl* | bgxl*)
# IBM XL 8.0 on PPC, with GNU ld
hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'
export_dynamic_flag_spec_CXX='$wl--export-dynamic'
archive_cmds_CXX='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
if test yes = "$supports_anon_versioning"; then
archive_expsym_cmds_CXX='echo "{ global:" > $output_objdir/$libname.ver~
cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
echo "local: *; };" >> $output_objdir/$libname.ver~
$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
fi
;;
*)
case `$CC -V 2>&1 | sed 5q` in
*Sun\ C*)
# Sun C++ 5.9
no_undefined_flag_CXX=' -zdefs'
src/subversion/configure view on Meta::CPAN
esac
;;
solaris*)
case $cc_basename in
CC* | sunCC*)
# Sun C++ 4.2, 5.x and Centerline C++
archive_cmds_need_lc_CXX=yes
no_undefined_flag_CXX=' -zdefs'
archive_cmds_CXX='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
$CC -G$allow_undefined_flag $wl-M $wl$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
hardcode_libdir_flag_spec_CXX='-R$libdir'
hardcode_shlibpath_var_CXX=no
case $host_os in
solaris2.[0-5] | solaris2.[0-5].*) ;;
*)
# The compiler driver will combine and reorder linker options,
# but understands '-z linker_flag'.
# Supported since Solaris 2.6 (maybe 2.5.1?)
src/subversion/configure view on Meta::CPAN
# The C++ compiler must be used to create the archive.
old_archive_cmds_CXX='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
;;
*)
# GNU C++ compiler with Solaris linker
if test yes,no = "$GXX,$with_gnu_ld"; then
no_undefined_flag_CXX=' $wl-z ${wl}defs'
if $CC --version | $GREP -v '^2\.7' > /dev/null; then
archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
$CC -shared $pic_flag -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
# linking a shared library.
output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
else
# g++ 2.7 appears to require '-G' NOT '-shared' on this
# platform.
archive_cmds_CXX='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
$CC -G -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
# linking a shared library.
output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
fi
hardcode_libdir_flag_spec_CXX='$wl-R $wl$libdir'
case $host_os in
src/subversion/configure view on Meta::CPAN
fi
else
need_locks=no
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
exclude_expsyms_CXX='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
case $host_os in
aix[4-9]*)
# If we're using GNU nm, then we don't want the "-C" option.
# -C means demangle to AIX nm, but means don't demangle with GNU nm
# Also, AIX nm treats weak defined symbols like other global defined
# symbols, whereas GNU nm marks them as "W".
if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
export_symbols_cmds_CXX='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
else
export_symbols_cmds_CXX='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
fi
;;
pw32*)
export_symbols_cmds_CXX=$ltdll_cmds
;;
cygwin* | mingw* | cegcc*)
case $cc_basename in
cl*)
exclude_expsyms_CXX='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
;;
*)
export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols'
exclude_expsyms_CXX='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'
;;
esac
;;
*)
export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
;;
esac
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5
$as_echo "$ld_shlibs_CXX" >&6; }
test no = "$ld_shlibs_CXX" && can_build_shared=no
with_gnu_ld_CXX=$with_gnu_ld
src/subversion/configure view on Meta::CPAN
else
as_fn_append ()
{
eval $1=\$$1\$2
}
fi # as_fn_append
# as_fn_arith ARG...
# ------------------
# Perform arithmetic evaluation on the ARGs, and store the result in the
# global $as_val. Take advantage of shells that can avoid forks. The arguments
# must be portable across $(()) and expr.
if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
eval 'as_fn_arith ()
{
as_val=$(( $* ))
}'
else
as_fn_arith ()
{
as_val=`expr "$@" || test $? -eq 1`
src/subversion/configure view on Meta::CPAN
lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
lt_cv_to_host_file_cmd='`$ECHO "$lt_cv_to_host_file_cmd" | $SED "$delay_single_quote_subst"`'
lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`'
reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`'
reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`'
OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`'
deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`'
file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`'
file_magic_glob='`$ECHO "$file_magic_glob" | $SED "$delay_single_quote_subst"`'
want_nocaseglob='`$ECHO "$want_nocaseglob" | $SED "$delay_single_quote_subst"`'
DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`'
sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`'
AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`'
AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`'
archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`'
STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
old_postuninstall_cmds='`$ECHO "$old_postuninstall_cmds" | $SED "$delay_single_quote_subst"`'
old_archive_cmds='`$ECHO "$old_archive_cmds" | $SED "$delay_single_quote_subst"`'
lock_old_archive_extraction='`$ECHO "$lock_old_archive_extraction" | $SED "$delay_single_quote_subst"`'
CC='`$ECHO "$CC" | $SED "$delay_single_quote_subst"`'
CFLAGS='`$ECHO "$CFLAGS" | $SED "$delay_single_quote_subst"`'
compiler='`$ECHO "$compiler" | $SED "$delay_single_quote_subst"`'
GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_import='`$ECHO "$lt_cv_sys_global_symbol_to_import" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
lt_cv_nm_interface='`$ECHO "$lt_cv_nm_interface" | $SED "$delay_single_quote_subst"`'
nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`'
lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`'
lt_cv_truncate_bin='`$ECHO "$lt_cv_truncate_bin" | $SED "$delay_single_quote_subst"`'
objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`'
MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`'
lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`'
lt_prog_compiler_pic='`$ECHO "$lt_prog_compiler_pic" | $SED "$delay_single_quote_subst"`'
lt_prog_compiler_wl='`$ECHO "$lt_prog_compiler_wl" | $SED "$delay_single_quote_subst"`'
lt_prog_compiler_static='`$ECHO "$lt_prog_compiler_static" | $SED "$delay_single_quote_subst"`'
src/subversion/configure view on Meta::CPAN
FGREP \
LD \
NM \
LN_S \
lt_SP2NL \
lt_NL2SP \
reload_flag \
OBJDUMP \
deplibs_check_method \
file_magic_cmd \
file_magic_glob \
want_nocaseglob \
DLLTOOL \
sharedlib_from_linklib_cmd \
AR \
AR_FLAGS \
archiver_list_spec \
STRIP \
RANLIB \
CC \
CFLAGS \
compiler \
lt_cv_sys_global_symbol_pipe \
lt_cv_sys_global_symbol_to_cdecl \
lt_cv_sys_global_symbol_to_import \
lt_cv_sys_global_symbol_to_c_name_address \
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
lt_cv_nm_interface \
nm_file_list_spec \
lt_cv_truncate_bin \
lt_prog_compiler_no_builtin_flag \
lt_prog_compiler_pic \
lt_prog_compiler_wl \
lt_prog_compiler_static \
lt_cv_prog_compiler_c_o \
need_locks \
MANIFEST_TOOL \
src/subversion/configure view on Meta::CPAN
# An object symbol dumper.
OBJDUMP=$lt_OBJDUMP
# Method to check whether dependent libraries are shared objects.
deplibs_check_method=$lt_deplibs_check_method
# Command to use when deplibs_check_method = "file_magic".
file_magic_cmd=$lt_file_magic_cmd
# How to find potential files when deplibs_check_method = "file_magic".
file_magic_glob=$lt_file_magic_glob
# Find potential files using nocaseglob when deplibs_check_method = "file_magic".
want_nocaseglob=$lt_want_nocaseglob
# DLL creation program.
DLLTOOL=$lt_DLLTOOL
# Command to associate shared and link libraries.
sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd
# The archiver.
AR=$lt_AR
src/subversion/configure view on Meta::CPAN
# Whether to use a lock for old archive extraction.
lock_old_archive_extraction=$lock_old_archive_extraction
# A C compiler.
LTCC=$lt_CC
# LTCC compiler flags.
LTCFLAGS=$lt_CFLAGS
# Take the output of nm and produce a listing of raw symbols and C names.
global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe
# Transform the output of nm in a proper C declaration.
global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl
# Transform the output of nm into a list of symbols to manually relocate.
global_symbol_to_import=$lt_lt_cv_sys_global_symbol_to_import
# Transform the output of nm in a C name address pair.
global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
# Transform the output of nm in a C name address pair when lib prefix is needed.
global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
# The name lister interface.
nm_interface=$lt_lt_cv_nm_interface
# Specify filename containing input files for \$NM.
nm_file_list_spec=$lt_nm_file_list_spec
# The root where to search for dependent libraries,and where our libraries should be installed.
lt_sysroot=$lt_sysroot
src/subversion/configure view on Meta::CPAN
# Must we lock files when doing compilation?
need_locks=$lt_need_locks
# Manifest tool.
MANIFEST_TOOL=$lt_MANIFEST_TOOL
# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
DSYMUTIL=$lt_DSYMUTIL
# Tool to change global to local symbols on Mac OS X.
NMEDIT=$lt_NMEDIT
# Tool to manipulate fat objects and archives on Mac OS X.
LIPO=$lt_LIPO
# ldd/readelf like tool for Mach-O binaries on Mac OS X.
OTOOL=$lt_OTOOL
# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4.
OTOOL64=$lt_OTOOL64
src/subversion/doc/doxygen.conf view on Meta::CPAN
# doxygen should invoke to get the current version for each file (typically from
# the version control system). Doxygen will invoke the program by executing (via
# popen()) the command <command> <input-file>, where <command> is the value of
# the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file
# provided by doxygen. Whatever the program writes to standard output
# is used as the file version. See the manual for examples.
FILE_VERSION_FILTER =
# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed by
# doxygen. The layout file controls the global structure of the generated output files
# in an output format independent way. The create the layout file that represents
# doxygen's defaults, run doxygen with the -l option. You can optionally specify a
# file name after the option, if omitted DoxygenLayout.xml will be used as the name
# of the layout file.
LAYOUT_FILE =
#---------------------------------------------------------------------------
# configuration options related to warning and progress messages
#---------------------------------------------------------------------------
src/subversion/doc/doxygen.conf view on Meta::CPAN
# If the REFERENCES_LINK_SOURCE tag is set to YES (the default)
# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from
# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will
# link to the source code.
# Otherwise they will link to the documentation.
REFERENCES_LINK_SOURCE = YES
# If the USE_HTAGS tag is set to YES then the references to source code
# will point to the HTML generated by the htags(1) tool instead of doxygen
# built-in source browser. The htags tool is part of GNU's global source
# tagging system (see http://www.gnu.org/software/global/global.html). You
# will need version 4.8.6 or higher.
USE_HTAGS = NO
# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
# will generate a verbatim copy of the header file for each class for
# which an include is specified. Set to NO to disable this.
VERBATIM_HEADERS = YES
src/subversion/doc/doxygen.conf view on Meta::CPAN
INCLUDE_GRAPH = YES
# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and
# HAVE_DOT tags are set to YES then doxygen will generate a graph for each
# documented header file showing the documented files that directly or
# indirectly include this file.
INCLUDED_BY_GRAPH = YES
# If the CALL_GRAPH and HAVE_DOT options are set to YES then
# doxygen will generate a call dependency graph for every global function
# or class method. Note that enabling this option will significantly increase
# the time of a run. So in most cases it will be better to enable call graphs
# for selected functions only using the \callgraph command.
CALL_GRAPH = NO
# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then
# doxygen will generate a caller dependency graph for every global function
# or class method. Note that enabling this option will significantly increase
# the time of a run. So in most cases it will be better to enable caller
# graphs for selected functions only using the \callergraph command.
CALLER_GRAPH = NO
# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
# will graphical hierarchy of all classes instead of a textual one.
GRAPHICAL_HIERARCHY = YES
src/subversion/doc/programmer/WritingChangeLogs.txt view on Meta::CPAN
this example (mostly real, but slightly exaggerated):
* gdbarch.[ch] (gdbarch_tdep, gdbarch_bfd_arch_info,
gdbarch_byte_order, {set,}gdbarch_long_bit,
{set,}gdbarch_long_long_bit, {set,}gdbarch_ptr_bit): Corresponding
functions.
This makes it difficult for others to search the ChangeLog for changes
to the file or function they are interested in. For example, if you
searched for `set_gdbarch_long_bit', you would not find the above
entry, because the writer used CSH-style globbing to abbreviate the
list of functions. If you gave up, and made a second pass looking for
gdbarch.c, you wouldn't find that either. Consider your poor readers,
and write out the names.
ChangeLogs and the CVS log
--------------------------
CVS maintains its own logs, which you can access using the `cvs log'
command. This duplicates the information present in the ChangeLog,
src/subversion/doc/user/lj_article.txt view on Meta::CPAN
This means that writing a program to access the repository is like
writing against other filesystem APIs: you can open files and
directories for reading and writing as usual. The main difference is
that this particular filesystem never loses data when written to; old
versions of files and directories are always saved as historical
artifacts.
Whereas CVS's backend (RCS) stores revision numbers on a per-file
basis, Subversion numbers entire trees. Each atomic 'commit' to the
repository creates a completely new filesystem tree, and is
individually labeled with a single, global revision number. Files and
directories which have changed are rewritten (and older versions are
backed up and stored as differences against the latest version), while
unchanged entries are pointed to via a shared-storage mechanism. This
is how the repository is able to version tree structures, not just
file contents.
Finally, it should be mentioned that using a database like Berkeley DB
immediately provides other nice features that Subversion needs: data
integrity, atomic writes, recoverability, and hot backups. (See
www.sleepycat.com for more information.)
src/subversion/subversion/bindings/ctypes-python/setup.py view on Meta::CPAN
from distutils import log
from distutils.cmd import Command
from distutils.command.build import build as _build
from distutils.command.clean import clean as _clean
from distutils.core import setup
from distutils.dir_util import remove_tree
from distutils.errors import DistutilsExecError
from distutils.errors import DistutilsOptionError
from glob import glob
class clean(_clean):
"""Special distutils command for cleaning the Subversion ctypes bindings."""
description = "clean the Subversion ctypes Python bindings"
def initialize_options (self):
_clean.initialize_options(self)
# initialize_options()
src/subversion/subversion/bindings/javahl/native/ClientContext.cpp view on Meta::CPAN
#include "EnumMapper.h"
#include "CommitMessage.h"
ClientContext::ClientContext(jobject jsvnclient, SVN::Pool &pool)
: m_prompter(NULL),
m_cancelOperation(false)
{
JNIEnv *env = JNIUtil::getEnv();
/* Grab a global reference to the Java object embedded in the parent Java
object. */
static jfieldID ctxFieldID = 0;
if (ctxFieldID == 0)
{
jclass clazz = env->GetObjectClass(jsvnclient);
if (JNIUtil::isJavaExceptionThrown())
return;
ctxFieldID = env->GetFieldID(clazz, "clientContext",
"L"JAVA_PACKAGE"/SVNClient$ClientContext;");
src/subversion/subversion/bindings/javahl/native/JNIThreadData.cpp view on Meta::CPAN
/**
* Initialize the thread local storage.
* @return success or failure
*/
bool JNIThreadData::initThreadData()
{
// If already initialized -> nothing to do.
if (g_key != NULL)
return false;
// Request a key for the thread local storage from the global pool
// and register a callback function called when the thread is
// deleted.
apr_status_t apr_err = apr_threadkey_private_create(&g_key,
del,
JNIUtil::getPool());
if (apr_err)
{
JNIUtil::handleAPRError(apr_err, "apr_threadkey_private_create");
return false;
}
src/subversion/subversion/bindings/javahl/native/JNIUtil.cpp view on Meta::CPAN
setEnv(env);
if (isExceptionThrown())
return false;
g_initEnv = NULL;
g_inInit = false;
return true;
}
/**
* Returns the global (not request specific) pool.
* @return global pool
*/
apr_pool_t *JNIUtil::getPool()
{
return g_pool;
}
void JNIUtil::raiseThrowable(const char *name, const char *message)
{
if (getLogLevel() >= errorLog)
{
src/subversion/subversion/bindings/javahl/native/JNIUtil.cpp view on Meta::CPAN
throwError(buffer);
}
/**
* Return if an exception has been detected.
* @return a exception has been detected
*/
bool JNIUtil::isExceptionThrown()
{
// During init -> look in the global member.
if (g_inInit)
return g_initException;
// Look in the thread local storage.
JNIThreadData *data = JNIThreadData::getThreadData();
return data == NULL || data->m_exceptionThrown;
}
/**
* Store the JNI environment for this request in the thread local
src/subversion/subversion/bindings/javahl/native/JNIUtil.cpp view on Meta::CPAN
data->m_env = env;
data->m_exceptionThrown = false;
}
/**
* Return the JNI environment to use
* @return the JNI environment
*/
JNIEnv *JNIUtil::getEnv()
{
// During init -> look into the global variable.
if (g_inInit)
return g_initEnv;
// Look in the thread local storage.
JNIThreadData *data = JNIThreadData::getThreadData();
return data->m_env;
}
/**
* Check if a Java exception has been thrown.
src/subversion/subversion/bindings/javahl/native/JNIUtil.cpp view on Meta::CPAN
JNIEnv *env = getEnv();
return env->NewStringUTF(txt);
}
void
JNIUtil::setExceptionThrown(bool flag)
{
if (g_inInit)
{
// During global initialization, store any errors that occur
// in a global variable (since thread-local storage may not
// yet be available).
g_initException = flag;
}
else
{
// When global initialization is complete, thread-local
// storage should be available, so store the error there.
JNIThreadData *data = JNIThreadData::getThreadData();
data->m_exceptionThrown = flag;
}
}
/**
* Initialite the log file.
* @param level the log level
* @param the name of the log file
src/subversion/subversion/bindings/javahl/native/JNIUtil.cpp view on Meta::CPAN
g_logStream.open(myPath, std::ios::app);
}
}
/**
* Returns a buffer to format error messages.
* @return a buffer for formating error messages
*/
char *JNIUtil::getFormatBuffer()
{
if (g_inInit) // during init -> use the global buffer
return g_initFormatBuffer;
// use the buffer in the thread local storage
JNIThreadData *data = JNIThreadData::getThreadData();
if (data == NULL) // if that does not exists -> use the global buffer
return g_initFormatBuffer;
return data->m_formatBuffer;
}
/**
* Returns the current log level.
* @return the log level
*/
int JNIUtil::getLogLevel()
src/subversion/subversion/bindings/javahl/native/JNIUtil.h view on Meta::CPAN
enum { noLog, errorLog, exceptionLog, entryLog } LogLevel;
private:
static void wrappedHandleSVNError(svn_error_t *err);
static void assembleErrorMessage(svn_error_t *err, int depth,
apr_status_t parent_apr_err,
std::string &buffer);
static void putErrorsInTrace(svn_error_t *err,
std::vector<jobject> &stackTrace);
/**
* Set the appropriate global or thread-local flag that an exception
* has been thrown to @a flag.
*/
static void setExceptionThrown(bool flag = true);
/**
* The log level of this module.
*/
static int g_logLevel;
/**
src/subversion/subversion/bindings/javahl/native/Pool.cpp view on Meta::CPAN
* @brief Implementation of the class Pool
*/
#include "Pool.h"
#include "JNIUtil.h"
#include "JNIMutex.h"
#include "JNICriticalSection.h"
#include "svn_pools.h"
/**
* Constructor to create one apr pool as the subpool of the global pool.
*/
SVN::Pool::Pool()
{
m_pool = svn_pool_create(JNIUtil::getPool());
}
/**
* Constructor to create one apr pool as a subpool of the passed pool.
*/
SVN::Pool::Pool(const Pool &parent_pool)
src/subversion/subversion/bindings/javahl/native/Prompter.cpp view on Meta::CPAN
#include "JNIStringHolder.h"
#include "../include/org_apache_subversion_javahl_callback_UserPasswordCallback.h"
#include <apr_strings.h>
#include "svn_auth.h"
#include "svn_error.h"
#include "svn_error_codes.h"
#include "svn_private_config.h"
/**
* Constructor
* @param jprompter a global reference to the Java callback object
*/
Prompter::Prompter(jobject jprompter)
{
m_prompter = jprompter;
}
Prompter::~Prompter()
{
if (m_prompter!= NULL)
{
// Since the reference to the Java object is a global one, it
// has to be deleted.
JNIEnv *env = JNIUtil::getEnv();
env->DeleteGlobalRef(m_prompter);
}
}
/**
* Create a C++ peer object for the Java callback object
*
* @param jprompter Java callback object
src/subversion/subversion/bindings/javahl/native/Prompter.cpp view on Meta::CPAN
return NULL;
// Sanity check that the Java object implements UserPasswordCallback.
jclass clazz = env->FindClass(JAVA_PACKAGE"/callback/UserPasswordCallback");
if (JNIUtil::isJavaExceptionThrown())
POP_AND_RETURN_NULL;
if (!env->IsInstanceOf(jprompter, clazz))
POP_AND_RETURN_NULL;
// Create a new global ref for the Java object, because it is
// longer used that this call.
jobject myPrompt = env->NewGlobalRef(jprompter);
if (JNIUtil::isJavaExceptionThrown())
POP_AND_RETURN_NULL;
env->PopLocalFrame(NULL);
// Create the C++ peer.
return new Prompter(myPrompt);
}
src/subversion/subversion/bindings/javahl/native/ReposNotifyCallback.cpp view on Meta::CPAN
*/
#include "ReposNotifyCallback.h"
#include "JNIUtil.h"
#include "CreateJ.h"
#include "EnumMapper.h"
#include "RevisionRange.h"
/**
* Create a new object and store the Java object.
* @param notify global reference to the Java object
*/
ReposNotifyCallback::ReposNotifyCallback(jobject p_notify)
{
m_notify = p_notify;
}
ReposNotifyCallback::~ReposNotifyCallback()
{
// Don't need to destroy the reference, since it was given us by Java
}
src/subversion/subversion/bindings/swig/core.i view on Meta::CPAN
*/
#if defined(SWIGPYTHON)
%module(package="libsvn") core
#elif defined(SWIGPERL)
%module "SVN::_Core"
#elif defined(SWIGRUBY)
%module "svn::ext::core"
#endif
%include svn_global.swg
%{
#include <apr.h>
#include <apr_general.h>
#include <apr_md5.h>
#include "svn_diff.h"
#include "svn_private_config.h"
%}
src/subversion/subversion/bindings/swig/core.i view on Meta::CPAN
}
#endif
/* -----------------------------------------------------------------------
auth parameter set/get
*/
/* set */
#ifdef SWIGPYTHON
%typemap(in) const void *value
(apr_pool_t *_global_pool = NULL, PyObject *_global_py_pool = NULL)
{
if (_global_pool == NULL)
{
if (svn_swig_py_get_parent_pool(args, $descriptor(apr_pool_t *),
&_global_py_pool, &_global_pool))
SWIG_fail;
}
if (PyString_Check($input)) {
char *value = PyString_AS_STRING($input);
$1 = apr_pstrdup(_global_pool, value);
}
else if (PyLong_Check($input)) {
$1 = apr_palloc(_global_pool, sizeof(apr_uint32_t));
*((apr_uint32_t *)$1) = PyLong_AsLong($input);
}
else if (PyInt_Check($input)) {
$1 = apr_palloc(_global_pool, sizeof(apr_uint32_t));
*((apr_uint32_t *)$1) = PyInt_AsLong($input);
}
else if ($input == Py_None) {
$1 = NULL;
}
else if (svn_swig_ConvertPtr($input, (void **)&$1, $descriptor(svn_auth_ssl_server_cert_info_t *)) == 0) {
}
else {
PyErr_SetString(PyExc_TypeError, "not a known type");
SWIG_fail;
src/subversion/subversion/bindings/swig/core.i view on Meta::CPAN
- all values are converted to char*
- assume the first argument is Ruby object for svn_auth_baton_t*
*/
#ifdef SWIGRUBY
%typemap(in) const void *value
{
if (NIL_P($input)) {
$1 = (void *)NULL;
} else {
VALUE _rb_pool;
apr_pool_t *_global_pool;
char *value = StringValuePtr($input);
svn_swig_rb_get_pool(1, argv, Qnil, &_rb_pool, &_global_pool);
$1 = (void *)apr_pstrdup(_global_pool, value);
}
}
#endif
/* get */
/* assume the value is char* */
#ifdef SWIGRUBY
%typemap(out) const void *
{
char *value = $1;
src/subversion/subversion/bindings/swig/core.i view on Meta::CPAN
svn_swig_rb_config_section_enumerator)
#endif
/* Allow None to be passed as config_dir argument */
#ifdef SWIGPYTHON
%typemap(in,parse="z") const char *config_dir "";
#endif
/* -----------------------------------------------------------------------
thunk the various authentication prompt functions.
PERL NOTE: store the inputed SV in _global_callback for use in the
later argout typemap
*/
#ifdef SWIGPERL
%define %authprompt_callback_typemap(AuthType)
%typemap(in) (svn_auth_ ## AuthType ## _prompt_func_t prompt_func,
void *prompt_baton) {
$1 = svn_swig_pl_thunk_ ## AuthType ## _prompt;
$2 = $input;
_global_callback = $input;
}
%enddef
#else
%define %authprompt_callback_typemap(AuthType)
%callback_typemap(svn_auth_ ## AuthType ## _prompt_func_t prompt_func,
void *prompt_baton,
svn_swig_py_auth_ ## AuthType ## _prompt_func,,
svn_swig_rb_auth_ ## AuthType ## _prompt_func)
%enddef
#endif
src/subversion/subversion/bindings/swig/core.i view on Meta::CPAN
/* -----------------------------------------------------------------------
* For all the various functions that set a callback baton create a reference
* for the baton (which in this case is an SV pointing to the callback)
* and make that a return from the function. The perl side should
* then store the return in the object the baton is attached to.
* If the function already returns a value then this value is follows that
* function. In the case of the prompt functions auth_open_helper in Core.pm
* is used to split up these values.
*/
#ifdef SWIGPERL
%typemap(argout) void *CALLBACK_BATON (SV * _global_callback) {
/* callback baton */
%append_output(sv_2mortal(newRV_inc(_global_callback)));
}
%typemap(in) void *CALLBACK_BATON (SV * _global_callback) {
_global_callback = $input;
$1 = (void *) _global_callback;
}
%apply void *CALLBACK_BATON {
void *prompt_baton
};
#endif
/* -----------------------------------------------------------------------
These APIs take an "inout" parameter that necessitates more careful
src/subversion/subversion/bindings/swig/include/apr.swg view on Meta::CPAN
system headers if they incorporate weird include paths
(e.g. /usr/lib/gcc-lib/plat/ver/include). */
typedef apr_int32_t time_t;
/* -----------------------------------------------------------------------
Input of apr_file_t *
*/
#ifdef SWIGPYTHON
%typemap(in) apr_file_t * {
$1 = svn_swig_py_make_file($input, _global_pool);
if (!$1) SWIG_fail;
}
#endif
#ifdef SWIGPERL
%typemap(in) apr_file_t * {
$1 = svn_swig_pl_make_file($input, _global_pool);
}
#endif
#ifdef SWIGRUBY
%typemap(in) apr_file_t * {
$1 = svn_swig_rb_make_file($input, _global_pool);
}
#endif
/* -----------------------------------------------------------------------
Output of apr_file_t *
... is currently being handled by the standard OUTPARAM code in
svn_types.swg, but should probably be more comfortably translated to
scripting language concepts.
*/
src/subversion/subversion/bindings/swig/include/proxy_apr.swg view on Meta::CPAN
if weakpool and weakpool() and hasattr(weakpool(), "_is_valid"):
del weakpool()._is_valid
%}
struct apr_pool_t {
%extend {
%pythoncode %{
def set_parent_pool(self, parent_pool=None):
"""Create a new memory pool"""
global application_pool
try:
application_pool_lock.acquire()
self._parent_pool = parent_pool or application_pool
self._mark_valid()
# Protect important functions from GC
self._apr_pool_destroy = _core.apr_pool_destroy
self._svn_swig_py_clear_application_pool = \
src/subversion/subversion/bindings/swig/include/proxy_apr.swg view on Meta::CPAN
def clear(self):
"""Clear embedded memory pool. Invalidate all subpools."""
pool = self._parent_pool
apr_pool_clear(self)
self.set_parent_pool(pool)
def destroy(self):
"""Destroy embedded memory pool. If you do not destroy
the memory pool manually, Python will destroy it
automatically."""
global application_pool
self.assert_valid()
is_application_pool = not self._parent_pool
# Destroy pool
self._apr_pool_destroy(self)
# Clear application pool if necessary
if is_application_pool:
src/subversion/subversion/bindings/swig/include/proxy_apr.swg view on Meta::CPAN
return obj
elif obj is None:
return None
else:
return GenericSWIGWrapper(obj, self)
%}
}
};
%pythoncode %{
# Initialize a global pool
svn_pool_create()
%}
#endif
src/subversion/subversion/bindings/swig/include/svn_containers.swg view on Meta::CPAN
/* =======================================================================
%typemap(argout) apr_hash_t **
*/
#ifdef SWIGPYTHON
%define %hash_argout_typemap(ParamName, ValueType)
%typemap(argout) apr_hash_t **ParamName {
%append_output(svn_swig_py_convert_hash(*$1,
$descriptor(ValueType),
_global_py_pool));
}
%enddef
#endif
#ifdef SWIGPERL
%define %hash_argout_typemap(ParamName, ValueType)
%typemap(argout) apr_hash_t **ParamName {
%append_output(svn_swig_pl_convert_hash(*$1, $descriptor(ValueType)));
}
%enddef
#endif
src/subversion/subversion/bindings/swig/include/svn_containers.swg view on Meta::CPAN
%typemap(in) apr_hash_t *
*/
/* -----------------------------------------------------------------------
Input of apr_hash_t * <const char *, svn_string_t *>
(commonly used for property name and value pairs)
*/
#ifdef SWIGPYTHON
%typemap(in) apr_hash_t *PROPHASH
(apr_pool_t *_global_pool = NULL, PyObject *_global_py_pool = NULL)
{
if (_global_pool == NULL)
{
if (svn_swig_py_get_parent_pool(args, $descriptor(apr_pool_t *),
&_global_py_pool, &_global_pool))
SWIG_fail;
}
$1 = svn_swig_py_prophash_from_dict($input, _global_pool);
if (PyErr_Occurred()) {
SWIG_fail;
}
}
%typemap(out) apr_hash_t *PROPHASH
{
%append_output(svn_swig_py_prophash_to_dict($1));
}
#endif
#ifdef SWIGPYTHON
%typemap(in) apr_hash_t *changed_paths
(apr_pool_t *_global_pool = NULL, PyObject *_global_py_pool = NULL)
{
if (_global_pool == NULL)
{
if (svn_swig_py_get_parent_pool(args, $descriptor(apr_pool_t *),
&_global_py_pool, &_global_pool))
SWIG_fail;
}
$1 = svn_swig_py_struct_ptr_hash_from_dict($input,
$descriptor(svn_log_changed_path_t *), _global_pool);
if (PyErr_Occurred()) {
SWIG_fail;
}
}
%typemap(out) apr_hash_t *changed_paths
{
%append_output(svn_swig_py_changed_path_hash_to_dict($1));
}
%typemap(in) apr_hash_t *changed_paths2
(apr_pool_t *_global_pool = NULL, PyObject *_global_py_pool = NULL)
{
if (_global_pool == NULL)
{
if (svn_swig_py_get_parent_pool(args, $descriptor(apr_pool_t *),
&_global_py_pool, &_global_pool))
SWIG_fail;
}
$1 = svn_swig_py_struct_ptr_hash_from_dict($input,
$descriptor(svn_log_changed_path2_t *), _global_pool);
if (PyErr_Occurred()) {
SWIG_fail;
}
}
%typemap(out) apr_hash_t *changed_paths2
{
%append_output(svn_swig_py_changed_path2_hash_to_dict($1));
}
/* apr_hash_t * <const char *, svn_config_t *> */
%typemap(in) apr_hash_t *config
(apr_pool_t *_global_pool = NULL, PyObject *_global_py_pool = NULL)
{
if (_global_pool == NULL)
{
if (svn_swig_py_get_parent_pool(args, $descriptor(apr_pool_t *),
&_global_py_pool, &_global_pool))
SWIG_fail;
}
$1 = svn_swig_py_struct_ptr_hash_from_dict($input,
$descriptor(svn_config_t *), _global_pool);
if (PyErr_Occurred())
SWIG_fail;
}
%typemap(out) apr_hash_t *config
{
/* HACK. We don't know which pool the config comes from, and we
can't copy it, because svn_config_t is not copyable. So we'll just
assume that it's the parent struct's pool. It shouldn't matter
anyway, because the only way a non-null config can end up in
src/subversion/subversion/bindings/swig/include/svn_containers.swg view on Meta::CPAN
SWIG_fail;
%append_output(svn_swig_py_convert_hash($1, $descriptor(svn_config_t *),
parent_py_pool));
}
#endif
#ifdef SWIGPERL
%typemap(in) apr_hash_t *PROPHASH
(apr_pool_t *_global_pool = NULL)
{
if (_global_pool == NULL)
_global_pool = svn_swig_pl_make_pool((SV *)NULL);
$1 = svn_swig_pl_hash_to_prophash($input, _global_pool);
}
%typemap(out) apr_hash_t *PROPHASH
{
%append_output(svn_swig_pl_prophash_to_hash($1));
}
%typemap(out) apr_hash_t *changed_paths2
{
%append_output(
($1) ? svn_swig_pl_convert_hash($1, $descriptor(svn_log_changed_path2_t *))
: &PL_sv_undef);
}
#endif
#ifdef SWIGRUBY
%typemap(in) apr_hash_t *PROPHASH
{
VALUE rb_pool = Qnil;
if (!_global_pool) {
svn_swig_rb_get_pool(argc, argv, self, &rb_pool, &_global_pool);
svn_swig_rb_push_pool(rb_pool);
}
$1 = svn_swig_rb_hash_to_apr_hash_svn_string($input, _global_pool);
_global_pool = NULL;
if (!NIL_P(rb_pool)) {
if (NIL_P($1)) {
svn_swig_rb_destroy_pool(rb_pool);
} else {
svn_swig_rb_set_pool_for_no_swig_type($input, rb_pool);
}
svn_swig_rb_pop_pool(_global_svn_swig_rb_pool);
}
}
%typemap(out) apr_hash_t *PROPHASH
{
%append_output(svn_swig_rb_apr_hash_to_hash_svn_string($1));
}
#endif
%apply apr_hash_t *PROPHASH {
src/subversion/subversion/bindings/swig/include/svn_containers.swg view on Meta::CPAN
apr_hash_t *changed_paths
};
#endif
/* -----------------------------------------------------------------------
Input of scripting hash/dictionary (string => string)
converted to apr_hash_t (const char * => const char *)
*/
#ifdef SWIGPYTHON
%typemap(in) apr_hash_t *HASH_CSTRING {
$1 = svn_swig_py_stringhash_from_dict($input, _global_pool);
}
%typemap(in) apr_hash_t *HASH_CSTRING_MAYBENULL {
/* PYTHON-FIXME: Handle None -> NULL. */
$1 = svn_swig_py_stringhash_from_dict($input, _global_pool);
}
#endif
#ifdef SWIGPERL
%typemap(in) apr_hash_t *HASH_CSTRING {
$1 = svn_swig_pl_strings_to_hash($input, _global_pool);
}
%typemap(in) apr_hash_t *HASH_CSTRING_MAYBENULL {
/* PERL-FIXME: Handle undef -> NULL. */
$1 = svn_swig_pl_strings_to_hash($input, _global_pool);
}
#endif
#ifdef SWIGRUBY
%typemap(in) apr_hash_t *HASH_CSTRING {
$1 = svn_swig_rb_hash_to_apr_hash_string($input, _global_pool);
}
%typemap(in) apr_hash_t *HASH_CSTRING_MAYBENULL {
VALUE rb_pool = Qnil;
if (!_global_pool) {
svn_swig_rb_get_pool(argc, argv, self, &rb_pool, &_global_pool);
svn_swig_rb_push_pool(rb_pool);
}
$1 = (NIL_P($input)) ? NULL :
svn_swig_rb_hash_to_apr_hash_string($input, _global_pool);
_global_pool = NULL;
if (!NIL_P(rb_pool)) {
if (NIL_P($1)) {
svn_swig_rb_destroy_pool(rb_pool);
} else {
svn_swig_rb_set_pool_for_no_swig_type($input, rb_pool);
}
svn_swig_rb_pop_pool(_global_svn_swig_rb_pool);
}
}
%typemap(out) apr_hash_t *HASH_CSTRING_MAYBENULL {
$result = $1 ? svn_swig_rb_apr_hash_to_hash_string($1) : Qnil;
}
#endif
%apply apr_hash_t *HASH_CSTRING {
apr_hash_t *path_tokens
src/subversion/subversion/bindings/swig/include/svn_containers.swg view on Meta::CPAN
apr_hash_t *lock_tokens
};
/* -----------------------------------------------------------------------
handle config and fs_config in svn_{fs,repos}_create
*/
#ifdef SWIGPERL
%typemap(in) apr_hash_t *config {
$1 = svn_swig_pl_objs_to_hash_by_name ($input, "svn_config_t *",
_global_pool);
}
#endif
#ifdef SWIGRUBY
%typemap(in) apr_hash_t *config
{
if (NIL_P($input)) {
$1 = NULL;
} else {
$1 = svn_swig_rb_hash_to_apr_hash_swig_type($input, "svn_config_t *", _global_pool);
}
}
#endif
#ifdef SWIGRUBY
%typemap(in) apr_hash_t *path_revs
{
$1 = svn_swig_rb_hash_to_apr_hash_revnum($input, _global_pool);
}
#endif
#ifdef SWIGPYTHON
%typemap(in) apr_hash_t *path_revs
{
$1 = svn_swig_py_path_revs_hash_from_dict($input, _global_pool);
}
#endif
#ifdef SWIGPERL
%typemap(in) apr_hash_t *path_revs
{
$1 = svn_swig_pl_objs_to_hash_of_revnum_t($input, _global_pool);
}
#endif
/* =======================================================================
%typemap(argout) apr_array_header_t **
*/
/* -----------------------------------------------------------------------
Output of apr_array_header_t * <svn_prop_inherited_item_t *>
*/
src/subversion/subversion/bindings/swig/include/svn_containers.swg view on Meta::CPAN
/* -----------------------------------------------------------------------
apr_array_header_t **externals_p
svn_wc_parse_externals_description3()
*/
#ifdef SWIGPYTHON
%typemap(argout) apr_array_header_t **externals_p {
%append_output
(svn_swig_py_pointerlist_to_list(*$1, $descriptor(svn_wc_external_item2_t *),
_global_py_pool));
if (PyErr_Occurred()) {
SWIG_fail;
}
}
#endif
#ifdef SWIGPERL
%typemap(argout) apr_array_header_t **externals_p {
%append_output
(svn_swig_pl_convert_array(*$1, $descriptor(svn_wc_external_item2_t *)));
}
src/subversion/subversion/bindings/swig/include/svn_containers.swg view on Meta::CPAN
svn_repos_trace_node_locations()
svn_ra_get_locations()
*/
#ifdef SWIGPYTHON
%typemap(in) apr_array_header_t *location_revisions {
$1 = (apr_array_header_t *) svn_swig_py_seq_to_array($input,
sizeof(svn_revnum_t),
svn_swig_py_unwrap_revnum,
NULL,
_global_pool);
if (PyErr_Occurred())
SWIG_fail;
}
#endif
#ifdef SWIGRUBY
%typemap(in) apr_array_header_t *location_revisions {
$1 = svn_swig_rb_array_to_apr_array_revnum($input, _global_pool);
}
#endif
/* -----------------------------------------------------------------------
define a general INPUT param of an array of const char * items.
*/
#ifdef SWIGPYTHON
%typemap(in) const apr_array_header_t *STRINGLIST {
$1 = (apr_array_header_t *) svn_swig_py_seq_to_array($input,
sizeof(const char *),
svn_swig_py_unwrap_string,
NULL,
_global_pool);
if (PyErr_Occurred())
SWIG_fail;
}
#endif
#ifdef SWIGPERL
%typemap(in) const apr_array_header_t *STRINGLIST {
$1 = (apr_array_header_t *) svn_swig_pl_strings_to_array($input,
_global_pool);
}
%typemap(in) const apr_array_header_t *STRINGLIST_MAY_BE_NULL {
$1 = SvOK($input) ? (apr_array_header_t *) svn_swig_pl_strings_to_array(
$input, _global_pool) : NULL;
}
#endif
#ifdef SWIGRUBY
%typemap(in) const apr_array_header_t *STRINGLIST {
$1 = svn_swig_rb_strings_to_apr_array($input, _global_pool);
}
%typemap(in) const apr_array_header_t *STRINGLIST_MAY_BE_NULL {
$1 = (NIL_P($input)) ? NULL :
svn_swig_rb_strings_to_apr_array($input, _global_pool);
}
#endif
/* svn_delta_path_driver() mutates its 'paths' argument (by sorting it),
despite the fact that it is notionally an input parameter - hence, the
lack of 'const' in that one case.
svn_wc_get_update_editor3() and svn_wc_get_switch_editor3() aren't changing
their 'preserved_exts' argument, but it is forwarded to
svn_cstring_match_glob_list which also doesn't modify it, but does not have
const in its prototype. */
%apply const apr_array_header_t *STRINGLIST {
const apr_array_header_t *args,
const apr_array_header_t *diff_options,
apr_array_header_t *paths,
apr_array_header_t *revprops,
const apr_array_header_t *targets,
apr_array_header_t *preserved_exts
};
src/subversion/subversion/bindings/swig/include/svn_containers.swg view on Meta::CPAN
apr_array_header_t *revprops
};
#endif
/* -----------------------------------------------------------------------
auth provider convertors
*/
#ifdef SWIGPERL
%typemap(in) apr_array_header_t *providers {
$1 = (apr_array_header_t *) svn_swig_pl_objs_to_array($input,
$descriptor(svn_auth_provider_object_t *), _global_pool);
}
#endif
#ifdef SWIGPYTHON
%typemap(in) apr_array_header_t *providers {
$1 = (apr_array_header_t *) svn_swig_py_seq_to_array($input,
sizeof(const svn_auth_provider_object_t *),
svn_swig_py_unwrap_struct_ptr,
$descriptor(svn_auth_provider_object_t *),
_global_pool);
if (PyErr_Occurred())
SWIG_fail;
}
#endif
#ifdef SWIGRUBY
%typemap(in) apr_array_header_t *providers
{
$1 = svn_swig_rb_array_to_auth_provider_object_apr_array($input, _global_pool);
}
#endif
/* -----------------------------------------------------------------------
An array of svn_prop_t.
*/
#ifdef SWIGRUBY
%typemap(in) apr_array_header_t *ROW_PROP_LIST
{
$1 = svn_swig_rb_to_apr_array_row_prop($input, _global_pool);
}
%apply apr_array_header_t *ROW_PROP_LIST {
apr_array_header_t *proplist
};
#endif
/* -----------------------------------------------------------------------
An array of svn_prop_t *.
*/
src/subversion/subversion/bindings/swig/include/svn_containers.swg view on Meta::CPAN
/* -----------------------------------------------------------------------
Input of apr_array_header_t * <svn_merge_range_t *>
(that is: svn_rangelist_t *)
*/
#ifdef SWIGPYTHON
%typemap(in) svn_rangelist_t *RANGELIST {
$1 = (svn_rangelist_t *) svn_swig_py_seq_to_array($input,
sizeof(const svn_merge_range_t *),
svn_swig_py_unwrap_struct_ptr,
$descriptor(svn_merge_range_t *),
_global_pool);
if (PyErr_Occurred()) {
SWIG_fail;
}
}
#endif
#ifdef SWIGRUBY
%typemap(in) svn_rangelist_t *RANGELIST {
$1 = svn_swig_rb_array_to_apr_array_merge_range($input, _global_pool);
}
#endif
/* -----------------------------------------------------------------------
Input of apr_array_header_t * <svn_client_copy_source_t *>
*/
#ifdef SWIGRUBY
%typemap(in) apr_array_header_t *SOURCES {
$1 = svn_swig_rb_array_to_apr_array_copy_source($input, _global_pool);
}
#endif
/* -----------------------------------------------------------------------
Input of apr_array_header_t * <svn_opt_revision_range_t *>
*/
#ifdef SWIGPYTHON
%typemap(in) apr_array_header_t *REVISION_RANGE_LIST {
$1 = (apr_array_header_t *) svn_swig_py_seq_to_array($input,
sizeof(const svn_opt_revision_range_t *),
svn_swig_py_unwrap_struct_ptr,
$descriptor(svn_opt_revision_range_t *),
_global_pool);
if (PyErr_Occurred()) {
SWIG_fail;
}
}
#endif
#ifdef SWIGPERL
%typemap(in) apr_array_header_t *REVISION_RANGE_LIST {
$1 = svn_swig_pl_array_to_apr_array_revision_range($input, _global_pool);
}
#endif
#ifdef SWIGRUBY
%typemap(in) apr_array_header_t *REVISION_RANGE_LIST {
$1 = svn_swig_rb_array_to_apr_array_revision_range($input, _global_pool);
}
#endif
/* -----------------------------------------------------------------------
Input of
apr_hash_t * <const char *, apr_array_header_t * <svn_merge_range_t *>>
*/
#ifdef SWIGPYTHON
%typemap(in) apr_hash_t *MERGEINFO {
$1 = svn_swig_py_mergeinfo_from_dict($input, _global_pool);
if (PyErr_Occurred()) {
SWIG_fail;
}
}
#endif
#ifdef SWIGRUBY
%typemap(in) apr_hash_t *MERGEINFO {
$1 = svn_swig_rb_hash_to_apr_hash_merge_range($input, _global_pool);
}
#endif
/* -----------------------------------------------------------------------
Output of
apr_hash_t * <const char *, apr_array_header_t * <svn_merge_range_t *>>
*/
#ifdef SWIGPYTHON
%typemap(argout) apr_hash_t **MERGEINFO
{
%append_output
(svn_swig_py_mergeinfo_to_dict(*$1, $descriptor(svn_merge_range_t *),
_global_py_pool));
if (PyErr_Occurred()) {
SWIG_fail;
}
}
%typemap(in) apr_hash_t **MERGEINFO_INOUT ($*1_ltype temp)
{
$1 = &temp;
*$1 = svn_swig_py_mergeinfo_from_dict($input, _global_pool);
if (PyErr_Occurred()) {
SWIG_fail;
}
}
#endif
#ifdef SWIGRUBY
%typemap(argout) apr_hash_t **MERGEINFO
{
%append_output(svn_swig_rb_apr_hash_to_hash_merge_range(*$1));
}
%typemap(in) apr_hash_t **MERGEINFO_INOUT ($*1_ltype temp)
{
$1 = &temp;
*$1 = svn_swig_rb_hash_to_apr_hash_merge_range($input, _global_pool);
}
#endif
#if defined(SWIGPYTHON) || defined(SWIGRUBY)
%typemap(argout) apr_hash_t **MERGEINFO_INOUT = apr_hash_t **MERGEINFO;
#endif
/* -----------------------------------------------------------------------
Output of
apr_hash_t * <const char *,
src/subversion/subversion/bindings/swig/include/svn_containers.swg view on Meta::CPAN
%typemap(argout) apr_hash_t **MERGEINFO_CATALOG
{
%append_output(svn_swig_rb_apr_hash_to_hash_merge_range_hash(*$1));
}
#endif
#ifdef SWIGPYTHON
%typemap(argout) apr_hash_t **MERGEINFO_CATALOG
{
%append_output(svn_swig_py_mergeinfo_catalog_to_dict(*$1,
$descriptor(svn_merge_range_t *),
_global_py_pool));
if (PyErr_Occurred()) {
SWIG_fail;
}
}
#endif
/* -----------------------------------------------------------------------
Output of apr_array_header_t * <svn_merge_range_t *>
(that is: svn_rangelist_t *)
*/
#ifdef SWIGPYTHON
%typemap(argout) svn_rangelist_t **RANGELIST {
%append_output
(svn_swig_py_pointerlist_to_list(*$1, $descriptor(svn_merge_range_t *),
_global_py_pool));
if (PyErr_Occurred()) {
SWIG_fail;
}
}
%typemap(in) svn_rangelist_t **RANGELIST_INOUT ($*1_ltype temp)
{
$1 = &temp;
*$1 = (svn_rangelist_t *) svn_swig_py_seq_to_array($input,
sizeof(const svn_merge_range_t *),
svn_swig_py_unwrap_struct_ptr,
$descriptor(svn_merge_range_t *),
_global_pool);
if (PyErr_Occurred()) {
SWIG_fail;
}
}
#endif
#ifdef SWIGRUBY
%typemap(argout) svn_rangelist_t **RANGELIST {
%append_output(svn_swig_rb_apr_array_to_array_merge_range(*$1));
}
%typemap(in) svn_rangelist_t **RANGELIST_INOUT ($*1_ltype temp)
{
$1 = &temp;
*$1 = svn_swig_rb_array_to_apr_array_merge_range($input, _global_pool);
}
#endif
#if defined(SWIGPYTHON) || defined(SWIGRUBY)
%typemap(argout) svn_rangelist_t **RANGELIST_INOUT =
svn_rangelist_t **RANGELIST;
#endif
/* -----------------------------------------------------------------------
Output of apr_array_header_t * <svn_auth_provider_object_t *>
src/subversion/subversion/bindings/swig/include/svn_containers.swg view on Meta::CPAN
%typemap(argout) apr_array_header_t **providers {
%append_output(svn_swig_pl_convert_array(*$1,
$descriptor(svn_auth_provider_object_t *)));
}
#endif
#ifdef SWIGPYTHON
%typemap(argout) apr_array_header_t **providers {
%append_output
(svn_swig_py_pointerlist_to_list(*$1, $descriptor(svn_auth_provider_object_t *),
_global_py_pool));
if (PyErr_Occurred()) {
SWIG_fail;
}
}
#endif
#ifdef SWIGRUBY
%typemap(argout) apr_array_header_t **providers {
%append_output(svn_swig_rb_apr_array_to_array_auth_provider_object(*$1));
}
src/subversion/subversion/bindings/swig/include/svn_global.swg view on Meta::CPAN
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
* ====================================================================
*
* svn_global.swg: Central point for global definitions to be used in
* every bindings module. This file is %included before anything
* else, in every Subversion .i file.
*/
/*
* Explicitly define SVN_DEPRECATED so SWIG doesn't have issues parsing
* our headers.
*/
#ifndef SVN_DEPRECATED
#define SVN_DEPRECATED
src/subversion/subversion/bindings/swig/include/svn_global.swg view on Meta::CPAN
%{
#include "swigutil_rb.h"
%}
#endif
#ifdef SWIGPYTHON
%feature("autodoc",1);
%{
static PyObject * _global_py_pool = NULL;
%}
/* The SWIG $argnum variable reports the current argument number
in the underlying C code. This is a bit counterintuitive for
Python programmers, because the underlying C function may have
very different argument numbers than the wrapper Python function.
SWIG doesn't provide any good way of getting Python argument
numbers, so we extract the argument number using macros. This
isn't a perfect solution, but it does the job. */
src/subversion/subversion/bindings/swig/include/svn_global.swg view on Meta::CPAN
#endif
#ifdef SWIGRUBY
/* Ruby has strict capitalization conventions -
tell SWIG to not warn as it renames things to follow these. */
#pragma SWIG nowarn=801
%{
static VALUE _global_svn_swig_rb_pool = Qnil;
static apr_pool_t *_global_pool = NULL;
static VALUE vresult = Qnil;
static VALUE *_global_vresult_address = &vresult;
%}
#endif
/* Now, include the main Subversion typemap library. */
%include svn_types.swg
%include proxy.swg
src/subversion/subversion/bindings/swig/include/svn_string.swg view on Meta::CPAN
#ifdef SWIGPYTHON
%typemap(in) svn_stringbuf_t * {
if (!PyString_Check($input)) {
PyErr_SetString(PyExc_TypeError, "not a string");
SWIG_fail;
}
$1 = svn_stringbuf_ncreate(PyString_AS_STRING($input),
PyString_GET_SIZE($input),
/* ### gah... what pool to use? */
_global_pool);
}
#endif
#ifdef SWIGPERL
%typemap(in) svn_stringbuf_t * {
apr_size_t len;
char *buf;
if (!SvOK($input)) {
$1 = NULL;
src/subversion/subversion/bindings/swig/include/svn_string.swg view on Meta::CPAN
#endif
#ifdef SWIGRUBY
%typemap(in) svn_stringbuf_t *
{
if (NIL_P($input)) {
$1 = NULL;
} else {
$1 = svn_stringbuf_ncreate(StringValuePtr($input),
RSTRING_LEN($input),
_global_pool);
}
}
%typemap(in) svn_stringbuf_t *node_name
{
if (NIL_P($input)) {
$1 = NULL;
} else {
VALUE rb_pool;
apr_pool_t *pool;
src/subversion/subversion/bindings/swig/include/svn_string.swg view on Meta::CPAN
value.len = RSTRING_LEN($input);
$1 = &value;
}
}
#endif
/* when storing an svn_string_t* into a structure, we must allocate the
svn_string_t structure on the heap. */
#ifdef SWIGPYTHON
%typemap(memberin) const svn_string_t * {
$1 = svn_string_dup($input, _global_pool);
}
#endif
#ifdef SWIGPERL
%typemap(memberin) const svn_string_t * {
$1 = svn_string_dup($input, _global_pool);
}
#endif
#ifdef SWIGRUBY
%typemap(memberin) const svn_string_t * {
$1 = svn_string_dup($input, _global_pool);
}
#endif
#ifdef SWIGPYTHON
%typemap(out) svn_string_t * {
$result = PyString_FromStringAndSize($1->data, $1->len);
}
#endif
#ifdef SWIGPERL
%typemap(out) svn_string_t * {