diff options
author | cvs2git <cvs2git> | 2006-08-01 05:37:50 +0000 |
---|---|---|
committer | cvs2git <cvs2git> | 2006-08-01 05:37:50 +0000 |
commit | ddd22a9fd706c6d5ba6cb752efb73874bd02efac (patch) | |
tree | 5e5748e2c11ee9e6505ac0bc6c9ea2fbb83e01a7 | |
parent | 4d4884c1db1579e27d6248c50426944e9eec52ff (diff) | |
parent | d2fbedf451600f63e5d7a58d8d350c223e3fb637 (diff) |
This commit was manufactured by cvs2svn to create tag 'RELEASE_1_0_BETA_2'.v1.0-beta2
219 files changed, 50 insertions, 75735 deletions
diff --git a/CVSROOT/checkoutlist b/CVSROOT/checkoutlist deleted file mode 100644 index 2921bff..0000000 --- a/CVSROOT/checkoutlist +++ /dev/null @@ -1,13 +0,0 @@ -# The "checkoutlist" file is used to support additional version controlled -# administrative files in $CVSROOT/CVSROOT, such as template files. -# -# The first entry on a line is a filename which will be checked out from -# the corresponding RCS file in the $CVSROOT/CVSROOT directory. -# The remainder of the line is an error message to use if the file cannot -# be checked out. -# -# File format: -# -# [<whitespace>]<filename>[<whitespace><error message>]<end-of-line> -# -# comment lines begin with '#' diff --git a/CVSROOT/commitinfo b/CVSROOT/commitinfo deleted file mode 100644 index 3903cee..0000000 --- a/CVSROOT/commitinfo +++ /dev/null @@ -1,26 +0,0 @@ -# The "commitinfo" file is used to control pre-commit checks. -# The filter on the right is invoked with the repository and a list -# of files to check. A non-zero exit of the filter program will -# cause the commit to be aborted. -# -# The first entry on a line is a regular expression which is tested -# against the directory that the change is being committed to, relative -# to the $CVSROOT. For the first match that is found, then the remainder -# of the line is the name of the filter to run. -# -# Format strings present in the filter will be replaced as follows: -# %c = canonical name of the command being executed -# %R = the name of the referrer, if any, otherwise the value NONE -# %p = path relative to repository -# %r = repository (path portion of $CVSROOT) -# %{s} = file name, file name, ... -# -# If no format strings are present in the filter string, a default of -# " %r %s" will be appended to the filter string, but this usage is -# deprecated. -# -# If the repository name does not match any of the regular expressions in this -# file, the "DEFAULT" line is used, if it is specified. -# -# If the name "ALL" appears as a regular expression it is always used -# in addition to the first matching regex or "DEFAULT". diff --git a/CVSROOT/config b/CVSROOT/config deleted file mode 100644 index 50d85b5..0000000 --- a/CVSROOT/config +++ /dev/null @@ -1,97 +0,0 @@ -# Set `SystemAuth' to `no' if pserver shouldn't check system users/passwords. -#SystemAuth=no - -# Set `LocalKeyword' to specify a local alias for a standard keyword. -#LocalKeyword=MYCVS=CVSHeader - -# Set `KeywordExpand' to `i' followed by a list of keywords to expand or -# `e' followed by a list of keywords to not expand. -#KeywordExpand=iMYCVS,Name,Date -#KeywordExpand=eCVSHeader - -# Set `TopLevelAdmin' to `yes' to create a CVS directory at the top -# level of the new working directory when using the `cvs checkout' -# command. -#TopLevelAdmin=no - -# Put CVS lock files in this directory rather than directly in the repository. -#LockDir=/var/lock/cvs - -# Set `LogHistory' to `all' or `TOEFWUPCGMAR' to log all transactions to the -# history file, or a subset as needed (ie `TMAR' logs all write operations) -#LogHistory=TOEFWUPCGMAR - -# Set `RereadLogAfterVerify' to `always' (the default) to allow the verifymsg -# script to change the log message. Set it to `stat' to force CVS to verify -# that the file has changed before reading it (this can take up to an extra -# second per directory being committed, so it is not recommended for large -# repositories. Set it to `never' (the previous CVS behavior) to prevent -# verifymsg scripts from changing the log message. -#RereadLogAfterVerify=always - -# Set `UserAdminOptions' to the list of `cvs admin' commands (options) -# that users not in the `cvsadmin' group are allowed to run. This -# defaults to `k', or only allowing the changing of the default -# keyword expansion mode for files for users not in the `cvsadmin' group. -# This value is ignored if the `cvsadmin' group does not exist. -# -# The following string would enable all `cvs admin' commands for all -# users: -#UserAdminOptions=aAbceIklLmnNostuU - -# Set `UseNewInfoFmtStrings' to `no' if you must support a legacy system by -# enabling the deprecated old style info file command line format strings. -# Be warned that these strings could be disabled in any new version of CVS. -UseNewInfoFmtStrings=yes - -# Set `ImportNewFilesToVendorBranchOnly' to `yes' if you wish to force -# every `cvs import' command to behave as if the `-X' flag was -# specified. -#ImportNewFilesToVendorBranchOnly=no - -# Set `PrimaryServer' to the CVSROOT to the primary, or write, server when -# establishing one or more read-only mirrors which serve as proxies for -# the write server in write mode or redirect the client to the primary for -# write requests. -# -# For example: -# -# PrimaryServer=:fork:localhost/cvsroot - -# Set `MaxProxyBufferSize' to the the maximum allowable secondary -# buffer memory cache size before the buffer begins being stored to disk, in -# bytes. Must be a positive integer but may end in `k', `M', `G', or `T' (for -# kiilo, mega, giga, & tera, respectively). If an otherwise valid number you -# specify is greater than the SIZE_MAX defined by your system's C compiler, -# then it will be resolved to SIZE_MAX without a warning. Defaults to 8M (8 -# megabytes). -# -# High values for MaxProxyBufferSize may speed up a secondary server -# with old hardware and a lot of available memory but can actually slow a -# modern system down slightly. -# -# For example: -# -# MaxProxyBufferSize=1G - -# Set `MaxCommentLeaderLength' to the maximum length permitted for the -# automagically determined comment leader used when expanding the Log -# keyword, in bytes. CVS's behavior when the automagically determined -# comment leader exceeds this length is dependant on the value of -# `UseArchiveCommentLeader' set in this file. `unlimited' is a valid -# setting for this value. Defaults to 20 bytes. -# -# For example: -# -# MaxCommentLeaderLength=20 - -# Set `UseArchiveCommentLeader' to `yes' to cause CVS to fall back on -# the comment leader set in the RCS archive file, if any, when the -# automagically determined comment leader exceeds `MaxCommentLeaderLength' -# bytes. If `UseArchiveCommentLeader' is not set and a comment leader -# greater than `MaxCommentLeaderLength' is calculated, the Log keyword -# being examined will not be expanded. Defaults to `no'. -# -# For example: -# -# UseArchiveCommentLeader=no diff --git a/CVSROOT/cvswrappers b/CVSROOT/cvswrappers deleted file mode 100644 index e989b75..0000000 --- a/CVSROOT/cvswrappers +++ /dev/null @@ -1,19 +0,0 @@ -# This file affects handling of files based on their names. -# -# The -m option specifies whether CVS attempts to merge files. -# -# The -k option specifies keyword expansion (e.g. -kb for binary). -# -# Format of wrapper file ($CVSROOT/CVSROOT/cvswrappers or .cvswrappers) -# -# wildcard [option value][option value]... -# -# where option is one of -# -f from cvs filter value: path to filter -# -t to cvs filter value: path to filter -# -m update methodology value: MERGE or COPY -# -k expansion mode value: b, o, kkv, &c -# -# and value is a single-quote delimited value. -# For example: -#*.gif -k 'b' diff --git a/CVSROOT/loginfo b/CVSROOT/loginfo deleted file mode 100644 index 6a1580d..0000000 --- a/CVSROOT/loginfo +++ /dev/null @@ -1,36 +0,0 @@ -# The "loginfo" file controls where "cvs commit" log information is -# sent. The first entry on a line is a regular expression which must -# match the directory that the change is being made to, relative to the -# $CVSROOT. If a match is found, then the remainder of the line is a -# filter program that should expect log information on its standard input. -# -# If the repository name does not match any of the regular expressions in this -# file, the "DEFAULT" line is used, if it is specified. -# -# If the name ALL appears as a regular expression it is always used -# in addition to the first matching regex or DEFAULT. -# -# If any format strings are present in the filter, they will be replaced -# as follows: -# %c = canonical name of the command being executed -# %R = the name of the referrer, if any, otherwise the value NONE -# %p = path relative to repository -# %r = repository (path portion of $CVSROOT) -# %{sVv} = attribute list = file name, old version number (pre-checkin), -# new version number (post-checkin). When either old or new revision -# is unknown, doesn't exist, or isn't applicable, the string "NONE" -# will be placed on the command line instead. -# -# Note that %{sVv} is a list operator and not all elements are necessary. -# Thus %{sv} is a legal format string, but will only be replaced with -# file name and new revision. -# It also generates multiple arguments for each file being operated upon. -# That is, if two files, file1 & file2, are being commited from 1.1 to -# version 1.1.2.1 and from 1.1.2.2 to 1.1.2.3, respectively, %{sVv} will -# generate the following six arguments in this order: -# file1, 1.1, 1.1.2.1, file2, 1.1.2.2, 1.1.2.3. -# -# For example: -#DEFAULT (echo ""; id; echo %s; date; cat) >> $CVSROOT/CVSROOT/commitlog -# or -#DEFAULT (echo ""; id; echo %{sVv}; date; cat) >> $CVSROOT/CVSROOT/commitlog diff --git a/CVSROOT/modules b/CVSROOT/modules deleted file mode 100644 index cb9e9ef..0000000 --- a/CVSROOT/modules +++ /dev/null @@ -1,26 +0,0 @@ -# Three different line formats are valid: -# key -a aliases... -# key [options] directory -# key [options] directory files... -# -# Where "options" are composed of: -# -i prog Run "prog" on "cvs commit" from top-level of module. -# -o prog Run "prog" on "cvs checkout" of module. -# -e prog Run "prog" on "cvs export" of module. -# -t prog Run "prog" on "cvs rtag" of module. -# -u prog Run "prog" on "cvs update" of module. -# -d dir Place module in directory "dir" instead of module name. -# -l Top-level directory only -- do not recurse. -# -# NOTE: If you change any of the "Run" options above, you'll have to -# release and re-checkout any working directories of these modules. -# -# And "directory" is a path to a directory relative to $CVSROOT. -# -# The "-a" option specifies an alias. An alias is interpreted as if -# everything on the right of the "-a" had been typed on the command line. -# -# You can encode a module within a module by using the special '&' -# character to interpose another module into the current module. This -# can be useful for creating a module that consists of many directories -# spread out over the entire source repository. diff --git a/CVSROOT/notify b/CVSROOT/notify deleted file mode 100644 index aaf98c5..0000000 --- a/CVSROOT/notify +++ /dev/null @@ -1,19 +0,0 @@ -# The "notify" file controls where notifications from watches set by -# "cvs watch add" or "cvs edit" are sent. The first entry on a line is -# a regular expression which is tested against the directory that the -# change is being made to, relative to the $CVSROOT. If it matches, -# then the remainder of the line is a filter program that should contain -# one occurrence of %s for the user to notify, and information on its -# standard input. -# -# "ALL" or "DEFAULT" can be used in place of the regular expression. -# -# format strings are replaceed as follows: -# %c = canonical name of the command being executed -# %R = the name of the referrer, if any, otherwise the value NONE -# %p = path relative to repository -# %r = repository (path portion of $CVSROOT) -# %s = user to notify -# -# For example: -#ALL (echo Committed to %r/%p; cat) |mail %s -s "CVS notification" diff --git a/CVSROOT/postadmin b/CVSROOT/postadmin deleted file mode 100644 index a1a0812..0000000 --- a/CVSROOT/postadmin +++ /dev/null @@ -1,20 +0,0 @@ -# The "postadmin" file is called after the "admin" command finishes -# processing a directory. -# -# If any format strings are present in the filter, they will be replaced -# as follows: -# %c = canonical name of the command being executed -# %R = the name of the referrer, if any, otherwise the value NONE -# %p = path relative to repository -# %r = repository (path portion of $CVSROOT) -# -# The first entry on a line is a regular expression which is tested -# against the directory that the change is being committed to, relative -# to the $CVSROOT. For the first match that is found, then the remainder -# of the line is the name of the filter to run. -# -# If the repository name does not match any of the regular expressions in this -# file, the "DEFAULT" line is used, if it is specified. -# -# If the name "ALL" appears as a regular expression it is always used -# in addition to the first matching regex or "DEFAULT". diff --git a/CVSROOT/postproxy b/CVSROOT/postproxy deleted file mode 100644 index 49c6cfb..0000000 --- a/CVSROOT/postproxy +++ /dev/null @@ -1,22 +0,0 @@ -# The "postproxy" file is called from a secondary server as soon as -# the secondary server closes its connection to the primary server. -# This script might, for example, be used to shut down a dial up -# or VPN connection to the primary server's network. -# -# If any format strings are present in the filter, they will be replaced -# as follows: -# %c = canonical name of the command being executed -# %R = the name of the referrer, if any, otherwise the value NONE -# %p = path relative to repository (currently always ".") -# %r = repository (path portion of $CVSROOT) -# -# The first entry on a line is a regular expression which is tested -# against the directory that the change is being committed to, relative -# to the $CVSROOT. For the first match that is found, then the remainder -# of the line is the name of the filter to run. -# -# If the repository name does not match any of the regular expressions in this -# file, the "DEFAULT" line is used, if it is specified. -# -# If the name "ALL" appears as a regular expression it is always used -# in addition to the first matching regex or "DEFAULT". diff --git a/CVSROOT/posttag b/CVSROOT/posttag deleted file mode 100644 index 7f369e3..0000000 --- a/CVSROOT/posttag +++ /dev/null @@ -1,37 +0,0 @@ -# The "posttag" file is called after the "tag" command finishes -# processing a directory. -# -# If any format strings are present in the filter, they will be replaced -# as follows: -# %b = branch mode = "?" (delete ops - unknown) | "T" (branch) -# | "N" (not branch) -# %o = operation = "add" | "mov" | "del" -# %c = canonical name of the command being executed -# %R = the name of the referrer, if any, otherwise the value NONE -# %p = path relative to repository -# %r = repository (path portion of $CVSROOT) -# %t = tagname -# %{sVv} = attribute list = file name, old version tag will be deleted -# from, new version tag will be added to (or deleted from, but -# this feature is deprecated. When either old or new revision is -# unknown, doesn't exist, or isn't applicable, the string "NONE" -# will be placed on the command line. -# -# Note that %{sVv} is a list operator and not all elements are necessary. -# Thus %{sV} is a legal format string, but will only be replaced with file -# name and old revision. it also generates multiple arguments for each file -# being operated upon. i.e. if two files, file1 & file2, are having a tag -# moved from version 1.1 to version 1.1.2.9, %{sVv} will generate the -# following six arguments in this order: -# file1, 1.1, 1.1.2.9, file2, 1.1, 1.1.2.9. -# -# The first entry on a line is a regular expression which is tested -# against the directory that the change is being committed to, relative -# to the $CVSROOT. For the first match that is found, then the remainder -# of the line is the name of the filter to run. -# -# If the repository name does not match any of the regular expressions in this -# file, the "DEFAULT" line is used, if it is specified. -# -# If the name "ALL" appears as a regular expression it is always used -# in addition to the first matching regex or "DEFAULT". diff --git a/CVSROOT/postwatch b/CVSROOT/postwatch deleted file mode 100644 index 5b001b1..0000000 --- a/CVSROOT/postwatch +++ /dev/null @@ -1,20 +0,0 @@ -# The "postwatch" file is called after any command finishes writing new -# file attibute (watch/edit) information in a directory. -# -# If any format strings are present in the filter, they will be replaced -# as follows: -# %c = canonical name of the command being executed -# %R = the name of the referrer, if any, otherwise the value NONE -# %p = path relative to repository -# %r = repository (path portion of $CVSROOT) -# -# The first entry on a line is a regular expression which is tested -# against the directory that the change is being committed to, relative -# to the $CVSROOT. For the first match that is found, then the remainder -# of the line is the name of the filter to run. -# -# If the repository name does not match any of the regular expressions in this -# file, the "DEFAULT" line is used, if it is specified. -# -# If the name "ALL" appears as a regular expression it is always used -# in addition to the first matching regex or "DEFAULT". diff --git a/CVSROOT/preproxy b/CVSROOT/preproxy deleted file mode 100644 index a9f514f..0000000 --- a/CVSROOT/preproxy +++ /dev/null @@ -1,24 +0,0 @@ -# The "preproxy" file is called form the secondary server as soon as -# the secondary server determines that it will be proxying a write -# command to a primary server and immediately before it opens a -# connection to the primary server. This script might, for example, be -# used to launch a dial up or VPN connection to the primary server's -# network. -# -# If any format strings are present in the filter, they will be replaced -# as follows: -# %c = canonical name of the command being executed -# %R = the name of the referrer, if any, otherwise the value NONE -# %p = path relative to repository (currently always ".") -# %r = repository (path portion of $CVSROOT) -# -# The first entry on a line is a regular expression which is tested -# against the directory that the change is being committed to, relative -# to the $CVSROOT. For the first match that is found, then the remainder -# of the line is the name of the filter to run. -# -# If the repository name does not match any of the regular expressions in this -# file, the "DEFAULT" line is used, if it is specified. -# -# If the name "ALL" appears as a regular expression it is always used -# in addition to the first matching regex or "DEFAULT". diff --git a/CVSROOT/rcsinfo b/CVSROOT/rcsinfo deleted file mode 100644 index 49e59f4..0000000 --- a/CVSROOT/rcsinfo +++ /dev/null @@ -1,13 +0,0 @@ -# The "rcsinfo" file is used to control templates with which the editor -# is invoked on commit and import. -# -# The first entry on a line is a regular expression which is tested -# against the directory that the change is being made to, relative to the -# $CVSROOT. For the first match that is found, then the remainder of the -# line is the name of the file that contains the template. -# -# If the repository name does not match any of the regular expressions in this -# file, the "DEFAULT" line is used, if it is specified. -# -# If the name "ALL" appears as a regular expression it is always used -# in addition to the first matching regex or "DEFAULT". diff --git a/CVSROOT/taginfo b/CVSROOT/taginfo deleted file mode 100644 index ce9d0de..0000000 --- a/CVSROOT/taginfo +++ /dev/null @@ -1,46 +0,0 @@ -# The "taginfo" file is used to control pre-tag checks. -# The filter on the right is invoked with the following arguments -# if no format strings are present: -# -# $1 -- tagname -# $2 -- operation "add" for tag, "mov" for tag -F, and "del" for tag -d -# $3 -- tagtype "?" on delete, "T" for branch, "N" for static -# $4 -- repository -# $5-> file revision [file revision ...] -# -# If any format strings are present in the filter, they will be replaced -# as follows: -# %b = branch mode = "?" (delete ops - unknown) | "T" (branch) -# | "N" (not branch) -# %o = operation = "add" | "mov" | "del" -# %c = canonical name of the command being executed -# %R = the name of the referrer, if any, otherwise the value NONE -# %p = path relative to repository -# %r = repository (path portion of $CVSROOT) -# %t = tagname -# %{sVv} = attribute list = file name, old version tag will be deleted -# from, new version tag will be added to (or deleted from, but -# this feature is deprecated. When either old or new revision is -# unknown, doesn't exist, or isn't applicable, the string "NONE" -# will be placed on the command line. -# -# Note that %{sVv} is a list operator and not all elements are necessary. -# Thus %{sV} is a legal format string, but will only be replaced with file -# name and old revision. it also generates multiple arguments for each file -# being operated upon. i.e. if two files, file1 & file2, are having a tag -# moved from version 1.1 to version 1.1.2.9, %{sVv} will generate the -# following six arguments in this order: -# file1, 1.1, 1.1.2.9, file2, 1.1, 1.1.2.9. -# -# A non-zero exit of the filter program will cause the tag to be aborted. -# -# The first entry on a line is a regular expression which is tested -# against the directory that the change is being committed to, relative -# to the $CVSROOT. For the first match that is found, then the remainder -# of the line is the name of the filter to run. -# -# If the repository name does not match any of the regular expressions in this -# file, the "DEFAULT" line is used, if it is specified. -# -# If the name "ALL" appears as a regular expression it is always used -# in addition to the first matching regex or "DEFAULT". diff --git a/CVSROOT/verifymsg b/CVSROOT/verifymsg deleted file mode 100644 index 357a0b0..0000000 --- a/CVSROOT/verifymsg +++ /dev/null @@ -1,31 +0,0 @@ -# The "verifymsg" file is used to allow verification of logging -# information. It works best when a template (as specified in the -# rcsinfo file) is provided for the logging procedure. Given a -# template with locations for, a bug-id number, a list of people who -# reviewed the code before it can be checked in, and an external -# process to catalog the differences that were code reviewed, the -# following test can be applied to the code: -# -# Making sure that the entered bug-id number is correct. -# Validating that the code that was reviewed is indeed the code being -# checked in (using the bug-id number or a seperate review -# number to identify this particular code set.). -# -# If any of the above test failed, then the commit would be aborted. -# -# Format strings present in the filter will be replaced as follows: -# %c = canonical name of the command being executed -# %R = the name of the referrer, if any, otherwise the value NONE -# %p = path relative to repository -# %r = repository (path portion of $CVSROOT) -# %l = name of log file to be verified. -# -# If no format strings are present in the filter, a default " %l" will -# be appended to the filter, but this usage is deprecated. -# -# Actions such as mailing a copy of the report to each reviewer are -# better handled by an entry in the loginfo file. -# -# One thing that should be noted is the the ALL keyword is not -# supported. There can be only one entry that matches a given -# repository. diff --git a/portland/README b/portland/README deleted file mode 100644 index 0707c1d..0000000 --- a/portland/README +++ /dev/null @@ -1,2 +0,0 @@ -This module is part of the Portland initiative. -See http://portland.freedesktop.org/ for more information. diff --git a/portland/README.release-howto b/portland/README.release-howto deleted file mode 100644 index 83fdb65..0000000 --- a/portland/README.release-howto +++ /dev/null @@ -1,7 +0,0 @@ -Release guide for xdg-utils: - -cd xdg-utils -make release -cd .. -mv xdg-utils xdg-utils-0.1 -tar -cvzf xdg-utils-0.1.tgz --exclude CVS --exclude .cvsignore xdg-utils-0.1 diff --git a/portland/dapi/.cvsignore b/portland/dapi/.cvsignore deleted file mode 100644 index 7ecfc3b..0000000 --- a/portland/dapi/.cvsignore +++ /dev/null @@ -1,14 +0,0 @@ -Makefile -Makefile.in -aclocal.m4 -autom4te.cache -config.cache -config.h -config.h.in -config.log -config.status -configure -libtool -stamp-h1 -.libs -.deps diff --git a/portland/dapi/AUTHORS b/portland/dapi/AUTHORS deleted file mode 100644 index d6021d4..0000000 --- a/portland/dapi/AUTHORS +++ /dev/null @@ -1 +0,0 @@ -Lubos Lunak <l.lunak@suse.cz> diff --git a/portland/dapi/BUILD b/portland/dapi/BUILD deleted file mode 100644 index 46c9fdd..0000000 --- a/portland/dapi/BUILD +++ /dev/null @@ -1,15 +0,0 @@ -make -f Makefile.cvs -./configure -make -make install - -For KDE module: -cd kde -make -f Makefile.cvs -./configure -make -make install - -If you have a serious problem with the -Werror flag, edit configure.ac -and kde/configure.in.in (sorry, but plain C accepts unbelievable nonsense -without it). It should be probably turned into a configure switch or something. diff --git a/portland/dapi/LICENSE b/portland/dapi/LICENSE deleted file mode 100644 index d28a48f..0000000 --- a/portland/dapi/LICENSE +++ /dev/null @@ -1,16 +0,0 @@ -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN -AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/portland/dapi/Makefile.am b/portland/dapi/Makefile.am deleted file mode 100644 index abbf26b..0000000 --- a/portland/dapi/Makefile.am +++ /dev/null @@ -1,2 +0,0 @@ -SUBDIRS = include lib generic tests -AUTOMAKE_OPTIONS = foreign diff --git a/portland/dapi/Makefile.cvs b/portland/dapi/Makefile.cvs deleted file mode 100644 index 1e17bc9..0000000 --- a/portland/dapi/Makefile.cvs +++ /dev/null @@ -1,6 +0,0 @@ -all: - @libtoolize - @aclocal - @autoheader - @automake --add-missing - @autoconf diff --git a/portland/dapi/README b/portland/dapi/README deleted file mode 100644 index 19b6fa3..0000000 --- a/portland/dapi/README +++ /dev/null @@ -1,67 +0,0 @@ -NOTE: This is currently an experimental implementation intended to gather -feedback. Especially see the DAPI-0.1 announcement mail on the mailing -list (http://lists.freedesktop.org/archives/portland/2006-March/000267.html) -for details. - - - - -The Portland Project Desktop API (DAPI) -======================================= -DAPI is a general purpose desktop API that allows uniform access to -desktop functionality like sending email, turning screensavers on/off, -opening urls, and so forth. These are done in different ways, depending -on the user's distro and desktop environment; DAPI gives software -developers a single, uniform way to perform them. - -The main motivation for DAPI is to simplify ISV's lives. We want to see -more commercial-class software available for the Linux desktop, but -recognize that the vast array of choices available to the Linux user -presents the ISV with the problem of how to support all these different -ways of doing things? With DAPI, we plan to address this problem by -giving the ISV a convenience library that wrappers common functionality -they need, that is not yet standardized across desktop environments. - -DAPI is implemented as a daemon that runs on the user's desktop and -allows applications to invoke desktop functions through an API. - - -Usage -===== -DAPI consists of two components: A daemon, and a library (libdapi.la) -that links to the application. The library handles the IPC -(socket) communication with the daemon and implements the API. - -There are several different "flavors" of daemons, each particular to a -given desktop environment (dapi_kde, dapi_generic, etc.), but they all -provide the same API. This way, once you link the library in, you can -communicate with any daemon. - -ISV is expected to statically link the DAPI library. Daemon should -be provided by the desktop environment in which the application runs. -Currently (March 2006) no distros ship DAPI, so it may be necessary -to ship separately daemons for these desktop environments. ISVs may -also consider shipping a generic daemon together with the application -as a fallback. - -The doc/ directory contains a description of the implemented calls -and other developer documentation. Also, the tests/ directory will serve -as a set of basic examples on using the library. Other directories contain -the library and daemon implementations. - - -Future -====== -DAPI is very much an early work in progress, and is still in 'prototype' -stage, so please expect that lots *will* change. We hope to expand the -functionality to include much more of what ISV's need, so if something -appears to be missing, please let us know (patches welcome too!) - -The plan is for the desktop environments to provide their own daemon -implementations, with applications including only the generic daemon to -use if no other daemon is already running. - -Web: http://portland.freedesktop.org/ -Mailing list: http://lists.freedesktop.org/mailman/listinfo/portland -Source code: cvs -d :pserver:anoncvs@cvs.freedesktop.org:/cvs/portland co portland/dapi -Online repository: http://cvs.freedesktop.org/portland/portland/dapi diff --git a/portland/dapi/configure.ac b/portland/dapi/configure.ac deleted file mode 100644 index 6ef3e26..0000000 --- a/portland/dapi/configure.ac +++ /dev/null @@ -1,35 +0,0 @@ -AC_INIT([DAPI], [0.1], [l.lunak@suse.cz], [dapi]) -AC_CONFIG_SRCDIR([doc/API.txt]) -AM_CONFIG_HEADER(config.h) -AM_INIT_AUTOMAKE - -AC_PROG_CC -AC_HEADER_STDC -AC_PROG_CXX -AC_ENABLE_STATIC -AC_DISABLE_SHARED -AC_PROG_LIBTOOL -AC_PROG_INSTALL - -CFLAGS="$CFLAGS -Werror" -CXXFLAGS="$CXXFLAGS -Werror" - -AC_SUBST(CFLAGS) -AC_SUBST(CXXFLAGS) -AC_SUBST(CPPFLAGS) -AC_SUBST(LDFLAGS) - -AC_PATH_XTRA -AC_CHECK_HEADERS(X11/extensions/dpms.h, - AC_DEFINE(HAVE_DPMS, 1, [Set if DPMS is available]),, - [#include <X11/Xlib.h>]) - -AC_CONFIG_FILES([ -Makefile -lib/Makefile -tests/Makefile -generic/Makefile -include/Makefile -include/dapi/Makefile -]) -AC_OUTPUT diff --git a/portland/dapi/doc/API.txt b/portland/dapi/doc/API.txt deleted file mode 100644 index 8ccf254..0000000 --- a/portland/dapi/doc/API.txt +++ /dev/null @@ -1,216 +0,0 @@ -============================================================================== - Description of the API -============================================================================== - -This file is a complete list and description of all API calls. It doesn't -contain any information specific to any language bindings. - - - -Conventions: -============ - -All strings, filenames, urls, etc. are UTF8-encoded, unless specified -otherwise. - -All filenames and paths must be absolute. - -Window relations: ------------------ - -Many calls take 'windowinfo' argument that specifies a window related to the call. -This argument is necessary for maintaining proper window relations so that e.g. -a dialog opened from the call is properly associated with a window from the application -to which it logically belongs. Missing or incorrect data may result in focus problems. - -Applications should specify the toplevel window related to the request. If the application -has only one main window then this is the window, if it has more then the relevant -one should be used (e.g. for the OpenUrl call the window should be the toplevel window -in which the user clicked on the link). See bindings documentation for further details. - - -API calls list: -=============== - -Init() -> ( bool ok ) ---------------------- - -Needs to be the very first call performed. If the call fails, no API can be used. - -ok: if false, initialization failed - - -Capabilities() -> ( int[] capabilities ) ----------------------------------------- - -Returns a list of all commands that the desktop supports. Refer to your -bindings documentation for details on command id's. - -capabilities: a list of capabilities - - -OpenUrl( string url, windowinfo winfo ) -> ( bool ok ) ------------------------------------------------------- - -Opens the given URL or filename in the default web browser. - -url: URL or filename to open -winfo: window related to this request (see conventions) -ok: if false, the url wasn't opened - - -ExecuteUrl( string url, windowinfo winfo ) -> ( bool ok ) ---------------------------------------------------------- - -Opens the given URL or filename in the default application for the file (image viewer for image, etc.) - -url: URL or filename to open -winfo: window related to this request (see conventions) -ok: if false, the URL/file wasn't opened - - -ButtonOrder() -> ( int order ) ------------------------------- - -Returns the system button order. - -order: 0 - error - 1 - Ok/Cancel - 2 - Cancel/Ok - - -RunAsUser( string user, string command, windowinfo winfo ) -> ( bool ok ) -------------------------------------------------------------------------- - -Executes the given command as a different user. - -user: username or empty for superuser -command: command to execute -winfo: window related to this request (see conventions) -ok: if false, the command wasn't executed - - -SuspendScreensaving( bool suspend ) -> ( bool ok ) --------------------------------------------------- - -Suspends or resumes screensaving. - -suspend: whether to suspend screensaving -ok: if false, suspending failed - - -MailTo( string subject, string body, string to, string cc, string bcc, string[] attachments, windowinfo winfo ) -> ( bool ok ) ------------------------------------------------------------------------------------------------------------------------------- - -Opens a window for composing mail in the default mail client. - -subject: mail subject or empty -body: mail body or empty -to: mail's To:, multiple entries are separated using commas, may be empty -to: mail's CC:, multiple entries are separated using commas, may be empty -to: mail's BCC:, multiple entries are separated using commas, may be empty -attachments: a list of filenames to be attached to the mail -winfo: window related to this request (see conventions) - - -LocalFile( string url, string local, bool allow_download, windowinfo winfo ) -> ( string result ) -------------------------------------------------------------------------------------------------- - -Converts an URL to a local file location, downloading the remote file -if necessary and allowed. The URL may be already a local file in which -case it will be simply returned. - -file: URL or path of the file to convert to local file -allow_download: If the file URL doesn't point to a local file, it will be downloaded - to a temporary local file if allow_download is true -local: filename of a local file that should be used as a temporary file - in case of downloading; if empty, then a random temporary file is used and it needs - to be eventually removed using RemoveTemporaryLocalFile; note that if the source - file already is a local file, then its path will be returned and this field will - be ignored -winfo: window related to this request (see conventions) -result: filename of the resulting local file, may be equal to the source file - - -UploadFile( string local, string file, bool remove_local, windowinfo winfo ) -> ( bool ok ) -------------------------------------------------------------------------------------------- - -Uploads local file to its URL location. This function is a complement for LocalFile -to save a temporary file to its real location after it's been changed. In case -the destination is a local file then this call successfully returns without doing anything. - -local: filename of a temporary file obtained from LocalFile -file: URL or path of the location where to save the file to -remove_local: if true, equivalent to calling RemoveTemporaryLocalFile with the local - file after this call -winfo: window related to this request (see conventions) -ok: if false, the upload failed - -RemoveTemporaryLocalFile( string local ) -> ( bool ok ) -------------------------------------------------------- - -Removes a temporary local file created by LocalFile (only works it LocalFile had -to create a random temporary file itself). This call doesn't affect files that -haven't been created by LocalFile. - -local: filename of a temporary file to be removed -ok: if false, the removal failed - -AddressBookList() -> ( stringlist contact_ids, bool ok ) ----------------------------------------------------------- - -Lists all identifiers for contacts in the user's addressbook. The content of such -an identifier can vary between daemon implementations. - -contact_ids: a list of string IDs, one entry for each contact in the addressbook -ok: false if listing is not possible or has failed - -AddressBookOwner() -> ( string contact_id, bool ok ) ----------------------------------------------------- - -Returns the identifier of the user's own contact if available. - -contact_id: a string identifying the user herself -ok: true if owner contact is available, otherwise false - -AddressBookFindByName( string name ) -> ( stringlist contact_ids, bool ok ) ------------------------------------------------------------------------------ - -Finds all contacts in the user's addressbook where the given string is part -of at least one of the contact's name fields. - -name: a string containing the name or part of a name to search for -contact_ids: a list of string IDs, one entry for each matching contact in - the addressbook -ok: false if no match is found - -AddressBookGetName( string contact_id ) -> ( string givenname, string familyname, string fullname, bool ok ) ------------------------------------------------------------------------------------------------------------- - -Gets the name of a specific contact from the user's addressbook. -The contact is identified through a backend specific string which is returned by -query functions such as AddressBookList or AddressBookFindByName. - -contact_id: the identifier of the contact to get the name from -givenname: the given or first name of the contact -familyname: the family name of the contact -fullname: a name string containing all avilable name parts, e.g. name plus title -ok: false if the contact_id is unknown - -AddressBookGetEmails( string contact_id ) -> ( stringlist emails, bool ok ) ------------------------------------------------------------------------------ - -Gets all emails for the contact with the given identifier. - -contact_id: the identifier of the contact to get the email addresses from -emails: a list of strings, one entry for each email address of the contact -ok: false if the contact_id is unknown - -AddressBookGetVCard30( string contact_id ) -> ( string vcard, bool ok) ----------------------------------------------------------------------- - -Gets the full contact information as a VCard version 3.0. - -contact_id: the identifier of the contact to get the vcard for -vcard: a string with the vcard data -ok: true if contact exists and conversion successfull, otherwise false diff --git a/portland/dapi/doc/C-API.txt b/portland/dapi/doc/C-API.txt deleted file mode 100644 index edf0d56..0000000 --- a/portland/dapi/doc/C-API.txt +++ /dev/null @@ -1,198 +0,0 @@ -============================================================================== - Description of C API bindings -============================================================================== - -This file contains information specific to the C bindings. Refer to the generic -API documentation for information that is not specific to C bindings. See also -C-HOWTO.txt . - - - - -Data types -========== - - -C allows only a limited set of data types. Types from the abstract API that -are not available in C are used as follows: - -bool - int with values 1 for true and 0 for false - -string - char* NUL-terminated string; calls that return char* allocate it dynamically -and the caller must deallocate it by calling free() - -arrays ( int[], string[] ) - intarr, stringarr (see below) - -windowinfo - DapiWindowInfo (see below) - - -DapiConnection --------------- - -Opaque data type that contains all internal data. Most calls require it -as the first argument. - - -DapiWindowInfo --------------- - -Some call require information about a window related to the call. This structure -holds data about such window. Call dapi_windowInfoInitWindow() to fill in the info -or use the convenience _Window functions. - - -void dapi_windowInfoInitWindow( DapiWindowInfo* winfo, long window ) --------------------------------------------------------------------- - -Initializes DapiWindowInfo with data about given window. - -winfo: DapiWindowInfo data structure to initialize -window: Window handle (as used with X Window System) - - -void dapi_freeWindowInfo( DapiWindowInfo winfo ) ------------------------------------------------- - -Frees DapiWindowInfo structure data. - -winfo: DapiWindowInfo data structure to free data from. - - -intarr ------- - -A structure representing an integer array. -typedef struct - { - int count; - int* data; - } intarr; -'count' is number of elements, 'data' is array of elements. - - -void dapi_freeintarr( intarr arr ) ----------------------------------- - -Convenience function that frees dynamically allocated data from intarr. -All DAPI functions that return intarr allocate the data dynamically -and the caller must free it. - - -stringarr ---------- - -A structure representing a string array. -typedef struct - { - int count; - char** data; - } stringarr; -'count' is number of elements, 'data' is array of char* strings. - - -void dapi_freestringarr( stringarr arr ) ----------------------------------------- - -Convenience function that frees dynamically allocated data from stringarr. -All DAPI functions that return stringarr allocate the data dynamically -and the caller must free it. - - - - - - -Utility functions -================= - - -DapiConnection* dapi_connect( void ) ------------------------------------- - -Tries to connect to a running backend daemon. - -Returns: NULL if failed, opaque connection handle if success. - - -DapiConnection* dapi_connectAndInit( void ) -------------------------------------------- - -Convenience function that calls dapi_connect() and if successful -also performs initialization by calling dapi_Init() (see later). - - -void dapi_close( DapiConnection* conn ) ---------------------------------------- - -Closes a connection to a backend daemon. - -conn: Opaque connection handle. - - -int dapi_socket( DapiConnection* conn ) ---------------------------------------- - -Returns a file descriptor that can be used with system functions such as select() -to watch activity. - -conn: Opaque connection handle. -Returns: file descriptor - - -void dapi_processData( DapiConnection* conn ) ---------------------------------------------- - -Processes pending incoming data on the connection socket. - -conn: Opaque connection handle. - - -int dapi_readCommand( DapiConnection* conn, int* comm, int* seq ) ------------------------------------------------------------------ - -Reads a command header of the next incoming command request/reply. - -conn: Opaque connection handle. -comm: Id number of the incomming command. -seq: Sequence number of the incoming command. -Returns: 1 if successful, 0 if failure - - -TBD: -typedef void (*DapiGenericCallback)( DapiConnection* conn, int command, int seq ); -DapiGenericCallback dapi_setGenericCallback( DapiConnection* conn, DapiGenericCallback callback ); -void dapi_genericCallback( DapiConnection* conn, int command, int seq ); - - - - - - -Calls functions -=============== - - -There are several ways to invoke the API calls. For call XYZ there is: - -- lowlevel dapi_writeCommandXYZ(), dapi_readReplyXYZ() calls that write a command - request resp. read a command reply. - - dapi_writeCommandXYZ() writes a command header and all command arguments and - returns either 0 if failure or sequence number of the command. Each command request - has a specific sequence number assigned and is used to identify replies. - - dapi_readCommandXYZ() reads all reply arguments. It doesn't read command header, - dapi_readCommand() must be called first to identify a command. Returns 1 if success - or 0 if failure. - - Include file dapi/comm_generated.h contains all function prototypes. - -- blocking dapi_XYZ() call that writes a command request and waits for a reply. - Include file dapi/calls_generated.h contains all function prototypes. - -- non-blocking dapi_callbackXYZ() call that writes a command and invokes the passed - callback when a reply comes. - - dapi_callbackXYZ() returns a sequence number if success or 0 if failure - - Include file dapi/callbacks_generated.h contains all function prototypes. diff --git a/portland/dapi/doc/C-HOWTO.txt b/portland/dapi/doc/C-HOWTO.txt deleted file mode 100644 index bb0fe97..0000000 --- a/portland/dapi/doc/C-HOWTO.txt +++ /dev/null @@ -1,182 +0,0 @@ -============================================================================== - C API bindings HOWTO -============================================================================== - -This file contains HOWTO information specific to the C bindings. Refer to the generic -API documentation for information that is not specific to C bindings and to -C-API.txt for description of C bindings. - - -Note: Most test programs in tests/ can be also used as examples. - - -Linking with the library -======================== - - -Use #include <dapi/headerfile.h> and add proper include path flags for the compiler -if necessary. - -Add -ldapi and proper library path flags for the linker if necessary. - - - -Handling the DAPI connection -============================ - - -Before using any API calls it is necessary to initialize the DAPI connection first. - -static DapiConnection* my_dapi_connection = NULL; -... -int initializeDapi() - { - my_dapi_connection = dapi_connectAndInit(); - if( my_dapi_connection == NULL ) - return 0; /* oops, failure */ - return 1; - } - -If you want to do more than just perform a simple blocking call, you need to watch -the connection for activity. Use dapi_socket() to get the file descriptor to watch -and call dapi_processData(). - -void mainloop() - { - fd_set in; - FD_ZERO( &in ); - ... all file descriptors the app wants to watch - FD_SET( dapi_socket( my_dapi_connection ), &in ); - ... select() call here - if( FD_ISSET( dapi_socket( my_dapi_connection ), &in )) - dapi_processData( my_dapi_connection ); - ... - } - -Closing of the connection is done using dapi_close(); - - - -Blocking calls -============== - - -For blocking calls, just simply call the matching API function. For example, to open -URL in a browser: - -int openURL( const char* url ) - { - if( dapi_OpenUrl_Window( my_dapi_connection, url, XWINDOW_HANDLE( toplevel_widget ))) - return 1; - ... failure - } - - -OpenUrl call needs a toplevel window in which the request originated (to handle properly -window relations and focus). It is strongly discouraged to omit this information. -If the application has no window at all, use 0. Note a convenience _Window function is -used instead of DapiWindowInfo and dapi_windowInfoInitWindow(). - - -Functions are responsible for freeing resources allocated by the call. For example -when converting KDE's media:/ URL to a local file: - -void handle_media_url( const char* url ) - { - char* local; - /* convert to local file, don't allow download to a temporary file */ - local = dapi_LocalFile_Window( my_dapi_connection, url, NULL, 0, XWINDOW_HANDLE( toplevel_widget )); - if( local != NULL ) /* success */ - { - handle_local_file( local ); - free( local ); - return; - } - } - - -Callbacks -========= - - -Some calls such as downloading a remote file to a temporary local file may take long time -and as such should be processed asynchronously. It is possible to do so using the lowlevel -dapi_read/write function or using callbacks. - -int start_downloading_remote_url( const char* url ) - { - int seq = dapi_callbackLocalFile_Window( my_dapi_connection, url, NULL, 1, XWINDOW_HANDLE( toplevel_widget ), - download_remote_url_callback ); - if( seq != 0 ) - return seq; - ... failure - } - -void download_remote_url_callback( DapiConnection* conn, int seq, const char* result ) - { - /* if this callback is used for more calls, use seq and the value returned from dapi_callbackLocalFile_Window - to identify matching command and reply */ - if( result[ 0 ] != '\0' ) - ... success - else - ... failed to download - } - - -NOTE: Callbacks should not deallocate any of its arguments, callback handling will perform this -automatically after the callback returns. - - -Fallbacks -========= - - -API calls may fail for various reasons: No backend daemon is running or it doesn't implement -the required functionality. - -No backend daemon running -------------------------- - -TODO: fallback daemons don't make sense, the library should try to implement fallbacks - - -Some functionality not available --------------------------------- - -It is possible to query functionality provided by the backend daemon. - -int is_openurl_supported() - { - intarr capabilities; - int i; - if( dapi_Capabilities( conn, &capabilities )) - { - int has_openurl = 0; - for( i = 0; - i < capabilities.count; - ++i ) - { - if( capabilities.data[ i ] == DAPI_COMMAND_OPENURL ) - has_openurl = 1; - } - } - return has_openurl; - } - -See dapi/comm_generated.h for list of command ids (DAPI_COMMAND_MAILTO for MailTo call etc.) - -Applications may perform one Capabilities call after initializing connection and query for all -required functionality. If they don't find it available they may as well close this connection -and use a fallback daemon in order to expect all calls to succeed. - - -Fallback code -------------- - -Another approach is to just initialize connection and test for failure after every call. - -void openURL( const char* url ) - { - if( !dapi_OpenUrl_Window( my_dapi_connection, url, XWINDOW_HANDLE( toplevel_widget ))) - openInHardcodedBrowser( url ); - } diff --git a/portland/dapi/generic/.cvsignore b/portland/dapi/generic/.cvsignore deleted file mode 100644 index 2b97dba..0000000 --- a/portland/dapi/generic/.cvsignore +++ /dev/null @@ -1,5 +0,0 @@ -.deps -.libs -Makefile -Makefile.in -dapi_generic diff --git a/portland/dapi/generic/Makefile.am b/portland/dapi/generic/Makefile.am deleted file mode 100644 index 3ceb02f..0000000 --- a/portland/dapi/generic/Makefile.am +++ /dev/null @@ -1,7 +0,0 @@ -bin_PROGRAMS = dapi_generic - -dapi_generic_SOURCES = main.c commands.c -dapi_generic_LDADD = ../lib/libdapi.la -lXext -lX11 $(X_EXTRA_LIBS) $(X_PRE_LIBS) -dapi_generic_LDFLAGS = $(X_LIBS) - -INCLUDES = -I$(top_builddir)/include $(X_CFLAGS) diff --git a/portland/dapi/generic/commands.c b/portland/dapi/generic/commands.c deleted file mode 100644 index 57be41e..0000000 --- a/portland/dapi/generic/commands.c +++ /dev/null @@ -1,71 +0,0 @@ -#include <config.h> - -#include <signal.h> -#include <stdlib.h> -#include <sys/wait.h> -#include <unistd.h> - -#include <X11/Xlib.h> - -#ifdef HAVE_DPMS -#include <X11/extensions/dpms.h> -#endif - -#include "commands.h" - -static void sigchld( int s ) - { - int status; - ( void ) s; - while( waitpid( -1, &status, WNOHANG ) > 0 ) - ; - } - -int openUrl( const char* url ) - { - struct sigaction sa, saold; - sa.sa_handler = sigchld; - sa.sa_flags = SA_NOCLDSTOP | SA_RESTART; - sigemptyset( &sa.sa_mask ); - sigaction( SIGCHLD, &sa, &saold ); - if( fork() == 0 ) - { - const char* browser = getenv( "BROWSER" ); - if( browser != NULL ) - execlp( browser, browser, url, NULL ); - execlp( "firefox", "firefox", url, NULL ); - execlp( "mozilla", "mozilla", url, NULL ); - execlp( "netscape", "netscape", url, NULL ); - execlp( "opera", "opera", url, NULL ); - exit( 1 ); - } - return 1; /* TODO */ - } - -int suspendScreensaving( Display* dpy, int suspend ) - { -#ifdef HAVE_DPMS - if( !DPMSCapable( dpy )) - return 0; - if( suspend ) - return DPMSDisable( dpy ); - else - return DPMSEnable( dpy ); -#else - return 0; -#endif - } - -int mailTo( const char* subject, const char* body, const char* to, - const char* cc, const char* bcc, const char** attachments, int att_count ) - { - ( void ) subject; - ( void ) body; - ( void ) to; - ( void ) cc; - ( void ) bcc; - ( void ) attachments; - ( void ) att_count; - /* TODO */ - return 0; - } diff --git a/portland/dapi/generic/commands.h b/portland/dapi/generic/commands.h deleted file mode 100644 index 7874162..0000000 --- a/portland/dapi/generic/commands.h +++ /dev/null @@ -1,4 +0,0 @@ -int openUrl( const char* url ); -int suspendScreensaving( Display* dpy, int suspend ); -int mailTo( const char* subject, const char* body, const char* to, - const char* cc, const char* bcc, const char** attachments, int att_count ); diff --git a/portland/dapi/generic/main.c b/portland/dapi/generic/main.c deleted file mode 100644 index 0fb8a96..0000000 --- a/portland/dapi/generic/main.c +++ /dev/null @@ -1,389 +0,0 @@ -#include <stdarg.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <unistd.h> - -#include <X11/Xlib.h> - -#include "commands.h" -#include <dapi/comm.h> - -static void debug( const char* fmt, ... ) -#ifdef __GNUC__ - __attribute (( format( printf, 1, 2 ))) -#endif - ; - -static void debug( const char* fmt, ... ) - { - va_list va; - va_start( va, fmt ); - vfprintf( stderr, fmt, va ); - va_end( va ); - fprintf( stderr, "\n" ); - } - -DapiConnection** connections = NULL; -int num_connections = 0; - -Display* dpy = NULL; - -static void closeConnection( DapiConnection* conn ) - { - int i; - debug( "Closing %d", dapi_socket( conn )); - for( i = 0; - i < num_connections; - ++i ) - { - if( connections[ i ] == conn ) - { - connections[ i ] = NULL; - break; - } - } - dapi_close( conn ); - } - -static void processCommandInit( DapiConnection* conn, int seq ) - { - if( !dapi_readCommandInit( conn )) - { - closeConnection( conn ); - return; - } - debug( "Init %d", dapi_socket( conn )); - dapi_writeReplyInit( conn, seq, 1 ); - } - -/* TODO */ -static int caps[] = - { - DAPI_COMMAND_INIT, - DAPI_COMMAND_CAPABILITIES, - DAPI_COMMAND_OPENURL, -/* DAPI_COMMAND_EXECUTEURL,*/ - DAPI_COMMAND_BUTTONORDER, -/* DAPI_COMMAND_RUNASUSER,*/ - DAPI_COMMAND_SUSPENDSCREENSAVING, -/* DAPI_COMMAND_MAILTO,*/ - DAPI_COMMAND_LOCALFILE, - DAPI_COMMAND_UPLOADFILE, - DAPI_COMMAND_REMOVETEMPORARYLOCALFILE - }; - -static void processCommandCapabilities( DapiConnection* conn, int seq ) - { - intarr capabilities; - if( !dapi_readCommandInit( conn )) - { - closeConnection( conn ); - return; - } - debug( "Capabilities %d", dapi_socket( conn )); - capabilities.count = sizeof( caps ) / sizeof( caps[ 0 ] ); - capabilities.data = caps; - dapi_writeReplyCapabilities( conn, seq, capabilities, 1 ); - } - -static void processCommandOpenUrl( DapiConnection* conn, int seq ) - { - int ok; - char* url; - DapiWindowInfo winfo; - if( !dapi_readCommandOpenUrl( conn, &url, &winfo )) - { - closeConnection( conn ); - return; - } - debug( "Open url %d: %s", dapi_socket( conn ), url ); - /* winfo ? */ - ok = openUrl( url ); - dapi_writeReplyOpenUrl( conn, seq, ok ? 1 : 0 ); - free( url ); - dapi_freeWindowInfo( winfo ); - } - -static void processCommandButtonOrder( DapiConnection* conn, int seq ) - { - if( !dapi_readCommandButtonOrder( conn )) - { - closeConnection( conn ); - return; - } - debug( "Button order %d", dapi_socket( conn )); - dapi_writeReplyButtonOrder( conn, seq, 1 ); - } - -static void processCommandExecuteUrl( DapiConnection* conn, int seq ) - { - char* url; - DapiWindowInfo winfo; - if( !dapi_readCommandExecuteUrl( conn, &url, &winfo )) - { - closeConnection( conn ); - return; - } - debug( "Execute url %d: %s", dapi_socket( conn ), url ); - dapi_writeReplyExecuteUrl( conn, seq, 0 ); /* TODO failure ??? */ - free( url ); - dapi_freeWindowInfo( winfo ); - } - -static void processCommandRunAsUser( DapiConnection* conn, int seq ) - { - char* user; - char* command; - DapiWindowInfo winfo; - if( !dapi_readCommandRunAsUser( conn, &user, &command, &winfo )) - { - closeConnection( conn ); - return; - } - debug( "Run as user %d: %s %s", dapi_socket( conn ), user, command ); - dapi_writeReplyRunAsUser( conn, seq, 0 ); /* TODO failure ??? */ - free( user ); - free( command ); - dapi_freeWindowInfo( winfo ); - } - -static void processCommandSuspendScreensaving( DapiConnection* conn, int seq ) - { - int suspend; - int ok; - static int suspend_count = 0; - if( !dapi_readCommandSuspendScreensaving( conn, &suspend )) - { - closeConnection( conn ); - return; - } - debug( "Suspend screensaving %d: %d", dapi_socket( conn ), suspend ); - /* TODO remember setting per-connection and - - reset on disconnect - - ignore repeated set - */ - suspend_count += suspend ? 1 : -1; - if( suspend_count < 0 ) - suspend_count = 0; - ok = suspendScreensaving( dpy, suspend_count > 0 ); - dapi_writeReplySuspendScreensaving( conn, seq, ok ? 1 : 0 ); - } - -static void processCommandMailTo( DapiConnection* conn, int seq ) - { - int ok; - char* subject; - char* body; - char* to; - char* cc; - char* bcc; - stringarr attachments; - DapiWindowInfo winfo; - if( !dapi_readCommandMailTo( conn, &subject, &body, &to, &cc, &bcc, &attachments, &winfo )) - { - closeConnection( conn ); - return; - } - debug( "Mail to %d: %s", dapi_socket( conn ), subject ); - /* winfo ? */ - ok = mailTo( subject, body, to, cc, bcc, ( const char** ) attachments.data, attachments.count ); - dapi_writeReplyMailTo( conn, seq, ok ? 1 : 0 ); - free( subject ); - free( body ); - free( to ); - free( cc ); - free( bcc ); - dapi_freestringarr( attachments ); - dapi_freeWindowInfo( winfo ); - } - -static void processCommandLocalFile( DapiConnection* conn, int seq ) - { - char* file; - char* local; - int allow_download; - const char* result = NULL; - DapiWindowInfo winfo; - if( !dapi_readCommandLocalFile( conn, &file, &local, &allow_download, &winfo )) - { - closeConnection( conn ); - return; - } - debug( "Local file %d: %s %s %d", dapi_socket( conn ), file, local, allow_download ); - if( file[ 0 ] == '/' ) - result = file; /* is it already local */ - else if( strncmp( file, "file:///", strlen( "file:///" )) == 0 ) - result = file + strlen( "file://" ); /* local url */ - else - result = NULL; - /* local is unused, no real downloading */ - dapi_writeReplyLocalFile( conn, seq, result ); - free( file ); - dapi_freeWindowInfo( winfo ); - } - -static void processCommandUploadFile( DapiConnection* conn, int seq ) - { - char* local; - char* file; - int remove_local; - int ok; - DapiWindowInfo winfo; - if( !dapi_readCommandUploadFile( conn, &local, &file, &remove_local, &winfo )) - { - closeConnection( conn ); - return; - } - debug( "Upload file %d: %s %s %d", dapi_socket( conn ), local, file, remove_local ); - if( file[ 0 ] == '/' && strcmp( local, file ) == 0 ) - ok = 1; - else if( strncmp( file, "file:///", strlen( "file:///" )) == 0 - && strcmp( file + strlen( "file://" ), local ) == 0 ) - ok = 1; - else - ok = 0; - /* remove_local is unused, no real uploading */ - dapi_writeReplyUploadFile( conn, seq, ok ); - free( local ); - free( file ); - dapi_freeWindowInfo( winfo ); - } - -static void processCommandRemoveTemporaryLocalFile( DapiConnection* conn, int seq ) - { - char* file; - if( !dapi_readCommandRemoveTemporaryLocalFile( conn, &file )) - { - closeConnection( conn ); - return; - } - debug( "Remove temporary %d: %s", dapi_socket( conn ), file ); - dapi_writeReplyRemoveTemporaryLocalFile( conn, seq, 1 ); - free( file ); - } - - -static void processCommand( DapiConnection* conn ) - { - int command; - int seq; - if( !dapi_readCommand( conn, &command, &seq )) - { - closeConnection( conn ); - return; - } - debug( "Command %d: %d (%d)", dapi_socket( conn ), command, seq ); - switch( command ) - { - case DAPI_COMMAND_INIT: - processCommandInit( conn, seq ); - return; - case DAPI_COMMAND_CAPABILITIES: - processCommandCapabilities( conn, seq ); - return; - case DAPI_COMMAND_OPENURL: - processCommandOpenUrl( conn, seq ); - return; - case DAPI_COMMAND_EXECUTEURL: - processCommandExecuteUrl( conn, seq ); - return; - case DAPI_COMMAND_BUTTONORDER: - processCommandButtonOrder( conn, seq ); - return; - case DAPI_COMMAND_RUNASUSER: - processCommandRunAsUser( conn, seq ); - return; - case DAPI_COMMAND_SUSPENDSCREENSAVING: - processCommandSuspendScreensaving( conn, seq ); - return; - case DAPI_COMMAND_MAILTO: - processCommandMailTo( conn, seq ); - return; - case DAPI_COMMAND_LOCALFILE: - processCommandLocalFile( conn, seq ); - return; - case DAPI_COMMAND_UPLOADFILE: - processCommandUploadFile( conn, seq ); - return; - case DAPI_COMMAND_REMOVETEMPORARYLOCALFILE: - processCommandRemoveTemporaryLocalFile( conn, seq ); - return; - default: - debug( "Unknown command %d: %d", dapi_socket( conn ), command ); - return; - } - } - -int main( int argc, char* argv[] ) - { - int i; - int mainsock; - dpy = XOpenDisplay( NULL ); - if( dpy == NULL ) - { - fprintf( stderr, "Cannot open X connection!\n" ); - return 1; - } - mainsock = dapi_bindSocket(); - if( mainsock < 0 ) - return 2; - for(;;) - { - fd_set in; - FD_ZERO( &in ); - FD_SET( mainsock, &in ); - int maxsock = mainsock; - for( i = 0; - i < num_connections; - ++i ) - if( connections[ i ] != NULL ) - { - int sock = dapi_socket( connections[ i ] ); - FD_SET( sock, &in ); - if( sock > maxsock ) - maxsock = sock; - } - FD_SET( XConnectionNumber( dpy ), &in ); - if( XConnectionNumber( dpy ) > maxsock ) - maxsock = XConnectionNumber( dpy ); - select( maxsock + 1, &in, NULL, NULL, NULL ); - if( FD_ISSET( XConnectionNumber( dpy ), &in )) - { - while( XPending( dpy )) - { - XEvent ev; - XNextEvent( dpy, &ev ); - } - } - for( i = 0; - i < num_connections; - ++i ) - { - if( connections[ i ] != NULL && FD_ISSET( dapi_socket( connections[ i ] ), &in )) - processCommand( connections[ i ] ); - } - if( FD_ISSET( mainsock, &in )) - { - DapiConnection* conn = dapi_acceptSocket( mainsock ); - if( conn != NULL ) - { - int pos; - debug( "New connection: %d", dapi_socket( conn )); - for( pos = 0; - pos < num_connections; - ++pos ) - { - if( connections[ pos ] == NULL ) - break; - } - if( pos == num_connections ) - { - ++num_connections; - connections = realloc( connections, sizeof( DapiConnection* ) * num_connections ); - } - connections[ pos ] = conn; - } - } - } - } diff --git a/portland/dapi/include/.cvsignore b/portland/dapi/include/.cvsignore deleted file mode 100644 index 282522d..0000000 --- a/portland/dapi/include/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -Makefile -Makefile.in diff --git a/portland/dapi/include/Makefile.am b/portland/dapi/include/Makefile.am deleted file mode 100644 index 643b948..0000000 --- a/portland/dapi/include/Makefile.am +++ /dev/null @@ -1 +0,0 @@ -SUBDIRS = dapi diff --git a/portland/dapi/include/dapi/.cvsignore b/portland/dapi/include/dapi/.cvsignore deleted file mode 100644 index 282522d..0000000 --- a/portland/dapi/include/dapi/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -Makefile -Makefile.in diff --git a/portland/dapi/include/dapi/Makefile.am b/portland/dapi/include/dapi/Makefile.am deleted file mode 100644 index 4f0b43b..0000000 --- a/portland/dapi/include/dapi/Makefile.am +++ /dev/null @@ -1,37 +0,0 @@ -BUILT_SOURCES = comm.h calls.h callbacks.h \ - comm_generated.c calls_generated.c callbacks_generated.c \ - comm_generated.h calls_generated.h callbacks_generated.h comm_internal_generated.h - -dapiinclude_HEADERS = comm.h calls.h callbacks.h comm_generated.h calls_generated.h callbacks_generated.h - -dapiincludedir = $(includedir)/dapi - -comm.h: - $(LN_S) $(top_srcdir)/lib/comm.h - -calls.h: - $(LN_S) $(top_srcdir)/lib/calls.h - -callbacks.h: - $(LN_S) $(top_srcdir)/lib/callbacks.h - -comm_generated.h: - $(LN_S) $(top_srcdir)/kde/gen/comm_generated.h - -calls_generated.h: - $(LN_S) $(top_srcdir)/kde/gen/calls_generated.h - -callbacks_generated.h: - $(LN_S) $(top_srcdir)/kde/gen/callbacks_generated.h - -comm_internal_generated.h: - $(LN_S) $(top_srcdir)/kde/gen/comm_internal_generated.h - -comm_generated.c: - $(LN_S) $(top_srcdir)/kde/gen/comm_generated.c - -calls_generated.c: - $(LN_S) $(top_srcdir)/kde/gen/calls_generated.c - -callbacks_generated.c: - $(LN_S) $(top_srcdir)/kde/gen/callbacks_generated.c diff --git a/portland/dapi/kde/.cvsignore b/portland/dapi/kde/.cvsignore deleted file mode 100644 index 194198e..0000000 --- a/portland/dapi/kde/.cvsignore +++ /dev/null @@ -1,18 +0,0 @@ -.autoconf_trace -Makefile -Makefile.in -acinclude.m4 -aclocal.m4 -autom4te.cache -config.cache -config.h -config.h.in -config.log -config.status -configure -configure.files -configure.in -libtool -stamp-h.in -stamp-h1 -subdirs diff --git a/portland/dapi/kde/LICENSE b/portland/dapi/kde/LICENSE deleted file mode 100644 index 57a558f..0000000 --- a/portland/dapi/kde/LICENSE +++ /dev/null @@ -1,490 +0,0 @@ -(Note: The KDE part is LGPL only because of -https://bugs.freedesktop.org/show_bug.cgi?id=7341, -i.e. only because of the admin/ dir. Everything else -is MIT licensed like the rest of the source. As the KDE -part is independent from the rest this shouldn't matter -in practice anyway.) - - - GNU LIBRARY GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1991 Free Software Foundation, Inc. - 51 Franklin Street, Fifth Floor - Boston, MA 02110-1301, USA. - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - -[This is the first released version of the library GPL. It is - numbered 2 because it goes with version 2 of the ordinary GPL.] - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -Licenses are intended to guarantee your freedom to share and change -free software--to make sure the software is free for all its users. - - This license, the Library General Public License, applies to some -specially designated Free Software Foundation software, and to any -other libraries whose authors decide to use it. You can use it for -your libraries, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if -you distribute copies of the library, or if you modify it. - - For example, if you distribute copies of the library, whether gratis -or for a fee, you must give the recipients all the rights that we gave -you. You must make sure that they, too, receive or can get the source -code. If you link a program with the library, you must provide -complete object files to the recipients so that they can relink them -with the library, after making changes to the library and recompiling -it. And you must show them these terms so they know their rights. - - Our method of protecting your rights has two steps: (1) copyright -the library, and (2) offer you this license which gives you legal -permission to copy, distribute and/or modify the library. - - Also, for each distributor's protection, we want to make certain -that everyone understands that there is no warranty for this free -library. If the library is modified by someone else and passed on, we -want its recipients to know that what they have is not the original -version, so that any problems introduced by others will not reflect on -the original authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that companies distributing free -software will individually obtain patent licenses, thus in effect -transforming the program into proprietary software. To prevent this, -we have made it clear that any patent must be licensed for everyone's -free use or not licensed at all. - - Most GNU software, including some libraries, is covered by the ordinary -GNU General Public License, which was designed for utility programs. This -license, the GNU Library General Public License, applies to certain -designated libraries. This license is quite different from the ordinary -one; be sure to read it in full, and don't assume that anything in it is -the same as in the ordinary license. - - The reason we have a separate public license for some libraries is that -they blur the distinction we usually make between modifying or adding to a -program and simply using it. Linking a program with a library, without -changing the library, is in some sense simply using the library, and is -analogous to running a utility program or application program. However, in -a textual and legal sense, the linked executable is a combined work, a -derivative of the original library, and the ordinary General Public License -treats it as such. - - Because of this blurred distinction, using the ordinary General -Public License for libraries did not effectively promote software -sharing, because most developers did not use the libraries. We -concluded that weaker conditions might promote sharing better. - - However, unrestricted linking of non-free programs would deprive the -users of those programs of all benefit from the free status of the -libraries themselves. This Library General Public License is intended to -permit developers of non-free programs to use free libraries, while -preserving your freedom as a user of such programs to change the free -libraries that are incorporated in them. (We have not seen how to achieve -this as regards changes in header files, but we have achieved it as regards -changes in the actual functions of the Library.) The hope is that this -will lead to faster development of free libraries. - - The precise terms and conditions for copying, distribution and -modification follow. Pay close attention to the difference between a -"work based on the library" and a "work that uses the library". The -former contains code derived from the library, while the latter only -works together with the library. - - Note that it is possible for a library to be covered by the ordinary -General Public License rather than by this special one. - - GNU LIBRARY GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License Agreement applies to any software library which -contains a notice placed by the copyright holder or other authorized -party saying it may be distributed under the terms of this Library -General Public License (also called "this License"). Each licensee is -addressed as "you". - - A "library" means a collection of software functions and/or data -prepared so as to be conveniently linked with application programs -(which use some of those functions and data) to form executables. - - The "Library", below, refers to any such software library or work -which has been distributed under these terms. A "work based on the -Library" means either the Library or any derivative work under -copyright law: that is to say, a work containing the Library or a -portion of it, either verbatim or with modifications and/or translated -straightforwardly into another language. (Hereinafter, translation is -included without limitation in the term "modification".) - - "Source code" for a work means the preferred form of the work for -making modifications to it. For a library, complete source code means -all the source code for all modules it contains, plus any associated -interface definition files, plus the scripts used to control compilation -and installation of the library. - - Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running a program using the Library is not restricted, and output from -such a program is covered only if its contents constitute a work based -on the Library (independent of the use of the Library in a tool for -writing it). Whether that is true depends on what the Library does -and what the program that uses the Library does. - - 1. You may copy and distribute verbatim copies of the Library's -complete source code as you receive it, in any medium, provided that -you conspicuously and appropriately publish on each copy an -appropriate copyright notice and disclaimer of warranty; keep intact -all the notices that refer to this License and to the absence of any -warranty; and distribute a copy of this License along with the -Library. - - You may charge a fee for the physical act of transferring a copy, -and you may at your option offer warranty protection in exchange for a -fee. - - 2. You may modify your copy or copies of the Library or any portion -of it, thus forming a work based on the Library, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) The modified work must itself be a software library. - - b) You must cause the files modified to carry prominent notices - stating that you changed the files and the date of any change. - - c) You must cause the whole of the work to be licensed at no - charge to all third parties under the terms of this License. - - d) If a facility in the modified Library refers to a function or a - table of data to be supplied by an application program that uses - the facility, other than as an argument passed when the facility - is invoked, then you must make a good faith effort to ensure that, - in the event an application does not supply such function or - table, the facility still operates, and performs whatever part of - its purpose remains meaningful. - - (For example, a function in a library to compute square roots has - a purpose that is entirely well-defined independent of the - application. Therefore, Subsection 2d requires that any - application-supplied function or table used by this function must - be optional: if the application does not supply it, the square - root function must still compute square roots.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Library, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Library, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote -it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Library. - -In addition, mere aggregation of another work not based on the Library -with the Library (or with a work based on the Library) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may opt to apply the terms of the ordinary GNU General Public -License instead of this License to a given copy of the Library. To do -this, you must alter all the notices that refer to this License, so -that they refer to the ordinary GNU General Public License, version 2, -instead of to this License. (If a newer version than version 2 of the -ordinary GNU General Public License has appeared, then you can specify -that version instead if you wish.) Do not make any other change in -these notices. - - Once this change is made in a given copy, it is irreversible for -that copy, so the ordinary GNU General Public License applies to all -subsequent copies and derivative works made from that copy. - - This option is useful when you wish to copy part of the code of -the Library into a program that is not a library. - - 4. You may copy and distribute the Library (or a portion or -derivative of it, under Section 2) in object code or executable form -under the terms of Sections 1 and 2 above provided that you accompany -it with the complete corresponding machine-readable source code, which -must be distributed under the terms of Sections 1 and 2 above on a -medium customarily used for software interchange. - - If distribution of object code is made by offering access to copy -from a designated place, then offering equivalent access to copy the -source code from the same place satisfies the requirement to -distribute the source code, even though third parties are not -compelled to copy the source along with the object code. - - 5. A program that contains no derivative of any portion of the -Library, but is designed to work with the Library by being compiled or -linked with it, is called a "work that uses the Library". Such a -work, in isolation, is not a derivative work of the Library, and -therefore falls outside the scope of this License. - - However, linking a "work that uses the Library" with the Library -creates an executable that is a derivative of the Library (because it -contains portions of the Library), rather than a "work that uses the -library". The executable is therefore covered by this License. -Section 6 states terms for distribution of such executables. - - When a "work that uses the Library" uses material from a header file -that is part of the Library, the object code for the work may be a -derivative work of the Library even though the source code is not. -Whether this is true is especially significant if the work can be -linked without the Library, or if the work is itself a library. The -threshold for this to be true is not precisely defined by law. - - If such an object file uses only numerical parameters, data -structure layouts and accessors, and small macros and small inline -functions (ten lines or less in length), then the use of the object -file is unrestricted, regardless of whether it is legally a derivative -work. (Executables containing this object code plus portions of the -Library will still fall under Section 6.) - - Otherwise, if the work is a derivative of the Library, you may -distribute the object code for the work under the terms of Section 6. -Any executables containing that work also fall under Section 6, -whether or not they are linked directly with the Library itself. - - 6. As an exception to the Sections above, you may also compile or -link a "work that uses the Library" with the Library to produce a -work containing portions of the Library, and distribute that work -under terms of your choice, provided that the terms permit -modification of the work for the customer's own use and reverse -engineering for debugging such modifications. - - You must give prominent notice with each copy of the work that the -Library is used in it and that the Library and its use are covered by -this License. You must supply a copy of this License. If the work -during execution displays copyright notices, you must include the -copyright notice for the Library among them, as well as a reference -directing the user to the copy of this License. Also, you must do one -of these things: - - a) Accompany the work with the complete corresponding - machine-readable source code for the Library including whatever - changes were used in the work (which must be distributed under - Sections 1 and 2 above); and, if the work is an executable linked - with the Library, with the complete machine-readable "work that - uses the Library", as object code and/or source code, so that the - user can modify the Library and then relink to produce a modified - executable containing the modified Library. (It is understood - that the user who changes the contents of definitions files in the - Library will not necessarily be able to recompile the application - to use the modified definitions.) - - b) Accompany the work with a written offer, valid for at - least three years, to give the same user the materials - specified in Subsection 6a, above, for a charge no more - than the cost of performing this distribution. - - c) If distribution of the work is made by offering access to copy - from a designated place, offer equivalent access to copy the above - specified materials from the same place. - - d) Verify that the user has already received a copy of these - materials or that you have already sent this user a copy. - - For an executable, the required form of the "work that uses the -Library" must include any data and utility programs needed for -reproducing the executable from it. However, as a special exception, -the source code distributed need not include anything that is normally -distributed (in either source or binary form) with the major -components (compiler, kernel, and so on) of the operating system on -which the executable runs, unless that component itself accompanies -the executable. - - It may happen that this requirement contradicts the license -restrictions of other proprietary libraries that do not normally -accompany the operating system. Such a contradiction means you cannot -use both them and the Library together in an executable that you -distribute. - - 7. You may place library facilities that are a work based on the -Library side-by-side in a single library together with other library -facilities not covered by this License, and distribute such a combined -library, provided that the separate distribution of the work based on -the Library and of the other library facilities is otherwise -permitted, and provided that you do these two things: - - a) Accompany the combined library with a copy of the same work - based on the Library, uncombined with any other library - facilities. This must be distributed under the terms of the - Sections above. - - b) Give prominent notice with the combined library of the fact - that part of it is a work based on the Library, and explaining - where to find the accompanying uncombined form of the same work. - - 8. You may not copy, modify, sublicense, link with, or distribute -the Library except as expressly provided under this License. Any -attempt otherwise to copy, modify, sublicense, link with, or -distribute the Library is void, and will automatically terminate your -rights under this License. However, parties who have received copies, -or rights, from you under this License will not have their licenses -terminated so long as such parties remain in full compliance. - - 9. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Library or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Library (or any work based on the -Library), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Library or works based on it. - - 10. Each time you redistribute the Library (or any work based on the -Library), the recipient automatically receives a license from the -original licensor to copy, distribute, link with or modify the Library -subject to these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 11. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Library at all. For example, if a patent -license would not permit royalty-free redistribution of the Library by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Library. - -If any portion of this section is held invalid or unenforceable under any -particular circumstance, the balance of the section is intended to apply, -and the section as a whole is intended to apply in other circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 12. If the distribution and/or use of the Library is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Library under this License may add -an explicit geographical distribution limitation excluding those countries, -so that distribution is permitted only in or among countries not thus -excluded. In such case, this License incorporates the limitation as if -written in the body of this License. - - 13. The Free Software Foundation may publish revised and/or new -versions of the Library General Public License from time to time. -Such new versions will be similar in spirit to the present version, -but may differ in detail to address new problems or concerns. - -Each version is given a distinguishing version number. If the Library -specifies a version number of this License which applies to it and -"any later version", you have the option of following the terms and -conditions either of that version or of any later version published by -the Free Software Foundation. If the Library does not specify a -license version number, you may choose any version ever published by -the Free Software Foundation. - - 14. If you wish to incorporate parts of the Library into other free -programs whose distribution conditions are incompatible with these, -write to the author to ask for permission. For software which is -copyrighted by the Free Software Foundation, write to the Free -Software Foundation; we sometimes make exceptions for this. Our -decision will be guided by the two goals of preserving the free status -of all derivatives of our free software and of promoting the sharing -and reuse of software generally. - - NO WARRANTY - - 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO -WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. -EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR -OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY -KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE -LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME -THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN -WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY -AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU -FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR -CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE -LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING -RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A -FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF -SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH -DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Libraries - - If you develop a new library, and you want it to be of the greatest -possible use to the public, we recommend making it free software that -everyone can redistribute and change. You can do so by permitting -redistribution under these terms (or, alternatively, under the terms of the -ordinary General Public License). - - To apply these terms, attach the following notices to the library. It is -safest to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least the -"copyright" line and a pointer to where the full notice is found. - - <one line to give the library's name and a brief idea of what it does.> - Copyright (C) <year> <name of author> - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - -Also add information on how to contact you by electronic and paper mail. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the library, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the - library `Frob' (a library for tweaking knobs) written by James Random Hacker. - - <signature of Ty Coon>, 1 April 1990 - Ty Coon, President of Vice - -That's all there is to it! diff --git a/portland/dapi/kde/Makefile.am b/portland/dapi/kde/Makefile.am deleted file mode 100644 index db02bf2..0000000 --- a/portland/dapi/kde/Makefile.am +++ /dev/null @@ -1,8 +0,0 @@ -## kdebase/Makefile.am -## (C) 1997 Stephan Kulow - -SUBDIRS = $(TOPSUBDIRS) - -include admin/deps.am - -AUTOMAKE_OPTIONS = foreign diff --git a/portland/dapi/kde/Makefile.cvs b/portland/dapi/kde/Makefile.cvs deleted file mode 100644 index d5c4a7b..0000000 --- a/portland/dapi/kde/Makefile.cvs +++ /dev/null @@ -1,15 +0,0 @@ - -all: - @echo "This Makefile is only for the CVS repository" - @echo "This will be deleted before making the distribution" - @echo "" - @if test ! -d admin; then \ - echo "Please recheckout this module!" ;\ - echo "for cvs: use checkout once and after that update again" ;\ - echo "for cvsup: checkout kde-common from cvsup and" ;\ - echo " link kde-common/admin to ./admin" ;\ - exit 1 ;\ - fi - $(MAKE) -f admin/Makefile.common cvs - -.SILENT: diff --git a/portland/dapi/kde/admin/Doxyfile.am b/portland/dapi/kde/admin/Doxyfile.am deleted file mode 100644 index 7ef5b5c..0000000 --- a/portland/dapi/kde/admin/Doxyfile.am +++ /dev/null @@ -1,102 +0,0 @@ -## generate API documentation with doxygen -apidox-am-yes: - @if test \! -d "$(top_srcdir)/doc/common/" && test -z "$$DOXDATA" ; then \ - export DOXDATA=$(kde_libs_htmldir)/en/common ; \ - fi ; \ - abs_top_srcdir=`cd $(top_srcdir) && pwd` ;\ - test -d $(top_builddir)/apidocs || \ - ( cd $(top_builddir) && sh $$abs_top_srcdir/admin/doxygen.sh \ - --no-modulename --installdir=$(kde_libs_htmldir)/en \ - --no-recurse $(abs_top_srcdir) . ) ; \ - cd $(top_builddir) && sh $$abs_top_srcdir/admin/doxygen.sh \ - --recurse --no-modulename --installdir=$(kde_libs_htmldir)/en \ - $$abs_top_srcdir $(subdir) - -apidox-am-toplevel-yes: - @if test \! -d "$(top_srcdir)/doc/common/" && test -z "$$ADMIN" ; then \ - export DOXDATA=$(kde_libs_htmldir)/en/common ; \ - fi ; \ - abs_top_srcdir=`cd $(top_srcdir) && pwd` ;\ - cd $(top_builddir) && sh $$abs_top_srcdir/admin/doxygen.sh \ - --no-modulename --installdir=$(kde_libs_htmldir)/en \ - $$abs_top_srcdir - -## Don't generate API documentation without doxygen -apidox-am-no: - -apidox-am-toplevel-no: - - -apidox: - @if test "$(subdir)" != "."; then \ - $(MAKE) apidox-am-@KDE_HAS_DOXYGEN@ ;\ - else \ - $(MAKE) apidox-am-toplevel-@KDE_HAS_DOXYGEN@ ;\ - fi - - - -install-data-local: install-apidox - -## install API documentation -install-apidox: - @if test "$(subdir)" != "."; then \ - $(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir)/html ; \ - if test -f $(top_builddir)/apidocs/$(subdir)/$(subdir).tag; then \ - echo $(INSTALL_DATA) $(top_builddir)/apidocs/$(subdir)/$(subdir).tag $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir); \ - $(INSTALL_DATA) $(top_builddir)/apidocs/$(subdir)/$(subdir).tag $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir); \ - fi; \ - if test -d $(top_builddir)/apidocs/$(subdir)/html; then \ - list=`ls $(top_builddir)/apidocs/$(subdir)/html`; \ - echo "installing $(top_builddir)/apidocs/$(subdir)/html" ;\ - for file in $$list; do \ - $(INSTALL_DATA) $(top_builddir)/apidocs/$(subdir)/html/$$file $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir)/html; \ - done; \ - fi; \ - else\ - if test -d $(top_builddir)/apidocs; then \ - $(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs ;\ - list=`cd $(top_builddir)/apidocs && ls -1`; \ - echo "installing $(top_builddir)/apidocs/$$file" ;\ - echo "target directory $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs" ; \ - for file in $$list; do \ - if test -f $(top_builddir)/apidocs/$$file; then \ - $(INSTALL_DATA) $(top_builddir)/apidocs/$$file $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs; \ - fi; \ - done ; fi; \ - fi - -uninstall-local: uninstall-apidox - -## uninstall API documentation -uninstall-apidox: - @if test "$(subdir)" != "."; then \ - if test -d $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir); then \ - rm -rfv $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir); \ - fi \ - else \ - if test -d $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs; then \ - rm -rfv $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs; \ - fi \ - fi - -install-apidox-recurse: install-apidox - @set fnord $(MAKEFLAGS); amf=$$2; if test -n '$(SUBDIRS)'; then \ - list='$(SUBDIRS)'; \ - for subdir in $$list; do \ - if grep '^include .*Doxyfile.am' $(srcdir)/$$subdir/Makefile.am > /dev/null ; then \ - echo "Installing apidox from $$subdir"; \ - if test "$$subdir" != "."; then \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) GENERATE_FLAG=no install-apidox-recurse) || exit 1; \ - fi ; fi ;\ - done; \ - fi - - - -.PHONY: apidox-am-yes apidox-am-no install-data-local install-apidox install-apidox uninstall-local uninstall-apidox uninstall-apidox apidox apidox-am-toplevel-no apidox-am-toplevel-yes - - -# Local Variables: -# mode: makefile -# End: diff --git a/portland/dapi/kde/admin/Doxyfile.global b/portland/dapi/kde/admin/Doxyfile.global deleted file mode 100755 index 1b9f560..0000000 --- a/portland/dapi/kde/admin/Doxyfile.global +++ /dev/null @@ -1,192 +0,0 @@ -OUTPUT_LANGUAGE = English -USE_WINDOWS_ENCODING = NO -BRIEF_MEMBER_DESC = NO -REPEAT_BRIEF = YES -ABBREVIATE_BRIEF = -ALWAYS_DETAILED_SEC = YES -INLINE_INHERITED_MEMB = NO -FULL_PATH_NAMES = NO -STRIP_FROM_PATH = -SHORT_NAMES = NO -JAVADOC_AUTOBRIEF = YES -MULTILINE_CPP_IS_BRIEF = NO -INHERIT_DOCS = YES -DISTRIBUTE_GROUP_DOC = NO -TAB_SIZE = 4 -OPTIMIZE_OUTPUT_FOR_C = NO -OPTIMIZE_OUTPUT_JAVA = NO -SUBGROUPING = YES -EXTRACT_ALL = NO -EXTRACT_PRIVATE = NO -EXTRACT_STATIC = YES -EXTRACT_LOCAL_CLASSES = NO -HIDE_UNDOC_MEMBERS = NO -HIDE_UNDOC_CLASSES = YES -HIDE_FRIEND_COMPOUNDS = NO -HIDE_IN_BODY_DOCS = NO -INTERNAL_DOCS = NO -CASE_SENSE_NAMES = YES -HIDE_SCOPE_NAMES = NO -SHOW_INCLUDE_FILES = YES -INLINE_INFO = YES -SORT_BRIEF_DOCS = NO -SORT_BY_SCOPE_NAME = NO -GENERATE_TESTLIST = NO -GENERATE_BUGLIST = YES -GENERATE_DEPRECATEDLIST= YES -ENABLED_SECTIONS = -MAX_INITIALIZER_LINES = 30 -SHOW_USED_FILES = YES -QUIET = YES -WARNINGS = NO -WARN_IF_UNDOCUMENTED = NO -WARN_IF_DOC_ERROR = YES -WARN_FORMAT = -WARN_LOGFILE = -INPUT = -FILE_PATTERNS = *.h \ - *.cpp \ - *.cc \ - *.hpp \ - *.dox \ - *.c++ \ - *.cxx \ - *.h++ \ - *.hh -RECURSIVE = YES -EXCLUDE = -EXCLUDE_SYMLINKS = NO -EXCLUDE_PATTERNS = *.moc.* \ - moc* \ - *.all_cpp.* \ - *unload.* \ - */test/* \ - */tests/* \ - *_p.h -EXAMPLE_PATH = -EXAMPLE_PATTERNS = -EXAMPLE_RECURSIVE = NO -IMAGE_PATH = -INPUT_FILTER = -FILTER_SOURCE_FILES = NO -SOURCE_BROWSER = YES -INLINE_SOURCES = NO -STRIP_CODE_COMMENTS = YES -REFERENCED_BY_RELATION = YES -REFERENCES_RELATION = YES -VERBATIM_HEADERS = YES -ALPHABETICAL_INDEX = YES -COLS_IN_ALPHA_INDEX = 3 -HTML_OUTPUT = -HTML_FILE_EXTENSION = .html -HTML_HEADER = ../apidocs/common/header.html -HTML_FOOTER = ../apidocs/common/footer.html -HTML_STYLESHEET = ../apidocs/common/doxygen.css -HTML_ALIGN_MEMBERS = YES -GENERATE_HTMLHELP = NO -CHM_FILE = -HHC_LOCATION = -GENERATE_CHI = NO -BINARY_TOC = NO -TOC_EXPAND = NO -DISABLE_INDEX = YES -ENUM_VALUES_PER_LINE = 4 -GENERATE_TREEVIEW = NO -TREEVIEW_WIDTH = 250 -GENERATE_LATEX = NO -LATEX_OUTPUT = -LATEX_CMD_NAME = latex -MAKEINDEX_CMD_NAME = makeindex -COMPACT_LATEX = NO -PAPER_TYPE = a4wide -EXTRA_PACKAGES = -LATEX_HEADER = -PDF_HYPERLINKS = NO -USE_PDFLATEX = NO -LATEX_BATCHMODE = NO -LATEX_HIDE_INDICES = NO -GENERATE_RTF = NO -RTF_OUTPUT = -COMPACT_RTF = NO -RTF_HYPERLINKS = NO -RTF_STYLESHEET_FILE = -RTF_EXTENSIONS_FILE = -GENERATE_MAN = NO -MAN_OUTPUT = -MAN_EXTENSION = .kde3 -MAN_LINKS = YES -GENERATE_XML = NO -XML_OUTPUT = xml -XML_SCHEMA = -XML_DTD = -XML_PROGRAMLISTING = NO -GENERATE_AUTOGEN_DEF = NO -GENERATE_PERLMOD = NO -PERLMOD_LATEX = NO -PERLMOD_PRETTY = YES -PERLMOD_MAKEVAR_PREFIX = -ENABLE_PREPROCESSING = YES -SEARCH_INCLUDES = YES -INCLUDE_PATH = -INCLUDE_FILE_PATTERNS = -PREDEFINED = QT_VERSION=320 \ - __cplusplus \ - Q_WS_X11 -EXPAND_AS_DEFINED = -SKIP_FUNCTION_MACROS = YES -TAGFILES = -GENERATE_TAGFILE = -ALLEXTERNALS = NO -EXTERNAL_GROUPS = NO -PERL_PATH = -CLASS_DIAGRAMS = YES -HIDE_UNDOC_RELATIONS = NO -HAVE_DOT = NO -UML_LOOK = NO -TEMPLATE_RELATIONS = YES -INCLUDE_GRAPH = YES -INCLUDED_BY_GRAPH = YES -CALL_GRAPH = NO -GRAPHICAL_HIERARCHY = YES -DOT_IMAGE_FORMAT = png -DOT_PATH = -DOTFILE_DIRS = -MAX_DOT_GRAPH_WIDTH = 800 -MAX_DOT_GRAPH_HEIGHT = 1024 -MAX_DOT_GRAPH_DEPTH = 0 -GENERATE_LEGEND = YES -DOT_CLEANUP = YES -SEARCHENGINE = NO - -### KDE Settings -ALIASES = \ - "intern=\par<b>Internal use only.</b>" \ - "reimp=\par<b>Reimplemented from superclass.</b>" \ - "obsolete=@deprecated" \ - "feature=\xrefitem features \"Feature(s)\" \"Features\"" \ - "maintainer=\xrefitem maintainers \"Maintainer(s)\" \"Maintainers\"" \ - "unmaintained=\xrefitem unmaintained \"Unmaintained\" \"Unmaintained\"" \ - "requirement=\xrefitem requirements \"Requirement(s)\" \"Requirements\"" \ - "faq=\xrefitem FAQ \"F.A.Q.\" \"F.A.Q.\"" \ - "authors=\xrefitem authors \"Author(s)\" \"Authors\"" \ - "FIXME=\xrefitem fixme \"Fixme\" \"Fixme\"" - -HTML_ALIGN_MEMBERS = YES -REFERENCED_BY_RELATION = NO -REFERENCES_RELATION = NO -VERBATIM_HEADERS = NO -GENERATE_HTML = YES -SOURCE_BROWSER = YES -GENERATE_AUTOGEN_DEF = NO -DETAILS_AT_TOP = YES -SORT_MEMBER_DOCS = YES -GENERATE_TODOLIST = YES -IGNORE_PREFIX = K -GENERATE_HTML = YES -CLASS_GRAPH = YES -COLLABORATION_GRAPH = NO - - -MACRO_EXPANSION = YES -EXPAND_ONLY_PREDEF = YES - diff --git a/portland/dapi/kde/admin/Makefile.common b/portland/dapi/kde/admin/Makefile.common deleted file mode 100644 index d07b404..0000000 --- a/portland/dapi/kde/admin/Makefile.common +++ /dev/null @@ -1,37 +0,0 @@ -### Makefile.common -### -### Copyright (C) 2002 by the KDE developers - -### All the real work is done by the shellscript cvs.sh - -SHELL=/bin/sh - -cvs dist configure configure.in configure.files subdirs package-messages package-merge Makefile.am acinclude.m4 extract-messages: - @admindir=$(admindir); \ - if test "x$$admindir" = x; then \ - admindir=.; until test -f $$admindir/admin/cvs.sh; do \ - admindir=$$admindir/..; \ - if test `cd $$admindir && pwd` = / ; then break; fi; \ - done; \ - admindir=$$admindir/admin; \ - if test -f $$admindir/cvs.sh; then :; else \ - echo "Can't find the admin/ directory in any parent of the"; \ - echo "current directory. Please set it with admindir=..."; \ - exit 1; \ - fi; \ - fi; \ - if test "$@" = "package-merge"; then \ - MAKE="$(MAKE)" POFILES="$(POFILES)" PACKAGE="$(PACKAGE)" \ - $(SHELL) $$admindir/cvs.sh package-merge ;\ - else \ - MAKE="$(MAKE)" $(SHELL) $$admindir/cvs.sh $@ ;\ - fi - -configure.in: configure.files subdirs -configure.files: subdirs - -svn: cvs - -.SILENT: - -.PHONY: svn cvs dist package-merge package-messages diff --git a/portland/dapi/kde/admin/acinclude.m4.in b/portland/dapi/kde/admin/acinclude.m4.in deleted file mode 100644 index 9c19328..0000000 --- a/portland/dapi/kde/admin/acinclude.m4.in +++ /dev/null @@ -1,5937 +0,0 @@ -## -*- autoconf -*- - -dnl This file is part of the KDE libraries/packages -dnl Copyright (C) 1997 Janos Farkas (chexum@shadow.banki.hu) -dnl (C) 1997,98,99 Stephan Kulow (coolo@kde.org) - -dnl This file is free software; you can redistribute it and/or -dnl modify it under the terms of the GNU Library General Public -dnl License as published by the Free Software Foundation; either -dnl version 2 of the License, or (at your option) any later version. - -dnl This library is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -dnl Library General Public License for more details. - -dnl You should have received a copy of the GNU Library General Public License -dnl along with this library; see the file COPYING.LIB. If not, write to -dnl the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -dnl Boston, MA 02110-1301, USA. - -dnl IMPORTANT NOTE: -dnl Please do not modify this file unless you expect your modifications to be -dnl carried into every other module in the repository. -dnl -dnl Single-module modifications are best placed in configure.in for kdelibs -dnl and kdebase or configure.in.in if present. - -# KDE_PATH_X_DIRECT -dnl Internal subroutine of AC_PATH_X. -dnl Set ac_x_includes and/or ac_x_libraries. -AC_DEFUN([KDE_PATH_X_DIRECT], -[ -AC_REQUIRE([KDE_CHECK_LIB64]) - -if test "$ac_x_includes" = NO; then - # Guess where to find include files, by looking for this one X11 .h file. - test -z "$x_direct_test_include" && x_direct_test_include=X11/Intrinsic.h - - # First, try using that file with no special directory specified. -AC_TRY_CPP([#include <$x_direct_test_include>], -[# We can compile using X headers with no special include directory. -ac_x_includes=], -[# Look for the header file in a standard set of common directories. -# Check X11 before X11Rn because it is often a symlink to the current release. - for ac_dir in \ - /usr/X11/include \ - /usr/X11R6/include \ - /usr/X11R5/include \ - /usr/X11R4/include \ - \ - /usr/include/X11 \ - /usr/include/X11R6 \ - /usr/include/X11R5 \ - /usr/include/X11R4 \ - \ - /usr/local/X11/include \ - /usr/local/X11R6/include \ - /usr/local/X11R5/include \ - /usr/local/X11R4/include \ - \ - /usr/local/include/X11 \ - /usr/local/include/X11R6 \ - /usr/local/include/X11R5 \ - /usr/local/include/X11R4 \ - \ - /usr/X386/include \ - /usr/x386/include \ - /usr/XFree86/include/X11 \ - \ - /usr/include \ - /usr/local/include \ - /usr/unsupported/include \ - /usr/athena/include \ - /usr/local/x11r5/include \ - /usr/lpp/Xamples/include \ - \ - /usr/openwin/include \ - /usr/openwin/share/include \ - ; \ - do - if test -r "$ac_dir/$x_direct_test_include"; then - ac_x_includes=$ac_dir - break - fi - done]) -fi # $ac_x_includes = NO - -if test "$ac_x_libraries" = NO; then - # Check for the libraries. - - test -z "$x_direct_test_library" && x_direct_test_library=Xt - test -z "$x_direct_test_function" && x_direct_test_function=XtMalloc - - # See if we find them without any special options. - # Don't add to $LIBS permanently. - ac_save_LIBS="$LIBS" - LIBS="-l$x_direct_test_library $LIBS" -AC_TRY_LINK([#include <X11/Intrinsic.h>], [${x_direct_test_function}(1)], -[LIBS="$ac_save_LIBS" -# We can link X programs with no special library path. -ac_x_libraries=], -[LIBS="$ac_save_LIBS" -# First see if replacing the include by lib works. -# Check X11 before X11Rn because it is often a symlink to the current release. -for ac_dir in `echo "$ac_x_includes" | sed s/include/lib${kdelibsuff}/` \ - /usr/X11/lib${kdelibsuff} \ - /usr/X11R6/lib${kdelibsuff} \ - /usr/X11R5/lib${kdelibsuff} \ - /usr/X11R4/lib${kdelibsuff} \ - \ - /usr/lib${kdelibsuff}/X11 \ - /usr/lib${kdelibsuff}/X11R6 \ - /usr/lib${kdelibsuff}/X11R5 \ - /usr/lib${kdelibsuff}/X11R4 \ - \ - /usr/local/X11/lib${kdelibsuff} \ - /usr/local/X11R6/lib${kdelibsuff} \ - /usr/local/X11R5/lib${kdelibsuff} \ - /usr/local/X11R4/lib${kdelibsuff} \ - \ - /usr/local/lib${kdelibsuff}/X11 \ - /usr/local/lib${kdelibsuff}/X11R6 \ - /usr/local/lib${kdelibsuff}/X11R5 \ - /usr/local/lib${kdelibsuff}/X11R4 \ - \ - /usr/X386/lib${kdelibsuff} \ - /usr/x386/lib${kdelibsuff} \ - /usr/XFree86/lib${kdelibsuff}/X11 \ - \ - /usr/lib${kdelibsuff} \ - /usr/local/lib${kdelibsuff} \ - /usr/unsupported/lib${kdelibsuff} \ - /usr/athena/lib${kdelibsuff} \ - /usr/local/x11r5/lib${kdelibsuff} \ - /usr/lpp/Xamples/lib${kdelibsuff} \ - /lib/usr/lib${kdelibsuff}/X11 \ - \ - /usr/openwin/lib${kdelibsuff} \ - /usr/openwin/share/lib${kdelibsuff} \ - ; \ -do -dnl Don't even attempt the hair of trying to link an X program! - for ac_extension in a so sl; do - if test -r $ac_dir/lib${x_direct_test_library}.$ac_extension; then - ac_x_libraries=$ac_dir - break 2 - fi - done -done]) -fi # $ac_x_libraries = NO -]) - - -dnl ------------------------------------------------------------------------ -dnl Find a file (or one of more files in a list of dirs) -dnl ------------------------------------------------------------------------ -dnl -AC_DEFUN([AC_FIND_FILE], -[ -$3=NO -for i in $2; -do - for j in $1; - do - echo "configure: __oline__: $i/$j" >&AC_FD_CC - if test -r "$i/$j"; then - echo "taking that" >&AC_FD_CC - $3=$i - break 2 - fi - done -done -]) - -dnl KDE_FIND_PATH(program-name, variable-name, list-of-dirs, -dnl if-not-found, test-parameter, prepend-path) -dnl -dnl Look for program-name in list-of-dirs+$PATH. -dnl If prepend-path is set, look in $PATH+list-of-dirs instead. -dnl If found, $variable-name is set. If not, if-not-found is evaluated. -dnl test-parameter: if set, the program is executed with this arg, -dnl and only a successful exit code is required. -AC_DEFUN([KDE_FIND_PATH], -[ - AC_MSG_CHECKING([for $1]) - if test -n "$$2"; then - kde_cv_path="$$2"; - else - kde_cache=`echo $1 | sed 'y%./+-%__p_%'` - - AC_CACHE_VAL(kde_cv_path_$kde_cache, - [ - kde_cv_path="NONE" - kde_save_IFS=$IFS - IFS=':' - dirs="" - for dir in $PATH; do - dirs="$dirs $dir" - done - if test -z "$6"; then dnl Append dirs in PATH (default) - dirs="$3 $dirs" - else dnl Prepend dirs in PATH (if 6th arg is set) - dirs="$dirs $3" - fi - IFS=$kde_save_IFS - - for dir in $dirs; do - if test -x "$dir/$1"; then - if test -n "$5" - then - evalstr="$dir/$1 $5 2>&1 " - if eval $evalstr; then - kde_cv_path="$dir/$1" - break - fi - else - kde_cv_path="$dir/$1" - break - fi - fi - done - - eval "kde_cv_path_$kde_cache=$kde_cv_path" - - ]) - - eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" - - fi - - if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then - AC_MSG_RESULT(not found) - $4 - else - AC_MSG_RESULT($kde_cv_path) - $2=$kde_cv_path - - fi -]) - -AC_DEFUN([KDE_MOC_ERROR_MESSAGE], -[ - AC_MSG_ERROR([No Qt meta object compiler (moc) found! -Please check whether you installed Qt correctly. -You need to have a running moc binary. -configure tried to run $ac_cv_path_moc and the test didn't -succeed. If configure shouldn't have tried this one, set -the environment variable MOC to the right one before running -configure. -]) -]) - -AC_DEFUN([KDE_UIC_ERROR_MESSAGE], -[ - AC_MSG_WARN([No Qt ui compiler (uic) found! -Please check whether you installed Qt correctly. -You need to have a running uic binary. -configure tried to run $ac_cv_path_uic and the test didn't -succeed. If configure shouldn't have tried this one, set -the environment variable UIC to the right one before running -configure. -]) -]) - - -AC_DEFUN([KDE_CHECK_UIC_FLAG], -[ - AC_MSG_CHECKING([whether uic supports -$1 ]) - kde_cache=`echo $1 | sed 'y% .=/+-%____p_%'` - AC_CACHE_VAL(kde_cv_prog_uic_$kde_cache, - [ - cat >conftest.ui <<EOT - <!DOCTYPE UI><UI version="3" stdsetdef="1"></UI> -EOT - ac_uic_testrun="$UIC_PATH -$1 $2 conftest.ui >/dev/null" - if AC_TRY_EVAL(ac_uic_testrun); then - eval "kde_cv_prog_uic_$kde_cache=yes" - else - eval "kde_cv_prog_uic_$kde_cache=no" - fi - rm -f conftest* - ]) - - if eval "test \"`echo '$kde_cv_prog_uic_'$kde_cache`\" = yes"; then - AC_MSG_RESULT([yes]) - : - $3 - else - AC_MSG_RESULT([no]) - : - $4 - fi -]) - - -dnl ------------------------------------------------------------------------ -dnl Find the meta object compiler and the ui compiler in the PATH, -dnl in $QTDIR/bin, and some more usual places -dnl ------------------------------------------------------------------------ -dnl -AC_DEFUN([AC_PATH_QT_MOC_UIC], -[ - AC_REQUIRE([KDE_CHECK_PERL]) - qt_bindirs="" - for dir in $kde_qt_dirs; do - qt_bindirs="$qt_bindirs $dir/bin $dir/src/moc" - done - qt_bindirs="$qt_bindirs /usr/bin /usr/X11R6/bin /usr/local/qt/bin" - if test ! "$ac_qt_bindir" = "NO"; then - qt_bindirs="$ac_qt_bindir $qt_bindirs" - fi - - KDE_FIND_PATH(moc, MOC, [$qt_bindirs], [KDE_MOC_ERROR_MESSAGE]) - if test -z "$UIC_NOT_NEEDED"; then - KDE_FIND_PATH(uic, UIC_PATH, [$qt_bindirs], [UIC_PATH=""]) - if test -z "$UIC_PATH" ; then - KDE_UIC_ERROR_MESSAGE - exit 1 - else - UIC=$UIC_PATH - - if test $kde_qtver = 3; then - KDE_CHECK_UIC_FLAG(L,[/nonexistent],ac_uic_supports_libpath=yes,ac_uic_supports_libpath=no) - KDE_CHECK_UIC_FLAG(nounload,,ac_uic_supports_nounload=yes,ac_uic_supports_nounload=no) - - if test x$ac_uic_supports_libpath = xyes; then - UIC="$UIC -L \$(kde_widgetdir)" - fi - if test x$ac_uic_supports_nounload = xyes; then - UIC="$UIC -nounload" - fi - fi - fi - else - UIC="echo uic not available: " - fi - - AC_SUBST(MOC) - AC_SUBST(UIC) - - UIC_TR="i18n" - if test $kde_qtver = 3; then - UIC_TR="tr2i18n" - fi - - AC_SUBST(UIC_TR) -]) - -AC_DEFUN([KDE_1_CHECK_PATHS], -[ - KDE_1_CHECK_PATH_HEADERS - - KDE_TEST_RPATH= - - if test -n "$USE_RPATH"; then - - if test -n "$kde_libraries"; then - KDE_TEST_RPATH="-R $kde_libraries" - fi - - if test -n "$qt_libraries"; then - KDE_TEST_RPATH="$KDE_TEST_RPATH -R $qt_libraries" - fi - - if test -n "$x_libraries"; then - KDE_TEST_RPATH="$KDE_TEST_RPATH -R $x_libraries" - fi - - KDE_TEST_RPATH="$KDE_TEST_RPATH $KDE_EXTRA_RPATH" - fi - -AC_MSG_CHECKING([for KDE libraries installed]) -ac_link='$LIBTOOL_SHELL --silent --mode=link ${CXX-g++} -o conftest $CXXFLAGS $all_includes $CPPFLAGS $LDFLAGS $all_libraries conftest.$ac_ext $LIBS -lkdecore $LIBQT $KDE_TEST_RPATH 1>&5' - -if AC_TRY_EVAL(ac_link) && test -s conftest; then - AC_MSG_RESULT(yes) -else - AC_MSG_ERROR([your system fails at linking a small KDE application! -Check, if your compiler is installed correctly and if you have used the -same compiler to compile Qt and kdelibs as you did use now. -For more details about this problem, look at the end of config.log.]) -fi - -if eval `KDEDIR= ./conftest 2>&5`; then - kde_result=done -else - kde_result=problems -fi - -KDEDIR= ./conftest 2> /dev/null >&5 # make an echo for config.log -kde_have_all_paths=yes - -KDE_SET_PATHS($kde_result) - -]) - -AC_DEFUN([KDE_SET_PATHS], -[ - kde_cv_all_paths="kde_have_all_paths=\"yes\" \ - kde_htmldir=\"$kde_htmldir\" \ - kde_appsdir=\"$kde_appsdir\" \ - kde_icondir=\"$kde_icondir\" \ - kde_sounddir=\"$kde_sounddir\" \ - kde_datadir=\"$kde_datadir\" \ - kde_locale=\"$kde_locale\" \ - kde_cgidir=\"$kde_cgidir\" \ - kde_confdir=\"$kde_confdir\" \ - kde_kcfgdir=\"$kde_kcfgdir\" \ - kde_mimedir=\"$kde_mimedir\" \ - kde_toolbardir=\"$kde_toolbardir\" \ - kde_wallpaperdir=\"$kde_wallpaperdir\" \ - kde_templatesdir=\"$kde_templatesdir\" \ - kde_bindir=\"$kde_bindir\" \ - kde_servicesdir=\"$kde_servicesdir\" \ - kde_servicetypesdir=\"$kde_servicetypesdir\" \ - kde_moduledir=\"$kde_moduledir\" \ - kde_styledir=\"$kde_styledir\" \ - kde_widgetdir=\"$kde_widgetdir\" \ - xdg_appsdir=\"$xdg_appsdir\" \ - xdg_menudir=\"$xdg_menudir\" \ - xdg_directorydir=\"$xdg_directorydir\" \ - kde_result=$1" -]) - -AC_DEFUN([KDE_SET_DEFAULT_PATHS], -[ -if test "$1" = "default"; then - - if test -z "$kde_htmldir"; then - kde_htmldir='\${datadir}/doc/HTML' - fi - if test -z "$kde_appsdir"; then - kde_appsdir='\${datadir}/applnk' - fi - if test -z "$kde_icondir"; then - kde_icondir='\${datadir}/icons' - fi - if test -z "$kde_sounddir"; then - kde_sounddir='\${datadir}/sounds' - fi - if test -z "$kde_datadir"; then - kde_datadir='\${datadir}/apps' - fi - if test -z "$kde_locale"; then - kde_locale='\${datadir}/locale' - fi - if test -z "$kde_cgidir"; then - kde_cgidir='\${exec_prefix}/cgi-bin' - fi - if test -z "$kde_confdir"; then - kde_confdir='\${datadir}/config' - fi - if test -z "$kde_kcfgdir"; then - kde_kcfgdir='\${datadir}/config.kcfg' - fi - if test -z "$kde_mimedir"; then - kde_mimedir='\${datadir}/mimelnk' - fi - if test -z "$kde_toolbardir"; then - kde_toolbardir='\${datadir}/toolbar' - fi - if test -z "$kde_wallpaperdir"; then - kde_wallpaperdir='\${datadir}/wallpapers' - fi - if test -z "$kde_templatesdir"; then - kde_templatesdir='\${datadir}/templates' - fi - if test -z "$kde_bindir"; then - kde_bindir='\${exec_prefix}/bin' - fi - if test -z "$kde_servicesdir"; then - kde_servicesdir='\${datadir}/services' - fi - if test -z "$kde_servicetypesdir"; then - kde_servicetypesdir='\${datadir}/servicetypes' - fi - if test -z "$kde_moduledir"; then - if test "$kde_qtver" = "2"; then - kde_moduledir='\${libdir}/kde2' - else - kde_moduledir='\${libdir}/kde3' - fi - fi - if test -z "$kde_styledir"; then - kde_styledir='\${libdir}/kde3/plugins/styles' - fi - if test -z "$kde_widgetdir"; then - kde_widgetdir='\${libdir}/kde3/plugins/designer' - fi - if test -z "$xdg_appsdir"; then - xdg_appsdir='\${datadir}/applications/kde' - fi - if test -z "$xdg_menudir"; then - xdg_menudir='\${sysconfdir}/xdg/menus' - fi - if test -z "$xdg_directorydir"; then - xdg_directorydir='\${datadir}/desktop-directories' - fi - - KDE_SET_PATHS(defaults) - -else - - if test $kde_qtver = 1; then - AC_MSG_RESULT([compiling]) - KDE_1_CHECK_PATHS - else - AC_MSG_ERROR([path checking not yet supported for KDE 2]) - fi - -fi -]) - -AC_DEFUN([KDE_CHECK_PATHS_FOR_COMPLETENESS], -[ if test -z "$kde_htmldir" || test -z "$kde_appsdir" || - test -z "$kde_icondir" || test -z "$kde_sounddir" || - test -z "$kde_datadir" || test -z "$kde_locale" || - test -z "$kde_cgidir" || test -z "$kde_confdir" || - test -z "$kde_kcfgdir" || - test -z "$kde_mimedir" || test -z "$kde_toolbardir" || - test -z "$kde_wallpaperdir" || test -z "$kde_templatesdir" || - test -z "$kde_bindir" || test -z "$kde_servicesdir" || - test -z "$kde_servicetypesdir" || test -z "$kde_moduledir" || - test -z "$kde_styledir" || test -z "kde_widgetdir" || - test -z "$xdg_appsdir" || test -z "$xdg_menudir" || test -z "$xdg_directorydir" || - test "x$kde_have_all_paths" != "xyes"; then - kde_have_all_paths=no - fi -]) - -AC_DEFUN([KDE_MISSING_PROG_ERROR], -[ - AC_MSG_ERROR([The important program $1 was not found! -Please check whether you installed KDE correctly. -]) -]) - -AC_DEFUN([KDE_MISSING_ARTS_ERROR], -[ - AC_MSG_ERROR([The important program $1 was not found! -Please check whether you installed aRts correctly or use ---without-arts to compile without aRts support (this will remove functionality). -]) -]) - -AC_DEFUN([KDE_SET_DEFAULT_BINDIRS], -[ - kde_default_bindirs="/usr/bin /usr/local/bin /opt/local/bin /usr/X11R6/bin /opt/kde/bin /opt/kde3/bin /usr/kde/bin /usr/local/kde/bin" - test -n "$KDEDIR" && kde_default_bindirs="$KDEDIR/bin $kde_default_bindirs" - if test -n "$KDEDIRS"; then - kde_save_IFS=$IFS - IFS=: - for dir in $KDEDIRS; do - kde_default_bindirs="$dir/bin $kde_default_bindirs " - done - IFS=$kde_save_IFS - fi -]) - -AC_DEFUN([KDE_SUBST_PROGRAMS], -[ - AC_ARG_WITH(arts, - AC_HELP_STRING([--without-arts],[build without aRts [default=no]]), - [build_arts=$withval], - [build_arts=yes] - ) - AM_CONDITIONAL(include_ARTS, test "$build_arts" '!=' "no") - if test "$build_arts" = "no"; then - AC_DEFINE(WITHOUT_ARTS, 1, [Defined if compiling without arts]) - fi - - KDE_SET_DEFAULT_BINDIRS - kde_default_bindirs="$exec_prefix/bin $prefix/bin $kde_libs_prefix/bin $kde_default_bindirs" - KDE_FIND_PATH(dcopidl, DCOPIDL, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl)]) - KDE_FIND_PATH(dcopidl2cpp, DCOPIDL2CPP, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl2cpp)]) - if test "$build_arts" '!=' "no"; then - KDE_FIND_PATH(mcopidl, MCOPIDL, [$kde_default_bindirs], [KDE_MISSING_ARTS_ERROR(mcopidl)]) - KDE_FIND_PATH(artsc-config, ARTSCCONFIG, [$kde_default_bindirs], [KDE_MISSING_ARTS_ERROR(artsc-config)]) - fi - KDE_FIND_PATH(meinproc, MEINPROC, [$kde_default_bindirs]) - - kde32ornewer=1 - kde33ornewer=1 - if test -n "$kde_qtver" && test "$kde_qtver" -lt 3; then - kde32ornewer= - kde33ornewer= - else - if test "$kde_qtver" = "3"; then - if test "$kde_qtsubver" -le 1; then - kde32ornewer= - fi - if test "$kde_qtsubver" -le 2; then - kde33ornewer= - fi - if test "$KDECONFIG" != "compiled"; then - if test `$KDECONFIG --version | grep KDE | sed 's/KDE: \(...\).*/\1/'` = 3.2; then - kde33ornewer= - fi - fi - fi - fi - - if test -n "$kde32ornewer"; then - KDE_FIND_PATH(kconfig_compiler, KCONFIG_COMPILER, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(kconfig_compiler)]) - KDE_FIND_PATH(dcopidlng, DCOPIDLNG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidlng)]) - fi - if test -n "$kde33ornewer"; then - KDE_FIND_PATH(makekdewidgets, MAKEKDEWIDGETS, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(makekdewidgets)]) - AC_SUBST(MAKEKDEWIDGETS) - fi - KDE_FIND_PATH(xmllint, XMLLINT, [${prefix}/bin ${exec_prefix}/bin], [XMLLINT=""]) - - if test -n "$MEINPROC" -a "$MEINPROC" != "compiled"; then - kde_sharedirs="/usr/share/kde /usr/local/share /usr/share /opt/kde3/share /opt/kde/share $prefix/share" - test -n "$KDEDIR" && kde_sharedirs="$KDEDIR/share $kde_sharedirs" - AC_FIND_FILE(apps/ksgmltools2/customization/kde-chunk.xsl, $kde_sharedirs, KDE_XSL_STYLESHEET) - if test "$KDE_XSL_STYLESHEET" = "NO"; then - KDE_XSL_STYLESHEET="" - else - KDE_XSL_STYLESHEET="$KDE_XSL_STYLESHEET/apps/ksgmltools2/customization/kde-chunk.xsl" - fi - fi - - DCOP_DEPENDENCIES='$(DCOPIDL)' - if test -n "$kde32ornewer"; then - KCFG_DEPENDENCIES='$(KCONFIG_COMPILER)' - DCOP_DEPENDENCIES='$(DCOPIDL) $(DCOPIDLNG)' - AC_SUBST(KCONFIG_COMPILER) - AC_SUBST(KCFG_DEPENDENCIES) - AC_SUBST(DCOPIDLNG) - fi - AC_SUBST(DCOPIDL) - AC_SUBST(DCOPIDL2CPP) - AC_SUBST(DCOP_DEPENDENCIES) - AC_SUBST(MCOPIDL) - AC_SUBST(ARTSCCONFIG) - AC_SUBST(MEINPROC) - AC_SUBST(KDE_XSL_STYLESHEET) - AC_SUBST(XMLLINT) -])dnl - -AC_DEFUN([AC_CREATE_KFSSTND], -[ -AC_REQUIRE([AC_CHECK_RPATH]) - -AC_MSG_CHECKING([for KDE paths]) -kde_result="" -kde_cached_paths=yes -AC_CACHE_VAL(kde_cv_all_paths, -[ - KDE_SET_DEFAULT_PATHS($1) - kde_cached_paths=no -]) -eval "$kde_cv_all_paths" -KDE_CHECK_PATHS_FOR_COMPLETENESS -if test "$kde_have_all_paths" = "no" && test "$kde_cached_paths" = "yes"; then - # wrong values were cached, may be, we can set better ones - kde_result= - kde_htmldir= kde_appsdir= kde_icondir= kde_sounddir= - kde_datadir= kde_locale= kde_cgidir= kde_confdir= kde_kcfgdir= - kde_mimedir= kde_toolbardir= kde_wallpaperdir= kde_templatesdir= - kde_bindir= kde_servicesdir= kde_servicetypesdir= kde_moduledir= - kde_have_all_paths= - kde_styledir= - kde_widgetdir= - xdg_appsdir = xdg_menudir= xdg_directorydir= - KDE_SET_DEFAULT_PATHS($1) - eval "$kde_cv_all_paths" - KDE_CHECK_PATHS_FOR_COMPLETENESS - kde_result="$kde_result (cache overridden)" -fi -if test "$kde_have_all_paths" = "no"; then - AC_MSG_ERROR([configure could not run a little KDE program to test the environment. -Since it had compiled and linked before, it must be a strange problem on your system. -Look at config.log for details. If you are not able to fix this, look at -http://www.kde.org/faq/installation.html or any www.kde.org mirror. -(If you're using an egcs version on Linux, you may update binutils!) -]) -else - rm -f conftest* - AC_MSG_RESULT($kde_result) -fi - -bindir=$kde_bindir - -KDE_SUBST_PROGRAMS - -]) - -AC_DEFUN([AC_SUBST_KFSSTND], -[ -AC_SUBST(kde_htmldir) -AC_SUBST(kde_appsdir) -AC_SUBST(kde_icondir) -AC_SUBST(kde_sounddir) -AC_SUBST(kde_datadir) -AC_SUBST(kde_locale) -AC_SUBST(kde_confdir) -AC_SUBST(kde_kcfgdir) -AC_SUBST(kde_mimedir) -AC_SUBST(kde_wallpaperdir) -AC_SUBST(kde_bindir) -dnl X Desktop Group standards -AC_SUBST(xdg_appsdir) -AC_SUBST(xdg_menudir) -AC_SUBST(xdg_directorydir) -dnl for KDE 2 -AC_SUBST(kde_templatesdir) -AC_SUBST(kde_servicesdir) -AC_SUBST(kde_servicetypesdir) -AC_SUBST(kde_moduledir) -AC_SUBST(kdeinitdir, '$(kde_moduledir)') -AC_SUBST(kde_styledir) -AC_SUBST(kde_widgetdir) -if test "$kde_qtver" = 1; then - kde_minidir="$kde_icondir/mini" -else -# for KDE 1 - this breaks KDE2 apps using minidir, but -# that's the plan ;-/ - kde_minidir="/dev/null" -fi -dnl AC_SUBST(kde_minidir) -dnl AC_SUBST(kde_cgidir) -dnl AC_SUBST(kde_toolbardir) -]) - -AC_DEFUN([KDE_MISC_TESTS], -[ - dnl Checks for libraries. - AC_CHECK_LIB(util, main, [LIBUTIL="-lutil"]) dnl for *BSD - AC_SUBST(LIBUTIL) - AC_CHECK_LIB(compat, main, [LIBCOMPAT="-lcompat"]) dnl for *BSD - AC_SUBST(LIBCOMPAT) - kde_have_crypt= - AC_CHECK_LIB(crypt, crypt, [LIBCRYPT="-lcrypt"; kde_have_crypt=yes], - AC_CHECK_LIB(c, crypt, [kde_have_crypt=yes], [ - AC_MSG_WARN([you have no crypt in either libcrypt or libc. -You should install libcrypt from another source or configure with PAM -support]) - kde_have_crypt=no - ])) - AC_SUBST(LIBCRYPT) - if test $kde_have_crypt = yes; then - AC_DEFINE_UNQUOTED(HAVE_CRYPT, 1, [Defines if your system has the crypt function]) - fi - AC_CHECK_SOCKLEN_T - AC_CHECK_LIB(dnet, dnet_ntoa, [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet"]) - if test $ac_cv_lib_dnet_dnet_ntoa = no; then - AC_CHECK_LIB(dnet_stub, dnet_ntoa, - [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub"]) - fi - AC_CHECK_FUNC(inet_ntoa) - if test $ac_cv_func_inet_ntoa = no; then - AC_CHECK_LIB(nsl, inet_ntoa, X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl") - fi - AC_CHECK_FUNC(connect) - if test $ac_cv_func_connect = no; then - AC_CHECK_LIB(socket, connect, X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS", , - $X_EXTRA_LIBS) - fi - - AC_CHECK_FUNC(remove) - if test $ac_cv_func_remove = no; then - AC_CHECK_LIB(posix, remove, X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix") - fi - - # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay. - AC_CHECK_FUNC(shmat, , - AC_CHECK_LIB(ipc, shmat, X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc")) - - # more headers that need to be explicitly included on darwin - AC_CHECK_HEADERS(sys/types.h stdint.h) - - # sys/bitypes.h is needed for uint32_t and friends on Tru64 - AC_CHECK_HEADERS(sys/bitypes.h) - - # darwin requires a poll emulation library - AC_CHECK_LIB(poll, poll, LIB_POLL="-lpoll") - - # for some image handling on Mac OS X - AC_CHECK_HEADERS(Carbon/Carbon.h) - - # CoreAudio framework - AC_CHECK_HEADER(CoreAudio/CoreAudio.h, [ - AC_DEFINE(HAVE_COREAUDIO, 1, [Define if you have the CoreAudio API]) - FRAMEWORK_COREAUDIO="-Xlinker -framework -Xlinker CoreAudio" - ]) - - AC_CHECK_RES_INIT - AC_SUBST(LIB_POLL) - AC_SUBST(FRAMEWORK_COREAUDIO) - LIBSOCKET="$X_EXTRA_LIBS" - AC_SUBST(LIBSOCKET) - AC_SUBST(X_EXTRA_LIBS) - AC_CHECK_LIB(ucb, killpg, [LIBUCB="-lucb"]) dnl for Solaris2.4 - AC_SUBST(LIBUCB) - - case $host in dnl this *is* LynxOS specific - *-*-lynxos* ) - AC_MSG_CHECKING([LynxOS header file wrappers]) - [CFLAGS="$CFLAGS -D__NO_INCLUDE_WARN__"] - AC_MSG_RESULT(disabled) - AC_CHECK_LIB(bsd, gethostbyname, [LIBSOCKET="-lbsd"]) dnl for LynxOS - ;; - esac - - KDE_CHECK_TYPES - KDE_CHECK_LIBDL - KDE_CHECK_STRLCPY - KDE_CHECK_PIE_SUPPORT - -# darwin needs this to initialize the environment -AC_CHECK_HEADERS(crt_externs.h) -AC_CHECK_FUNC(_NSGetEnviron, [AC_DEFINE(HAVE_NSGETENVIRON, 1, [Define if your system needs _NSGetEnviron to set up the environment])]) - -AH_VERBATIM(_DARWIN_ENVIRON, -[ -#if defined(HAVE_NSGETENVIRON) && defined(HAVE_CRT_EXTERNS_H) -# include <sys/time.h> -# include <crt_externs.h> -# define environ (*_NSGetEnviron()) -#endif -]) - -AH_VERBATIM(_AIX_STRINGS_H_BZERO, -[ -/* - * AIX defines FD_SET in terms of bzero, but fails to include <strings.h> - * that defines bzero. - */ - -#if defined(_AIX) -#include <strings.h> -#endif -]) - -AC_CHECK_FUNCS([vsnprintf snprintf]) - -AH_VERBATIM(_TRU64,[ -/* - * On HP-UX, the declaration of vsnprintf() is needed every time ! - */ - -#if !defined(HAVE_VSNPRINTF) || defined(hpux) -#if __STDC__ -#include <stdarg.h> -#include <stdlib.h> -#else -#include <varargs.h> -#endif -#ifdef __cplusplus -extern "C" -#endif -int vsnprintf(char *str, size_t n, char const *fmt, va_list ap); -#ifdef __cplusplus -extern "C" -#endif -int snprintf(char *str, size_t n, char const *fmt, ...); -#endif -]) - -]) - -dnl ------------------------------------------------------------------------ -dnl Find the header files and libraries for X-Windows. Extended the -dnl macro AC_PATH_X -dnl ------------------------------------------------------------------------ -dnl -AC_DEFUN([K_PATH_X], -[ -AC_REQUIRE([KDE_MISC_TESTS])dnl -AC_REQUIRE([KDE_CHECK_LIB64]) - -AC_ARG_ENABLE( - embedded, - AC_HELP_STRING([--enable-embedded],[link to Qt-embedded, don't use X]), - kde_use_qt_emb=$enableval, - kde_use_qt_emb=no -) - -AC_ARG_ENABLE( - qtopia, - AC_HELP_STRING([--enable-qtopia],[link to Qt-embedded, link to the Qtopia Environment]), - kde_use_qt_emb_palm=$enableval, - kde_use_qt_emb_palm=no -) - -AC_ARG_ENABLE( - mac, - AC_HELP_STRING([--enable-mac],[link to Qt/Mac (don't use X)]), - kde_use_qt_mac=$enableval, - kde_use_qt_mac=no -) - -# used to disable x11-specific stuff on special platforms -AM_CONDITIONAL(include_x11, test "$kde_use_qt_emb" = "no" && test "$kde_use_qt_mac" = "no") - -if test "$kde_use_qt_emb" = "no" && test "$kde_use_qt_mac" = "no"; then - -AC_MSG_CHECKING(for X) - -AC_CACHE_VAL(kde_cv_have_x, -[# One or both of the vars are not set, and there is no cached value. -if test "{$x_includes+set}" = set || test "$x_includes" = NONE; then - kde_x_includes=NO -else - kde_x_includes=$x_includes -fi -if test "{$x_libraries+set}" = set || test "$x_libraries" = NONE; then - kde_x_libraries=NO -else - kde_x_libraries=$x_libraries -fi - -# below we use the standard autoconf calls -ac_x_libraries=$kde_x_libraries -ac_x_includes=$kde_x_includes - -KDE_PATH_X_DIRECT -dnl AC_PATH_X_XMKMF picks /usr/lib as the path for the X libraries. -dnl Unfortunately, if compiling with the N32 ABI, this is not the correct -dnl location. The correct location is /usr/lib32 or an undefined value -dnl (the linker is smart enough to pick the correct default library). -dnl Things work just fine if you use just AC_PATH_X_DIRECT. -dnl Solaris has a similar problem. AC_PATH_X_XMKMF forces x_includes to -dnl /usr/openwin/include, which doesn't work. /usr/include does work, so -dnl x_includes should be left alone. -case "$host" in -mips-sgi-irix6*) - ;; -*-*-solaris*) - ;; -*) - _AC_PATH_X_XMKMF - if test -z "$ac_x_includes"; then - ac_x_includes="." - fi - if test -z "$ac_x_libraries"; then - ac_x_libraries="/usr/lib${kdelibsuff}" - fi -esac -#from now on we use our own again - -# when the user already gave --x-includes, we ignore -# what the standard autoconf macros told us. -if test "$kde_x_includes" = NO; then - kde_x_includes=$ac_x_includes -fi - -# for --x-libraries too -if test "$kde_x_libraries" = NO; then - kde_x_libraries=$ac_x_libraries -fi - -if test "$kde_x_includes" = NO; then - AC_MSG_ERROR([Can't find X includes. Please check your installation and add the correct paths!]) -fi - -if test "$kde_x_libraries" = NO; then - AC_MSG_ERROR([Can't find X libraries. Please check your installation and add the correct paths!]) -fi - -# Record where we found X for the cache. -kde_cv_have_x="have_x=yes \ - kde_x_includes=$kde_x_includes kde_x_libraries=$kde_x_libraries" -])dnl - -eval "$kde_cv_have_x" - -if test "$have_x" != yes; then - AC_MSG_RESULT($have_x) - no_x=yes -else - AC_MSG_RESULT([libraries $kde_x_libraries, headers $kde_x_includes]) -fi - -if test -z "$kde_x_includes" || test "x$kde_x_includes" = xNONE; then - X_INCLUDES="" - x_includes="."; dnl better than nothing :- - else - x_includes=$kde_x_includes - X_INCLUDES="-I$x_includes" -fi - -if test -z "$kde_x_libraries" || test "x$kde_x_libraries" = xNONE; then - X_LDFLAGS="" - x_libraries="/usr/lib"; dnl better than nothing :- - else - x_libraries=$kde_x_libraries - X_LDFLAGS="-L$x_libraries" -fi -all_includes="$X_INCLUDES" -all_libraries="$X_LDFLAGS $LDFLAGS_AS_NEEDED $LDFLAGS_NEW_DTAGS" - -# Check for libraries that X11R6 Xt/Xaw programs need. -ac_save_LDFLAGS="$LDFLAGS" -LDFLAGS="$LDFLAGS $X_LDFLAGS" -# SM needs ICE to (dynamically) link under SunOS 4.x (so we have to -# check for ICE first), but we must link in the order -lSM -lICE or -# we get undefined symbols. So assume we have SM if we have ICE. -# These have to be linked with before -lX11, unlike the other -# libraries we check for below, so use a different variable. -# --interran@uluru.Stanford.EDU, kb@cs.umb.edu. -AC_CHECK_LIB(ICE, IceConnectionNumber, - [LIBSM="-lSM -lICE"], , $X_EXTRA_LIBS) -LDFLAGS="$ac_save_LDFLAGS" - -LIB_X11='-lX11 $(LIBSOCKET)' - -AC_MSG_CHECKING(for libXext) -AC_CACHE_VAL(kde_cv_have_libXext, -[ -kde_ldflags_safe="$LDFLAGS" -kde_libs_safe="$LIBS" - -LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS" -LIBS="-lXext -lX11 $LIBSOCKET" - -AC_TRY_LINK([ -#include <stdio.h> -#ifdef STDC_HEADERS -# include <stdlib.h> -#endif -], -[ -printf("hello Xext\n"); -], -kde_cv_have_libXext=yes, -kde_cv_have_libXext=no -) - -LDFLAGS=$kde_ldflags_safe -LIBS=$kde_libs_safe -]) - -AC_MSG_RESULT($kde_cv_have_libXext) - -if test "$kde_cv_have_libXext" = "no"; then - AC_MSG_ERROR([We need a working libXext to proceed. Since configure -can't find it itself, we stop here assuming that make wouldn't find -them either.]) -fi - -LIB_XEXT="-lXext" -QTE_NORTTI="" - -elif test "$kde_use_qt_emb" = "yes"; then - dnl We're using QT Embedded - CPPFLAGS=-DQWS - CXXFLAGS="$CXXFLAGS -fno-rtti" - QTE_NORTTI="-fno-rtti -DQWS" - X_PRE_LIBS="" - LIB_X11="" - LIB_XEXT="" - LIB_XRENDER="" - LIBSM="" - X_INCLUDES="" - X_LDFLAGS="" - x_includes="" - x_libraries="" -elif test "$kde_use_qt_mac" = "yes"; then - dnl We're using QT/Mac (I use QT_MAC so that qglobal.h doesn't *have* to - dnl be included to get the information) --Sam - CXXFLAGS="$CXXFLAGS -DQT_MAC -no-cpp-precomp" - CFLAGS="$CFLAGS -DQT_MAC -no-cpp-precomp" - X_PRE_LIBS="" - LIB_X11="" - LIB_XEXT="" - LIB_XRENDER="" - LIBSM="" - X_INCLUDES="" - X_LDFLAGS="" - x_includes="" - x_libraries="" -fi -AC_SUBST(X_PRE_LIBS) -AC_SUBST(LIB_X11) -AC_SUBST(LIB_XRENDER) -AC_SUBST(LIBSM) -AC_SUBST(X_INCLUDES) -AC_SUBST(X_LDFLAGS) -AC_SUBST(x_includes) -AC_SUBST(x_libraries) -AC_SUBST(QTE_NORTTI) -AC_SUBST(LIB_XEXT) - -]) - -AC_DEFUN([KDE_PRINT_QT_PROGRAM], -[ -AC_REQUIRE([KDE_USE_QT]) -cat > conftest.$ac_ext <<EOF -#include "confdefs.h" -#include <qglobal.h> -#include <qapplication.h> -EOF -if test "$kde_qtver" = "2"; then -cat >> conftest.$ac_ext <<EOF -#include <qevent.h> -#include <qstring.h> -#include <qstyle.h> -EOF - -if test $kde_qtsubver -gt 0; then -cat >> conftest.$ac_ext <<EOF -#if QT_VERSION < 210 -#error 1 -#endif -EOF -fi -fi - -if test "$kde_qtver" = "3"; then -cat >> conftest.$ac_ext <<EOF -#include <qcursor.h> -#include <qstylefactory.h> -#include <private/qucomextra_p.h> -EOF -fi - -echo "#if ! ($kde_qt_verstring)" >> conftest.$ac_ext -cat >> conftest.$ac_ext <<EOF -#error 1 -#endif - -int main() { -EOF -if test "$kde_qtver" = "2"; then -cat >> conftest.$ac_ext <<EOF - QStringList *t = new QStringList(); - Q_UNUSED(t); -EOF -if test $kde_qtsubver -gt 0; then -cat >> conftest.$ac_ext <<EOF - QString s; - s.setLatin1("Elvis is alive", 14); -EOF -fi -fi -if test "$kde_qtver" = "3"; then -cat >> conftest.$ac_ext <<EOF - (void)QStyleFactory::create(QString::null); - QCursor c(Qt::WhatsThisCursor); -EOF -fi -cat >> conftest.$ac_ext <<EOF - return 0; -} -EOF -]) - -AC_DEFUN([KDE_USE_QT], -[ -if test -z "$1"; then - # Current default Qt version: 3.3 - kde_qtver=3 - kde_qtsubver=3 -else - kde_qtsubver=`echo "$1" | sed -e 's#[0-9][0-9]*\.\([0-9][0-9]*\).*#\1#'` - # following is the check if subversion isnt found in passed argument - if test "$kde_qtsubver" = "$1"; then - kde_qtsubver=1 - fi - kde_qtver=`echo "$1" | sed -e 's#^\([0-9][0-9]*\)\..*#\1#'` - if test "$kde_qtver" = "1"; then - kde_qtsubver=42 - fi -fi - -if test -z "$2"; then - if test "$kde_qtver" = "2"; then - if test $kde_qtsubver -gt 0; then - kde_qt_minversion=">= Qt 2.2.2" - else - kde_qt_minversion=">= Qt 2.0.2" - fi - fi - if test "$kde_qtver" = "3"; then - if test $kde_qtsubver -gt 0; then - if test $kde_qtsubver -gt 1; then - if test $kde_qtsubver -gt 2; then - kde_qt_minversion=">= Qt 3.3 and < 4.0" - else - kde_qt_minversion=">= Qt 3.2 and < 4.0" - fi - else - kde_qt_minversion=">= Qt 3.1 (20021021) and < 4.0" - fi - else - kde_qt_minversion=">= Qt 3.0 and < 4.0" - fi - fi - if test "$kde_qtver" = "1"; then - kde_qt_minversion=">= 1.42 and < 2.0" - fi -else - kde_qt_minversion="$2" -fi - -if test -z "$3"; then - if test $kde_qtver = 3; then - if test $kde_qtsubver -gt 0; then - kde_qt_verstring="QT_VERSION >= 0x03@VER@00 && QT_VERSION < 0x040000" - qtsubver=`echo "00$kde_qtsubver" | sed -e 's,.*\(..\)$,\1,'` - kde_qt_verstring=`echo $kde_qt_verstring | sed -e "s,@VER@,$qtsubver,"` - else - kde_qt_verstring="QT_VERSION >= 300 && QT_VERSION < 0x040000" - fi - fi - if test $kde_qtver = 2; then - if test $kde_qtsubver -gt 0; then - kde_qt_verstring="QT_VERSION >= 222" - else - kde_qt_verstring="QT_VERSION >= 200" - fi - fi - if test $kde_qtver = 1; then - kde_qt_verstring="QT_VERSION >= 142 && QT_VERSION < 200" - fi -else - kde_qt_verstring="$3" -fi - -if test $kde_qtver = 4; then - kde_qt_dirs="$QTDIR /usr/lib/qt4 /usr/lib/qt /usr/share/qt4" -fi -if test $kde_qtver = 3; then - kde_qt_dirs="$QTDIR /usr/lib/qt3 /usr/lib/qt /usr/share/qt3" -fi -if test $kde_qtver = 2; then - kde_qt_dirs="$QTDIR /usr/lib/qt2 /usr/lib/qt" -fi -if test $kde_qtver = 1; then - kde_qt_dirs="$QTDIR /usr/lib/qt" -fi -]) - -AC_DEFUN([KDE_CHECK_QT_DIRECT], -[ -AC_REQUIRE([KDE_USE_QT]) -AC_MSG_CHECKING([if Qt compiles without flags]) -AC_CACHE_VAL(kde_cv_qt_direct, -[ -AC_LANG_SAVE -AC_LANG_CPLUSPLUS -ac_LD_LIBRARY_PATH_safe=$LD_LIBRARY_PATH -ac_LIBRARY_PATH="$LIBRARY_PATH" -ac_cxxflags_safe="$CXXFLAGS" -ac_ldflags_safe="$LDFLAGS" -ac_libs_safe="$LIBS" - -CXXFLAGS="$CXXFLAGS -I$qt_includes" -LDFLAGS="$LDFLAGS $X_LDFLAGS" -if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then -LIBS="$LIBQT -lXext -lX11 $LIBSOCKET" -else -LIBS="$LIBQT $LIBSOCKET" -fi -LD_LIBRARY_PATH= -export LD_LIBRARY_PATH -LIBRARY_PATH= -export LIBRARY_PATH - -KDE_PRINT_QT_PROGRAM - -if AC_TRY_EVAL(ac_link) && test -s conftest; then - kde_cv_qt_direct="yes" -else - kde_cv_qt_direct="no" - echo "configure: failed program was:" >&AC_FD_CC - cat conftest.$ac_ext >&AC_FD_CC -fi - -rm -f conftest* -CXXFLAGS="$ac_cxxflags_safe" -LDFLAGS="$ac_ldflags_safe" -LIBS="$ac_libs_safe" - -LD_LIBRARY_PATH="$ac_LD_LIBRARY_PATH_safe" -export LD_LIBRARY_PATH -LIBRARY_PATH="$ac_LIBRARY_PATH" -export LIBRARY_PATH -AC_LANG_RESTORE -]) - -if test "$kde_cv_qt_direct" = "yes"; then - AC_MSG_RESULT(yes) - $1 -else - AC_MSG_RESULT(no) - $2 -fi -]) - -dnl ------------------------------------------------------------------------ -dnl Try to find the Qt headers and libraries. -dnl $(QT_LDFLAGS) will be -Lqtliblocation (if needed) -dnl and $(QT_INCLUDES) will be -Iqthdrlocation (if needed) -dnl ------------------------------------------------------------------------ -dnl -AC_DEFUN([AC_PATH_QT_1_3], -[ -AC_REQUIRE([K_PATH_X]) -AC_REQUIRE([KDE_USE_QT]) -AC_REQUIRE([KDE_CHECK_LIB64]) - -dnl ------------------------------------------------------------------------ -dnl Add configure flag to enable linking to MT version of Qt library. -dnl ------------------------------------------------------------------------ - -AC_ARG_ENABLE( - mt, - AC_HELP_STRING([--disable-mt],[link to non-threaded Qt (deprecated)]), - kde_use_qt_mt=$enableval, - [ - if test $kde_qtver = 3; then - kde_use_qt_mt=yes - else - kde_use_qt_mt=no - fi - ] -) - -USING_QT_MT="" - -dnl ------------------------------------------------------------------------ -dnl If we not get --disable-qt-mt then adjust some vars for the host. -dnl ------------------------------------------------------------------------ - -KDE_MT_LDFLAGS= -KDE_MT_LIBS= -if test "x$kde_use_qt_mt" = "xyes"; then - KDE_CHECK_THREADING - if test "x$kde_use_threading" = "xyes"; then - CPPFLAGS="$USE_THREADS -DQT_THREAD_SUPPORT $CPPFLAGS" - KDE_MT_LDFLAGS="$USE_THREADS" - KDE_MT_LIBS="$LIBPTHREAD" - else - kde_use_qt_mt=no - fi -fi -AC_SUBST(KDE_MT_LDFLAGS) -AC_SUBST(KDE_MT_LIBS) - -kde_qt_was_given=yes - -dnl ------------------------------------------------------------------------ -dnl If we haven't been told how to link to Qt, we work it out for ourselves. -dnl ------------------------------------------------------------------------ -if test -z "$LIBQT_GLOB"; then - if test "x$kde_use_qt_emb" = "xyes"; then - LIBQT_GLOB="libqte.*" - else - LIBQT_GLOB="libqt.*" - fi -fi - -dnl ------------------------------------------------------------ -dnl If we got --enable-embedded then adjust the Qt library name. -dnl ------------------------------------------------------------ -if test "x$kde_use_qt_emb" = "xyes"; then - qtlib="qte" -else - qtlib="qt" -fi - -kde_int_qt="-l$qtlib" - -if test -z "$LIBQPE"; then -dnl ------------------------------------------------------------ -dnl If we got --enable-palmtop then add -lqpe to the link line -dnl ------------------------------------------------------------ - if test "x$kde_use_qt_emb" = "xyes"; then - if test "x$kde_use_qt_emb_palm" = "xyes"; then - LIB_QPE="-lqpe" - else - LIB_QPE="" - fi - else - LIB_QPE="" - fi -fi - -dnl ------------------------------------------------------------------------ -dnl If we got --enable-qt-mt then adjust the Qt library name for the host. -dnl ------------------------------------------------------------------------ - -if test "x$kde_use_qt_mt" = "xyes"; then - LIBQT="-l$qtlib-mt" - kde_int_qt="-l$qtlib-mt" - LIBQT_GLOB="lib$qtlib-mt.*" - USING_QT_MT="using -mt" -else - LIBQT="-l$qtlib" -fi - -if test $kde_qtver != 1; then - - AC_REQUIRE([AC_FIND_PNG]) - AC_REQUIRE([AC_FIND_JPEG]) - LIBQT="$LIBQT $LIBPNG $LIBJPEG" -fi - -if test $kde_qtver = 3; then - AC_REQUIRE([KDE_CHECK_LIBDL]) - LIBQT="$LIBQT $LIBDL" -fi - -AC_MSG_CHECKING([for Qt]) - -if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then -LIBQT="$LIBQT $X_PRE_LIBS -lXext -lX11 $LIBSM $LIBSOCKET" -fi -ac_qt_includes=NO ac_qt_libraries=NO ac_qt_bindir=NO -qt_libraries="" -qt_includes="" -AC_ARG_WITH(qt-dir, - AC_HELP_STRING([--with-qt-dir=DIR],[where the root of Qt is installed ]), - [ ac_qt_includes="$withval"/include - ac_qt_libraries="$withval"/lib${kdelibsuff} - ac_qt_bindir="$withval"/bin - ]) - -AC_ARG_WITH(qt-includes, - AC_HELP_STRING([--with-qt-includes=DIR],[where the Qt includes are. ]), - [ - ac_qt_includes="$withval" - ]) - -kde_qt_libs_given=no - -AC_ARG_WITH(qt-libraries, - AC_HELP_STRING([--with-qt-libraries=DIR],[where the Qt library is installed.]), - [ ac_qt_libraries="$withval" - kde_qt_libs_given=yes - ]) - -AC_CACHE_VAL(ac_cv_have_qt, -[#try to guess Qt locations - -qt_incdirs="" -for dir in $kde_qt_dirs; do - qt_incdirs="$qt_incdirs $dir/include $dir" -done -qt_incdirs="$QTINC $qt_incdirs /usr/local/qt/include /usr/include/qt /usr/include /usr/X11R6/include/X11/qt /usr/X11R6/include/qt /usr/X11R6/include/qt2 /usr/include/qt3 $x_includes" -if test ! "$ac_qt_includes" = "NO"; then - qt_incdirs="$ac_qt_includes $qt_incdirs" -fi - -if test "$kde_qtver" != "1"; then - kde_qt_header=qstyle.h -else - kde_qt_header=qglobal.h -fi - -AC_FIND_FILE($kde_qt_header, $qt_incdirs, qt_incdir) -ac_qt_includes="$qt_incdir" - -qt_libdirs="" -for dir in $kde_qt_dirs; do - qt_libdirs="$qt_libdirs $dir/lib${kdelibsuff} $dir" -done -qt_libdirs="$QTLIB $qt_libdirs /usr/X11R6/lib /usr/lib /usr/local/qt/lib $x_libraries" -if test ! "$ac_qt_libraries" = "NO"; then - qt_libdir=$ac_qt_libraries -else - qt_libdirs="$ac_qt_libraries $qt_libdirs" - # if the Qt was given, the chance is too big that libqt.* doesn't exist - qt_libdir=NONE - for dir in $qt_libdirs; do - try="ls -1 $dir/${LIBQT_GLOB}" - if test -n "`$try 2> /dev/null`"; then qt_libdir=$dir; break; else echo "tried $dir" >&AC_FD_CC ; fi - done -fi -for a in $qt_libdir/lib`echo ${kde_int_qt} | sed 's,^-l,,'`_incremental.*; do - if test -e "$a"; then - LIBQT="$LIBQT ${kde_int_qt}_incremental" - break - fi -done - -ac_qt_libraries="$qt_libdir" - -AC_LANG_SAVE -AC_LANG_CPLUSPLUS - -ac_cxxflags_safe="$CXXFLAGS" -ac_ldflags_safe="$LDFLAGS" -ac_libs_safe="$LIBS" - -CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes" -LDFLAGS="$LDFLAGS -L$qt_libdir $all_libraries $USER_LDFLAGS $KDE_MT_LDFLAGS" -LIBS="$LIBS $LIBQT $KDE_MT_LIBS" - -KDE_PRINT_QT_PROGRAM - -if AC_TRY_EVAL(ac_link) && test -s conftest; then - rm -f conftest* -else - echo "configure: failed program was:" >&AC_FD_CC - cat conftest.$ac_ext >&AC_FD_CC - ac_qt_libraries="NO" -fi -rm -f conftest* -CXXFLAGS="$ac_cxxflags_safe" -LDFLAGS="$ac_ldflags_safe" -LIBS="$ac_libs_safe" - -AC_LANG_RESTORE -if test "$ac_qt_includes" = NO || test "$ac_qt_libraries" = NO; then - ac_cv_have_qt="have_qt=no" - ac_qt_notfound="" - missing_qt_mt="" - if test "$ac_qt_includes" = NO; then - if test "$ac_qt_libraries" = NO; then - ac_qt_notfound="(headers and libraries)"; - else - ac_qt_notfound="(headers)"; - fi - else - if test "x$kde_use_qt_mt" = "xyes"; then - missing_qt_mt=" -Make sure that you have compiled Qt with thread support!" - ac_qt_notfound="(library $qtlib-mt)"; - else - ac_qt_notfound="(library $qtlib)"; - fi - fi - - AC_MSG_ERROR([Qt ($kde_qt_minversion) $ac_qt_notfound not found. Please check your installation! -For more details about this problem, look at the end of config.log.$missing_qt_mt]) -else - have_qt="yes" -fi -]) - -eval "$ac_cv_have_qt" - -if test "$have_qt" != yes; then - AC_MSG_RESULT([$have_qt]); -else - ac_cv_have_qt="have_qt=yes \ - ac_qt_includes=$ac_qt_includes ac_qt_libraries=$ac_qt_libraries" - AC_MSG_RESULT([libraries $ac_qt_libraries, headers $ac_qt_includes $USING_QT_MT]) - - qt_libraries="$ac_qt_libraries" - qt_includes="$ac_qt_includes" -fi - -if test ! "$kde_qt_libs_given" = "yes" && test ! "$kde_qtver" = 3; then - KDE_CHECK_QT_DIRECT(qt_libraries= ,[]) -fi - -AC_SUBST(qt_libraries) -AC_SUBST(qt_includes) - -if test "$qt_includes" = "$x_includes" || test -z "$qt_includes"; then - QT_INCLUDES="" -else - QT_INCLUDES="-I$qt_includes" - all_includes="$QT_INCLUDES $all_includes" -fi - -if test "$qt_libraries" = "$x_libraries" || test -z "$qt_libraries"; then - QT_LDFLAGS="" -else - QT_LDFLAGS="-L$qt_libraries" - all_libraries="$QT_LDFLAGS $all_libraries" -fi -test -z "$KDE_MT_LDFLAGS" || all_libraries="$all_libraries $KDE_MT_LDFLAGS" - -AC_SUBST(QT_INCLUDES) -AC_SUBST(QT_LDFLAGS) -AC_PATH_QT_MOC_UIC - -KDE_CHECK_QT_JPEG - -if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then -LIB_QT="$kde_int_qt $LIBJPEG_QT "'$(LIBZ) $(LIBPNG) -lXext $(LIB_X11) $(LIBSM)' -else -LIB_QT="$kde_int_qt $LIBJPEG_QT "'$(LIBZ) $(LIBPNG)' -fi -test -z "$KDE_MT_LIBS" || LIB_QT="$LIB_QT $KDE_MT_LIBS" -for a in $qt_libdir/lib`echo ${kde_int_qt} | sed 's,^-l,,'`_incremental.*; do - if test -e "$a"; then - LIB_QT="$LIB_QT ${kde_int_qt}_incremental" - break - fi -done - -AC_SUBST(LIB_QT) -AC_SUBST(LIB_QPE) - -AC_SUBST(kde_qtver) -]) - -AC_DEFUN([AC_PATH_QT], -[ -AC_PATH_QT_1_3 -]) - -AC_DEFUN([KDE_CHECK_UIC_PLUGINS], -[ -AC_REQUIRE([AC_PATH_QT_MOC_UIC]) - -if test x$ac_uic_supports_libpath = xyes; then - -AC_MSG_CHECKING([if UIC has KDE plugins available]) -AC_CACHE_VAL(kde_cv_uic_plugins, -[ -cat > actest.ui << EOF -<!DOCTYPE UI><UI version="3.0" stdsetdef="1"> -<class>NewConnectionDialog</class> -<widget class="QDialog"> - <widget class="KLineEdit"> - <property name="name"> - <cstring>testInput</cstring> - </property> - </widget> -</widget> -</UI> -EOF - - - -kde_cv_uic_plugins=no -kde_line="$UIC_PATH -L $kde_widgetdir" -if test x$ac_uic_supports_nounload = xyes; then - kde_line="$kde_line -nounload" -fi -kde_line="$kde_line -impl actest.h actest.ui > actest.cpp" -if AC_TRY_EVAL(kde_line); then - # if you're trying to debug this check and think it's incorrect, - # better check your installation. The check _is_ correct - your - # installation is not. - if test -f actest.cpp && grep klineedit actest.cpp > /dev/null; then - kde_cv_uic_plugins=yes - fi -fi -rm -f actest.ui actest.cpp -]) - -AC_MSG_RESULT([$kde_cv_uic_plugins]) -if test "$kde_cv_uic_plugins" != yes; then - AC_MSG_ERROR([ -you need to install kdelibs first. - -If you did install kdelibs, then the Qt version that is picked up by -this configure is not the same version you used to compile kdelibs. -The Qt Plugin installed by kdelibs is *ONLY* loadable if it is the -_same Qt version_, compiled with the _same compiler_ and the same Qt -configuration settings. -]) -fi -fi -]) - -AC_DEFUN([KDE_CHECK_FINAL], -[ - AC_ARG_ENABLE(final, - AC_HELP_STRING([--enable-final], - [build size optimized apps (experimental - needs lots of memory)]), - kde_use_final=$enableval, kde_use_final=no) - - if test "x$kde_use_final" = "xyes"; then - KDE_USE_FINAL_TRUE="" - KDE_USE_FINAL_FALSE="#" - else - KDE_USE_FINAL_TRUE="#" - KDE_USE_FINAL_FALSE="" - fi - AC_SUBST(KDE_USE_FINAL_TRUE) - AC_SUBST(KDE_USE_FINAL_FALSE) -]) - -AC_DEFUN([KDE_CHECK_CLOSURE], -[ - AC_ARG_ENABLE(closure, - AC_HELP_STRING([--enable-closure],[delay template instantiation]), - kde_use_closure=$enableval, kde_use_closure=no) - - KDE_NO_UNDEFINED="" - if test "x$kde_use_closure" = "xyes"; then - KDE_USE_CLOSURE_TRUE="" - KDE_USE_CLOSURE_FALSE="#" -# CXXFLAGS="$CXXFLAGS $REPO" - else - KDE_USE_CLOSURE_TRUE="#" - KDE_USE_CLOSURE_FALSE="" - KDE_NO_UNDEFINED="" - case $host in - *-*-linux-gnu) - KDE_CHECK_COMPILER_FLAG([Wl,--no-undefined], - [KDE_CHECK_COMPILER_FLAG([Wl,--allow-shlib-undefined], - [KDE_NO_UNDEFINED="-Wl,--no-undefined -Wl,--allow-shlib-undefined"], - [KDE_NO_UNDEFINED=""])], - [KDE_NO_UNDEFINED=""]) - ;; - esac - fi - AC_SUBST(KDE_USE_CLOSURE_TRUE) - AC_SUBST(KDE_USE_CLOSURE_FALSE) - AC_SUBST(KDE_NO_UNDEFINED) -]) - -dnl Check if the linker supports --enable-new-dtags and --as-needed -AC_DEFUN([KDE_CHECK_NEW_LDFLAGS], -[ - AC_ARG_ENABLE(new_ldflags, - AC_HELP_STRING([--enable-new-ldflags], - [enable the new linker flags]), - kde_use_new_ldflags=$enableval, - kde_use_new_ldflags=no) - - LDFLAGS_AS_NEEDED="" - LDFLAGS_NEW_DTAGS="" - if test "x$kde_use_new_ldflags" = "xyes"; then - LDFLAGS_NEW_DTAGS="" - KDE_CHECK_COMPILER_FLAG([Wl,--enable-new-dtags], - [LDFLAGS_NEW_DTAGS="-Wl,--enable-new-dtags"],) - - KDE_CHECK_COMPILER_FLAG([Wl,--as-needed], - [LDFLAGS_AS_NEEDED="-Wl,--as-needed"],) - fi - AC_SUBST(LDFLAGS_AS_NEEDED) - AC_SUBST(LDFLAGS_NEW_DTAGS) -]) - -AC_DEFUN([KDE_CHECK_NMCHECK], -[ - AC_ARG_ENABLE(nmcheck,AC_HELP_STRING([--enable-nmcheck],[enable automatic namespace cleanness check]), - kde_use_nmcheck=$enableval, kde_use_nmcheck=no) - - if test "$kde_use_nmcheck" = "yes"; then - KDE_USE_NMCHECK_TRUE="" - KDE_USE_NMCHECK_FALSE="#" - else - KDE_USE_NMCHECK_TRUE="#" - KDE_USE_NMCHECK_FALSE="" - fi - AC_SUBST(KDE_USE_NMCHECK_TRUE) - AC_SUBST(KDE_USE_NMCHECK_FALSE) -]) - -AC_DEFUN([KDE_EXPAND_MAKEVAR], [ -savex=$exec_prefix -test "x$exec_prefix" = xNONE && exec_prefix=$prefix -tmp=$$2 -while $1=`eval echo "$tmp"`; test "x$$1" != "x$tmp"; do tmp=$$1; done -exec_prefix=$savex -]) - -dnl ------------------------------------------------------------------------ -dnl Now, the same with KDE -dnl $(KDE_LDFLAGS) will be the kdeliblocation (if needed) -dnl and $(kde_includes) will be the kdehdrlocation (if needed) -dnl ------------------------------------------------------------------------ -dnl -AC_DEFUN([AC_BASE_PATH_KDE], -[ -AC_REQUIRE([KDE_CHECK_STL]) -AC_REQUIRE([AC_PATH_QT])dnl -AC_REQUIRE([KDE_CHECK_LIB64]) - -AC_CHECK_RPATH -AC_MSG_CHECKING([for KDE]) - -if test "${prefix}" != NONE; then - kde_includes=${includedir} - KDE_EXPAND_MAKEVAR(ac_kde_includes, includedir) - - kde_libraries=${libdir} - KDE_EXPAND_MAKEVAR(ac_kde_libraries, libdir) - -else - ac_kde_includes= - ac_kde_libraries= - kde_libraries="" - kde_includes="" -fi - -AC_CACHE_VAL(ac_cv_have_kde, -[#try to guess kde locations - -if test "$kde_qtver" = 1; then - kde_check_header="ksock.h" - kde_check_lib="libkdecore.la" -else - kde_check_header="ksharedptr.h" - kde_check_lib="libkio.la" -fi - -if test -z "$1"; then - -kde_incdirs="$kde_libs_prefix/include /usr/lib/kde/include /usr/local/kde/include /usr/local/include /usr/kde/include /usr/include/kde /usr/include /opt/kde3/include /opt/kde/include $x_includes $qt_includes" -test -n "$KDEDIR" && kde_incdirs="$KDEDIR/include $KDEDIR/include/kde $KDEDIR $kde_incdirs" -kde_incdirs="$ac_kde_includes $kde_incdirs" -AC_FIND_FILE($kde_check_header, $kde_incdirs, kde_incdir) -ac_kde_includes="$kde_incdir" - -if test -n "$ac_kde_includes" && test ! -r "$ac_kde_includes/$kde_check_header"; then - AC_MSG_ERROR([ -in the prefix, you've chosen, are no KDE headers installed. This will fail. -So, check this please and use another prefix!]) -fi - -kde_libdirs="$kde_libs_prefix/lib${kdelibsuff} /usr/lib/kde/lib${kdelibsuff} /usr/local/kde/lib${kdelibsuff} /usr/kde/lib${kdelibsuff} /usr/lib${kdelibsuff}/kde /usr/lib${kdelibsuff}/kde3 /usr/lib${kdelibsuff} /usr/X11R6/lib${kdelibsuff} /usr/local/lib${kdelibsuff} /opt/kde3/lib${kdelibsuff} /opt/kde/lib${kdelibsuff} /usr/X11R6/kde/lib${kdelibsuff}" -test -n "$KDEDIR" && kde_libdirs="$KDEDIR/lib${kdelibsuff} $KDEDIR $kde_libdirs" -kde_libdirs="$ac_kde_libraries $libdir $kde_libdirs" -AC_FIND_FILE($kde_check_lib, $kde_libdirs, kde_libdir) -ac_kde_libraries="$kde_libdir" - -kde_widgetdir=NO -dnl this might be somewhere else -AC_FIND_FILE("kde3/plugins/designer/kdewidgets.la", $kde_libdirs, kde_widgetdir) - -if test -n "$ac_kde_libraries" && test ! -r "$ac_kde_libraries/$kde_check_lib"; then -AC_MSG_ERROR([ -in the prefix, you've chosen, are no KDE libraries installed. This will fail. -So, check this please and use another prefix!]) -fi - -if test -n "$kde_widgetdir" && test ! -r "$kde_widgetdir/kde3/plugins/designer/kdewidgets.la"; then -AC_MSG_ERROR([ -I can't find the designer plugins. These are required and should have been installed -by kdelibs]) -fi - -if test -n "$kde_widgetdir"; then - kde_widgetdir="$kde_widgetdir/kde3/plugins/designer" -fi - - -if test "$ac_kde_includes" = NO || test "$ac_kde_libraries" = NO || test "$kde_widgetdir" = NO; then - ac_cv_have_kde="have_kde=no" -else - ac_cv_have_kde="have_kde=yes \ - ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries" -fi - -else dnl test -z $1, e.g. from kdelibs - - ac_cv_have_kde="have_kde=no" - -fi -])dnl - -eval "$ac_cv_have_kde" - -if test "$have_kde" != "yes"; then - if test "${prefix}" = NONE; then - ac_kde_prefix="$ac_default_prefix" - else - ac_kde_prefix="$prefix" - fi - if test "$exec_prefix" = NONE; then - ac_kde_exec_prefix="$ac_kde_prefix" - AC_MSG_RESULT([will be installed in $ac_kde_prefix]) - else - ac_kde_exec_prefix="$exec_prefix" - AC_MSG_RESULT([will be installed in $ac_kde_prefix and $ac_kde_exec_prefix]) - fi - - kde_libraries="${libdir}" - kde_includes="${includedir}" - -else - ac_cv_have_kde="have_kde=yes \ - ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries" - AC_MSG_RESULT([libraries $ac_kde_libraries, headers $ac_kde_includes]) - - kde_libraries="$ac_kde_libraries" - kde_includes="$ac_kde_includes" -fi -AC_SUBST(kde_libraries) -AC_SUBST(kde_includes) - -if test "$kde_includes" = "$x_includes" || test "$kde_includes" = "$qt_includes" || test "$kde_includes" = "/usr/include"; then - KDE_INCLUDES="" -else - KDE_INCLUDES="-I$kde_includes" - all_includes="$KDE_INCLUDES $all_includes" -fi - -KDE_DEFAULT_CXXFLAGS="-DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION" - -KDE_LDFLAGS="-L$kde_libraries" -if test ! "$kde_libraries" = "$x_libraries" && test ! "$kde_libraries" = "$qt_libraries" ; then - all_libraries="$KDE_LDFLAGS $all_libraries" -fi - -AC_SUBST(KDE_LDFLAGS) -AC_SUBST(KDE_INCLUDES) - -AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) - -all_libraries="$all_libraries $USER_LDFLAGS" -all_includes="$all_includes $USER_INCLUDES" -AC_SUBST(all_includes) -AC_SUBST(all_libraries) - -if test -z "$1"; then -KDE_CHECK_UIC_PLUGINS -fi - -ac_kde_libraries="$kde_libdir" - -AC_SUBST(AUTODIRS) - - -]) - -AC_DEFUN([KDE_CHECK_EXTRA_LIBS], -[ -AC_MSG_CHECKING(for extra includes) -AC_ARG_WITH(extra-includes,AC_HELP_STRING([--with-extra-includes=DIR],[adds non standard include paths]), - kde_use_extra_includes="$withval", - kde_use_extra_includes=NONE -) -kde_extra_includes= -if test -n "$kde_use_extra_includes" && \ - test "$kde_use_extra_includes" != "NONE"; then - - ac_save_ifs=$IFS - IFS=':' - for dir in $kde_use_extra_includes; do - kde_extra_includes="$kde_extra_includes $dir" - USER_INCLUDES="$USER_INCLUDES -I$dir" - done - IFS=$ac_save_ifs - kde_use_extra_includes="added" -else - kde_use_extra_includes="no" -fi -AC_SUBST(USER_INCLUDES) - -AC_MSG_RESULT($kde_use_extra_includes) - -kde_extra_libs= -AC_MSG_CHECKING(for extra libs) -AC_ARG_WITH(extra-libs,AC_HELP_STRING([--with-extra-libs=DIR],[adds non standard library paths]), - kde_use_extra_libs=$withval, - kde_use_extra_libs=NONE -) -if test -n "$kde_use_extra_libs" && \ - test "$kde_use_extra_libs" != "NONE"; then - - ac_save_ifs=$IFS - IFS=':' - for dir in $kde_use_extra_libs; do - kde_extra_libs="$kde_extra_libs $dir" - KDE_EXTRA_RPATH="$KDE_EXTRA_RPATH -R $dir" - USER_LDFLAGS="$USER_LDFLAGS -L$dir" - done - IFS=$ac_save_ifs - kde_use_extra_libs="added" -else - kde_use_extra_libs="no" -fi - -AC_SUBST(USER_LDFLAGS) - -AC_MSG_RESULT($kde_use_extra_libs) - -]) - -AC_DEFUN([KDE_1_CHECK_PATH_HEADERS], -[ - AC_MSG_CHECKING([for KDE headers installed]) - AC_LANG_SAVE - AC_LANG_CPLUSPLUS -cat > conftest.$ac_ext <<EOF -#ifdef STDC_HEADERS -# include <stdlib.h> -#endif -#include <stdio.h> -#include "confdefs.h" -#include <kapp.h> - -int main() { - printf("kde_htmldir=\\"%s\\"\n", KApplication::kde_htmldir().data()); - printf("kde_appsdir=\\"%s\\"\n", KApplication::kde_appsdir().data()); - printf("kde_icondir=\\"%s\\"\n", KApplication::kde_icondir().data()); - printf("kde_sounddir=\\"%s\\"\n", KApplication::kde_sounddir().data()); - printf("kde_datadir=\\"%s\\"\n", KApplication::kde_datadir().data()); - printf("kde_locale=\\"%s\\"\n", KApplication::kde_localedir().data()); - printf("kde_cgidir=\\"%s\\"\n", KApplication::kde_cgidir().data()); - printf("kde_confdir=\\"%s\\"\n", KApplication::kde_configdir().data()); - printf("kde_mimedir=\\"%s\\"\n", KApplication::kde_mimedir().data()); - printf("kde_toolbardir=\\"%s\\"\n", KApplication::kde_toolbardir().data()); - printf("kde_wallpaperdir=\\"%s\\"\n", - KApplication::kde_wallpaperdir().data()); - printf("kde_bindir=\\"%s\\"\n", KApplication::kde_bindir().data()); - printf("kde_partsdir=\\"%s\\"\n", KApplication::kde_partsdir().data()); - printf("kde_servicesdir=\\"/tmp/dummy\\"\n"); - printf("kde_servicetypesdir=\\"/tmp/dummy\\"\n"); - printf("kde_moduledir=\\"/tmp/dummy\\"\n"); - printf("kde_styledir=\\"/tmp/dummy\\"\n"); - printf("kde_widgetdir=\\"/tmp/dummy\\"\n"); - printf("xdg_appsdir=\\"/tmp/dummy\\"\n"); - printf("xdg_menudir=\\"/tmp/dummy\\"\n"); - printf("xdg_directorydir=\\"/tmp/dummy\\"\n"); - printf("kde_kcfgdir=\\"/tmp/dummy\\"\n"); - return 0; - } -EOF - - ac_save_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$all_includes $CPPFLAGS" - if AC_TRY_EVAL(ac_compile); then - AC_MSG_RESULT(yes) - else - AC_MSG_ERROR([your system is not able to compile a small KDE application! -Check, if you installed the KDE header files correctly. -For more details about this problem, look at the end of config.log.]) - fi - CPPFLAGS=$ac_save_CPPFLAGS - - AC_LANG_RESTORE -]) - -AC_DEFUN([KDE_CHECK_KDEQTADDON], -[ -AC_MSG_CHECKING(for kde-qt-addon) -AC_CACHE_VAL(kde_cv_have_kdeqtaddon, -[ - kde_ldflags_safe="$LDFLAGS" - kde_libs_safe="$LIBS" - kde_cxxflags_safe="$CXXFLAGS" - - LIBS="-lkde-qt-addon $LIBQT $LIBS" - CXXFLAGS="$CXXFLAGS -I$prefix/include -I$prefix/include/kde $all_includes" - LDFLAGS="$LDFLAGS $all_libraries $USER_LDFLAGS" - - AC_TRY_LINK([ - #include <qdom.h> - ], - [ - QDomDocument doc; - ], - kde_cv_have_kdeqtaddon=yes, - kde_cv_have_kdeqtaddon=no - ) - - LDFLAGS=$kde_ldflags_safe - LIBS=$kde_libs_safe - CXXFLAGS=$kde_cxxflags_safe -]) - -AC_MSG_RESULT($kde_cv_have_kdeqtaddon) - -if test "$kde_cv_have_kdeqtaddon" = "no"; then - AC_MSG_ERROR([Can't find libkde-qt-addon. You need to install it first. -It is a separate package (and CVS module) named kde-qt-addon.]) -fi -]) - -AC_DEFUN([KDE_CREATE_LIBS_ALIASES], -[ - AC_REQUIRE([KDE_MISC_TESTS]) - AC_REQUIRE([KDE_CHECK_LIBDL]) - AC_REQUIRE([K_PATH_X]) - -if test $kde_qtver = 3; then - case $host in - *cygwin*) lib_kded="-lkdeinit_kded" ;; - *) lib_kded="" ;; - esac - AC_SUBST(LIB_KDED, $lib_kded) - AC_SUBST(LIB_KDECORE, "-lkdecore") - AC_SUBST(LIB_KDEUI, "-lkdeui") - AC_SUBST(LIB_KIO, "-lkio") - AC_SUBST(LIB_KJS, "-lkjs") - AC_SUBST(LIB_SMB, "-lsmb") - AC_SUBST(LIB_KAB, "-lkab") - AC_SUBST(LIB_KABC, "-lkabc") - AC_SUBST(LIB_KHTML, "-lkhtml") - AC_SUBST(LIB_KSPELL, "-lkspell") - AC_SUBST(LIB_KPARTS, "-lkparts") - AC_SUBST(LIB_KDEPRINT, "-lkdeprint") - AC_SUBST(LIB_KUTILS, "-lkutils") - AC_SUBST(LIB_KDEPIM, "-lkdepim") - AC_SUBST(LIB_KIMPROXY, "-lkimproxy") - AC_SUBST(LIB_KNEWSTUFF, "-lknewstuff") - AC_SUBST(LIB_KDNSSD, "-lkdnssd") - AC_SUBST(LIB_KUNITTEST, "-lkunittest") -# these are for backward compatibility - AC_SUBST(LIB_KSYCOCA, "-lkio") - AC_SUBST(LIB_KFILE, "-lkio") -elif test $kde_qtver = 2; then - AC_SUBST(LIB_KDECORE, "-lkdecore") - AC_SUBST(LIB_KDEUI, "-lkdeui") - AC_SUBST(LIB_KIO, "-lkio") - AC_SUBST(LIB_KSYCOCA, "-lksycoca") - AC_SUBST(LIB_SMB, "-lsmb") - AC_SUBST(LIB_KFILE, "-lkfile") - AC_SUBST(LIB_KAB, "-lkab") - AC_SUBST(LIB_KHTML, "-lkhtml") - AC_SUBST(LIB_KSPELL, "-lkspell") - AC_SUBST(LIB_KPARTS, "-lkparts") - AC_SUBST(LIB_KDEPRINT, "-lkdeprint") -else - AC_SUBST(LIB_KDECORE, "-lkdecore -lXext $(LIB_QT)") - AC_SUBST(LIB_KDEUI, "-lkdeui $(LIB_KDECORE)") - AC_SUBST(LIB_KFM, "-lkfm $(LIB_KDECORE)") - AC_SUBST(LIB_KFILE, "-lkfile $(LIB_KFM) $(LIB_KDEUI)") - AC_SUBST(LIB_KAB, "-lkab $(LIB_KIMGIO) $(LIB_KDECORE)") -fi -]) - -AC_DEFUN([AC_PATH_KDE], -[ - AC_BASE_PATH_KDE - AC_ARG_ENABLE(path-check,AC_HELP_STRING([--disable-path-check],[don't try to find out, where to install]), - [ - if test "$enableval" = "no"; - then ac_use_path_checking="default" - else ac_use_path_checking="" - fi - ], - [ - if test "$kde_qtver" = 1; - then ac_use_path_checking="" - else ac_use_path_checking="default" - fi - ] - ) - - AC_CREATE_KFSSTND($ac_use_path_checking) - - AC_SUBST_KFSSTND - KDE_CREATE_LIBS_ALIASES -]) - -dnl KDE_CHECK_FUNC_EXT(<func>, [headers], [sample-use], [C prototype], [autoheader define], [call if found]) -AC_DEFUN([KDE_CHECK_FUNC_EXT], -[ -AC_MSG_CHECKING(for $1) -AC_CACHE_VAL(kde_cv_func_$1, -[ -AC_LANG_SAVE -AC_LANG_CPLUSPLUS -save_CXXFLAGS="$CXXFLAGS" -kde_safe_LIBS="$LIBS" -LIBS="$LIBS $X_EXTRA_LIBS" -if test "$GXX" = "yes"; then -CXXFLAGS="$CXXFLAGS -pedantic-errors" -fi -AC_TRY_COMPILE([ -$2 -], -[ -$3 -], -kde_cv_func_$1=yes, -kde_cv_func_$1=no) -CXXFLAGS="$save_CXXFLAGS" -LIBS="$kde_safe_LIBS" -AC_LANG_RESTORE -]) - -AC_MSG_RESULT($kde_cv_func_$1) - -AC_MSG_CHECKING([if $1 needs custom prototype]) -AC_CACHE_VAL(kde_cv_proto_$1, -[ -if test "x$kde_cv_func_$1" = xyes; then - kde_cv_proto_$1=no -else - case "$1" in - setenv|unsetenv|usleep|random|srandom|seteuid|mkstemps|mkstemp|revoke|vsnprintf|strlcpy|strlcat) - kde_cv_proto_$1="yes - in libkdefakes" - ;; - *) - kde_cv_proto_$1=unknown - ;; - esac -fi - -if test "x$kde_cv_proto_$1" = xunknown; then - -AC_LANG_SAVE -AC_LANG_CPLUSPLUS - kde_safe_libs=$LIBS - LIBS="$LIBS $X_EXTRA_LIBS" - AC_TRY_LINK([ -$2 - -extern "C" $4; -], -[ -$3 -], -[ kde_cv_func_$1=yes - kde_cv_proto_$1=yes ], - [kde_cv_proto_$1="$1 unavailable"] -) -LIBS=$kde_safe_libs -AC_LANG_RESTORE -fi -]) -AC_MSG_RESULT($kde_cv_proto_$1) - -if test "x$kde_cv_func_$1" = xyes; then - AC_DEFINE(HAVE_$5, 1, [Define if you have $1]) - $6 -fi -if test "x$kde_cv_proto_$1" = xno; then - AC_DEFINE(HAVE_$5_PROTO, 1, - [Define if you have the $1 prototype]) -fi - -AH_VERBATIM([_HAVE_$5_PROTO], -[ -#if !defined(HAVE_$5_PROTO) -#ifdef __cplusplus -extern "C" { -#endif -$4; -#ifdef __cplusplus -} -#endif -#endif -]) -]) - -AC_DEFUN([AC_CHECK_SETENV], -[ - KDE_CHECK_FUNC_EXT(setenv, [ -#include <stdlib.h> -], - [setenv("VAR", "VALUE", 1);], - [int setenv (const char *, const char *, int)], - [SETENV]) -]) - -AC_DEFUN([AC_CHECK_UNSETENV], -[ - KDE_CHECK_FUNC_EXT(unsetenv, [ -#include <stdlib.h> -], - [unsetenv("VAR");], - [void unsetenv (const char *)], - [UNSETENV]) -]) - -AC_DEFUN([AC_CHECK_GETDOMAINNAME], -[ - KDE_CHECK_FUNC_EXT(getdomainname, [ -#include <stdlib.h> -#include <unistd.h> -#include <netdb.h> -], - [ -char buffer[200]; -getdomainname(buffer, 200); -], - [#include <sys/types.h> - int getdomainname (char *, size_t)], - [GETDOMAINNAME]) -]) - -AC_DEFUN([AC_CHECK_GETHOSTNAME], -[ - KDE_CHECK_FUNC_EXT(gethostname, [ -#include <stdlib.h> -#include <unistd.h> -], - [ -char buffer[200]; -gethostname(buffer, 200); -], - [int gethostname (char *, unsigned int)], - [GETHOSTNAME]) -]) - -AC_DEFUN([AC_CHECK_USLEEP], -[ - KDE_CHECK_FUNC_EXT(usleep, [ -#include <unistd.h> -], - [ -usleep(200); -], - [int usleep (unsigned int)], - [USLEEP]) -]) - - -AC_DEFUN([AC_CHECK_RANDOM], -[ - KDE_CHECK_FUNC_EXT(random, [ -#include <stdlib.h> -], - [ -random(); -], - [long int random(void)], - [RANDOM]) - - KDE_CHECK_FUNC_EXT(srandom, [ -#include <stdlib.h> -], - [ -srandom(27); -], - [void srandom(unsigned int)], - [SRANDOM]) - -]) - -AC_DEFUN([AC_CHECK_INITGROUPS], -[ - KDE_CHECK_FUNC_EXT(initgroups, [ -#include <sys/types.h> -#include <unistd.h> -#include <grp.h> -], - [ -char buffer[200]; -initgroups(buffer, 27); -], - [int initgroups(const char *, gid_t)], - [INITGROUPS]) -]) - -AC_DEFUN([AC_CHECK_MKSTEMPS], -[ - KDE_CHECK_FUNC_EXT(mkstemps, [ -#include <stdlib.h> -#include <unistd.h> -], - [ -mkstemps("/tmp/aaaXXXXXX", 6); -], - [int mkstemps(char *, int)], - [MKSTEMPS]) -]) - -AC_DEFUN([AC_CHECK_MKSTEMP], -[ - KDE_CHECK_FUNC_EXT(mkstemp, [ -#include <stdlib.h> -#include <unistd.h> -], - [ -mkstemp("/tmp/aaaXXXXXX"); -], - [int mkstemp(char *)], - [MKSTEMP]) -]) - -AC_DEFUN([AC_CHECK_MKDTEMP], -[ - KDE_CHECK_FUNC_EXT(mkdtemp, [ -#include <stdlib.h> -#include <unistd.h> -], - [ -mkdtemp("/tmp/aaaXXXXXX"); -], - [char *mkdtemp(char *)], - [MKDTEMP]) -]) - - -AC_DEFUN([AC_CHECK_RES_INIT], -[ - AC_MSG_CHECKING([if res_init needs -lresolv]) - kde_libs_safe="$LIBS" - LIBS="$LIBS $X_EXTRA_LIBS -lresolv" - AC_TRY_LINK( - [ -#include <sys/types.h> -#include <netinet/in.h> -#include <arpa/nameser.h> -#include <resolv.h> - ], - [ - res_init(); - ], - [ - LIBRESOLV="-lresolv" - AC_MSG_RESULT(yes) - AC_DEFINE(HAVE_RES_INIT, 1, [Define if you have the res_init function]) - ], - [ AC_MSG_RESULT(no) ] - ) - LIBS=$kde_libs_safe - AC_SUBST(LIBRESOLV) - - KDE_CHECK_FUNC_EXT(res_init, - [ -#include <sys/types.h> -#include <netinet/in.h> -#include <arpa/nameser.h> -#include <resolv.h> - ], - [res_init()], - [int res_init(void)], - [RES_INIT]) -]) - -AC_DEFUN([AC_CHECK_STRLCPY], -[ - KDE_CHECK_FUNC_EXT(strlcpy, [ -#include <string.h> -], -[ char buf[20]; - strlcpy(buf, "KDE function test", sizeof(buf)); -], - [unsigned long strlcpy(char*, const char*, unsigned long)], - [STRLCPY]) -]) - -AC_DEFUN([AC_CHECK_STRLCAT], -[ - KDE_CHECK_FUNC_EXT(strlcat, [ -#include <string.h> -], -[ char buf[20]; - buf[0]='\0'; - strlcat(buf, "KDE function test", sizeof(buf)); -], - [unsigned long strlcat(char*, const char*, unsigned long)], - [STRLCAT]) -]) - -AC_DEFUN([AC_CHECK_RES_QUERY], -[ - KDE_CHECK_FUNC_EXT(res_query, [ -#include <sys/types.h> -#include <netinet/in.h> -#include <arpa/nameser.h> -#include <resolv.h> -#include <netdb.h> -], -[ -res_query(NULL, 0, 0, NULL, 0); -], - [int res_query(const char *, int, int, unsigned char *, int)], - [RES_QUERY]) -]) - -AC_DEFUN([AC_CHECK_DN_SKIPNAME], -[ - KDE_CHECK_FUNC_EXT(dn_skipname, [ -#include <sys/types.h> -#include <netinet/in.h> -#include <arpa/nameser.h> -#include <resolv.h> -], -[ -dn_skipname (NULL, NULL); -], - [int dn_skipname (unsigned char *, unsigned char *)], - [DN_SKIPNAME]) -]) - - -AC_DEFUN([AC_FIND_GIF], - [AC_MSG_CHECKING([for giflib]) -AC_CACHE_VAL(ac_cv_lib_gif, -[ac_save_LIBS="$LIBS" -if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then -LIBS="$all_libraries -lgif -lX11 $LIBSOCKET" -else -LIBS="$all_libraries -lgif" -fi -AC_TRY_LINK(dnl -[ -#ifdef __cplusplus -extern "C" { -#endif -int GifLastError(void); -#ifdef __cplusplus -} -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -], - [return GifLastError();], - eval "ac_cv_lib_gif=yes", - eval "ac_cv_lib_gif=no") -LIBS="$ac_save_LIBS" -])dnl -if eval "test \"`echo $ac_cv_lib_gif`\" = yes"; then - AC_MSG_RESULT(yes) - AC_DEFINE_UNQUOTED(HAVE_LIBGIF, 1, [Define if you have libgif]) -else - AC_MSG_ERROR(You need giflib30. Please install the kdesupport package) -fi -]) - -AC_DEFUN([KDE_FIND_JPEG_HELPER], -[ -AC_MSG_CHECKING([for libjpeg$2]) -AC_CACHE_VAL(ac_cv_lib_jpeg_$1, -[ -ac_save_LIBS="$LIBS" -LIBS="$all_libraries $USER_LDFLAGS -ljpeg$2 -lm" -ac_save_CFLAGS="$CFLAGS" -CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" -AC_TRY_LINK( -[ -#ifdef __cplusplus -extern "C" { -#endif -void jpeg_CreateDecompress(); -#ifdef __cplusplus -} -#endif -], -[jpeg_CreateDecompress();], - eval "ac_cv_lib_jpeg_$1=-ljpeg$2", - eval "ac_cv_lib_jpeg_$1=no") -LIBS="$ac_save_LIBS" -CFLAGS="$ac_save_CFLAGS" -]) - -if eval "test ! \"`echo $ac_cv_lib_jpeg_$1`\" = no"; then - LIBJPEG="$ac_cv_lib_jpeg_$1" - AC_MSG_RESULT($ac_cv_lib_jpeg_$1) -else - AC_MSG_RESULT(no) - $3 -fi - -]) - -AC_DEFUN([AC_FIND_JPEG], -[ -dnl first look for libraries -KDE_FIND_JPEG_HELPER(6b, 6b, - KDE_FIND_JPEG_HELPER(normal, [], - [ - LIBJPEG= - ] - ) -) - -dnl then search the headers (can't use simply AC_TRY_xxx, as jpeglib.h -dnl requires system dependent includes loaded before it) -jpeg_incdirs="$includedir /usr/include /usr/local/include $kde_extra_includes" -AC_FIND_FILE(jpeglib.h, $jpeg_incdirs, jpeg_incdir) -test "x$jpeg_incdir" = xNO && jpeg_incdir= - -dnl if headers _and_ libraries are missing, this is no error, and we -dnl continue with a warning (the user will get no jpeg support in khtml) -dnl if only one is missing, it means a configuration error, but we still -dnl only warn -if test -n "$jpeg_incdir" && test -n "$LIBJPEG" ; then - AC_DEFINE_UNQUOTED(HAVE_LIBJPEG, 1, [Define if you have libjpeg]) -else - if test -n "$jpeg_incdir" || test -n "$LIBJPEG" ; then - AC_MSG_WARN([ -There is an installation error in jpeg support. You seem to have only one -of either the headers _or_ the libraries installed. You may need to either -provide correct --with-extra-... options, or the development package of -libjpeg6b. You can get a source package of libjpeg from http://www.ijg.org/ -Disabling JPEG support. -]) - else - AC_MSG_WARN([libjpeg not found. disable JPEG support.]) - fi - jpeg_incdir= - LIBJPEG= -fi - -AC_SUBST(LIBJPEG) -AH_VERBATIM(_AC_CHECK_JPEG, -[/* - * jpeg.h needs HAVE_BOOLEAN, when the system uses boolean in system - * headers and I'm too lazy to write a configure test as long as only - * unixware is related - */ -#ifdef _UNIXWARE -#define HAVE_BOOLEAN -#endif -]) -]) - -AC_DEFUN([KDE_CHECK_QT_JPEG], -[ -if test -n "$LIBJPEG"; then -AC_MSG_CHECKING([if Qt needs $LIBJPEG]) -AC_CACHE_VAL(kde_cv_qt_jpeg, -[ -AC_LANG_SAVE -AC_LANG_CPLUSPLUS -ac_save_LIBS="$LIBS" -LIBS="$all_libraries $USER_LDFLAGS $LIBQT" -LIBS=`echo $LIBS | sed "s/$LIBJPEG//"` -ac_save_CXXFLAGS="$CXXFLAGS" -CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES" -AC_TRY_LINK( -[#include <qapplication.h>], - [ - int argc; - char** argv; - QApplication app(argc, argv);], - eval "kde_cv_qt_jpeg=no", - eval "kde_cv_qt_jpeg=yes") -LIBS="$ac_save_LIBS" -CXXFLAGS="$ac_save_CXXFLAGS" -AC_LANG_RESTORE -fi -]) - -if eval "test ! \"`echo $kde_cv_qt_jpeg`\" = no"; then - AC_MSG_RESULT(yes) - LIBJPEG_QT='$(LIBJPEG)' -else - AC_MSG_RESULT(no) - LIBJPEG_QT= -fi - -]) - -AC_DEFUN([AC_FIND_ZLIB], -[ -AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) -AC_MSG_CHECKING([for libz]) -AC_CACHE_VAL(ac_cv_lib_z, -[ -kde_save_LIBS="$LIBS" -LIBS="$all_libraries $USER_LDFLAGS -lz $LIBSOCKET" -kde_save_CFLAGS="$CFLAGS" -CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" -AC_TRY_LINK(dnl -[ -#include<zlib.h> -], -[ - char buf[42]; - gzFile f = (gzFile) 0; - /* this would segfault.. but we only link, don't run */ - (void) gzgets(f, buf, sizeof(buf)); - - return (zlibVersion() == ZLIB_VERSION); -], - eval "ac_cv_lib_z='-lz'", - eval "ac_cv_lib_z=no") -LIBS="$kde_save_LIBS" -CFLAGS="$kde_save_CFLAGS" -])dnl -if test ! "$ac_cv_lib_z" = no; then - AC_DEFINE_UNQUOTED(HAVE_LIBZ, 1, [Define if you have libz]) - LIBZ="$ac_cv_lib_z" - AC_MSG_RESULT($ac_cv_lib_z) -else - AC_MSG_ERROR(not found. - Possibly configure picks up an outdated version - installed by XFree86. Remove it from your system. - - Check your installation and look into config.log) - LIBZ="" -fi -AC_SUBST(LIBZ) -]) - -AC_DEFUN([KDE_TRY_TIFFLIB], -[ -AC_MSG_CHECKING([for libtiff $1]) - -AC_CACHE_VAL(kde_cv_libtiff_$1, -[ -AC_LANG_SAVE -AC_LANG_CPLUSPLUS -kde_save_LIBS="$LIBS" -if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then -LIBS="$all_libraries $USER_LDFLAGS -l$1 $LIBJPEG $LIBZ -lX11 $LIBSOCKET -lm" -else -LIBS="$all_libraries $USER_LDFLAGS -l$1 $LIBJPEG $LIBZ -lm" -fi -kde_save_CXXFLAGS="$CXXFLAGS" -CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES" - -AC_TRY_LINK(dnl -[ -#include<tiffio.h> -], - [return (TIFFOpen( "", "r") == 0); ], -[ - kde_cv_libtiff_$1="-l$1 $LIBJPEG $LIBZ" -], [ - kde_cv_libtiff_$1=no -]) - -LIBS="$kde_save_LIBS" -CXXFLAGS="$kde_save_CXXFLAGS" -AC_LANG_RESTORE -]) - -if test "$kde_cv_libtiff_$1" = "no"; then - AC_MSG_RESULT(no) - LIBTIFF="" - $3 -else - LIBTIFF="$kde_cv_libtiff_$1" - AC_MSG_RESULT(yes) - AC_DEFINE_UNQUOTED(HAVE_LIBTIFF, 1, [Define if you have libtiff]) - $2 -fi - -]) - -AC_DEFUN([AC_FIND_TIFF], -[ -AC_REQUIRE([K_PATH_X]) -AC_REQUIRE([AC_FIND_ZLIB]) -AC_REQUIRE([AC_FIND_JPEG]) -AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) - -KDE_TRY_TIFFLIB(tiff, [], - KDE_TRY_TIFFLIB(tiff34)) - -AC_SUBST(LIBTIFF) -]) - -AC_DEFUN([KDE_FIND_LIBEXR], -[ -AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) -AC_REQUIRE([AC_FIND_ZLIB]) -AC_CACHE_VAL(ac_cv_libexr, -[ - if test -z "$PKG_CONFIG"; then - AC_PATH_PROG(PKG_CONFIG, pkg-config, no) - fi - - AC_MSG_CHECKING([for OpenEXR libraries]) - - if test "$PKG_CONFIG" = "no" ; then - AC_MSG_RESULT(no) - echo "*** The pkg-config script could not be found. Make sure it is" - echo "*** in your path, or set the PKG_CONFIG environment variable" - echo "*** to the full path to pkg-config." - echo "*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config." - else - if !(`$PKG_CONFIG --exists OpenEXR`) ; then - AC_MSG_RESULT(no) - EXRSTATUS=no - else - if !(`$PKG_CONFIG --atleast-version="1.1.1" OpenEXR`) ; then - AC_MSG_RESULT(no) - EXRSTATUS=old - else - kde_save_LIBS="$LIBS" - LIBS="$LIBS $all_libraries $USER_LDFLAGS $LIBZ `pkg-config --libs OpenEXR`" - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - kde_save_CXXFLAGS="$CXXFLAGS" - EXR_FLAGS=`$PKG_CONFIG --cflags OpenEXR` - CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES $EXR_FLAGS" - - AC_TRY_LINK(dnl - [ - #include <ImfRgbaFile.h> - ], - [ - using namespace Imf; - RgbaInputFile file ("dummy"); - return 0; - ], - eval "ac_cv_libexr='`pkg-config --libs OpenEXR`'", - eval "ac_cv_libexr=no" - ) - LIBS="$kde_save_LIBS" - CXXFLAGS="$kde_save_CXXFLAGS" - AC_LANG_RESTORE - ])dnl - if eval "test ! \"`echo $ac_cv_libexr`\" = no"; then - AC_DEFINE_UNQUOTED(HAVE_EXR, 1, [Define if you have OpenEXR]) - LIB_EXR="$ac_cv_libexr" - AC_MSG_RESULT($ac_cv_libexr) - else - AC_MSG_RESULT(no) - LIB_EXR="" - fi - fi - fi - fi - AC_SUBST(LIB_EXR) - AC_SUBST(EXR_FLAGS) -]) - - - -AC_DEFUN([AC_FIND_PNG], -[ -AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) -AC_REQUIRE([AC_FIND_ZLIB]) -AC_MSG_CHECKING([for libpng]) -AC_CACHE_VAL(ac_cv_lib_png, -[ -kde_save_LIBS="$LIBS" -if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then -LIBS="$LIBS $all_libraries $USER_LDFLAGS -lpng $LIBZ -lm -lX11 $LIBSOCKET" -else -LIBS="$LIBS $all_libraries $USER_LDFLAGS -lpng $LIBZ -lm" -fi -kde_save_CFLAGS="$CFLAGS" -CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" - -AC_TRY_LINK(dnl - [ - #include<png.h> - ], - [ - png_structp png_ptr = png_create_read_struct( /* image ptr */ - PNG_LIBPNG_VER_STRING, 0, 0, 0 ); - return( png_ptr != 0 ); - ], - eval "ac_cv_lib_png='-lpng $LIBZ -lm'", - eval "ac_cv_lib_png=no" -) -LIBS="$kde_save_LIBS" -CFLAGS="$kde_save_CFLAGS" -])dnl -if eval "test ! \"`echo $ac_cv_lib_png`\" = no"; then - AC_DEFINE_UNQUOTED(HAVE_LIBPNG, 1, [Define if you have libpng]) - LIBPNG="$ac_cv_lib_png" - AC_SUBST(LIBPNG) - AC_MSG_RESULT($ac_cv_lib_png) -else - AC_MSG_RESULT(no) - LIBPNG="" - AC_SUBST(LIBPNG) -fi -]) - - -AC_DEFUN([AC_FIND_JASPER], -[ -AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) -AC_REQUIRE([AC_FIND_JPEG]) -AC_MSG_CHECKING([for jasper]) -AC_CACHE_VAL(ac_cv_jasper, -[ -kde_save_LIBS="$LIBS" -LIBS="$LIBS $all_libraries $USER_LDFLAGS -ljasper $LIBJPEG -lm" -kde_save_CFLAGS="$CFLAGS" -CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" - -AC_TRY_LINK(dnl - [ - #include<jasper/jasper.h> - ], - [ - return( jas_init() ); - ], - eval "ac_cv_jasper='-ljasper $LIBJPEG -lm'", - eval "ac_cv_jasper=no" -) -LIBS="$kde_save_LIBS" -CFLAGS="$kde_save_CFLAGS" -])dnl -if eval "test ! \"`echo $ac_cv_jasper`\" = no"; then - AC_DEFINE_UNQUOTED(HAVE_JASPER, 1, [Define if you have jasper]) - LIB_JASPER="$ac_cv_jasper" - AC_MSG_RESULT($ac_cv_jasper) -else - AC_MSG_RESULT(no) - LIB_JASPER="" -fi -AC_SUBST(LIB_JASPER) -]) - -AC_DEFUN([AC_CHECK_BOOL], -[ - AC_DEFINE_UNQUOTED(HAVE_BOOL, 1, [You _must_ have bool]) -]) - -AC_DEFUN([AC_CHECK_GNU_EXTENSIONS], -[ -AC_MSG_CHECKING(if you need GNU extensions) -AC_CACHE_VAL(ac_cv_gnu_extensions, -[ -cat > conftest.c << EOF -#include <features.h> - -#ifdef __GNU_LIBRARY__ -yes -#endif -EOF - -if (eval "$ac_cpp conftest.c") 2>&5 | - egrep "yes" >/dev/null 2>&1; then - rm -rf conftest* - ac_cv_gnu_extensions=yes -else - ac_cv_gnu_extensions=no -fi -]) - -AC_MSG_RESULT($ac_cv_gnu_extensions) -if test "$ac_cv_gnu_extensions" = "yes"; then - AC_DEFINE_UNQUOTED(_GNU_SOURCE, 1, [Define if you need to use the GNU extensions]) -fi -]) - -AC_DEFUN([KDE_CHECK_COMPILER_FLAG], -[ -AC_MSG_CHECKING([whether $CXX supports -$1]) -kde_cache=`echo $1 | sed 'y% .=/+-,%____p__%'` -AC_CACHE_VAL(kde_cv_prog_cxx_$kde_cache, -[ - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - save_CXXFLAGS="$CXXFLAGS" - CXXFLAGS="$CXXFLAGS -$1" - AC_TRY_LINK([],[ return 0; ], [eval "kde_cv_prog_cxx_$kde_cache=yes"], []) - CXXFLAGS="$save_CXXFLAGS" - AC_LANG_RESTORE -]) -if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then - AC_MSG_RESULT(yes) - : - $2 -else - AC_MSG_RESULT(no) - : - $3 -fi -]) - -AC_DEFUN([KDE_CHECK_C_COMPILER_FLAG], -[ -AC_MSG_CHECKING([whether $CC supports -$1]) -kde_cache=`echo $1 | sed 'y% .=/+-,%____p__%'` -AC_CACHE_VAL(kde_cv_prog_cc_$kde_cache, -[ - AC_LANG_SAVE - AC_LANG_C - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -$1" - AC_TRY_LINK([],[ return 0; ], [eval "kde_cv_prog_cc_$kde_cache=yes"], []) - CFLAGS="$save_CFLAGS" - AC_LANG_RESTORE -]) -if eval "test \"`echo '$kde_cv_prog_cc_'$kde_cache`\" = yes"; then - AC_MSG_RESULT(yes) - : - $2 -else - AC_MSG_RESULT(no) - : - $3 -fi -]) - - -dnl AC_REMOVE_FORBIDDEN removes forbidden arguments from variables -dnl use: AC_REMOVE_FORBIDDEN(CC, [-forbid -bad-option whatever]) -dnl it's all white-space separated -AC_DEFUN([AC_REMOVE_FORBIDDEN], -[ __val=$$1 - __forbid=" $2 " - if test -n "$__val"; then - __new="" - ac_save_IFS=$IFS - IFS=" " - for i in $__val; do - case "$__forbid" in - *" $i "*) AC_MSG_WARN([found forbidden $i in $1, removing it]) ;; - *) # Careful to not add spaces, where there were none, because otherwise - # libtool gets confused, if we change e.g. CXX - if test -z "$__new" ; then __new=$i ; else __new="$__new $i" ; fi ;; - esac - done - IFS=$ac_save_IFS - $1=$__new - fi -]) - - -AC_DEFUN([KDE_CHECK_FOR_BAD_COMPILER], -[ - AC_MSG_CHECKING([whether $CC is blacklisted]) - - dnl In theory we have tu run this test against $CC and $CXX - dnl in C and in C++ mode, because its perfectly legal for - dnl the user to mix compiler versions, since C has a defined - dnl ABI. - dnl - dnl For now, we assume the user is not on crack. - - AC_TRY_COMPILE([ -#ifdef __GNUC__ -#if __GNUC__ == 4 && __GNUC_MINOR__ == 0 && __GNUC_PATCHLEVEL__ == 0 -choke me -#endif -#endif -], , - kde_bad_compiler=no, - kde_bad_compiler=yes -) - - AC_MSG_RESULT($kde_bad_compiler) - -if test "$kde_bad_compiler" = "yes"; then - AC_MSG_ERROR([ - -This particular compiler version is blacklisted because it -is known to miscompile KDE. Please use a newer version, or -if that is not yet available, choose an older version. - -Please do not report a bug or bother us reporting this -configure error. We know about it, and we introduced -it by intention to avoid untraceable bugs or crashes in KDE. - -]) -fi - -]) - -dnl AC_VALIDIFY_CXXFLAGS checks for forbidden flags the user may have given -AC_DEFUN([AC_VALIDIFY_CXXFLAGS], -[dnl -if test "x$kde_use_qt_emb" != "xyes"; then - AC_REMOVE_FORBIDDEN(CXX, [-fno-rtti -rpath]) - AC_REMOVE_FORBIDDEN(CXXFLAGS, [-fno-rtti -rpath]) -else - AC_REMOVE_FORBIDDEN(CXX, [-rpath]) - AC_REMOVE_FORBIDDEN(CXXFLAGS, [-rpath]) -fi -]) - -AC_DEFUN([AC_CHECK_COMPILERS], -[ - AC_ARG_ENABLE(debug, - AC_HELP_STRING([--enable-debug=ARG],[enables debug symbols (yes|no|full) [default=no]]), - [ - case $enableval in - yes) - kde_use_debug_code="yes" - kde_use_debug_define=no - ;; - full) - kde_use_debug_code="full" - kde_use_debug_define=no - ;; - *) - kde_use_debug_code="no" - kde_use_debug_define=yes - ;; - esac - ], - [kde_use_debug_code="no" - kde_use_debug_define=no - ]) - - dnl Just for configure --help - AC_ARG_ENABLE(dummyoption, - AC_HELP_STRING([--disable-debug], - [disables debug output and debug symbols [default=no]]), - [],[]) - - AC_ARG_ENABLE(strict, - AC_HELP_STRING([--enable-strict], - [compiles with strict compiler options (may not work!)]), - [ - if test $enableval = "no"; then - kde_use_strict_options="no" - else - kde_use_strict_options="yes" - fi - ], [kde_use_strict_options="no"]) - - AC_ARG_ENABLE(warnings,AC_HELP_STRING([--disable-warnings],[disables compilation with -Wall and similar]), - [ - if test $enableval = "no"; then - kde_use_warnings="no" - else - kde_use_warnings="yes" - fi - ], [kde_use_warnings="yes"]) - - dnl enable warnings for debug build - if test "$kde_use_debug_code" != "no"; then - kde_use_warnings=yes - fi - - AC_ARG_ENABLE(profile,AC_HELP_STRING([--enable-profile],[creates profiling infos [default=no]]), - [kde_use_profiling=$enableval], - [kde_use_profiling="no"] - ) - - dnl this prevents stupid AC_PROG_CC to add "-g" to the default CFLAGS - CFLAGS=" $CFLAGS" - - AC_PROG_CC - - AC_PROG_CPP - - if test "$GCC" = "yes"; then - if test "$kde_use_debug_code" != "no"; then - if test $kde_use_debug_code = "full"; then - CFLAGS="-g3 -fno-inline $CFLAGS" - else - CFLAGS="-g -O2 -fno-schedule-insns -fno-inline $CFLAGS" - fi - else - CFLAGS="-O2 $CFLAGS" - fi - fi - - if test "$kde_use_debug_define" = "yes"; then - CFLAGS="-DNDEBUG $CFLAGS" - fi - - - case "$host" in - *-*-sysv4.2uw*) CFLAGS="-D_UNIXWARE $CFLAGS";; - *-*-sysv5uw7*) CFLAGS="-D_UNIXWARE7 $CFLAGS";; - esac - - if test -z "$LDFLAGS" && test "$kde_use_debug_code" = "no" && test "$GCC" = "yes"; then - LDFLAGS="" - fi - - CXXFLAGS=" $CXXFLAGS" - - AC_PROG_CXX - -dnl KDE_CHECK_FOR_BAD_COMPILER - - if test "$GXX" = "yes" || test "$CXX" = "KCC"; then - if test "$kde_use_debug_code" != "no"; then - if test "$CXX" = "KCC"; then - CXXFLAGS="+K0 -Wall -pedantic -W -Wpointer-arith -Wwrite-strings $CXXFLAGS" - else - if test "$kde_use_debug_code" = "full"; then - CXXFLAGS="-g3 -fno-inline $CXXFLAGS" - else - CXXFLAGS="-g -O2 -fno-schedule-insns -fno-inline $CXXFLAGS" - fi - fi - KDE_CHECK_COMPILER_FLAG(fno-builtin,[CXXFLAGS="-fno-builtin $CXXFLAGS"]) - - dnl convenience compiler flags - KDE_CHECK_COMPILER_FLAG(Woverloaded-virtual, [WOVERLOADED_VIRTUAL="-Woverloaded-virtual"], [WOVERLOADED_VRITUAL=""]) - AC_SUBST(WOVERLOADED_VIRTUAL) - else - if test "$CXX" = "KCC"; then - CXXFLAGS="+K3 $CXXFLAGS" - else - CXXFLAGS="-O2 $CXXFLAGS" - fi - fi - fi - - if test "$kde_use_debug_define" = "yes"; then - CXXFLAGS="-DNDEBUG -DNO_DEBUG $CXXFLAGS" - fi - - if test "$kde_use_profiling" = "yes"; then - KDE_CHECK_COMPILER_FLAG(pg, - [ - CFLAGS="-pg $CFLAGS" - CXXFLAGS="-pg $CXXFLAGS" - ]) - fi - - if test "$kde_use_warnings" = "yes"; then - if test "$GCC" = "yes"; then - CXXFLAGS="-Wall -W -Wpointer-arith $CXXFLAGS" - case $host in - *-*-linux-gnu) - CFLAGS="-std=iso9899:1990 -W -Wall -Wchar-subscripts -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -D_XOPEN_SOURCE=500 -D_BSD_SOURCE $CFLAGS" - CXXFLAGS="-ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts $CXXFLAGS" - KDE_CHECK_COMPILER_FLAG(Wmissing-format-attribute, [CXXFLAGS="$CXXFLAGS -Wformat-security -Wmissing-format-attribute"]) - KDE_CHECK_C_COMPILER_FLAG(Wmissing-format-attribute, [CFLAGS="$CFLAGS -Wformat-security -Wmissing-format-attribute"]) - ;; - esac - KDE_CHECK_COMPILER_FLAG(Wundef,[CXXFLAGS="-Wundef $CXXFLAGS"]) - KDE_CHECK_COMPILER_FLAG(Wno-long-long,[CXXFLAGS="-Wno-long-long $CXXFLAGS"]) - dnl ### FIXME: revert for KDE 4 - KDE_CHECK_COMPILER_FLAG(Wno-non-virtual-dtor,[CXXFLAGS="$CXXFLAGS -Wno-non-virtual-dtor"]) - fi - fi - - if test "$GXX" = "yes" && test "$kde_use_strict_options" = "yes"; then - CXXFLAGS="-Wcast-qual -Wshadow -Wcast-align $CXXFLAGS" - fi - - AC_ARG_ENABLE(pch, - AC_HELP_STRING([--enable-pch], - [enables precompiled header support (currently only KCC or gcc >=3.4+unsermake) [default=no]]), - [ kde_use_pch=$enableval ],[ kde_use_pch=no ]) - - HAVE_GCC_VISIBILITY=0 - AC_SUBST([HAVE_GCC_VISIBILITY]) - - if test "$GXX" = "yes"; then - gcc_no_reorder_blocks=NO - KDE_CHECK_COMPILER_FLAG(fno-reorder-blocks,[gcc_no_reorder_blocks=YES]) - if test $kde_use_debug_code != "no" && \ - test $kde_use_debug_code != "full" && \ - test "YES" = "$gcc_no_reorder_blocks" ; then - CXXFLAGS="$CXXFLAGS -fno-reorder-blocks" - CFLAGS="$CFLAGS -fno-reorder-blocks" - fi - KDE_CHECK_COMPILER_FLAG(fno-exceptions,[CXXFLAGS="$CXXFLAGS -fno-exceptions"]) - KDE_CHECK_COMPILER_FLAG(fno-check-new, [CXXFLAGS="$CXXFLAGS -fno-check-new"]) - KDE_CHECK_COMPILER_FLAG(fno-common, [CXXFLAGS="$CXXFLAGS -fno-common"]) - KDE_CHECK_COMPILER_FLAG(fexceptions, [USE_EXCEPTIONS="-fexceptions"], USE_EXCEPTIONS= ) - ENABLE_PERMISSIVE_FLAG="-fpermissive" - - if test "$kde_use_pch" = "yes"; then - AC_MSG_CHECKING(whether gcc supports precompiling c header files) - echo >conftest.h - if $CC -x c-header conftest.h >/dev/null 2>/dev/null; then - kde_gcc_supports_pch=yes - AC_MSG_RESULT(yes) - else - kde_gcc_supports_pch=no - AC_MSG_RESULT(no) - fi - if test "$kde_gcc_supports_pch" = "yes"; then - AC_MSG_CHECKING(whether gcc supports precompiling c++ header files) - if $CXX -x c++-header conftest.h >/dev/null 2>/dev/null; then - kde_gcc_supports_pch=yes - AC_MSG_RESULT(yes) - else - kde_gcc_supports_pch=no - AC_MSG_RESULT(no) - fi - fi - rm -f conftest.h conftest.h.gch - fi - fi - AM_CONDITIONAL(unsermake_enable_pch, test "$kde_use_pch" = "yes" && test "$kde_gcc_supports_pch" = "yes") - if test "$CXX" = "KCC"; then - dnl unfortunately we currently cannot disable exception support in KCC - dnl because doing so is binary incompatible and Qt by default links with exceptions :-( - dnl KDE_CHECK_COMPILER_FLAG(-no_exceptions,[CXXFLAGS="$CXXFLAGS --no_exceptions"]) - dnl KDE_CHECK_COMPILER_FLAG(-exceptions, [USE_EXCEPTIONS="--exceptions"], USE_EXCEPTIONS= ) - - if test "$kde_use_pch" = "yes"; then - dnl TODO: support --pch-dir! - KDE_CHECK_COMPILER_FLAG(-pch,[CXXFLAGS="$CXXFLAGS --pch"]) - dnl the below works (but the dir must exist), but it's - dnl useless for a whole package. - dnl The are precompiled headers for each source file, so when compiling - dnl from scratch, it doesn't make a difference, and they take up - dnl around ~5Mb _per_ sourcefile. - dnl KDE_CHECK_COMPILER_FLAG(-pch_dir /tmp, - dnl [CXXFLAGS="$CXXFLAGS --pch_dir `pwd`/pcheaders"]) - fi - dnl this flag controls inlining. by default KCC inlines in optimisation mode - dnl all implementations that are defined inside the class {} declaration. - dnl because of templates-compatibility with broken gcc compilers, this - dnl can cause excessive inlining. This flag limits it to a sane level - KDE_CHECK_COMPILER_FLAG(-inline_keyword_space_time=6,[CXXFLAGS="$CXXFLAGS --inline_keyword_space_time=6"]) - KDE_CHECK_COMPILER_FLAG(-inline_auto_space_time=2,[CXXFLAGS="$CXXFLAGS --inline_auto_space_time=2"]) - KDE_CHECK_COMPILER_FLAG(-inline_implicit_space_time=2.0,[CXXFLAGS="$CXXFLAGS --inline_implicit_space_time=2.0"]) - KDE_CHECK_COMPILER_FLAG(-inline_generated_space_time=2.0,[CXXFLAGS="$CXXFLAGS --inline_generated_space_time=2.0"]) - dnl Some source files are shared between multiple executables - dnl (or libraries) and some of those need template instantiations. - dnl In that case KCC needs to compile those sources with - dnl --one_instantiation_per_object. To make it easy for us we compile - dnl _all_ objects with that flag (--one_per is a shorthand). - KDE_CHECK_COMPILER_FLAG(-one_per, [CXXFLAGS="$CXXFLAGS --one_per"]) - fi - AC_SUBST(USE_EXCEPTIONS) - dnl obsolete macro - provided to keep things going - USE_RTTI= - AC_SUBST(USE_RTTI) - - case "$host" in - *-*-irix*) test "$GXX" = yes && CXXFLAGS="-D_LANGUAGE_C_PLUS_PLUS -D__LANGUAGE_C_PLUS_PLUS $CXXFLAGS" ;; - *-*-sysv4.2uw*) CXXFLAGS="-D_UNIXWARE $CXXFLAGS";; - *-*-sysv5uw7*) CXXFLAGS="-D_UNIXWARE7 $CXXFLAGS";; - *-*-solaris*) - if test "$GXX" = yes; then - libstdcpp=`$CXX -print-file-name=libstdc++.so` - if test ! -f $libstdcpp; then - AC_MSG_ERROR([You've compiled gcc without --enable-shared. This doesn't work with KDE. Please recompile gcc with --enable-shared to receive a libstdc++.so]) - fi - fi - ;; - esac - - AC_VALIDIFY_CXXFLAGS - - AC_PROG_CXXCPP - - if test "$GCC" = yes; then - NOOPT_CFLAGS=-O0 - fi - KDE_CHECK_COMPILER_FLAG(O0,[NOOPT_CXXFLAGS=-O0]) - - AC_ARG_ENABLE(coverage, - AC_HELP_STRING([--enable-coverage],[use gcc coverage testing]), [ - if test "$am_cv_CC_dependencies_compiler_type" = "gcc3"; then - ac_coverage_compiler="-fprofile-arcs -ftest-coverage" - ac_coverage_linker="-lgcc" - elif test "$am_cv_CC_dependencies_compiler_type" = "gcc"; then - ac_coverage_compiler="-fprofile-arcs -ftest-coverage" - ac_coverage_linker="" - else - AC_MSG_ERROR([coverage with your compiler is not supported]) - fi - CFLAGS="$CFLAGS $ac_coverage_compiler" - CXXFLAGS="$CXXFLAGS $ac_coverage_compiler" - LDFLAGS="$LDFLAGS $ac_coverage_linker" - ]) - - AC_SUBST(NOOPT_CXXFLAGS) - AC_SUBST(NOOPT_CFLAGS) - AC_SUBST(ENABLE_PERMISSIVE_FLAG) - - KDE_CHECK_NEW_LDFLAGS - KDE_CHECK_FINAL - KDE_CHECK_CLOSURE - KDE_CHECK_NMCHECK - - ifdef([AM_DEPENDENCIES], AC_REQUIRE([KDE_ADD_DEPENDENCIES]), []) -]) - -AC_DEFUN([KDE_CHECK_VISIBILITY_GCC_BUG], - [ - AC_CACHE_CHECK([for gcc -fvisibility-inlines-hidden bug], kde_cv_val_gcc_visibility_bug, - [ - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - - safe_CXXFLAGS=$CXXFLAGS - safe_LDFLAGS=$LDFLAGS - CXXFLAGS="$CXXFLAGS -fPIC -fvisibility-inlines-hidden -O0" - LDFLAGS="$LDFLAGS -shared -fPIC" - - AC_TRY_LINK( - [ - /* http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19664 */ - #include <string> - int some_function( void ) __attribute__ ((visibility("default"))); - int some_function( void ) - { - std::string s("blafasel"); - return 0; - } - ], [/* elvis is alive */], - kde_cv_val_gcc_visibility_bug=no, kde_cv_val_gcc_visibility_bug=yes) - - CXXFLAGS=$safe_CXXFLAGS - LDFLAGS=$safe_LDFLAGS - AC_LANG_RESTORE - ] - ) - - if test x$kde_cv_val_gcc_visibility_bug = xno; then - CXXFLAGS="$CXXFLAGS -fvisibility-inlines-hidden" - fi - ] -) - -AC_DEFUN([KDE_ENABLE_HIDDEN_VISIBILITY], -[ - AC_BEFORE([AC_PATH_QT_1_3], [KDE_ENABLE_HIDDEN_VISIBILITY]) - - AC_MSG_CHECKING([grepping for visibility push/pop in headers]) - - if test "x$GXX" = "xyes"; then - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - AC_EGREP_CPP( - [GCC visibility push], - [ #include <exception> - ], - [ - AC_MSG_RESULT(yes) - kde_stdc_visibility_patched=yes ], - [ - AC_MSG_RESULT(no) - AC_MSG_WARN([Your libstdc++ doesn't appear to be patched for - visibility support. Disabling -fvisibility=hidden]) - - kde_stdc_visibility_patched=no ]) - - AC_LANG_RESTORE - - kde_have_gcc_visibility=no - KDE_CHECK_COMPILER_FLAG(fvisibility=hidden, - [ - kde_have_gcc_visibility=yes - dnl the whole toolchain is just a mess, gcc is just too buggy - dnl to handle STL with visibility enabled. Lets reconsider - dnl when gcc 4.2 is out or when things get fixed in the compiler. - dnl Contact mueller@kde.org for details. - AC_ARG_ENABLE(gcc-hidden-visibility, - AC_HELP_STRING([--enable-gcc-hidden-visibility],[toolchain hidden visibility [default=no]]), - [kde_have_gcc_visibility=$enableval], - [kde_have_gcc_visibility=no]) - - AC_CACHE_CHECK([if Qt is patched for -fvisibility], kde_cv_val_qt_gcc_visibility_patched, - [ - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - - safe_CXXFLAGS=$CXXFLAGS - CXXFLAGS="$CXXFLAGS $all_includes" - - AC_TRY_COMPILE( - [ -#include <qglobal.h> -#if Q_EXPORT - 0 != 0 -/* if this compiles, then Q_EXPORT is undefined */ -/* if Q_EXPORT is nonempty, this will break compilation */ -#endif - ], [/* elvis is alive */], - kde_cv_val_qt_gcc_visibility_patched=no, kde_cv_val_qt_gcc_visibility_patched=yes) - - CXXFLAGS=$safe_CXXFLAGS - AC_LANG_RESTORE - ] - ) - - if test x$kde_have_gcc_visibility = "xyes" && test x$kde_stdc_visibility_patched = "xyes" && test x$kde_cv_val_qt_gcc_visibility_patched = "xyes"; then - CXXFLAGS="$CXXFLAGS -fvisibility=hidden" - KDE_CHECK_VISIBILITY_GCC_BUG - HAVE_GCC_VISIBILITY=1 - AC_DEFINE_UNQUOTED(__KDE_HAVE_GCC_VISIBILITY, "$HAVE_GCC_VISIBILITY", [define to 1 if -fvisibility is supported]) - fi - ]) - fi -]) - -AC_DEFUN([KDE_ADD_DEPENDENCIES], -[ - [A]M_DEPENDENCIES(CC) - [A]M_DEPENDENCIES(CXX) -]) - -dnl just a wrapper to clean up configure.in -AC_DEFUN([KDE_PROG_LIBTOOL], -[ -AC_REQUIRE([AC_CHECK_COMPILERS]) -AC_REQUIRE([AC_ENABLE_SHARED]) -AC_REQUIRE([AC_ENABLE_STATIC]) - -AC_REQUIRE([AC_LIBTOOL_DLOPEN]) -AC_REQUIRE([KDE_CHECK_LIB64]) - -AC_OBJEXT -AC_EXEEXT - -AM_PROG_LIBTOOL -AC_LIBTOOL_CXX - -LIBTOOL_SHELL="/bin/sh ./libtool" -# LIBTOOL="$LIBTOOL --silent" -KDE_PLUGIN="-avoid-version -module -no-undefined \$(KDE_NO_UNDEFINED) \$(KDE_RPATH) \$(KDE_MT_LDFLAGS)" -AC_SUBST(KDE_PLUGIN) - -# This hack ensures that libtool creates shared libs for kunittest plugins. By default check_LTLIBRARIES makes static libs. -KDE_CHECK_PLUGIN="\$(KDE_PLUGIN) -rpath \$(libdir)" -AC_SUBST(KDE_CHECK_PLUGIN) - -# we patch configure quite some so we better keep that consistent for incremental runs -AC_SUBST(AUTOCONF,'$(SHELL) $(top_srcdir)/admin/cvs.sh configure || touch configure') -]) - -AC_DEFUN([KDE_CHECK_LIB64], -[ - kdelibsuff="$kde_libs_suffix" - if test -z "$kdelibsuff"; then - kdelibsuff="auto" - fi - AC_ARG_ENABLE(libsuffix, - AC_HELP_STRING([--enable-libsuffix], - [/lib directory suffix (64,32,none,auto[=default])]), - kdelibsuff=$enableval) - - if test "$kdelibsuff" = "auto"; then - -cat > conftest.c << EOF -#include <stdio.h> -int main() { - return 0; -} -EOF - kdelibsuff=`$CC conftest.c -o conftest.out; ldd conftest.out | grep -E "libc.so"| grep -E -o "/lib[[^\/]]*/" | sed "s/lib//" | sed "s/\/*//g"` - rm -rf conftest.* - fi - - if test "$kdelibsuff" = "no"; then - kdelibsuff= - fi - if test -z "$kdelibsuff"; then - AC_MSG_RESULT([not using lib directory suffix]) - AC_DEFINE(KDELIBSUFF, [""], Suffix for lib directories) - else - if test "$libdir" = '${exec_prefix}/lib'; then - libdir="$libdir${kdelibsuff}" - AC_SUBST([libdir], ["$libdir"]) dnl ugly hack for lib64 platforms - fi - AC_DEFINE_UNQUOTED(KDELIBSUFF, ["${kdelibsuff}"], Suffix for lib directories) - AC_MSG_RESULT([using lib directory suffix $kdelibsuff]) - fi -]) - -AC_DEFUN([KDE_CHECK_TYPES], -[ AC_CHECK_SIZEOF(int, 4)dnl - AC_CHECK_SIZEOF(short)dnl - AC_CHECK_SIZEOF(long, 4)dnl - AC_CHECK_SIZEOF(char *, 4)dnl -])dnl - -dnl Not used - kept for compat only? -AC_DEFUN([KDE_DO_IT_ALL], -[ -AC_CANONICAL_SYSTEM -AC_ARG_PROGRAM -AM_INIT_AUTOMAKE($1, $2) -AM_DISABLE_LIBRARIES -AC_PREFIX_DEFAULT(${KDEDIR:-/usr/local/kde}) -AC_CHECK_COMPILERS -KDE_PROG_LIBTOOL -AM_KDE_WITH_NLS -AC_PATH_KDE -]) - -AC_DEFUN([AC_CHECK_RPATH], -[ -AC_MSG_CHECKING(for rpath) -AC_ARG_ENABLE(rpath, - AC_HELP_STRING([--disable-rpath],[do not use the rpath feature of ld]), - USE_RPATH=$enableval, USE_RPATH=yes) - -if test -z "$KDE_RPATH" && test "$USE_RPATH" = "yes"; then - - KDE_RPATH="-R \$(libdir)" - - if test "$kde_libraries" != "$libdir"; then - KDE_RPATH="$KDE_RPATH -R \$(kde_libraries)" - fi - - if test -n "$qt_libraries"; then - KDE_RPATH="$KDE_RPATH -R \$(qt_libraries)" - fi - dnl $x_libraries is set to /usr/lib in case - if test -n "$X_LDFLAGS"; then - X_RPATH="-R \$(x_libraries)" - KDE_RPATH="$KDE_RPATH $X_RPATH" - fi - if test -n "$KDE_EXTRA_RPATH"; then - KDE_RPATH="$KDE_RPATH \$(KDE_EXTRA_RPATH)" - fi -fi -AC_SUBST(KDE_EXTRA_RPATH) -AC_SUBST(KDE_RPATH) -AC_SUBST(X_RPATH) -AC_MSG_RESULT($USE_RPATH) -]) - -dnl Check for the type of the third argument of getsockname -AC_DEFUN([AC_CHECK_SOCKLEN_T], -[ - AC_MSG_CHECKING(for socklen_t) - AC_CACHE_VAL(kde_cv_socklen_t, - [ - AC_LANG_PUSH(C++) - kde_cv_socklen_t=no - AC_TRY_COMPILE([ - #include <sys/types.h> - #include <sys/socket.h> - ], - [ - socklen_t len; - getpeername(0,0,&len); - ], - [ - kde_cv_socklen_t=yes - kde_cv_socklen_t_equiv=socklen_t - ]) - AC_LANG_POP(C++) - ]) - AC_MSG_RESULT($kde_cv_socklen_t) - if test $kde_cv_socklen_t = no; then - AC_MSG_CHECKING([for socklen_t equivalent for socket functions]) - AC_CACHE_VAL(kde_cv_socklen_t_equiv, - [ - kde_cv_socklen_t_equiv=int - AC_LANG_PUSH(C++) - for t in int size_t unsigned long "unsigned long"; do - AC_TRY_COMPILE([ - #include <sys/types.h> - #include <sys/socket.h> - ], - [ - $t len; - getpeername(0,0,&len); - ], - [ - kde_cv_socklen_t_equiv="$t" - break - ]) - done - AC_LANG_POP(C++) - ]) - AC_MSG_RESULT($kde_cv_socklen_t_equiv) - fi - AC_DEFINE_UNQUOTED(kde_socklen_t, $kde_cv_socklen_t_equiv, - [type to use in place of socklen_t if not defined]) - AC_DEFINE_UNQUOTED(ksize_t, $kde_cv_socklen_t_equiv, - [type to use in place of socklen_t if not defined (deprecated, use kde_socklen_t)]) -]) - -dnl This is a merge of some macros out of the gettext aclocal.m4 -dnl since we don't need anything, I took the things we need -dnl the copyright for them is: -dnl > -dnl Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc. -dnl This Makefile.in is free software; the Free Software Foundation -dnl gives unlimited permission to copy and/or distribute it, -dnl with or without modifications, as long as this notice is preserved. - -dnl This program is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without -dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A -dnl PARTICULAR PURPOSE. -dnl > -dnl for this file it is relicensed under LGPL - -AC_DEFUN([AM_KDE_WITH_NLS], - [ - dnl If we use NLS figure out what method - - AM_PATH_PROG_WITH_TEST_KDE(MSGFMT, msgfmt, - [test -n "`$ac_dir/$ac_word --version 2>&1 | grep 'GNU gettext'`"], msgfmt) - AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) - - if test -z "`$GMSGFMT --version 2>&1 | grep 'GNU gettext'`"; then - AC_MSG_RESULT([found msgfmt program is not GNU msgfmt; ignore it]) - GMSGFMT=":" - fi - MSGFMT=$GMSGFMT - AC_SUBST(GMSGFMT) - AC_SUBST(MSGFMT) - - AM_PATH_PROG_WITH_TEST_KDE(XGETTEXT, xgettext, - [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :) - - dnl Test whether we really found GNU xgettext. - if test "$XGETTEXT" != ":"; then - dnl If it is no GNU xgettext we define it as : so that the - dnl Makefiles still can work. - if $XGETTEXT --omit-header /dev/null 2> /dev/null; then - : ; - else - AC_MSG_RESULT( - [found xgettext programs is not GNU xgettext; ignore it]) - XGETTEXT=":" - fi - fi - AC_SUBST(XGETTEXT) - - ]) - -# Search path for a program which passes the given test. -# Ulrich Drepper <drepper@cygnus.com>, 1996. - -# serial 1 -# Stephan Kulow: I appended a _KDE against name conflicts - -dnl AM_PATH_PROG_WITH_TEST_KDE(VARIABLE, PROG-TO-CHECK-FOR, -dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) -AC_DEFUN([AM_PATH_PROG_WITH_TEST_KDE], -[# Extract the first word of "$2", so it can be a program name with args. -set dummy $2; ac_word=[$]2 -AC_MSG_CHECKING([for $ac_word]) -AC_CACHE_VAL(ac_cv_path_$1, -[case "[$]$1" in - /*) - ac_cv_path_$1="[$]$1" # Let the user override the test with a path. - ;; - *) - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in ifelse([$5], , $PATH, [$5]); do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - if [$3]; then - ac_cv_path_$1="$ac_dir/$ac_word" - break - fi - fi - done - IFS="$ac_save_ifs" -dnl If no 4th arg is given, leave the cache variable unset, -dnl so AC_PATH_PROGS will keep looking. -ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4" -])dnl - ;; -esac])dnl -$1="$ac_cv_path_$1" -if test -n "[$]$1"; then - AC_MSG_RESULT([$]$1) -else - AC_MSG_RESULT(no) -fi -AC_SUBST($1)dnl -]) - - -# Check whether LC_MESSAGES is available in <locale.h>. -# Ulrich Drepper <drepper@cygnus.com>, 1995. - -# serial 1 - -AC_DEFUN([AM_LC_MESSAGES], - [if test $ac_cv_header_locale_h = yes; then - AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES, - [AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES], - am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)]) - if test $am_cv_val_LC_MESSAGES = yes; then - AC_DEFINE(HAVE_LC_MESSAGES, 1, [Define if your locale.h file contains LC_MESSAGES]) - fi - fi]) - -dnl From Jim Meyering. -dnl FIXME: migrate into libit. - -AC_DEFUN([AM_FUNC_OBSTACK], -[AC_CACHE_CHECK([for obstacks], am_cv_func_obstack, - [AC_TRY_LINK([#include "obstack.h"], - [struct obstack *mem;obstack_free(mem,(char *) 0)], - am_cv_func_obstack=yes, - am_cv_func_obstack=no)]) - if test $am_cv_func_obstack = yes; then - AC_DEFINE(HAVE_OBSTACK) - else - LIBOBJS="$LIBOBJS obstack.o" - fi -]) - -dnl From Jim Meyering. Use this if you use the GNU error.[ch]. -dnl FIXME: Migrate into libit - -AC_DEFUN([AM_FUNC_ERROR_AT_LINE], -[AC_CACHE_CHECK([for error_at_line], am_cv_lib_error_at_line, - [AC_TRY_LINK([],[error_at_line(0, 0, "", 0, "");], - am_cv_lib_error_at_line=yes, - am_cv_lib_error_at_line=no)]) - if test $am_cv_lib_error_at_line = no; then - LIBOBJS="$LIBOBJS error.o" - fi - AC_SUBST(LIBOBJS)dnl -]) - -# Macro to add for using GNU gettext. -# Ulrich Drepper <drepper@cygnus.com>, 1995. - -# serial 1 -# Stephan Kulow: I put a KDE in it to avoid name conflicts - -AC_DEFUN([AM_KDE_GNU_GETTEXT], - [AC_REQUIRE([AC_PROG_MAKE_SET])dnl - AC_REQUIRE([AC_PROG_RANLIB])dnl - AC_REQUIRE([AC_HEADER_STDC])dnl - AC_REQUIRE([AC_TYPE_OFF_T])dnl - AC_REQUIRE([AC_TYPE_SIZE_T])dnl - AC_REQUIRE([AC_FUNC_ALLOCA])dnl - AC_REQUIRE([AC_FUNC_MMAP])dnl - AC_REQUIRE([AM_KDE_WITH_NLS])dnl - AC_CHECK_HEADERS([limits.h locale.h nl_types.h string.h values.h alloca.h]) - AC_CHECK_FUNCS([getcwd munmap putenv setlocale strchr strcasecmp \ -__argz_count __argz_stringify __argz_next]) - - AC_MSG_CHECKING(for stpcpy) - AC_CACHE_VAL(kde_cv_func_stpcpy, - [ - kde_safe_cxxflags=$CXXFLAGS - CXXFLAGS="-Werror" - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - AC_TRY_COMPILE([ - #include <string.h> - ], - [ - char buffer[200]; - stpcpy(buffer, buffer); - ], - kde_cv_func_stpcpy=yes, - kde_cv_func_stpcpy=no) - AC_LANG_RESTORE - CXXFLAGS=$kde_safe_cxxflags - ]) - AC_MSG_RESULT($kde_cv_func_stpcpy) - if eval "test \"`echo $kde_cv_func_stpcpy`\" = yes"; then - AC_DEFINE(HAVE_STPCPY, 1, [Define if you have stpcpy]) - fi - - AM_LC_MESSAGES - - if test "x$CATOBJEXT" != "x"; then - if test "x$ALL_LINGUAS" = "x"; then - LINGUAS= - else - AC_MSG_CHECKING(for catalogs to be installed) - NEW_LINGUAS= - for lang in ${LINGUAS=$ALL_LINGUAS}; do - case "$ALL_LINGUAS" in - *$lang*) NEW_LINGUAS="$NEW_LINGUAS $lang" ;; - esac - done - LINGUAS=$NEW_LINGUAS - AC_MSG_RESULT($LINGUAS) - fi - - dnl Construct list of names of catalog files to be constructed. - if test -n "$LINGUAS"; then - for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done - fi - fi - - ]) - -AC_DEFUN([AC_HAVE_XPM], - [AC_REQUIRE_CPP()dnl - AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) - - test -z "$XPM_LDFLAGS" && XPM_LDFLAGS= - test -z "$XPM_INCLUDE" && XPM_INCLUDE= - - AC_ARG_WITH(xpm,AC_HELP_STRING([--without-xpm],[disable color pixmap XPM tests]), - xpm_test=$withval, xpm_test="yes") - if test "x$xpm_test" = xno; then - ac_cv_have_xpm=no - else - AC_MSG_CHECKING(for XPM) - AC_CACHE_VAL(ac_cv_have_xpm, - [ - ac_save_ldflags="$LDFLAGS" - ac_save_cflags="$CFLAGS" - if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then - LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS $LDFLAGS $XPM_LDFLAGS $all_libraries -lXpm -lX11 -lXext $LIBZ $LIBSOCKET" - else - LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS $LDFLAGS $XPM_LDFLAGS $all_libraries -lXpm $LIBZ $LIBSOCKET" - fi - CFLAGS="$CFLAGS $X_INCLUDES $USER_INCLUDES" - test -n "$XPM_INCLUDE" && CFLAGS="-I$XPM_INCLUDE $CFLAGS" - AC_TRY_LINK([#include <X11/xpm.h>],[], - ac_cv_have_xpm="yes",ac_cv_have_xpm="no") - LDFLAGS="$ac_save_ldflags" - CFLAGS="$ac_save_cflags" - ])dnl - - if test "$ac_cv_have_xpm" = no; then - AC_MSG_RESULT(no) - XPM_LDFLAGS="" - XPMINC="" - $2 - else - AC_DEFINE(HAVE_XPM, 1, [Define if you have XPM support]) - if test "$XPM_LDFLAGS" = ""; then - XPMLIB='-lXpm $(LIB_X11)' - else - XPMLIB="-L$XPM_LDFLAGS -lXpm "'$(LIB_X11)' - fi - if test "$XPM_INCLUDE" = ""; then - XPMINC="" - else - XPMINC="-I$XPM_INCLUDE" - fi - AC_MSG_RESULT(yes) - $1 - fi - fi - AC_SUBST(XPMINC) - AC_SUBST(XPMLIB) -]) - -AC_DEFUN([AC_HAVE_DPMS], - [AC_REQUIRE_CPP()dnl - AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) - - test -z "$DPMS_LDFLAGS" && DPMS_LDFLAGS= - test -z "$DPMS_INCLUDE" && DPMS_INCLUDE= - DPMS_LIB= - - AC_ARG_WITH(dpms,AC_HELP_STRING([--without-dpms],[disable DPMS power saving]), - dpms_test=$withval, dpms_test="yes") - if test "x$dpms_test" = xno; then - ac_cv_have_dpms=no - else - AC_MSG_CHECKING(for DPMS) - dnl Note: ac_cv_have_dpms can be no, yes, or -lXdpms. - dnl 'yes' means DPMS_LIB="", '-lXdpms' means DPMS_LIB="-lXdpms". - AC_CACHE_VAL(ac_cv_have_dpms, - [ - if test "x$kde_use_qt_emb" = "xyes" || test "x$kde_use_qt_mac" = "xyes"; then - AC_MSG_RESULT(no) - ac_cv_have_dpms="no" - else - ac_save_ldflags="$LDFLAGS" - ac_save_cflags="$CFLAGS" - ac_save_libs="$LIBS" - LDFLAGS="$LDFLAGS $DPMS_LDFLAGS $all_libraries" - LIBS="-lX11 -lXext $LIBSOCKET" - CFLAGS="$CFLAGS $X_INCLUDES" - test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS" - AC_TRY_LINK([ - #include <X11/Xproto.h> - #include <X11/X.h> - #include <X11/Xlib.h> - #include <X11/extensions/dpms.h> - int foo_test_dpms() - { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[], - ac_cv_have_dpms="yes", [ - LIBS="-lXdpms $LIBS" - AC_TRY_LINK([ - #include <X11/Xproto.h> - #include <X11/X.h> - #include <X11/Xlib.h> - #include <X11/extensions/dpms.h> - int foo_test_dpms() - { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[], - [ - ac_cv_have_dpms="-lXdpms" - ],ac_cv_have_dpms="no") - ]) - LDFLAGS="$ac_save_ldflags" - CFLAGS="$ac_save_cflags" - LIBS="$ac_save_libs" - fi - ])dnl - - if test "$ac_cv_have_dpms" = no; then - AC_MSG_RESULT(no) - DPMS_LDFLAGS="" - DPMSINC="" - $2 - else - AC_DEFINE(HAVE_DPMS, 1, [Define if you have DPMS support]) - if test "$ac_cv_have_dpms" = "-lXdpms"; then - DPMS_LIB="-lXdpms" - fi - if test "$DPMS_LDFLAGS" = ""; then - DPMSLIB="$DPMS_LIB "'$(LIB_X11)' - else - DPMSLIB="$DPMS_LDFLAGS $DPMS_LIB "'$(LIB_X11)' - fi - if test "$DPMS_INCLUDE" = ""; then - DPMSINC="" - else - DPMSINC="-I$DPMS_INCLUDE" - fi - AC_MSG_RESULT(yes) - $1 - fi - fi - ac_save_cflags="$CFLAGS" - CFLAGS="$CFLAGS $X_INCLUDES" - test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS" - AH_TEMPLATE(HAVE_DPMSCAPABLE_PROTO, - [Define if you have the DPMSCapable prototype in <X11/extensions/dpms.h>]) - AC_CHECK_DECL(DPMSCapable, - AC_DEFINE(HAVE_DPMSCAPABLE_PROTO),, - [#include <X11/Xlib.h> - #include <X11/extensions/dpms.h>]) - AH_TEMPLATE(HAVE_DPMSINFO_PROTO, - [Define if you have the DPMSInfo prototype in <X11/extensions/dpms.h>]) - AC_CHECK_DECL(DPMSInfo, - AC_DEFINE(HAVE_DPMSINFO_PROTO),, - [#include <X11/Xlib.h> - #include <X11/extensions/dpms.h>]) - CFLAGS="$ac_save_cflags" - AC_SUBST(DPMSINC) - AC_SUBST(DPMSLIB) -]) - -AC_DEFUN([AC_HAVE_GL], - [AC_REQUIRE_CPP()dnl - AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) - - test -z "$GL_LDFLAGS" && GL_LDFLAGS= - test -z "$GL_INCLUDE" && GL_INCLUDE= - - AC_ARG_WITH(gl,AC_HELP_STRING([--without-gl],[disable 3D GL modes]), - gl_test=$withval, gl_test="yes") - if test "x$kde_use_qt_emb" = "xyes"; then - # GL and Qt Embedded is a no-go for now. - ac_cv_have_gl=no - elif test "x$gl_test" = xno; then - ac_cv_have_gl=no - else - AC_MSG_CHECKING(for GL) - AC_CACHE_VAL(ac_cv_have_gl, - [ - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - ac_save_ldflags=$LDFLAGS - ac_save_cxxflags=$CXXFLAGS - ac_save_libs=$LIBS - LDFLAGS="$LDFLAGS $GL_LDFLAGS $X_LDFLAGS $all_libraries" - LIBS="$LIBS -lGL -lGLU" - test "x$kde_use_qt_mac" != xyes && test "x$kde_use_qt_emb" != xyes && LIBS="$LIBS -lX11" - LIBS="$LIBS $LIB_XEXT -lm $LIBSOCKET" - CXXFLAGS="$CFLAGS $X_INCLUDES" - test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS" - AC_TRY_LINK([#include <GL/gl.h> -#include <GL/glu.h> -], [], - ac_cv_have_gl="yes", ac_cv_have_gl="no") - AC_LANG_RESTORE - LDFLAGS=$ac_save_ldflags - CXXFLAGS=$ac_save_cxxflags - LIBS=$ac_save_libs - ])dnl - - if test "$ac_cv_have_gl" = "no"; then - AC_MSG_RESULT(no) - GL_LDFLAGS="" - GLINC="" - $2 - else - AC_DEFINE(HAVE_GL, 1, [Defines if you have GL (Mesa, OpenGL, ...)]) - if test "$GL_LDFLAGS" = ""; then - GLLIB='-lGLU -lGL $(LIB_X11)' - else - GLLIB="$GL_LDFLAGS -lGLU -lGL "'$(LIB_X11)' - fi - if test "$GL_INCLUDE" = ""; then - GLINC="" - else - GLINC="-I$GL_INCLUDE" - fi - AC_MSG_RESULT($ac_cv_have_gl) - $1 - fi - fi - AC_SUBST(GLINC) - AC_SUBST(GLLIB) -]) - - - dnl shadow password and PAM magic - maintained by ossi@kde.org - -AC_DEFUN([KDE_PAM], [ - AC_REQUIRE([KDE_CHECK_LIBDL]) - - want_pam= - AC_ARG_WITH(pam, - AC_HELP_STRING([--with-pam[=ARG]],[enable support for PAM: ARG=[yes|no|service name]]), - [ if test "x$withval" = "xyes"; then - want_pam=yes - pam_service=kde - elif test "x$withval" = "xno"; then - want_pam=no - else - want_pam=yes - pam_service=$withval - fi - ], [ pam_service=kde ]) - - use_pam= - PAMLIBS= - if test "x$want_pam" != xno; then - AC_CHECK_LIB(pam, pam_start, [ - AC_CHECK_HEADER(security/pam_appl.h, - [ pam_header=security/pam_appl.h ], - [ AC_CHECK_HEADER(pam/pam_appl.h, - [ pam_header=pam/pam_appl.h ], - [ - AC_MSG_WARN([PAM detected, but no headers found! -Make sure you have the necessary development packages installed.]) - ] - ) - ] - ) - ], , $LIBDL) - if test -z "$pam_header"; then - if test "x$want_pam" = xyes; then - AC_MSG_ERROR([--with-pam was specified, but cannot compile with PAM!]) - fi - else - AC_DEFINE(HAVE_PAM, 1, [Defines if you have PAM (Pluggable Authentication Modules)]) - PAMLIBS="$PAM_MISC_LIB -lpam $LIBDL" - use_pam=yes - - dnl darwin claims to be something special - if test "$pam_header" = "pam/pam_appl.h"; then - AC_DEFINE(HAVE_PAM_PAM_APPL_H, 1, [Define if your PAM headers are in pam/ instead of security/]) - fi - - dnl test whether struct pam_message is const (Linux) or not (Sun) - AC_MSG_CHECKING(for const pam_message) - AC_EGREP_HEADER([struct pam_message], $pam_header, - [ AC_EGREP_HEADER([const struct pam_message], $pam_header, - [AC_MSG_RESULT([const: Linux-type PAM])], - [AC_MSG_RESULT([nonconst: Sun-type PAM]) - AC_DEFINE(PAM_MESSAGE_NONCONST, 1, [Define if your PAM support takes non-const arguments (Solaris)])] - )], - [AC_MSG_RESULT([not found - assume const, Linux-type PAM])]) - fi - fi - - AC_SUBST(PAMLIBS) -]) - -dnl DEF_PAM_SERVICE(arg name, full name, define name) -AC_DEFUN([DEF_PAM_SERVICE], [ - AC_ARG_WITH($1-pam, - AC_HELP_STRING([--with-$1-pam=[val]],[override PAM service from --with-pam for $2]), - [ if test "x$use_pam" = xyes; then - $3_PAM_SERVICE=$withval - else - AC_MSG_ERROR([Cannot use use --with-$1-pam, as no PAM was detected. -You may want to enforce it by using --with-pam.]) - fi - ], - [ if test "x$use_pam" = xyes; then - $3_PAM_SERVICE="$pam_service" - fi - ]) - if test -n "$$3_PAM_SERVICE"; then - AC_MSG_RESULT([The PAM service used by $2 will be $$3_PAM_SERVICE]) - AC_DEFINE_UNQUOTED($3_PAM_SERVICE, "$$3_PAM_SERVICE", [The PAM service to be used by $2]) - fi - AC_SUBST($3_PAM_SERVICE) -]) - -AC_DEFUN([KDE_SHADOWPASSWD], [ - AC_REQUIRE([KDE_PAM]) - - AC_CHECK_LIB(shadow, getspent, - [ LIBSHADOW="-lshadow" - ac_use_shadow=yes - ], - [ dnl for UnixWare - AC_CHECK_LIB(gen, getspent, - [ LIBGEN="-lgen" - ac_use_shadow=yes - ], - [ AC_CHECK_FUNC(getspent, - [ ac_use_shadow=yes ], - [ ac_use_shadow=no ]) - ]) - ]) - AC_SUBST(LIBSHADOW) - AC_SUBST(LIBGEN) - - AC_MSG_CHECKING([for shadow passwords]) - - AC_ARG_WITH(shadow, - AC_HELP_STRING([--with-shadow],[If you want shadow password support]), - [ if test "x$withval" != "xno"; then - use_shadow=yes - else - use_shadow=no - fi - ], [ - use_shadow="$ac_use_shadow" - ]) - - if test "x$use_shadow" = xyes; then - AC_MSG_RESULT(yes) - AC_DEFINE(HAVE_SHADOW, 1, [Define if you use shadow passwords]) - else - AC_MSG_RESULT(no) - LIBSHADOW= - LIBGEN= - fi - - dnl finally make the relevant binaries setuid root, if we have shadow passwds. - dnl this still applies, if we could use it indirectly through pam. - if test "x$use_shadow" = xyes || - ( test "x$use_pam" = xyes && test "x$ac_use_shadow" = xyes ); then - case $host in - *-*-freebsd* | *-*-netbsd* | *-*-openbsd*) - SETUIDFLAGS="-m 4755 -o root";; - *) - SETUIDFLAGS="-m 4755";; - esac - fi - AC_SUBST(SETUIDFLAGS) - -]) - -AC_DEFUN([KDE_PASSWDLIBS], [ - AC_REQUIRE([KDE_MISC_TESTS]) dnl for LIBCRYPT - AC_REQUIRE([KDE_PAM]) - AC_REQUIRE([KDE_SHADOWPASSWD]) - - if test "x$use_pam" = "xyes"; then - PASSWDLIBS="$PAMLIBS" - else - PASSWDLIBS="$LIBCRYPT $LIBSHADOW $LIBGEN" - fi - - dnl FreeBSD uses a shadow-like setup, where /etc/passwd holds the users, but - dnl /etc/master.passwd holds the actual passwords. /etc/master.passwd requires - dnl root to read, so kcheckpass needs to be root (even when using pam, since pam - dnl may need to read /etc/master.passwd). - case $host in - *-*-freebsd*) - SETUIDFLAGS="-m 4755 -o root" - ;; - *) - ;; - esac - - AC_SUBST(PASSWDLIBS) -]) - -AC_DEFUN([KDE_CHECK_LIBDL], -[ -AC_CHECK_LIB(dl, dlopen, [ -LIBDL="-ldl" -ac_cv_have_dlfcn=yes -]) - -AC_CHECK_LIB(dld, shl_unload, [ -LIBDL="-ldld" -ac_cv_have_shload=yes -]) - -AC_SUBST(LIBDL) -]) - -AC_DEFUN([KDE_CHECK_DLOPEN], -[ -KDE_CHECK_LIBDL -AC_CHECK_HEADERS(dlfcn.h dl.h) -if test "$ac_cv_header_dlfcn_h" = "no"; then - ac_cv_have_dlfcn=no -fi - -if test "$ac_cv_header_dl_h" = "no"; then - ac_cv_have_shload=no -fi - -dnl XXX why change enable_dlopen? its already set by autoconf's AC_ARG_ENABLE -dnl (MM) -AC_ARG_ENABLE(dlopen, -AC_HELP_STRING([--disable-dlopen],[link statically [default=no]]), -enable_dlopen=$enableval, -enable_dlopen=yes) - -# override the user's opinion, if we know it better ;) -if test "$ac_cv_have_dlfcn" = "no" && test "$ac_cv_have_shload" = "no"; then - enable_dlopen=no -fi - -if test "$ac_cv_have_dlfcn" = "yes"; then - AC_DEFINE_UNQUOTED(HAVE_DLFCN, 1, [Define if you have dlfcn]) -fi - -if test "$ac_cv_have_shload" = "yes"; then - AC_DEFINE_UNQUOTED(HAVE_SHLOAD, 1, [Define if you have shload]) -fi - -if test "$enable_dlopen" = no ; then - test -n "$1" && eval $1 -else - test -n "$2" && eval $2 -fi - -]) - -AC_DEFUN([KDE_CHECK_DYNAMIC_LOADING], -[ -KDE_CHECK_DLOPEN(libtool_enable_shared=yes, libtool_enable_static=no) -KDE_PROG_LIBTOOL -AC_MSG_CHECKING([dynamic loading]) -eval "`egrep '^build_libtool_libs=' libtool`" -if test "$build_libtool_libs" = "yes" && test "$enable_dlopen" = "yes"; then - dynamic_loading=yes - AC_DEFINE_UNQUOTED(HAVE_DYNAMIC_LOADING) -else - dynamic_loading=no -fi -AC_MSG_RESULT($dynamic_loading) -if test "$dynamic_loading" = "yes"; then - $1 -else - $2 -fi -]) - -AC_DEFUN([KDE_ADD_INCLUDES], -[ -if test -z "$1"; then - test_include="Pix.h" -else - test_include="$1" -fi - -AC_MSG_CHECKING([for libg++ ($test_include)]) - -AC_CACHE_VAL(kde_cv_libgpp_includes, -[ -kde_cv_libgpp_includes=no - - for ac_dir in \ - \ - /usr/include/g++ \ - /usr/include \ - /usr/unsupported/include \ - /opt/include \ - $extra_include \ - ; \ - do - if test -r "$ac_dir/$test_include"; then - kde_cv_libgpp_includes=$ac_dir - break - fi - done -]) - -AC_MSG_RESULT($kde_cv_libgpp_includes) -if test "$kde_cv_libgpp_includes" != "no"; then - all_includes="-I$kde_cv_libgpp_includes $all_includes $USER_INCLUDES" -fi -]) -]) - -AC_DEFUN([KDE_CHECK_LIBPTHREAD], -[ - dnl This code is here specifically to handle the - dnl various flavors of threading library on FreeBSD - dnl 4-, 5-, and 6-, and the (weird) rules around it. - dnl There may be an environment PTHREAD_LIBS that - dnl specifies what to use; otherwise, search for it. - dnl -pthread is special cased and unsets LIBPTHREAD - dnl below if found. - LIBPTHREAD="" - - if test -n "$PTHREAD_LIBS"; then - if test "x$PTHREAD_LIBS" = "x-pthread" ; then - LIBPTHREAD="PTHREAD" - else - PTHREAD_LIBS_save="$PTHREAD_LIBS" - PTHREAD_LIBS=`echo "$PTHREAD_LIBS_save" | sed -e 's,^-l,,g'` - AC_MSG_CHECKING([for pthread_create in $PTHREAD_LIBS]) - KDE_CHECK_LIB($PTHREAD_LIBS, pthread_create, [ - LIBPTHREAD="$PTHREAD_LIBS_save"]) - PTHREAD_LIBS="$PTHREAD_LIBS_save" - fi - fi - - dnl Is this test really needed, in the face of the Tru64 test below? - if test -z "$LIBPTHREAD"; then - AC_CHECK_LIB(pthread, pthread_create, [LIBPTHREAD="-lpthread"]) - fi - - dnl This is a special Tru64 check, see BR 76171 issue #18. - if test -z "$LIBPTHREAD" ; then - AC_MSG_CHECKING([for pthread_create in -lpthread]) - kde_safe_libs=$LIBS - LIBS="$LIBS -lpthread" - AC_TRY_LINK([#include <pthread.h>],[(void)pthread_create(0,0,0,0);],[ - AC_MSG_RESULT(yes) - LIBPTHREAD="-lpthread"],[ - AC_MSG_RESULT(no)]) - LIBS=$kde_safe_libs - fi - - dnl Un-special-case for FreeBSD. - if test "x$LIBPTHREAD" = "xPTHREAD" ; then - LIBPTHREAD="" - fi - - AC_SUBST(LIBPTHREAD) -]) - -AC_DEFUN([KDE_CHECK_PTHREAD_OPTION], -[ - USE_THREADS="" - if test -z "$LIBPTHREAD"; then - KDE_CHECK_COMPILER_FLAG(pthread, [USE_THREADS="-D_THREAD_SAFE -pthread"]) - fi - - AH_VERBATIM(__svr_define, [ -#if defined(__SVR4) && !defined(__svr4__) -#define __svr4__ 1 -#endif -]) - case $host_os in - solaris*) - KDE_CHECK_COMPILER_FLAG(mt, [USE_THREADS="-mt"]) - CPPFLAGS="$CPPFLAGS -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DUSE_SOLARIS -DSVR4" - ;; - freebsd*) - CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE $PTHREAD_CFLAGS" - ;; - aix*) - CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" - LIBPTHREAD="$LIBPTHREAD -lc_r" - ;; - linux*) CPPFLAGS="$CPPFLAGS -D_REENTRANT" - if test "$CXX" = "KCC"; then - CXXFLAGS="$CXXFLAGS --thread_safe" - NOOPT_CXXFLAGS="$NOOPT_CXXFLAGS --thread_safe" - fi - ;; - *) - ;; - esac - AC_SUBST(USE_THREADS) - AC_SUBST(LIBPTHREAD) -]) - -AC_DEFUN([KDE_CHECK_THREADING], -[ - AC_REQUIRE([KDE_CHECK_LIBPTHREAD]) - AC_REQUIRE([KDE_CHECK_PTHREAD_OPTION]) - dnl default is yes if libpthread is found and no if no libpthread is available - if test -z "$LIBPTHREAD"; then - if test -z "$USE_THREADS"; then - kde_check_threading_default=no - else - kde_check_threading_default=yes - fi - else - kde_check_threading_default=yes - fi - AC_ARG_ENABLE(threading,AC_HELP_STRING([--disable-threading],[disables threading even if libpthread found]), - kde_use_threading=$enableval, kde_use_threading=$kde_check_threading_default) - if test "x$kde_use_threading" = "xyes"; then - AC_DEFINE(HAVE_LIBPTHREAD, 1, [Define if you have a working libpthread (will enable threaded code)]) - fi -]) - -AC_DEFUN([KDE_TRY_LINK_PYTHON], -[ -if test "$kde_python_link_found" = no; then - -if test "$1" = normal; then - AC_MSG_CHECKING(if a Python application links) -else - AC_MSG_CHECKING(if Python depends on $2) -fi - -AC_CACHE_VAL(kde_cv_try_link_python_$1, -[ -kde_save_cflags="$CFLAGS" -CFLAGS="$CFLAGS $PYTHONINC" -kde_save_libs="$LIBS" -LIBS="$LIBS $LIBPYTHON $2 $LIBDL $LIBSOCKET" -kde_save_ldflags="$LDFLAGS" -LDFLAGS="$LDFLAGS $PYTHONLIB" - -AC_TRY_LINK( -[ -#include <Python.h> -],[ - PySys_SetArgv(1, 0); -], - [kde_cv_try_link_python_$1=yes], - [kde_cv_try_link_python_$1=no] -) -CFLAGS="$kde_save_cflags" -LIBS="$kde_save_libs" -LDFLAGS="$kde_save_ldflags" -]) - -if test "$kde_cv_try_link_python_$1" = "yes"; then - AC_MSG_RESULT(yes) - kde_python_link_found=yes - if test ! "$1" = normal; then - LIBPYTHON="$LIBPYTHON $2" - fi - $3 -else - AC_MSG_RESULT(no) - $4 -fi - -fi - -]) - -AC_DEFUN([KDE_CHECK_PYTHON_DIR], -[ -AC_MSG_CHECKING([for Python directory]) - -AC_CACHE_VAL(kde_cv_pythondir, -[ - if test -z "$PYTHONDIR"; then - kde_cv_pythondir=/usr/local - else - kde_cv_pythondir="$PYTHONDIR" - fi -]) - -AC_ARG_WITH(pythondir, -AC_HELP_STRING([--with-pythondir=pythondir],[use python installed in pythondir]), -[ - ac_python_dir=$withval -], ac_python_dir=$kde_cv_pythondir -) - -AC_MSG_RESULT($ac_python_dir) -]) - -AC_DEFUN([KDE_CHECK_PYTHON_INTERN], -[ -AC_REQUIRE([KDE_CHECK_LIBDL]) -AC_REQUIRE([KDE_CHECK_LIBPTHREAD]) -AC_REQUIRE([KDE_CHECK_PYTHON_DIR]) - -if test -z "$1"; then - version="1.5" -else - version="$1" -fi - -AC_MSG_CHECKING([for Python$version]) - -python_incdirs="$ac_python_dir/include /usr/include /usr/local/include/ $kde_extra_includes" -AC_FIND_FILE(Python.h, $python_incdirs, python_incdir) -if test ! -r $python_incdir/Python.h; then - AC_FIND_FILE(python$version/Python.h, $python_incdirs, python_incdir) - python_incdir=$python_incdir/python$version - if test ! -r $python_incdir/Python.h; then - python_incdir=no - fi -fi - -PYTHONINC=-I$python_incdir - -python_libdirs="$ac_python_dir/lib$kdelibsuff /usr/lib$kdelibsuff /usr/local /usr/lib$kdelibsuff $kde_extra_libs" -AC_FIND_FILE(libpython$version.so, $python_libdirs, python_libdir) -if test ! -r $python_libdir/libpython$version.so; then - AC_FIND_FILE(libpython$version.a, $python_libdirs, python_libdir) - if test ! -r $python_libdir/libpython$version.a; then - AC_FIND_FILE(python$version/config/libpython$version.a, $python_libdirs, python_libdir) - python_libdir=$python_libdir/python$version/config - if test ! -r $python_libdir/libpython$version.a; then - python_libdir=no - fi - fi -fi - -PYTHONLIB=-L$python_libdir -kde_orig_LIBPYTHON=$LIBPYTHON -if test -z "$LIBPYTHON"; then - LIBPYTHON=-lpython$version -fi - -AC_FIND_FILE(python$version/copy.py, $python_libdirs, python_moddir) -python_moddir=$python_moddir/python$version -if test ! -r $python_moddir/copy.py; then - python_moddir=no -fi - -PYTHONMODDIR=$python_moddir - -AC_MSG_RESULT(header $python_incdir library $python_libdir modules $python_moddir) - -if test x$python_incdir = xno || test x$python_libdir = xno || test x$python_moddir = xno; then - LIBPYTHON=$kde_orig_LIBPYTHON - test "x$PYTHONLIB" = "x-Lno" && PYTHONLIB="" - test "x$PYTHONINC" = "x-Ino" && PYTHONINC="" - $2 -else - dnl Note: this test is very weak - kde_python_link_found=no - KDE_TRY_LINK_PYTHON(normal) - KDE_TRY_LINK_PYTHON(m, -lm) - KDE_TRY_LINK_PYTHON(pthread, $LIBPTHREAD) - KDE_TRY_LINK_PYTHON(tcl, -ltcl) - KDE_TRY_LINK_PYTHON(db2, -ldb2) - KDE_TRY_LINK_PYTHON(m_and_thread, [$LIBPTHREAD -lm]) - KDE_TRY_LINK_PYTHON(m_and_thread_and_util, [$LIBPTHREAD -lm -lutil]) - KDE_TRY_LINK_PYTHON(m_and_thread_and_db3, [$LIBPTHREAD -lm -ldb-3 -lutil]) - KDE_TRY_LINK_PYTHON(pthread_and_db3, [$LIBPTHREAD -ldb-3]) - KDE_TRY_LINK_PYTHON(m_and_thread_and_db, [$LIBPTHREAD -lm -ldb -ltermcap -lutil]) - KDE_TRY_LINK_PYTHON(pthread_and_dl, [$LIBPTHREAD $LIBDL -lutil -lreadline -lncurses -lm]) - KDE_TRY_LINK_PYTHON(pthread_and_panel_curses, [$LIBPTHREAD $LIBDL -lm -lpanel -lcurses]) - KDE_TRY_LINK_PYTHON(m_and_thread_and_db_special, [$LIBPTHREAD -lm -ldb -lutil], [], - [AC_MSG_WARN([it seems, Python depends on another library. - Please set LIBPYTHON to '-lpython$version -lotherlib' before calling configure to fix this - and contact the authors to let them know about this problem]) - ]) - - LIBPYTHON="$LIBPYTHON $LIBDL $LIBSOCKET" - AC_SUBST(PYTHONINC) - AC_SUBST(PYTHONLIB) - AC_SUBST(LIBPYTHON) - AC_SUBST(PYTHONMODDIR) - AC_DEFINE(HAVE_PYTHON, 1, [Define if you have the development files for python]) -fi - -]) - - -AC_DEFUN([KDE_CHECK_PYTHON], -[ - KDE_CHECK_PYTHON_INTERN("2.4", - [KDE_CHECK_PYTHON_INTERN("2.3", - [KDE_CHECK_PYTHON_INTERN("2.2", - [KDE_CHECK_PYTHON_INTERN("2.1", - [KDE_CHECK_PYTHON_INTERN("2.0", - [KDE_CHECK_PYTHON_INTERN($1, $2) ]) - ]) - ]) - ]) - ]) -]) - -AC_DEFUN([KDE_CHECK_STL], -[ - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - ac_save_CXXFLAGS="$CXXFLAGS" - CXXFLAGS="`echo $CXXFLAGS | sed s/-fno-exceptions//`" - - AC_MSG_CHECKING([if C++ programs can be compiled]) - AC_CACHE_VAL(kde_cv_stl_works, - [ - AC_TRY_COMPILE([ -#include <string> -using namespace std; -],[ - string astring="Hallo Welt."; - astring.erase(0, 6); // now astring is "Welt" - return 0; -], kde_cv_stl_works=yes, - kde_cv_stl_works=no) -]) - - AC_MSG_RESULT($kde_cv_stl_works) - - if test "$kde_cv_stl_works" = "yes"; then - # back compatible - AC_DEFINE_UNQUOTED(HAVE_SGI_STL, 1, [Define if you have a STL implementation by SGI]) - else - AC_MSG_ERROR([Your Installation isn't able to compile simple C++ programs. -Check config.log for details - if you're using a Linux distribution you might miss -a package named similar to libstdc++-dev.]) - fi - - CXXFLAGS="$ac_save_CXXFLAGS" - AC_LANG_RESTORE -]) - -AC_DEFUN([AC_FIND_QIMGIO], - [AC_REQUIRE([AC_FIND_JPEG]) -AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) -AC_MSG_CHECKING([for qimgio]) -AC_CACHE_VAL(ac_cv_lib_qimgio, -[ -AC_LANG_SAVE -AC_LANG_CPLUSPLUS -ac_save_LIBS="$LIBS" -ac_save_CXXFLAGS="$CXXFLAGS" -LIBS="$all_libraries -lqimgio -lpng -lz $LIBJPEG $LIBQT" -CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes" -AC_TRY_RUN(dnl -[ -#include <qimageio.h> -#include <qstring.h> -int main() { - QString t = "hallo"; - t.fill('t'); - qInitImageIO(); -} -], - ac_cv_lib_qimgio=yes, - ac_cv_lib_qimgio=no, - ac_cv_lib_qimgio=no) -LIBS="$ac_save_LIBS" -CXXFLAGS="$ac_save_CXXFLAGS" -AC_LANG_RESTORE -])dnl -if eval "test \"`echo $ac_cv_lib_qimgio`\" = yes"; then - LIBQIMGIO="-lqimgio -lpng -lz $LIBJPEG" - AC_MSG_RESULT(yes) - AC_DEFINE_UNQUOTED(HAVE_QIMGIO, 1, [Define if you have the Qt extension qimgio available]) - AC_SUBST(LIBQIMGIO) -else - AC_MSG_RESULT(not found) -fi -]) - -AC_DEFUN([AM_DISABLE_LIBRARIES], -[ - AC_PROVIDE([AM_ENABLE_STATIC]) - AC_PROVIDE([AM_ENABLE_SHARED]) - enable_static=no - enable_shared=yes -]) - - -AC_DEFUN([AC_CHECK_UTMP_FILE], -[ - AC_MSG_CHECKING([for utmp file]) - - AC_CACHE_VAL(kde_cv_utmp_file, - [ - kde_cv_utmp_file=no - - for ac_file in \ - \ - /var/run/utmp \ - /var/adm/utmp \ - /etc/utmp \ - ; \ - do - if test -r "$ac_file"; then - kde_cv_utmp_file=$ac_file - break - fi - done - ]) - - if test "$kde_cv_utmp_file" != "no"; then - AC_DEFINE_UNQUOTED(UTMP, "$kde_cv_utmp_file", [Define the file for utmp entries]) - $1 - AC_MSG_RESULT($kde_cv_utmp_file) - else - $2 - AC_MSG_RESULT([non found]) - fi -]) - - -AC_DEFUN([KDE_CREATE_SUBDIRSLIST], -[ - -DO_NOT_COMPILE="$DO_NOT_COMPILE CVS debian bsd-port admin" -TOPSUBDIRS="" - -if test ! -s $srcdir/subdirs; then - dnl Note: Makefile.common creates subdirs, so this is just a fallback - files=`cd $srcdir && ls -1` - dirs=`for i in $files; do if test -d $i; then echo $i; fi; done` - for i in $dirs; do - echo $i >> $srcdir/subdirs - done -fi - -ac_topsubdirs= -if test -s $srcdir/inst-apps; then - ac_topsubdirs="`cat $srcdir/inst-apps`" -elif test -s $srcdir/subdirs; then - ac_topsubdirs="`cat $srcdir/subdirs`" -fi - -for i in $ac_topsubdirs; do - AC_MSG_CHECKING([if $i should be compiled]) - if test -d $srcdir/$i; then - install_it="yes" - for j in $DO_NOT_COMPILE; do - if test $i = $j; then - install_it="no" - fi - done - else - install_it="no" - fi - AC_MSG_RESULT($install_it) - vari=`echo $i | sed -e 's,[[-+.@]],_,g'` - if test $install_it = "yes"; then - TOPSUBDIRS="$TOPSUBDIRS $i" - eval "$vari""_SUBDIR_included=yes" - else - eval "$vari""_SUBDIR_included=no" - fi -done - -AC_SUBST(TOPSUBDIRS) -]) - -AC_DEFUN([KDE_CHECK_NAMESPACES], -[ -AC_MSG_CHECKING(whether C++ compiler supports namespaces) -AC_LANG_SAVE -AC_LANG_CPLUSPLUS -AC_TRY_COMPILE([ -], -[ -namespace Foo { - extern int i; - namespace Bar { - extern int i; - } -} - -int Foo::i = 0; -int Foo::Bar::i = 1; -],[ - AC_MSG_RESULT(yes) - AC_DEFINE(HAVE_NAMESPACES) -], [ -AC_MSG_RESULT(no) -]) -AC_LANG_RESTORE -]) - -dnl ------------------------------------------------------------------------ -dnl Check for S_ISSOCK macro. Doesn't exist on Unix SCO. faure@kde.org -dnl ------------------------------------------------------------------------ -dnl -AC_DEFUN([AC_CHECK_S_ISSOCK], -[ -AC_MSG_CHECKING(for S_ISSOCK) -AC_CACHE_VAL(ac_cv_have_s_issock, -[ -AC_TRY_LINK( -[ -#include <sys/stat.h> -], -[ -struct stat buff; -int b = S_ISSOCK( buff.st_mode ); -], -ac_cv_have_s_issock=yes, -ac_cv_have_s_issock=no) -]) -AC_MSG_RESULT($ac_cv_have_s_issock) -if test "$ac_cv_have_s_issock" = "yes"; then - AC_DEFINE_UNQUOTED(HAVE_S_ISSOCK, 1, [Define if sys/stat.h declares S_ISSOCK.]) -fi - -AH_VERBATIM(_ISSOCK, -[ -#ifndef HAVE_S_ISSOCK -#define HAVE_S_ISSOCK -#define S_ISSOCK(mode) (1==0) -#endif -]) - -]) - -dnl ------------------------------------------------------------------------ -dnl Check for MAXPATHLEN macro, defines KDEMAXPATHLEN. faure@kde.org -dnl ------------------------------------------------------------------------ -dnl -AC_DEFUN([AC_CHECK_KDEMAXPATHLEN], -[ -AC_MSG_CHECKING(for MAXPATHLEN) -AC_CACHE_VAL(ac_cv_maxpathlen, -[ -cat > conftest.$ac_ext <<EOF -#ifdef STDC_HEADERS -# include <stdlib.h> -#endif -#include <stdio.h> -#include <sys/param.h> -#ifndef MAXPATHLEN -#define MAXPATHLEN 1024 -#endif - -KDE_HELLO MAXPATHLEN - -EOF - -ac_try="$ac_cpp conftest.$ac_ext 2>/dev/null | grep '^KDE_HELLO' >conftest.out" - -if AC_TRY_EVAL(ac_try) && test -s conftest.out; then - ac_cv_maxpathlen=`sed 's#KDE_HELLO ##' conftest.out` -else - ac_cv_maxpathlen=1024 -fi - -rm conftest.* - -]) -AC_MSG_RESULT($ac_cv_maxpathlen) -AC_DEFINE_UNQUOTED(KDEMAXPATHLEN,$ac_cv_maxpathlen, [Define a safe value for MAXPATHLEN] ) -]) - -AC_DEFUN([KDE_CHECK_HEADER], -[ - kde_safe_cppflags=$CPPFLAGS - CPPFLAGS="$CPPFLAGS $all_includes" - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - AC_CHECK_HEADER([$1], [$2], [$3], [$4]) - AC_LANG_RESTORE - CPPFLAGS=$kde_safe_cppflags -]) - -AC_DEFUN([KDE_CHECK_HEADERS], -[ - AH_CHECK_HEADERS([$1]) - AC_LANG_SAVE - kde_safe_cppflags=$CPPFLAGS - CPPFLAGS="$CPPFLAGS $all_includes" - AC_LANG_CPLUSPLUS - AC_CHECK_HEADERS([$1], [$2], [$3], [$4]) - CPPFLAGS=$kde_safe_cppflags - AC_LANG_RESTORE -]) - -AC_DEFUN([KDE_FAST_CONFIGURE], -[ - dnl makes configure fast (needs perl) - AC_ARG_ENABLE(fast-perl, AC_HELP_STRING([--disable-fast-perl],[disable fast Makefile generation (needs perl)]), - with_fast_perl=$enableval, with_fast_perl=yes) -]) - -AC_DEFUN([KDE_CONF_FILES], -[ - val= - if test -f $srcdir/configure.files ; then - val=`sed -e 's%^%\$(top_srcdir)/%' $srcdir/configure.files` - fi - CONF_FILES= - if test -n "$val" ; then - for i in $val ; do - CONF_FILES="$CONF_FILES $i" - done - fi - AC_SUBST(CONF_FILES) -])dnl - -dnl This sets the prefix, for arts and kdelibs -dnl Do NOT use in any other module. -dnl It only looks at --prefix, KDEDIR and falls back to /usr/local/kde -AC_DEFUN([KDE_SET_PREFIX_CORE], -[ - unset CDPATH - dnl make $KDEDIR the default for the installation - AC_PREFIX_DEFAULT(${KDEDIR:-/usr/local/kde}) - - if test "x$prefix" = "xNONE"; then - prefix=$ac_default_prefix - ac_configure_args="$ac_configure_args --prefix=$prefix" - fi - # And delete superfluous '/' to make compares easier - prefix=`echo "$prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'` - exec_prefix=`echo "$exec_prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'` - - kde_libs_prefix='$(prefix)' - kde_libs_htmldir='$(kde_htmldir)' - AC_SUBST(kde_libs_prefix) - AC_SUBST(kde_libs_htmldir) - KDE_FAST_CONFIGURE - KDE_CONF_FILES -]) - - -AC_DEFUN([KDE_SET_PREFIX], -[ - unset CDPATH - dnl We can't give real code to that macro, only a value. - dnl It only matters for --help, since we set the prefix in this function anyway. - AC_PREFIX_DEFAULT(${KDEDIR:-the kde prefix}) - - KDE_SET_DEFAULT_BINDIRS - if test "x$prefix" = "xNONE"; then - dnl no prefix given: look for kde-config in the PATH and deduce the prefix from it - KDE_FIND_PATH(kde-config, KDECONFIG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(kde-config)], [], prepend) - else - dnl prefix given: look for kde-config, preferrably in prefix, otherwise in PATH - kde_save_PATH="$PATH" - PATH="$exec_prefix/bin:$prefix/bin:$PATH" - KDE_FIND_PATH(kde-config, KDECONFIG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(kde-config)], [], prepend) - PATH="$kde_save_PATH" - fi - - kde_libs_prefix=`$KDECONFIG --prefix` - if test -z "$kde_libs_prefix" || test ! -x "$kde_libs_prefix"; then - AC_MSG_ERROR([$KDECONFIG --prefix outputed the non existant prefix '$kde_libs_prefix' for kdelibs. - This means it has been moved since you installed it. - This won't work. Please recompile kdelibs for the new prefix. - ]) - fi - kde_libs_htmldir=`$KDECONFIG --install html --expandvars` - kde_libs_suffix=`$KDECONFIG --libsuffix` - - AC_MSG_CHECKING([where to install]) - if test "x$prefix" = "xNONE"; then - prefix=$kde_libs_prefix - AC_MSG_RESULT([$prefix (as returned by kde-config)]) - else - dnl --prefix was given. Compare prefixes and warn (in configure.in.bot.end) if different - given_prefix=$prefix - AC_MSG_RESULT([$prefix (as requested)]) - fi - - # And delete superfluous '/' to make compares easier - prefix=`echo "$prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'` - exec_prefix=`echo "$exec_prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'` - given_prefix=`echo "$given_prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'` - - AC_SUBST(KDECONFIG) - AC_SUBST(kde_libs_prefix) - AC_SUBST(kde_libs_htmldir) - - KDE_FAST_CONFIGURE - KDE_CONF_FILES -]) - -pushdef([AC_PROG_INSTALL], -[ - dnl our own version, testing for a -p flag - popdef([AC_PROG_INSTALL]) - dnl as AC_PROG_INSTALL works as it works we first have - dnl to save if the user didn't specify INSTALL, as the - dnl autoconf one overwrites INSTALL and we have no chance to find - dnl out afterwards - test -n "$INSTALL" && kde_save_INSTALL_given=$INSTALL - test -n "$INSTALL_PROGRAM" && kde_save_INSTALL_PROGRAM_given=$INSTALL_PROGRAM - test -n "$INSTALL_SCRIPT" && kde_save_INSTALL_SCRIPT_given=$INSTALL_SCRIPT - AC_PROG_INSTALL - - if test -z "$kde_save_INSTALL_given" ; then - # OK, user hasn't given any INSTALL, autoconf found one for us - # now we test, if it supports the -p flag - AC_MSG_CHECKING(for -p flag to install) - rm -f confinst.$$.* > /dev/null 2>&1 - echo "Testtest" > confinst.$$.orig - ac_res=no - if ${INSTALL} -p confinst.$$.orig confinst.$$.new > /dev/null 2>&1 ; then - if test -f confinst.$$.new ; then - # OK, -p seems to do no harm to install - INSTALL="${INSTALL} -p" - ac_res=yes - fi - fi - rm -f confinst.$$.* - AC_MSG_RESULT($ac_res) - fi - dnl the following tries to resolve some signs and wonders coming up - dnl with different autoconf/automake versions - dnl e.g.: - dnl *automake 1.4 install-strip sets A_M_INSTALL_PROGRAM_FLAGS to -s - dnl and has INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(A_M_INSTALL_PROGRAM_FLAGS) - dnl it header-vars.am, so there the actual INSTALL_PROGRAM gets the -s - dnl *automake 1.4a (and above) use INSTALL_STRIP_FLAG and only has - dnl INSTALL_PROGRAM = @INSTALL_PROGRAM@ there, but changes the - dnl install-@DIR@PROGRAMS targets to explicitly use that flag - dnl *autoconf 2.13 is dumb, and thinks it can use INSTALL_PROGRAM as - dnl INSTALL_SCRIPT, which breaks with automake <= 1.4 - dnl *autoconf >2.13 (since 10.Apr 1999) has not that failure - dnl *sometimes KDE does not use the install-@DIR@PROGRAM targets from - dnl automake (due to broken Makefile.am or whatever) to install programs, - dnl and so does not see the -s flag in automake > 1.4 - dnl to clean up that mess we: - dnl +set INSTALL_PROGRAM to use INSTALL_STRIP_FLAG - dnl which cleans KDE's program with automake > 1.4; - dnl +set INSTALL_SCRIPT to only use INSTALL, to clean up autoconf's problems - dnl with automake<=1.4 - dnl note that dues to this sometimes two '-s' flags are used (if KDE - dnl properly uses install-@DIR@PROGRAMS, but I don't care - dnl - dnl And to all this comes, that I even can't write in comments variable - dnl names used by automake, because it is so stupid to think I wanted to - dnl _use_ them, therefor I have written A_M_... instead of AM_ - dnl hmm, I wanted to say something ... ahh yes: Arghhh. - - if test -z "$kde_save_INSTALL_PROGRAM_given" ; then - INSTALL_PROGRAM='${INSTALL} $(INSTALL_STRIP_FLAG)' - fi - if test -z "$kde_save_INSTALL_SCRIPT_given" ; then - INSTALL_SCRIPT='${INSTALL}' - fi -])dnl - -AC_DEFUN([KDE_LANG_CPLUSPLUS], -[AC_LANG_CPLUSPLUS -ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&AC_FD_CC' -pushdef([AC_LANG_CPLUSPLUS], [popdef([AC_LANG_CPLUSPLUS]) KDE_LANG_CPLUSPLUS]) -]) - -pushdef([AC_LANG_CPLUSPLUS], -[popdef([AC_LANG_CPLUSPLUS]) -KDE_LANG_CPLUSPLUS -]) - -AC_DEFUN([KDE_CHECK_LONG_LONG], -[ -AC_MSG_CHECKING(for long long) -AC_CACHE_VAL(kde_cv_c_long_long, -[ - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - AC_TRY_LINK([], [ - long long foo = 0; - foo = foo+1; - ], - kde_cv_c_long_long=yes, kde_cv_c_long_long=no) - AC_LANG_RESTORE -]) -AC_MSG_RESULT($kde_cv_c_long_long) -if test "$kde_cv_c_long_long" = yes; then - AC_DEFINE(HAVE_LONG_LONG, 1, [Define if you have long long as datatype]) -fi -]) - -AC_DEFUN([KDE_CHECK_LIB], -[ - kde_save_LDFLAGS="$LDFLAGS" - dnl AC_CHECK_LIB modifies LIBS, so save it here - kde_save_LIBS="$LIBS" - LDFLAGS="$LDFLAGS $all_libraries" - case $host_os in - aix*) LDFLAGS="-brtl $LDFLAGS" - test "$GCC" = yes && LDFLAGS="-Wl,$LDFLAGS" - ;; - esac - AC_CHECK_LIB($1, $2, $3, $4, $5) - LDFLAGS="$kde_save_LDFLAGS" - LIBS="$kde_save_LIBS" -]) - -AC_DEFUN([KDE_JAVA_PREFIX], -[ - dir=`dirname "$1"` - base=`basename "$1"` - list=`ls -1 $dir 2> /dev/null` - for entry in $list; do - if test -d $dir/$entry/bin; then - case $entry in - $base) - javadirs="$javadirs $dir/$entry/bin" - ;; - esac - elif test -d $dir/$entry/jre/bin; then - case $entry in - $base) - javadirs="$javadirs $dir/$entry/jre/bin" - ;; - esac - fi - done -]) - -dnl KDE_CHEC_JAVA_DIR(onlyjre) -AC_DEFUN([KDE_CHECK_JAVA_DIR], -[ - -AC_ARG_WITH(java, -AC_HELP_STRING([--with-java=javadir],[use java installed in javadir, --without-java disables]), -[ ac_java_dir=$withval -], ac_java_dir="" -) - -AC_MSG_CHECKING([for Java]) - -dnl at this point ac_java_dir is either a dir, 'no' to disable, or '' to say look in $PATH -if test "x$ac_java_dir" = "xno"; then - kde_java_bindir=no - kde_java_includedir=no - kde_java_libjvmdir=no - kde_java_libgcjdir=no - kde_java_libhpidir=no -else - if test "x$ac_java_dir" = "x"; then - - - dnl No option set -> collect list of candidate paths - if test -n "$JAVA_HOME"; then - KDE_JAVA_PREFIX($JAVA_HOME) - fi - KDE_JAVA_PREFIX(/usr/j2se) - KDE_JAVA_PREFIX(/usr/lib/j2se) - KDE_JAVA_PREFIX(/usr/j*dk*) - KDE_JAVA_PREFIX(/usr/lib/j*dk*) - KDE_JAVA_PREFIX(/opt/j*sdk*) - KDE_JAVA_PREFIX(/usr/lib/java*) - KDE_JAVA_PREFIX(/usr/java*) - KDE_JAVA_PREFIX(/usr/java/j*dk*) - KDE_JAVA_PREFIX(/usr/java/j*re*) - KDE_JAVA_PREFIX(/usr/lib/SunJava2*) - KDE_JAVA_PREFIX(/usr/lib/SunJava*) - KDE_JAVA_PREFIX(/usr/lib/IBMJava2*) - KDE_JAVA_PREFIX(/usr/lib/IBMJava*) - KDE_JAVA_PREFIX(/opt/java*) - - kde_cv_path="NONE" - kde_save_IFS=$IFS - IFS=':' - for dir in $PATH; do - if test -d "$dir"; then - javadirs="$javadirs $dir" - fi - done - IFS=$kde_save_IFS - jredirs= - - dnl Now javadirs contains a list of paths that exist, all ending with bin/ - for dir in $javadirs; do - dnl Check for the java executable - if test -x "$dir/java"; then - dnl And also check for a libjvm.so somewhere under there - dnl Since we have to go to the parent dir, /usr/bin is excluded, /usr is too big. - if test "$dir" != "/usr/bin"; then - libjvmdir=`find $dir/.. -name libjvm.so | sed 's,libjvm.so,,'|head -n 1` - if test ! -f $libjvmdir/libjvm.so; then continue; fi - jredirs="$jredirs $dir" - fi - fi - done - - dnl Now jredirs contains a reduced list, of paths where both java and ../**/libjvm.so was found - JAVAC= - JAVA= - kde_java_bindir=no - for dir in $jredirs; do - JAVA="$dir/java" - kde_java_bindir=$dir - if test -x "$dir/javac"; then - JAVAC="$dir/javac" - break - fi - done - - if test -n "$JAVAC"; then - dnl this substitution might not work - well, we test for jni.h below - kde_java_includedir=`echo $JAVAC | sed -e 's,bin/javac$,include/,'` - else - kde_java_includedir=no - fi - else - dnl config option set - kde_java_bindir=$ac_java_dir/bin - if test -x $ac_java_dir/bin/java && test ! -x $ac_java_dir/bin/javac; then - kde_java_includedir=no - else - kde_java_includedir=$ac_java_dir/include - fi - fi -fi - -dnl At this point kde_java_bindir and kde_java_includedir are either set or "no" -if test "x$kde_java_bindir" != "xno"; then - - dnl Look for libjvm.so - kde_java_libjvmdir=`find $kde_java_bindir/.. -name libjvm.so | sed 's,libjvm.so,,'|head -n 1` - dnl Look for libgcj.so - kde_java_libgcjdir=`find $kde_java_bindir/.. -name libgcj.so | sed 's,libgcj.so,,'|head -n 1` - dnl Look for libhpi.so and avoid green threads - kde_java_libhpidir=`find $kde_java_bindir/.. -name libhpi.so | grep -v green | sed 's,libhpi.so,,' | head -n 1` - - dnl Now check everything's fine under there - dnl the include dir is our flag for having the JDK - if test -d "$kde_java_includedir"; then - if test ! -x "$kde_java_bindir/javac"; then - AC_MSG_ERROR([javac not found under $kde_java_bindir - it seems you passed a wrong --with-java.]) - fi - if test ! -x "$kde_java_bindir/javah"; then - AC_MSG_ERROR([javah not found under $kde_java_bindir. javac was found though! Use --with-java or --without-java.]) - fi - if test ! -x "$kde_java_bindir/jar"; then - AC_MSG_ERROR([jar not found under $kde_java_bindir. javac was found though! Use --with-java or --without-java.]) - fi - if test ! -r "$kde_java_includedir/jni.h"; then - AC_MSG_ERROR([jni.h not found under $kde_java_includedir. Use --with-java or --without-java.]) - fi - - jni_includes="-I$kde_java_includedir" - dnl Strange thing, jni.h requires jni_md.h which is under genunix here.. - dnl and under linux here.. - - dnl not needed for gcj - - if test "x$kde_java_libgcjdir" = "x"; then - test -d "$kde_java_includedir/linux" && jni_includes="$jni_includes -I$kde_java_includedir/linux" - test -d "$kde_java_includedir/solaris" && jni_includes="$jni_includes -I$kde_java_includedir/solaris" - test -d "$kde_java_includedir/genunix" && jni_includes="$jni_includes -I$kde_java_includedir/genunix" - fi - - else - JAVAC= - jni_includes= - fi - - if test "x$kde_java_libgcjdir" = "x"; then - if test ! -r "$kde_java_libjvmdir/libjvm.so"; then - AC_MSG_ERROR([libjvm.so not found under $kde_java_libjvmdir. Use --without-java.]) - fi - else - if test ! -r "$kde_java_libgcjdir/libgcj.so"; then - AC_MSG_ERROR([libgcj.so not found under $kde_java_libgcjdir. Use --without-java.]) - fi - fi - - if test ! -x "$kde_java_bindir/java"; then - AC_MSG_ERROR([java not found under $kde_java_bindir. javac was found though! Use --with-java or --without-java.]) - fi - - dnl not needed for gcj compile - - if test "x$kde_java_libgcjdir" = "x"; then - if test ! -r "$kde_java_libhpidir/libhpi.so"; then - AC_MSG_ERROR([libhpi.so not found under $kde_java_libhpidir. Use --without-java.]) - fi - fi - - if test -n "$jni_includes"; then - dnl Check for JNI version - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - ac_cxxflags_safe="$CXXFLAGS" - CXXFLAGS="$CXXFLAGS $all_includes $jni_includes" - - AC_TRY_COMPILE([ - #include <jni.h> - ], - [ - #ifndef JNI_VERSION_1_2 - Syntax Error - #endif - ],[ kde_jni_works=yes ], - [ kde_jni_works=no ]) - - if test $kde_jni_works = no; then - AC_MSG_ERROR([Incorrect version of $kde_java_includedir/jni.h. - You need to have Java Development Kit (JDK) version 1.2. - - Use --with-java to specify another location. - Use --without-java to configure without java support. - Or download a newer JDK and try again. - See e.g. http://java.sun.com/products/jdk/1.2 ]) - fi - - CXXFLAGS="$ac_cxxflags_safe" - AC_LANG_RESTORE - - dnl All tests ok, inform and subst the variables - - JAVAC=$kde_java_bindir/javac - JAVAH=$kde_java_bindir/javah - JAR=$kde_java_bindir/jar - AC_DEFINE_UNQUOTED(PATH_JAVA, "$kde_java_bindir/java", [Define where your java executable is]) - if test "x$kde_java_libgcjdir" = "x"; then - JVMLIBS="-L$kde_java_libjvmdir -ljvm -L$kde_java_libhpidir -lhpi" - else - JVMLIBS="-L$kde_java_libgcjdir -lgcj" - fi - AC_MSG_RESULT([java JDK in $kde_java_bindir]) - - else - AC_DEFINE_UNQUOTED(PATH_JAVA, "$kde_java_bindir/java", [Define where your java executable is]) - AC_MSG_RESULT([java JRE in $kde_java_bindir]) - fi -elif test -d "/Library/Java/Home"; then - kde_java_bindir="/Library/Java/Home/bin" - jni_includes="-I/Library/Java/Home/include" - - JAVAC=$kde_java_bindir/javac - JAVAH=$kde_java_bindir/javah - JAR=$kde_java_bindir/jar - JVMLIBS="-Xlinker -framework -Xlinker JavaVM" - - AC_DEFINE_UNQUOTED(PATH_JAVA, "$kde_java_bindir/java", [Define where your java executable is]) - AC_MSG_RESULT([Apple Java Framework]) -else - AC_MSG_RESULT([none found]) -fi - -AC_SUBST(JAVAC) -AC_SUBST(JAVAH) -AC_SUBST(JAR) -AC_SUBST(JVMLIBS) -AC_SUBST(jni_includes) - -# for backward compat -kde_cv_java_includedir=$kde_java_includedir -kde_cv_java_bindir=$kde_java_bindir -]) - -dnl this is a redefinition of autoconf 2.5x's AC_FOREACH. -dnl When the argument list becomes big, as in KDE for AC_OUTPUT in -dnl big packages, m4_foreach is dog-slow. So use our own version of -dnl it. (matz@kde.org) -m4_define([mm_foreach], -[m4_pushdef([$1])_mm_foreach($@)m4_popdef([$1])]) -m4_define([mm_car], [[$1]]) -m4_define([mm_car2], [[$@]]) -m4_define([_mm_foreach], -[m4_if(m4_quote($2), [], [], - [m4_define([$1], mm_car($2))$3[]_mm_foreach([$1], - mm_car2(m4_shift($2)), - [$3])])]) -m4_define([AC_FOREACH], -[mm_foreach([$1], m4_split(m4_normalize([$2])), [$3])]) - -AC_DEFUN([KDE_NEED_FLEX], -[ -kde_libs_safe=$LIBS -LIBS="$LIBS $USER_LDFLAGS" -AM_PROG_LEX -LIBS=$kde_libs_safe -if test -z "$LEXLIB"; then - AC_MSG_ERROR([You need to have flex installed.]) -fi -AC_SUBST(LEXLIB) -]) - -AC_DEFUN([AC_PATH_QTOPIA], -[ - dnl TODO: use AC_CACHE_VAL - - if test -z "$1"; then - qtopia_minver_maj=1 - qtopia_minver_min=5 - qtopia_minver_pat=0 - else - qtopia_minver_maj=`echo "$1" | sed -e "s/^\(.*\)\..*\..*$/\1/"` - qtopia_minver_min=`echo "$1" | sed -e "s/^.*\.\(.*\)\..*$/\1/"` - qtopia_minver_pat=`echo "$1" | sed -e "s/^.*\..*\.\(.*\)$/\1/"` - fi - - qtopia_minver="$qtopia_minver_maj$qtopia_minver_min$qtopia_minver_pat" - qtopia_minverstr="$qtopia_minver_maj.$qtopia_minver_min.$qtopia_minver_pat" - - AC_REQUIRE([AC_PATH_QT]) - - AC_MSG_CHECKING([for Qtopia]) - - LIB_QTOPIA="-lqpe" - AC_SUBST(LIB_QTOPIA) - - kde_qtopia_dirs="$QPEDIR /opt/Qtopia" - - ac_qtopia_incdir=NO - - AC_ARG_WITH(qtopia-dir, - AC_HELP_STRING([--with-qtopia-dir=DIR],[where the root of Qtopia is installed]), - [ ac_qtopia_incdir="$withval"/include] ) - - qtopia_incdirs="" - for dir in $kde_qtopia_dirs; do - qtopia_incdirs="$qtopia_incdirs $dir/include" - done - - if test ! "$ac_qtopia_incdir" = "NO"; then - qtopia_incdirs="$ac_qtopia_incdir $qtopia_incdirs" - fi - - qtopia_incdir="" - AC_FIND_FILE(qpe/qpeapplication.h, $qtopia_incdirs, qtopia_incdir) - ac_qtopia_incdir="$qtopia_incdir" - - if test -z "$qtopia_incdir"; then - AC_MSG_ERROR([Cannot find Qtopia headers. Please check your installation.]) - fi - - qtopia_ver_maj=`cat $qtopia_incdir/qpe/version.h | sed -n -e 's,.*QPE_VERSION "\(.*\)\..*\..*".*,\1,p'`; - qtopia_ver_min=`cat $qtopia_incdir/qpe/version.h | sed -n -e 's,.*QPE_VERSION ".*\.\(.*\)\..*".*,\1,p'`; - qtopia_ver_pat=`cat $qtopia_incdir/qpe/version.h | sed -n -e 's,.*QPE_VERSION ".*\..*\.\(.*\)".*,\1,p'`; - - qtopia_ver="$qtopia_ver_maj$qtopia_ver_min$qtopia_ver_pat" - qtopia_verstr="$qtopia_ver_maj.$qtopia_ver_min.$qtopia_ver_pat" - if test "$qtopia_ver" -lt "$qtopia_minver"; then - AC_MSG_ERROR([found Qtopia version $qtopia_verstr but version $qtopia_minverstr -is required.]) - fi - - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - - ac_cxxflags_safe="$CXXFLAGS" - ac_ldflags_safe="$LDFLAGS" - ac_libs_safe="$LIBS" - - CXXFLAGS="$CXXFLAGS -I$qtopia_incdir $all_includes" - LDFLAGS="$LDFLAGS $QT_LDFLAGS $all_libraries $USER_LDFLAGS $KDE_MT_LDFLAGS" - LIBS="$LIBS $LIB_QTOPIA $LIBQT" - - cat > conftest.$ac_ext <<EOF -#include "confdefs.h" -#include <qpe/qpeapplication.h> -#include <qpe/version.h> - -int main( int argc, char **argv ) -{ - QPEApplication app( argc, argv ); - return 0; -} -EOF - - if AC_TRY_EVAL(ac_link) && test -s conftest; then - rm -f conftest* - else - rm -f conftest* - AC_MSG_ERROR([Cannot link small Qtopia Application. For more details look at -the end of config.log]) - fi - - CXXFLAGS="$ac_cxxflags_safe" - LDFLAGS="$ac_ldflags_safe" - LIBS="$ac_libs_safe" - - AC_LANG_RESTORE - - QTOPIA_INCLUDES="-I$qtopia_incdir" - AC_SUBST(QTOPIA_INCLUDES) - - AC_MSG_RESULT([found version $qtopia_verstr with headers at $qtopia_incdir]) -]) - - -AC_DEFUN([KDE_INIT_DOXYGEN], -[ -AC_MSG_CHECKING([for Qt docs]) -kde_qtdir= -if test "${with_qt_dir+set}" = set; then - kde_qtdir="$with_qt_dir" -fi - -AC_FIND_FILE(qsql.html, [ $kde_qtdir/doc/html $QTDIR/doc/html /usr/share/doc/packages/qt3/html /usr/lib/qt/doc /usr/lib/qt3/doc /usr/lib/qt3/doc/html /usr/doc/qt3/html /usr/doc/qt3 /usr/share/doc/qt3-doc /usr/share/qt3/doc/html /usr/X11R6/share/doc/qt/html ], QTDOCDIR) -AC_MSG_RESULT($QTDOCDIR) - -AC_SUBST(QTDOCDIR) - -KDE_FIND_PATH(dot, DOT, [], []) -if test -n "$DOT"; then - KDE_HAVE_DOT="YES" -else - KDE_HAVE_DOT="NO" -fi -AC_SUBST(KDE_HAVE_DOT) -KDE_FIND_PATH(doxygen, DOXYGEN, [], []) -AC_SUBST(DOXYGEN) - -DOXYGEN_PROJECT_NAME="$1" -DOXYGEN_PROJECT_NUMBER="$2" -AC_SUBST(DOXYGEN_PROJECT_NAME) -AC_SUBST(DOXYGEN_PROJECT_NUMBER) - -KDE_HAS_DOXYGEN=no -if test -n "$DOXYGEN" && test -x "$DOXYGEN" && test -f $QTDOCDIR/qsql.html; then - KDE_HAS_DOXYGEN=yes -fi -AC_SUBST(KDE_HAS_DOXYGEN) - -]) - - -AC_DEFUN([AC_FIND_BZIP2], -[ -AC_MSG_CHECKING([for bzDecompress in libbz2]) -AC_CACHE_VAL(ac_cv_lib_bzip2, -[ -AC_LANG_SAVE -AC_LANG_CPLUSPLUS -kde_save_LIBS="$LIBS" -LIBS="$all_libraries $USER_LDFLAGS -lbz2 $LIBSOCKET" -kde_save_CXXFLAGS="$CXXFLAGS" -CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES" -AC_TRY_LINK(dnl -[ -#define BZ_NO_STDIO -#include<bzlib.h> -], - [ bz_stream s; (void) bzDecompress(&s); ], - eval "ac_cv_lib_bzip2='-lbz2'", - eval "ac_cv_lib_bzip2=no") -LIBS="$kde_save_LIBS" -CXXFLAGS="$kde_save_CXXFLAGS" -AC_LANG_RESTORE -])dnl -AC_MSG_RESULT($ac_cv_lib_bzip2) - -if test ! "$ac_cv_lib_bzip2" = no; then - BZIP2DIR=bzip2 - - LIBBZ2="$ac_cv_lib_bzip2" - AC_SUBST(LIBBZ2) - -else - - cxx_shared_flag= - ld_shared_flag= - KDE_CHECK_COMPILER_FLAG(shared, [ - ld_shared_flag="-shared" - ]) - KDE_CHECK_COMPILER_FLAG(fPIC, [ - cxx_shared_flag="-fPIC" - ]) - - AC_MSG_CHECKING([for BZ2_bzDecompress in (shared) libbz2]) - AC_CACHE_VAL(ac_cv_lib_bzip2_prefix, - [ - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - kde_save_LIBS="$LIBS" - LIBS="$all_libraries $USER_LDFLAGS $ld_shared_flag -lbz2 $LIBSOCKET" - kde_save_CXXFLAGS="$CXXFLAGS" - CXXFLAGS="$CFLAGS $cxx_shared_flag $all_includes $USER_INCLUDES" - - AC_TRY_LINK(dnl - [ - #define BZ_NO_STDIO - #include<bzlib.h> - ], - [ bz_stream s; (void) BZ2_bzDecompress(&s); ], - eval "ac_cv_lib_bzip2_prefix='-lbz2'", - eval "ac_cv_lib_bzip2_prefix=no") - LIBS="$kde_save_LIBS" - CXXFLAGS="$kde_save_CXXFLAGS" - AC_LANG_RESTORE - ])dnl - - AC_MSG_RESULT($ac_cv_lib_bzip2_prefix) - - if test ! "$ac_cv_lib_bzip2_prefix" = no; then - BZIP2DIR=bzip2 - - LIBBZ2="$ac_cv_lib_bzip2_prefix" - AC_SUBST(LIBBZ2) - - AC_DEFINE(NEED_BZ2_PREFIX, 1, [Define if the libbz2 functions need the BZ2_ prefix]) - dnl else, we just ignore this - fi - -fi -AM_CONDITIONAL(include_BZIP2, test -n "$BZIP2DIR") -]) - -dnl ------------------------------------------------------------------------ -dnl Try to find the SSL headers and libraries. -dnl $(SSL_LDFLAGS) will be -Lsslliblocation (if needed) -dnl and $(SSL_INCLUDES) will be -Isslhdrlocation (if needed) -dnl ------------------------------------------------------------------------ -dnl -AC_DEFUN([KDE_CHECK_SSL], -[ -LIBSSL="-lssl -lcrypto" -AC_REQUIRE([KDE_CHECK_LIB64]) - -ac_ssl_includes=NO ac_ssl_libraries=NO -ssl_libraries="" -ssl_includes="" -AC_ARG_WITH(ssl-dir, - AC_HELP_STRING([--with-ssl-dir=DIR],[where the root of OpenSSL is installed]), - [ ac_ssl_includes="$withval"/include - ac_ssl_libraries="$withval"/lib$kdelibsuff - ]) - -want_ssl=yes -AC_ARG_WITH(ssl, - AC_HELP_STRING([--without-ssl],[disable SSL checks]), - [want_ssl=$withval]) - -if test $want_ssl = yes; then - -AC_MSG_CHECKING(for OpenSSL) - -AC_CACHE_VAL(ac_cv_have_ssl, -[#try to guess OpenSSL locations - - ssl_incdirs="/usr/include /usr/local/include /usr/ssl/include /usr/local/ssl/include $prefix/include $kde_extra_includes" - ssl_incdirs="$ac_ssl_includes $ssl_incdirs" - AC_FIND_FILE(openssl/ssl.h, $ssl_incdirs, ssl_incdir) - ac_ssl_includes="$ssl_incdir" - - ssl_libdirs="/usr/lib$kdelibsuff /usr/local/lib$kdelibsuff /usr/ssl/lib$kdelibsuff /usr/local/ssl/lib$kdelibsuff $libdir $prefix/lib$kdelibsuff $exec_prefix/lib$kdelibsuff $kde_extra_libs" - if test ! "$ac_ssl_libraries" = "NO"; then - ssl_libdirs="$ac_ssl_libraries $ssl_libdirs" - fi - - test=NONE - ssl_libdir=NONE - for dir in $ssl_libdirs; do - try="ls -1 $dir/libssl*" - if test=`eval $try 2> /dev/null`; then ssl_libdir=$dir; break; else echo "tried $dir" >&AC_FD_CC ; fi - done - - ac_ssl_libraries="$ssl_libdir" - - ac_ldflags_safe="$LDFLAGS" - ac_libs_safe="$LIBS" - - LDFLAGS="$LDFLAGS -L$ssl_libdir $all_libraries" - LIBS="$LIBS $LIBSSL -lRSAglue -lrsaref" - - AC_TRY_LINK(,void RSAPrivateEncrypt(void);RSAPrivateEncrypt();, - ac_ssl_rsaref="yes" - , - ac_ssl_rsaref="no" - ) - - LDFLAGS="$ac_ldflags_safe" - LIBS="$ac_libs_safe" - - if test "$ac_ssl_includes" = NO || test "$ac_ssl_libraries" = NO; then - have_ssl=no - else - have_ssl=yes; - fi - - ]) - - eval "$ac_cv_have_ssl" - - AC_MSG_RESULT([libraries $ac_ssl_libraries, headers $ac_ssl_includes]) - - AC_MSG_CHECKING([whether OpenSSL uses rsaref]) - AC_MSG_RESULT($ac_ssl_rsaref) - - AC_MSG_CHECKING([for easter eggs]) - AC_MSG_RESULT([none found]) - -else - have_ssl=no -fi - -if test "$have_ssl" = yes; then - AC_MSG_CHECKING(for OpenSSL version) - dnl Check for SSL version - AC_CACHE_VAL(ac_cv_ssl_version, - [ - - cat >conftest.$ac_ext <<EOF -#include <openssl/opensslv.h> -#include <stdio.h> - int main() { - -#ifndef OPENSSL_VERSION_NUMBER - printf("ssl_version=\\"error\\"\n"); -#else - if (OPENSSL_VERSION_NUMBER < 0x00906000) - printf("ssl_version=\\"old\\"\n"); - else - printf("ssl_version=\\"ok\\"\n"); -#endif - return (0); - } -EOF - - ac_save_CPPFLAGS=$CPPFLAGS - if test "$ac_ssl_includes" != "/usr/include"; then - CPPFLAGS="$CPPFLAGS -I$ac_ssl_includes" - fi - - if AC_TRY_EVAL(ac_link); then - - if eval `./conftest 2>&5`; then - if test $ssl_version = error; then - AC_MSG_ERROR([$ssl_incdir/openssl/opensslv.h doesn't define OPENSSL_VERSION_NUMBER !]) - else - if test $ssl_version = old; then - AC_MSG_WARN([OpenSSL version too old. Upgrade to 0.9.6 at least, see http://www.openssl.org. SSL support disabled.]) - have_ssl=no - fi - fi - ac_cv_ssl_version="ssl_version=$ssl_version" - else - AC_MSG_ERROR([Your system couldn't run a small SSL test program. - Check config.log, and if you can't figure it out, send a mail to - David Faure <faure@kde.org>, attaching your config.log]) - fi - - else - AC_MSG_ERROR([Your system couldn't link a small SSL test program. - Check config.log, and if you can't figure it out, send a mail to - David Faure <faure@kde.org>, attaching your config.log]) - fi - CPPFLAGS=$ac_save_CPPFLAGS - - ]) - - eval "$ac_cv_ssl_version" - AC_MSG_RESULT($ssl_version) -fi - -if test "$have_ssl" != yes; then - LIBSSL=""; -else - AC_DEFINE(HAVE_SSL, 1, [If we are going to use OpenSSL]) - ac_cv_have_ssl="have_ssl=yes \ - ac_ssl_includes=$ac_ssl_includes ac_ssl_libraries=$ac_ssl_libraries ac_ssl_rsaref=$ac_ssl_rsaref" - - - ssl_libraries="$ac_ssl_libraries" - ssl_includes="$ac_ssl_includes" - - if test "$ac_ssl_rsaref" = yes; then - LIBSSL="-lssl -lcrypto -lRSAglue -lrsaref" - fi - - if test $ssl_version = "old"; then - AC_DEFINE(HAVE_OLD_SSL_API, 1, [Define if you have OpenSSL < 0.9.6]) - fi -fi - -SSL_INCLUDES= - -if test "$ssl_includes" = "/usr/include"; then - if test -f /usr/kerberos/include/krb5.h; then - SSL_INCLUDES="-I/usr/kerberos/include" - fi -elif test "$ssl_includes" != "/usr/local/include" && test -n "$ssl_includes"; then - SSL_INCLUDES="-I$ssl_includes" -fi - -if test "$ssl_libraries" = "/usr/lib" || test "$ssl_libraries" = "/usr/local/lib" || test -z "$ssl_libraries" || test "$ssl_libraries" = "NONE"; then - SSL_LDFLAGS="" -else - SSL_LDFLAGS="-L$ssl_libraries -R$ssl_libraries" -fi - -AC_SUBST(SSL_INCLUDES) -AC_SUBST(SSL_LDFLAGS) -AC_SUBST(LIBSSL) -]) - -AC_DEFUN([KDE_CHECK_STRLCPY], -[ - AC_REQUIRE([AC_CHECK_STRLCAT]) - AC_REQUIRE([AC_CHECK_STRLCPY]) - AC_CHECK_SIZEOF(size_t) - AC_CHECK_SIZEOF(unsigned long) - - AC_MSG_CHECKING([sizeof size_t == sizeof unsigned long]) - AC_TRY_COMPILE(,[ - #if SIZEOF_SIZE_T != SIZEOF_UNSIGNED_LONG - choke me - #endif - ],AC_MSG_RESULT([yes]),[ - AC_MSG_RESULT(no) - AC_MSG_ERROR([ - Apparently on your system our assumption sizeof size_t == sizeof unsigned long - does not apply. Please mail kde-devel@kde.org with a description of your system! - ]) - ]) -]) - -AC_DEFUN([KDE_CHECK_BINUTILS], -[ - AC_MSG_CHECKING([if ld supports unversioned version maps]) - - kde_save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS -Wl,--version-script=conftest.map" - echo "{ local: extern \"C++\" { foo }; };" > conftest.map - AC_TRY_LINK([int foo;], -[ -#ifdef __INTEL_COMPILER -icc apparently does not support libtools version-info and version-script -at the same time. Dunno where the bug is, but until somebody figured out, -better disable the optional version scripts. -#endif - - foo = 42; -], kde_supports_versionmaps=yes, kde_supports_versionmaps=no) - LDFLAGS="$kde_save_LDFLAGS" - rm -f conftest.map - AM_CONDITIONAL(include_VERSION_SCRIPT, - [test "$kde_supports_versionmaps" = "yes" && test "$kde_use_debug_code" = "no"]) - - AC_MSG_RESULT($kde_supports_versionmaps) -]) - -AC_DEFUN([AM_PROG_OBJC],[ -AC_CHECK_PROGS(OBJC, gcc, gcc) -test -z "$OBJC" && AC_MSG_ERROR([no acceptable objective-c gcc found in \$PATH]) -if test "x${OBJCFLAGS-unset}" = xunset; then - OBJCFLAGS="-g -O2" -fi -AC_SUBST(OBJCFLAGS) -_AM_IF_OPTION([no-dependencies],, [_AM_DEPENDENCIES(OBJC)]) -]) - -AC_DEFUN([KDE_CHECK_PERL], -[ - KDE_FIND_PATH(perl, PERL, [$bindir $exec_prefix/bin $prefix/bin], [ - AC_MSG_ERROR([No Perl found in your $PATH. -We need perl to generate some code.]) - ]) - AC_SUBST(PERL) -]) - -AC_DEFUN([KDE_CHECK_LARGEFILE], -[ -AC_SYS_LARGEFILE -if test "$ac_cv_sys_file_offset_bits" != no; then - CPPFLAGS="$CPPFLAGS -D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits" -fi - -if test "x$ac_cv_sys_large_files" != "xno"; then - CPPFLAGS="$CPPFLAGS -D_LARGE_FILES=1" -fi - -]) - -dnl A small extension to PKG_CHECK_MODULES (defined in pkg.m4.in) -dnl which allows to search for libs that get installed into the KDE prefix. -dnl -dnl Syntax: KDE_PKG_CHECK_MODULES(KSTUFF, libkexif >= 0.2 glib = 1.3.4, action-if, action-not) -dnl defines KSTUFF_LIBS, KSTUFF_CFLAGS, see pkg-config man page -dnl also defines KSTUFF_PKG_ERRORS on error -AC_DEFUN([KDE_PKG_CHECK_MODULES], [ - - PKG_CONFIG_PATH="$prefix/lib${kdelibsuff}/pkgconfig:$PKG_CONFIG_PATH" - if test "$prefix" != "$kde_libs_prefix"; then - PKG_CONFIG_PATH="$kde_libs_prefix/lib${kdelibsuff}/pkgconfig:$PKG_CONFIG_PATH" - fi - export PKG_CONFIG_PATH - PKG_CHECK_MODULES([$1],[$2],[$3],[$4]) -]) - - -dnl Check for PIE support in the compiler and linker -AC_DEFUN([KDE_CHECK_PIE_SUPPORT], -[ - AC_CACHE_CHECK([for PIE support], kde_cv_val_pie_support, - [ - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - safe_CXXFLAGS=$CXXFLAGS - safe_LDFLAGS=$LDFLAGS - CXXFLAGS="$CXXFLAGS -fpie" - LDFLAGS="$LDFLAGS -pie" - - AC_TRY_LINK([int foo;], [], [kde_cv_val_pie_support=yes], [kde_cv_val_pie_support=no]) - - CXXFLAGS=$safe_CXXFLAGS - LDFLAGS=$safe_LDFLAGS - AC_LANG_RESTORE - ]) - - AC_MSG_CHECKING(if enabling -pie/fpie support) - - AC_ARG_ENABLE(pie, - AC_HELP_STRING([--enable-pie],[platform supports PIE linking [default=detect]]), - [kde_has_pie_support=$enableval], - [kde_has_pie_support=detect]) - - if test "$kde_has_pie_support" = "detect"; then - kde_has_pie_support=$kde_cv_val_pie_support - fi - - AC_MSG_RESULT([$kde_has_pie_support]) - - KDE_USE_FPIE="" - KDE_USE_PIE="" - - AC_SUBST([KDE_USE_FPIE]) - AC_SUBST([KDE_USE_PIE]) - - if test "$kde_has_pie_support" = "yes"; then - KDE_USE_FPIE="-fpie" - KDE_USE_PIE="-pie" - fi -]) diff --git a/portland/dapi/kde/admin/am_edit b/portland/dapi/kde/admin/am_edit deleted file mode 100644 index c293132..0000000 --- a/portland/dapi/kde/admin/am_edit +++ /dev/null @@ -1,2445 +0,0 @@ -#!/usr/bin/perl -w - -# Expands the specialised KDE tags in Makefile.in to (hopefully) valid -# make syntax. -# When called without file parameters, we work recursively on all Makefile.in -# in and below the current subdirectory. When called with file parameters, -# only those Makefile.in are changed. -# The currently supported tags are -# -# {program}_METASOURCES -# where you have a choice of two styles -# {program}_METASOURCES = name1.moc name2.moc ... [\] -# {program}_METASOURCES = AUTO -# The second style requires other tags as well. -# -# To install icons : -# KDE_ICON = iconname iconname2 ... -# KDE_ICON = AUTO -# -# For documentation : -# http://developer.kde.org/documentation/other/developer-faq.html -# -# and more new tags TBD! -# -# The concept (and base code) for this program came from automoc, -# supplied by the following -# -# Matthias Ettrich <ettrich@kde.org> (The originator) -# Kalle Dalheimer <kalle@kde.org> (The original implementator) -# Harri Porten <porten@tu-harburg.de> -# Alex Zepeda <jazepeda@pacbell.net> -# David Faure <faure@kde.org> -# Stephan Kulow <coolo@kde.org> -# Dirk Mueller <mueller@kde.org> - -use Cwd; -use File::Find; -use File::Basename; - -# Prototype the functions -sub initialise (); -sub processMakefile ($); -sub updateMakefile (); -sub restoreMakefile (); - -sub removeLine ($$); -sub appendLines ($); -sub substituteLine ($$); - -sub findMocCandidates (); -sub pruneMocCandidates ($); -sub checkMocCandidates (); -sub addMocRules (); -sub findKcfgFile($); - -sub tag_AUTOMAKE (); -sub tag_META_INCLUDES (); -sub tag_METASOURCES (); -sub tag_POFILES (); -sub tag_DOCFILES (); -sub tag_LOCALINSTALL(); -sub tag_IDLFILES(); -sub tag_UIFILES(); -sub tag_KCFGFILES(); -sub tag_SUBDIRS(); -sub tag_ICON(); -sub tag_CLOSURE(); -sub tag_NO_UNDEFINED(); -sub tag_NMCHECK(); -sub tag_DIST(); -sub tag_KDEINIT(); - -# Some global globals... -$verbose = 0; # a debug flag -$thisProg = "$0"; # This programs name -$topdir = cwd(); # The current directory -@makefiles = (); # Contains all the files we'll process -@foreignfiles = (); -$start = (times)[0]; # some stats for testing - comment out for release -$version = "v0.2"; -$errorflag = 0; -$cppExt = "(cpp|cc|cxx|C|c\\+\\+)"; -$hExt = "(h|H|hh|hxx|hpp|h\\+\\+)"; -$progId = "KDE tags expanded automatically by " . basename($thisProg); -$automkCall = "\n"; -$printname = ""; # used to display the directory the Makefile is in -$use_final = 1; # create code for --enable-final -$cleantarget = "clean"; -$dryrun = 0; -$pathoption = 0; -$foreign_libtool = 0; - -while (defined ($ARGV[0])) -{ - $_ = shift; - if (/^--version$/) - { - print STDOUT "\n"; - print STDOUT basename($thisProg), " $version\n", - "This is really free software, unencumbered by the GPL.\n", - "You can do anything you like with it except sueing me.\n", - "Copyright 1998 Kalle Dalheimer <kalle\@kde.org>\n", - "Concept, design and unnecessary questions about perl\n", - " by Matthias Ettrich <ettrich\@kde.org>\n\n", - "Making it useful by Stephan Kulow <coolo\@kde.org> and\n", - "Harri Porten <porten\@kde.org>\n", - "Updated (Feb-1999), John Birch <jb.nz\@writeme.com>\n", - "Fixes and Improvements by Dirk Mueller <mueller\@kde.org>\n", - "Current Maintainer Stephan Kulow\n\n"; - exit 0; - } - elsif (/^--verbose$|^-v$/) - { - $verbose = 1; # Oh is there a problem...? - } - elsif (/^(?:-p|--path=)(.+)$/) - { - my $p = $1; - $thisProg = $p . "/". basename($thisProg); - warn ("$thisProg doesn't exist\n") if (!(-f $thisProg)); - $thisProg .= " -p".$p; - $pathoption=1; - } - elsif (/^--help$|^-h$/) - { - print STDOUT "Usage $thisProg [OPTION] ... [dir/Makefile.in]...\n", - "\n", - "Patches dir/Makefile.in generated by automake\n", - "(where dir can be an absolute or relative directory name)\n", - "\n", - " -v, --verbose verbosely list files processed\n", - " -h, --help print this help, then exit\n", - " --version print version number, then exit\n", - " -p, --path= use the path to am_edit if the path\n", - " called from is not the one to be used\n", - " --no-final don't patch for --enable-final\n"; - - exit 0; - } - elsif (/^--no-final$/) - { - $use_final = 0; - $thisProg .= " --no-final"; - } - elsif (/^--foreign-libtool$/) - { - $foreign_libtool = 1; - $thisProg .= " --foreign-libtool"; - } - elsif (/^-n$/) - { - $dryrun = 1; - } - else - { - # user selects what input files to check - # add full path if relative path is given - $_ = cwd()."/".$_ if (! /^\//); - print "User wants $_\n" if ($verbose); - push (@makefiles, $_); - } -} - -if ($thisProg =~ /^\// && !$pathoption ) -{ - print STDERR "Illegal full pathname call performed...\n", - "The call to \"$thisProg\"\nwould be inserted in some Makefile.in.\n", - "Please use option --path.\n"; - exit 1; -} - -# Only scan for files when the user hasn't entered data -if (!@makefiles) -{ - print STDOUT "Scanning for Makefile.in\n" if ($verbose); - find (\&add_makefile, cwd()); - #chdir('$topdir'); -} else { - print STDOUT "Using input files specified by user\n" if ($verbose); -} - -foreach $makefile (sort(@makefiles)) -{ - processMakefile ($makefile); - last if ($errorflag); -} - -# Just some debug statistics - comment out for release as it uses printf. -printf STDOUT "Time %.2f CPU sec\n", (times)[0] - $start if ($verbose); - -exit $errorflag; # causes make to fail if erroflag is set - -#----------------------------------------------------------------------------- - -# In conjunction with the "find" call, this builds the list of input files -sub add_makefile () -{ - push (@makefiles, $File::Find::name) if (/Makefile.in$/); -} - -#----------------------------------------------------------------------------- - -# Processes a single make file -# The parameter contains the full path name of the Makefile.in to use -sub processMakefile ($) -{ - # some useful globals for the subroutines called here - local ($makefile) = @_; - local @headerdirs = ('.'); - local $haveAutomocTag = 0; - local $MakefileData = ""; - - local $cxxsuffix = "KKK"; - - local @programs = (); # lists the names of programs and libraries - local $program = ""; - - local @kdeinits = (); # lists the kdeinit targets - - local %realObjs = (); # lists the objects compiled into $program - local %sources = (); # lists the sources used for $program - local %finalObjs = (); # lists the objects compiled when final - local %realname = (); # the binary name of program variable - local %idlfiles = (); # lists the idl files used for $program - local %globalmocs = ();# list of all mocfiles (in %mocFiles format) - local %important = (); # list of files to be generated asap - local %uiFiles = (); - local %kcfgFiles = (); - - local $allidls = ""; - local $idl_output = "";# lists all idl generated files for cleantarget - local $ui_output = "";# lists all uic generated files for cleantarget - local $kcfg_output = "";# lists all kcfg generated files for cleantarget - - local %dependmocs = (); - - local $metasourceTags = 0; - local $dep_files = ""; - local $dep_finals = ""; - local %target_adds = (); # the targets to add - local %rule_adds = (); - local $kdelang = ""; - local @cleanfiles = (); - local $cleanMoc = ""; - local $closure_output = ""; - - local %varcontent = (); - - $makefileDir = dirname($makefile); - chdir ($makefileDir); - $printname = $makefile; - $printname =~ s/^\Q$topdir\E\///; - $makefile = basename($makefile); - - print STDOUT "Processing makefile $printname\n" if ($verbose); - - # Setup and see if we need to do this. - return if (!initialise()); - - tag_AUTOMAKE (); # Allows a "make" to redo the Makefile.in - tag_META_INCLUDES (); # Supplies directories for src locations - - foreach $program (@programs) { - $sources_changed{$program} = 0; - $dependmocs{$program} = ""; - $important{$program} = ""; - tag_IDLFILES(); # Sorts out idl rules - tag_NO_UNDEFINED(); - tag_CLOSURE(); - tag_NMCHECK(); - tag_UIFILES(); # Sorts out ui rules - tag_KCFGFILES(); # Sorts out kcfg rules - tag_METASOURCES (); # Sorts out the moc rules - if ($sources_changed{$program}) { - my $lookup = $program . '_SOURCES\s*=[ \t]*(.*)'; - - if($program =~ /libkdeinit_(.*)/) { - my $prog = $1; - substituteLine($prog . '_SOURCES\s*=[ \t]*(.*)', - "${prog}_SOURCES = ${prog}_dummy.$cxxsuffix\n" . - "libkdeinit_${prog}_SOURCES = " . $sources{$program}); - $sources{$prog} = "${prog}_dummy.$cxxsuffix"; - } - else { - substituteLine($lookup, "$program\_SOURCES=" . $sources{$program}); - } - } - if ($important{$program}) { - local %source_dict = (); - for $source (split(/[\034\s]+/, $sources{$program})) { - $source_dict{$source} = 1; - } - for $source (@cleanfiles) { - $source_dict{$source} = 0; - } - for $source (keys %source_dict) { - next if (!$source); - if ($source_dict{$source}) { - # sanity check - if (! -f $source) { - print STDERR "Error: $source is listed in a _SOURCE line in $printname, but doesn't exist yet. Put it in DISTCLEANFILES!\n"; - } else { - $target_adds{"\$(srcdir)/$source"} .= $important{$program}; - } - } - } - } - } - if ($cleanMoc) { - # Always add dist clean tag - # Add extra *.moc.cpp files created for USE_AUTOMOC because they - # aren't included in the normal *.moc clean rules. - appendLines ("$cleantarget-metasources:\n\t-rm -f $cleanMoc\n"); - $target_adds{"$cleantarget-am"} .= "$cleantarget-metasources "; - } - - tag_DIST() unless ($kdeopts{"noautodist"}); - - if ($idl_output) { - appendLines ("$cleantarget-idl:\n\t-rm -f $idl_output\n"); - $target_adds{"$cleantarget-am"} .= "$cleantarget-idl "; - } - - if ($ui_output) { - appendLines ("$cleantarget-ui:\n\t-rm -f $ui_output\n"); - $target_adds{"$cleantarget-am"} .= "$cleantarget-ui "; - } - - if ($kcfg_output) { - appendLines ("$cleantarget-kcfg:\n\t-rm -f $kcfg_output\n"); - $target_adds{"$cleantarget-am"} .= "$cleantarget-kcfg "; - } - - if ($closure_output) { - appendLines ("$cleantarget-closures:\n\t-rm -f $closure_output\n"); - $target_adds{"$cleantarget-am"} .= "$cleantarget-closures "; - } - - if ($MakefileData =~ /\nKDE_LANG\s*=\s*(\S*)\s*\n/) { - $kdelang = '$(KDE_LANG)' - } else { - $kdelang = ''; - } - - tag_POFILES (); # language rules for po directory - tag_DOCFILES (); # language rules for doc directories - tag_LOCALINSTALL(); # add $(DESTDIR) before all kde_ dirs - tag_ICON(); - tag_SUBDIRS(); - - my $tmp = "force-reedit:\n"; - $tmp .= "\t$automkCall\n\tcd \$(top_srcdir) && perl $thisProg $printname\n\n"; - appendLines($tmp); - - make_bcheck_target(); - make_meta_classes(); - tag_COMPILE_FIRST(); - tag_FINAL() if (!$kdeopts{"nofinal"}); - - my $final_lines = "final:\n\t\$(MAKE) "; - my $final_install_lines = "final-install:\n\t\$(MAKE) "; - my $nofinal_lines = "no-final:\n\t\$(MAKE) "; - my $nofinal_install_lines = "no-final-install:\n\t\$(MAKE) "; - - foreach $program (@programs) { - my $lookup = $program . '_OBJECTS\s*=[ \t]*.*'; - my $new = ""; - my @list = split(/[\034\s]+/, $realObjs{$program}); - if (!$kdeopts{"nofinal"} && @list > 1 && $finalObjs{$program}) { - $new .= "$program\_final\_OBJECTS = " . $finalObjs{$program}; - $new .= "\n$program\_nofinal\_OBJECTS = " . $realObjs{$program}; - $new .= "\n\@KDE_USE_FINAL_FALSE\@$program\_OBJECTS = \$($program\_nofinal\_OBJECTS)"; - $new .= "\n\@KDE_USE_FINAL_TRUE\@$program\_OBJECTS = \$($program\_final\_OBJECTS)"; - - $final_lines .= "$program\_OBJECTS=\"\$($program\_final_OBJECTS)\" "; - $final_install_lines .= "$program\_OBJECTS=\"\$($program\_final_OBJECTS)\" "; - $nofinal_lines .= "$program\_OBJECTS=\"\$($program\_nofinal\_OBJECTS)\" "; - $nofinal_install_lines .= "$program\_OBJECTS=\"\$($program\_nofinal_OBJECTS)\" "; - } else { - $new = "$program\_OBJECTS = " . $realObjs{$program}; - } - if($MakefileData =~ m/\n$lookup/) { - substituteLine ($lookup, $new); - } - else { - appendLines("$new\n"); - } - } - appendLines($final_lines . "all-am\n"); - appendLines($final_install_lines . "install-am\n"); - appendLines($nofinal_lines . "all-am\n"); - appendLines($nofinal_install_lines . "install-am\n"); - - my $lookup = '(\@\S+\@)?DEP_FILES\s*=[ \t]*(.*)'; - if ($MakefileData =~ /\n$lookup/) { - my $condition = $1; - my $depfiles = $2; - my $workfiles; - - if ($dep_finals) { - # Add the conditions on every line, since - # there may be line continuations in the list. - $workfiles = "$dep_files $dep_finals $depfiles"; - $workfiles =~ s/\034/\034$condition\@KDE_USE_FINAL_TRUE\@\t/g; - $lines = "$condition\@KDE_USE_FINAL_TRUE\@DEP_FILES = $workfiles\n"; - $workfiles = "$dep_files $depfiles"; - $workfiles =~ s/\034/\034$condition\@KDE_USE_FINAL_FALSE\@\t/g; - $lines .= "$condition\@KDE_USE_FINAL_FALSE\@DEP_FILES = $workfiles"; - } else { - $workfiles = "$dep_files $depfiles"; - $workfiles =~ s/\034/\034$condition\t/g; - $lines = $condition . "DEP_FILES = $workfiles"; - } - substituteLine($lookup, $lines); - } - - # new recursive targets - $target_adds{ "nmcheck" } .= ""; # always create nmcheck target - $target_adds{ "nmcheck-am" } .= "nmcheck"; - $lookup = 'RECURSIVE_TARGETS\s*=[ \t]*(.*)'; - if ($MakefileData =~ /\n$lookup/) { - substituteLine($lookup, "RECURSIVE_TARGETS = $1 nmcheck-recursive bcheck-recursive"); - } - - $cvs_lines = "kde-rpo-clean:\n"; - $cvs_lines .= "\t-rm -f *.rpo\n"; - appendLines($cvs_lines); - $target_adds{"clean"} .= "kde-rpo-clean "; - - my %target_dels = ("install-data-am" => ""); - - # some strange people like to do a install-exec, and expect that also - # all modules are installed. automake doesn't know this, so we need to move - # this here from install-data to install-exec. - if ($MakefileData =~ m/\nkde_module_LTLIBRARIES\s*=/) { -# $target_adds{"install-exec-am"} .= "install-kde_moduleLTLIBRARIES "; -# don't use $target_adds here because we need to append the dependency, not -# prepend it. Fixes #44342 , when a module depends on a lib in the same dir -# and libtool needs it during relinking upon install (Simon) - my $lookup = "install-exec-am:([^\n]*)"; - if($MakefileData =~ /\n$lookup\n/) { - substituteLine("$lookup", "install-exec-am: $1 install-kde_moduleLTLIBRARIES"); - } - $target_dels{"install-data-am"} .= "install-kde_moduleLTLIBRARIES "; - $target_adds{"install-data-am"} .= " "; - } - - my $lines = ""; - - foreach $add (keys %target_adds) { - my $lookup = quotemeta($add) . ':([^\n]*)'; - if ($MakefileData =~ /\n$lookup\n/) { - my $newlines = $1; - my $oldlines = $lookup; - if (defined $target_dels{$add}) { - foreach $del (split(' ', $target_dels{$add})) { - $newlines =~ s/\s*$del\s*/ /g; - } - } - substituteLine($oldlines, "$add: " . $target_adds{$add} . $newlines); - } else { - $lines .= "$add: " . $target_adds{$add} . "\n"; - } - } - - appendLines($lines) if ($lines); - - $lines = join("\n", values %rule_adds); - appendLines($lines) if ($lines); - - my $found = 1; - - while ($found) { - if ($MakefileData =~ m/\n(.*)\$\(CXXFLAGS\)(.*)\n/) { - my $stuff_before = $1; - my $stuff_after = $2; - my $lookup = quotemeta("$1\$(CXXFLAGS)$2"); - my $replacement = "$1\$(KCXXFLAGS)$2"; - $MakefileData =~ s/$lookup/$replacement/; - $lookup =~ s/\\\$\\\(CXXFLAGS\\\)/\\\$\\\(KCXXFLAGS\\\)/; - $replacement = "$stuff_before\$(KCXXFLAGS) \$(KDE_CXXFLAGS)$stuff_after"; - next if ($stuff_before =~ /\$\(KDE_CXXFLAGS\)/ or $stuff_after =~ /\$\(KDE_CXXFLAGS\)/); - substituteLine($lookup, $replacement); - } else { - $found = 0; - } - } - - if($foreign_libtool == 0) { - $lookup = '(\n[^#].*\$\(LIBTOOL\) --mode=link) (\$\(CXXLD\).*\$\(KCXXFLAGS\))'; - - if ($MakefileData =~ m/$lookup/ ) { - $MakefileData =~ s/$lookup/$1 --tag=CXX $2/; - } - - $lookup = '(\n[^#].*\$\(LIBTOOL\) --mode=compile)\s+(\$\(CXX\)\s+)'; - if ($MakefileData =~ m/$lookup/ ) { - $MakefileData =~ s/$lookup/$1 --tag=CXX $2/; - } - } - - $MakefileData =~ s/\$\(KCXXFLAGS\)/\$\(CXXFLAGS\)/g; - - $lookup = '(.*)cp -pr \$\$/\$\$file \$\(distdir\)/\$\$file(.*)'; - if ($MakefileData =~ m/\n$lookup\n/) { - substituteLine($lookup, "$1cp -pr \$\$d/\$\$file \$(distdir)/\$\$file$2"); - } - - # Always update the Makefile.in - updateMakefile (); - return; -} - -#----------------------------------------------------------------------------- - -# Beware: This procedure is not complete. E.g. it also parses lines -# containing a '=' in rules (for instance setting shell vars). For our -# usage this us enough, though. -sub read_variables () -{ - while ($MakefileData =~ /\n\s*(\S+)\s*=([^\n]*)/g) { - $varcontent{$1} = $2; - } -} - -# Check to see whether we should process this make file. -# This is where we look for tags that we need to process. -# A small amount of initialising on the tags is also done here. -# And of course we open and/or create the needed make files. -sub initialise () -{ - if (! -r "Makefile.am") { - print STDOUT "found Makefile.in without Makefile.am\n" if ($verbose); - return 0; - } - - # Checking for files to process... - - open (FILEIN, $makefile) || die "Can't open $makefileDir/$makefile: $!\n"; - # perl bug in 5.8.0: in utf8 mode it badly screws up - binmode(FILEIN, ":bytes") if ($] >= 5.008); - # Read the file - # stat(FILEIN)[7] might look more elegant, but is slower as it - # requires stat'ing the file - seek(FILEIN, 0, 2); - my $fsize = tell(FILEIN); - seek(FILEIN, 0, 0); - read FILEIN, $MakefileData, $fsize; - close FILEIN; - print "DOS CRLF within $makefileDir/$makefile!\n" if($MakefileData =~ y/\r//d); - - # Remove the line continuations, but keep them marked - # Note: we lose the trailing spaces but that's ok. - # Don't mangle line-leading spaces (usually tabs) - # since they're important. - $MakefileData =~ s/\\\s*\n/\034/g; - - # If we've processed the file before... - restoreMakefile () if ($MakefileData =~ /$progId/); - - foreach $dir (@foreignfiles) { - if (substr($makefileDir,0,length($dir)) eq $dir) { - return 0; - } - } - - %kdeopts = (); - $kdeopts{"foreign"} = 0; - $kdeopts{"qtonly"} = 0; - $kdeopts{"noautodist"} = 0; - $kdeopts{"foreign-libtool"} = $foreign_libtool; - $kdeopts{"nofinal"} = !$use_final; # default - - read_variables(); - - if ($MakefileData =~ /\nKDE_OPTIONS\s*=[ \t]*([^\n]*)\n/) { - my $kde_options_str = $1; - local @kde_options = split(/[\034\s]+/, $kde_options_str); - if (grep(/^foreign$/, @kde_options)) { - push(@foreignfiles, $makefileDir . "/"); - return 0; # don't touch me - } - for $opt (@kde_options) { - if (!defined $kdeopts{$opt}) { - print STDERR "Warning: unknown option $opt in $printname\n"; - } else { - $kdeopts{$opt} = 1; - } - } - } - - # Look for the tags that mean we should process this file. - $metasourceTags = 0; - $metasourceTags++ while ($MakefileData =~ /\n[^=\#]*METASOURCES\s*=/g); - - my $pofileTag = 0; - $pofileTag++ while ($MakefileData =~ /\nPOFILES\s*=/g); - if ($pofileTag > 1) - { - print STDERR "Error: Only one POFILES tag allowed\n"; - $errorflag = 1; - } - - while ($MakefileData =~ /\n\.SUFFIXES:([^\n]+)\n/g) { - my $suffixes_str = $1; - my @list=split(' ', $suffixes_str); - foreach $ext (@list) { - if ($ext =~ /^\.$cppExt$/) { - $cxxsuffix = $ext; - $cxxsuffix =~ s/\.//g; - print STDOUT "will use suffix $cxxsuffix\n" if ($verbose); - last; - } - } - } - - tag_KDEINIT(); - - while ($MakefileData =~ /\n(\S*)_OBJECTS\s*=[\034 \t]*([^\n]*)\n/g) { - - my $program = $1; - my $objs = $2; # safe them - - my $ocv = 0; - - my @objlist = split(/[\034\s]+/, $objs); - foreach $obj (@objlist) { - if ($obj =~ /(\S*)\$\((\S+)\)/ ) { - my $pre = $1; - my $variable = $2; - if ($pre eq '' && exists($varcontent{$variable})) { - my @addlist = split(/[\034\s]+/, $varcontent{$variable}); - push(@objlist, @addlist); - } elsif ($variable !~ 'OBJEXT' && $variable !~ /am__objects_\d+/ ) { - $ocv = 1; - } - } - } - - next if ($ocv); - next if ($program =~ /^am_libkdeinit_/); - - $program =~ s/^am_// if ($program =~ /^am_/); - - my $sourceprogram = $program; - $sourceprogram =~ s/\@am_/\@/ if($sourceprogram =~ /^.*\@am_.+/); - - print STDOUT "found program $program\n" if ($verbose); - push(@programs, $program); - - $realObjs{$program} = $objs; - - if ($MakefileData =~ /\n$sourceprogram\_SOURCES\s*=[ \t]*(.*)\n/) { - $sources{$program} = $1; - } - else { - $sources{$program} = ""; - print STDERR "found program with no _SOURCES: $program\n"; - } - - my $realprogram = $program; - $realprogram =~ s/_/./g; # unmask to regexp - if ($MakefileData =~ /\n($realprogram)(\$\(EXEEXT\)?)?:.*\$\($program\_OBJECTS\)/) { - $realname{$program} = $1; - } else { - # not standard Makefile - nothing to worry about - $realname{$program} = ""; - } - } - - my $lookup = 'DEPDIR\s*=.*'; - if ($MakefileData !~ /\n$lookup/) { - $lookup = 'bindir\s*=[ \t]*.*'; - substituteLine($lookup, "DEPDIR = .deps\n$1") if ($MakefileData =~ /\n($lookup)/); - } - - my @marks = ('MAINTAINERCLEANFILES', 'CLEANFILES', 'DISTCLEANFILES'); - foreach $mark (@marks) { - while ($MakefileData =~ /\n($mark)\s*=[ \t]*([^\n]*)/g) { - my $clean_str = $2; - foreach $file (split('[\034\s]+', $clean_str)) { - $file =~ s/\.\///; - push(@cleanfiles, $file); - } - } - } - - my $localTag = 0; - $localTag++ if ($MakefileData =~ /\ninstall-\S+-local:/); - - return (!$errorflag); -} - -#----------------------------------------------------------------------------- - -# Gets the list of user defined directories - relative to $srcdir - where -# header files could be located. -sub tag_META_INCLUDES () -{ - my $lookup = '[^=\n]*META_INCLUDES\s*=[ \t]*(.*)'; - return 1 if ($MakefileData !~ /($lookup)\n/); - print STDOUT "META_INCLUDE processing <$1>\n" if ($verbose); - - my $headerStr = $2; - removeLine ($lookup, $1); - - my @headerlist = split(/[\034\s]+/, $headerStr); - - foreach $dir (@headerlist) - { - $dir =~ s#\$\(srcdir\)#.#; - if (! -d $dir) - { - print STDERR "Warning: $dir can't be found. ", - "Must be a relative path to \$(srcdir)\n"; - } - else - { - push (@headerdirs, $dir); - } - } - - return 0; -} - -#----------------------------------------------------------------------------- - -sub tag_FINAL() -{ - my @final_names = (); - - foreach $program (@programs) { - - if ($sources{$program} =~ /\(/) { - print STDOUT "found ( in $program\_SOURCES. skipping\n" if ($verbose); - next; - } - - my $mocs = ""; # Moc files (in this program) - my $moc_cpp_added = 0; # If we added some .moc.cpp files, due to - # no other .cpp file including the .moc one. - - my @progsources = split(/[\034\s]+/, $sources{$program}); - my %shash = (); - @shash{@progsources} = 1; # we are only interested in the existence - my %sourcelist = (); - my %extradeps = (); - - foreach $source (@progsources) { - my $suffix = $source; - $suffix =~ s/^.*\.([^\.]+)$/$1/; - - $sourcelist{$suffix} .= "$source "; - } - foreach my $mocFile (keys (%globalmocs)) - { - my ($dir, $hFile, $cppFile) = split ("\035", $globalmocs{$mocFile}, 3); - if (defined ($cppFile)) { - $mocs .= " $mocFile.moc" if exists $shash{$cppFile}; - } else { - $sourcelist{$cxxsuffix} .= "$mocFile.moc.$cxxsuffix "; - $moc_cpp_added = 1; - } - } - - # scan for extra given dependencies and add them to our target - while ($MakefileData =~ /\n\s*(\S+)\.(?:lo|o)\s*:([^\n]*)/g) { - $extradeps{$1} = $2; - } - - foreach $suffix (keys %sourcelist) { - # See if this file contains c++ code. (i.e., just check the file's suffix against c++ extensions) - my $suffix_is_cxx = 0; - if($suffix =~ /($cppExt)$/) { - $cxxsuffix = $1; - $suffix_is_cxx = 1; - } - - my $mocfiles_in = ($suffix eq $cxxsuffix) && $moc_cpp_added; - - my @sourcelist = split(/[\034\s]+/, $sourcelist{$suffix}); - - if ((@sourcelist == 1 && !$mocfiles_in) || $suffix_is_cxx != 1 ) { - - # we support IDL on our own - if ($suffix eq "skel" || $suffix =~ /^stub/ - || $suffix =~ /^signals/ # obsolete, remove in KDE-4 - || $suffix eq "h" || $suffix eq "ui" - || $suffix eq "kcfgc" ) { - next; - } - - foreach $file (@sourcelist) { - $file =~ s/\Q$suffix\E$//; - - $finalObjs{$program} .= $file; - if ($program =~ /_la$/) { - $finalObjs{$program} .= "lo "; - } else { - $finalObjs{$program} .= "o "; - } - } - next; # suffix - } - - my $source_deps = ""; - foreach $source (@sourcelist) { - if (-f $source) { - $source_deps .= " \$(srcdir)/$source"; - } else { - $source_deps .= " $source"; - } - my $plainsource = $source; - $plainsource =~ s/\.$cppExt$//; - $source_deps .= " " . $extradeps{$plainsource} if (exists($extradeps{$plainsource})); - } - - $handling = "$program.all_$suffix.$suffix: \$(srcdir)/Makefile.in" . $source_deps . " " . join(' ', $mocs) . "\n"; - $handling .= "\t\@echo 'creating $program.all_$suffix.$suffix ...'; \\\n"; - $handling .= "\trm -f $program.all_$suffix.files $program.all_$suffix.final; \\\n"; - $handling .= "\techo \"#define KDE_USE_FINAL 1\" >> $program.all_$suffix.final; \\\n"; - $handling .= "\tfor file in " . $sourcelist{$suffix} . "; do \\\n"; - $handling .= "\t echo \"#include \\\"\$\$file\\\"\" >> $program.all_$suffix.files; \\\n"; - $handling .= "\t test ! -f \$\(srcdir\)/\$\$file || egrep '^#pragma +implementation' \$\(srcdir\)/\$\$file >> $program.all_$suffix.final; \\\n"; - $handling .= "\tdone; \\\n"; - $handling .= "\tcat $program.all_$suffix.final $program.all_$suffix.files > $program.all_$suffix.$suffix; \\\n"; - $handling .= "\trm -f $program.all_$suffix.final $program.all_$suffix.files\n"; - - appendLines($handling); - - push(@final_names, "$program.all_$suffix.$suffix"); - my $finalObj = "$program.all_$suffix."; - if ($program =~ /_la$/) { - $finalObj .= "lo"; - } else { - $finalObj .= "o"; - } - $finalObjs{$program} .= $finalObj . " "; - } - } - - if (!$kdeopts{"nofinal"} && @final_names >= 1) { - # add clean-final target - my $lines = "$cleantarget-final:\n"; - $lines .= "\t-rm -f " . join(' ', @final_names) . "\n" if (@final_names); - appendLines($lines); - $target_adds{"$cleantarget-am"} .= "$cleantarget-final "; - - foreach $finalfile (@final_names) { - $finalfile =~ s/\.[^.]*$/.P/; - $dep_finals .= " \$(DEPDIR)/$finalfile"; - } - } -} - -sub tag_KDEINIT() -{ - my @progs = (); - my $ltlibs = ""; - my $lookup = 'kdeinit_LTLIBRARIES\s*=[ \t]*(.*)'; - - if ($MakefileData =~ m/\n$lookup/) { - @kdeinits = split(/[\034\s]+/, $1); - my $lines = ""; - foreach my $kdeinit (@kdeinits) { - if ($kdeinit =~ m/\.la$/) { - $kdeinit =~ s/\.la$//; - push(@progs, $kdeinit); - - $lines .= "\n${kdeinit}.la.$cxxsuffix:\n"; - $lines .= "\techo 'extern \"C\" int kdemain(int argc, char* argv[]);' > ${kdeinit}.la.$cxxsuffix; \\\n"; - $lines .= "\techo 'int main(int argc, char* argv[]) { return kdemain(argc,argv); }' >> ${kdeinit}.la.$cxxsuffix\n"; - - $lines .= "\n${kdeinit}_dummy.$cxxsuffix:\n"; - $lines .= "\techo '#include <kdemacros.h>' > ${kdeinit}_dummy.$cxxsuffix; \\\n"; - $lines .= "\techo 'extern \"C\" int kdemain(int argc, char* argv[]);' >> ${kdeinit}_dummy.$cxxsuffix; \\\n"; - $lines .= "\techo 'extern \"C\" KDE_EXPORT int kdeinitmain(int argc, char* argv[]) { return kdemain(argc,argv); }' >> ${kdeinit}_dummy.$cxxsuffix\n"; - - push(@cleanfiles, "${kdeinit}.la.$cxxsuffix"); - push(@cleanfiles, "${kdeinit}_dummy.$cxxsuffix"); - - # add dependency - $dep_files .= " \$(DEPDIR)/${kdeinit}.la.Po" if($dep_files !~/${kdeinit}.la.Po/ ); - $dep_files .= " \$(DEPDIR)/${kdeinit}_dummy.Plo" if($dep_files !~/${kdeinit}_dummy.Plo/ ); - - # make library - $lookup = $kdeinit . '_la_LIBADD\s*=[ \t]*(.*)'; - if($MakefileData =~ m/\n$lookup/) { - my $libadd = $1; - substituteLine($lookup, "${kdeinit}_la_LIBADD = libkdeinit_${kdeinit}.la"); - appendLines("libkdeinit_${kdeinit}_la_LIBADD = $libadd\n"); - } - appendLines("libkdeinit_${kdeinit}_la_LDFLAGS = -no-undefined -avoid-version \$(all_libraries)\n"); - - # add library dependencies - $lookup = $kdeinit . '_la_DEPENDENCIES\s*=[ \t]*(.*)'; - if($MakefileData =~ m/\n$lookup/) { - my $libdeps = $1; - substituteLine($lookup, "${kdeinit}_la_DEPENDENCIES = libkdeinit_${kdeinit}.la"); - appendLines("libkdeinit_${kdeinit}_la_DEPENDENCIES = $libdeps\n"); - } - - # make library objects - $lookup = "am_${kdeinit}_la_OBJECTS" . '\s*=[ \t]*(.*)'; - if($MakefileData =~ m/\n$lookup/) { - my $libobjects = $1; - substituteLine($lookup, "am_${kdeinit}_la_OBJECTS = ${kdeinit}_dummy.lo"); - appendLines("am_libkdeinit_${kdeinit}_la_OBJECTS = $libobjects\n"); - my $prog = "libkdeinit_${kdeinit}_la"; - push(@programs, $prog); - $realObjs{$prog} = $libobjects; - $realname{$prog} = "libkdeinit_${kdeinit}.la"; - } - $target_adds{"libkdeinit_${kdeinit}.la"} = "\$(libkdeinit_${kdeinit}_la_OBJECTS) \$(libkdeinit_${kdeinit}_la_DEPENDENCIES)\n" . - "\t\$(CXXLINK) -rpath \$(libdir) \$(libkdeinit_${kdeinit}_la_LDFLAGS) ". - "\$(libkdeinit_${kdeinit}_la_OBJECTS) " . - "\$(libkdeinit_${kdeinit}_la_LIBADD) " . - "\$(LIBS)\n"; - - # make libkdeinit sources - $lookup = $kdeinit . '_la_SOURCES\s*=[ \t]*(.*)'; - if($MakefileData =~ m/\n$lookup/) { - my $srces = $1; - $sources_changed{"libkdeinit_${kdeinit}_la"} = 1; - $sources{"libkdeinit_${kdeinit}_la"} = $srces; - } - - # make libkdeinit metasources - $lookup = $kdeinit . '_la_METASOURCES\s*=[ \t]*(.*)'; - substituteLine($lookup, "libkdeinit_${kdeinit}_la_METASOURCES = $1") - if($MakefileData =~ m/\n$lookup/); - -=cut - # make binary sources - $lookup = $kdeinit. '_SOURCES\s*=[ \t]*(.*)'; - if($MakefileData =~ m/\n$lookup/) { - substituteLine($lookup, "${kdeinit}_SOURCES = ${kdeinit}.la.$cxxsuffix"); - $lookup = 'SOURCES\s*=[ \t]*(.*)'; - if($MakefileData =~ m/\n$lookup/) { - my $srces = $1; - $srces =~ s/\b$kdeinit\.c\b/\$(${kdeinit}_SOURCES)/; - $srces =~ s/\$\(${kdeinit}_la_SOURCES\)/\$(libkdeinit_${kdeinit}_la_SOURCES)/; - substituteLine($lookup, "SOURCES = $srces"); - } - $lookup = 'DIST_SOURCES\s*=[ \t](.*)'; - if($MakefileData =~ m/\n$lookup/) { - my $srces = $1; - $srces =~ s/\b$kdeinit\.c\b/\$(${kdeinit}_SOURCES)/; - $srces =~ s/\$\(${kdeinit}_la_SOURCES\)/\$(libkdeinit_${kdeinit}_la_SOURCES)/; - substituteLine($lookup, "DIST_SOURCES = $srces"); - } - } - - # make binary objects / libs - $lookup = $kdeinit . '_OBJECTS\s*=[ \t]*.*'; - if($MakefileData =~ m/\n$lookup/) { - $realObjs{$kdeinit} = "${kdeinit}.la.\$(OBJEXT)"; - substituteLine("${kdeinit}_LDFLAGS\\s*=.*", "${kdeinit}_LDFLAGS = \$(all_libraries)"); - substituteLine("${kdeinit}_LDADD\\s*=.*", "${kdeinit}_LDADD = libkdeinit_${kdeinit}.la"); - substituteLine("${kdeinit}_DEPENDENCIES\\s*=.*", "${kdeinit}_DEPENDENCIES = libkdeinit_${kdeinit}.la"); - } -=cut - # add binary - push(@programs, $kdeinit); - $realObjs{$kdeinit} = "${kdeinit}.la.\$(OBJEXT)"; - $realname{$kdeinit} = $kdeinit; - $sources{$kdeinit} = "${kdeinit}.la.$cxxsuffix"; - - $lines .= "${kdeinit}_LDFLAGS = \$(KDE_RPATH) -no-undefined \$(all_libraries)\n"; - $lines .= "${kdeinit}_LDADD = libkdeinit_${kdeinit}.la\n"; - $lines .= "${kdeinit}_DEPENDENCIES = libkdeinit_${kdeinit}.la\n"; - - $target_adds{"${kdeinit}\$(EXEEXT)"} = - "\$(${kdeinit}_OBJECTS) \$(${kdeinit}_DEPENDENCIES)\n" . - "\t\@rm -f ${kdeinit}\$(EXEEXT)\n" . - "\t\$(CXXLINK) \$(${kdeinit}_LDFLAGS) \$(${kdeinit}_OBJECTS) \$(${kdeinit}_LDADD) \$(LIBS)\n"; - - $ltlibs .= " libkdeinit_${kdeinit}.la"; - } - } - appendLines($lines); - - # add libkdeinit target - $lookup = 'lib_LTLIBRARIES\s*=[ \t]*(.*)'; - if($MakefileData =~ m/\n$lookup/) { - substituteLine($lookup, "lib_LTLIBRARIES = $1 $ltlibs"); - } - else { - print STDERR - "Error: lib_LTLIBRARIES missing in $printname (required for kdeinit_LTLIBRARIES).\n"; - $errorflag = 1; - } - } - - if($#progs >= 0) { - if($MakefileData !~ m/\nbin_PROGRAMS\s*=/) { - print STDERR "Error: bin_PROGRAMS missing in $printname (required for kdeinit_LTLIBRARIES).\n"; - $errorflag = 1; - } - else { - # add our new progs to SOURCES, DIST_SOURCES and bin_PROGRAMS - my $progsources = ""; - my $progexes = ""; - foreach my $p (@progs) { - $progsources .= "\$(${p}_SOURCES) "; - $progexes .= "${p}\$(EXEEXT) "; - } - $lookup = 'SOURCES\s*=[ \t]*(.*)'; - if($MakefileData =~ /\n$lookup/) { - substituteLine($lookup, "SOURCES = $1 $progsources"); - } - $lookup = 'DIST_SOURCES\s*=[ \t]*(.*)'; - if($MakefileData =~ /\n$lookup/) { - substituteLine($lookup, "DIST_SOURCES = $1 $progsources"); - } - # bin_PROGRAMS is complicated, as it exists twice, so we do a little - # magic trick here - $lookup = 'PROGRAMS\s*=[ \t]*(.*)'; - if ($MakefileData =~ /\n$lookup/) { - substituteLine($lookup, "bin_PROGRAMS += $progexes\nPROGRAMS = $1"); - } - } - } -} - -#----------------------------------------------------------------------------- - -sub tag_COMPILE_FIRST() -{ - foreach $program (@programs) { - my $lookup = "$program" . '_COMPILE_FIRST\s*=[ \t]*(.*)'; - if ($MakefileData =~ m/\n$lookup\n/) { - my $compilefirst_str = $1; - my @compilefirst = split(/[\034\s]+/, $compilefirst_str); - my @progsources = split(/[\034\s]+/, $sources{$program}); - my %donesources = (); - foreach $source (@progsources) { - my @deps = (); - my $sdeps = ""; - if (-f $source) { - $sdeps = "\$(srcdir)/$source"; - } else { - $sdeps = "$source"; - } - foreach $depend (@compilefirst) { - next if ($source eq $depend); - # avoid cyclic dependencies - next if defined($donesources{$depend}); - push @deps, $depend; - } - $target_adds{$sdeps} .= join(' ', @deps) . ' ' if (@deps); - $donesources{$source} = 1; - } - } - } -} - -#----------------------------------------------------------------------------- - - -# Organises the list of headers that we'll use to produce moc files -# from. -sub tag_METASOURCES () -{ - local @newObs = (); # here we add to create object files - local @depend = (); # here we add to create moc files - local $mocExt = ".moc"; - local %mocFiles = (); - - my $line = ""; - my $postEqual = ""; - - my $lookup; - my $found = ""; - if ($metasourceTags > 1) { - $lookup = $program . '_METASOURCES\s*=\s*(.*)'; - return 1 if ($MakefileData !~ /\n($lookup)\n/); - $found = $1; - } else { - $lookup = $program . '_METASOURCES\s*=\s*(.*)'; - if ($MakefileData !~ /\n($lookup)\n/) { - $lookup = 'METASOURCES\s*=\s*(.*)'; - return 1 if ($MakefileData !~ /\n($lookup)\n/); - $found = $1; - $metasourceTags = 0; # we can use the general target only once - } else { - $found = $1; - } - } - print STDOUT "METASOURCE processing <$found>)\n" if ($verbose); - - $postEqual = $found; - $postEqual =~ s/[^=]*=//; - - removeLine ($lookup, $found); - - # Always find the header files that could be used to "moc" - return 1 if (findMocCandidates ()); - - if ($postEqual =~ /AUTO\s*(\S*)|USE_AUTOMOC\s*(\S*)/) - { - print STDERR "$printname: the argument for AUTO|USE_AUTOMOC is obsolete" if ($+); - $mocExt = ".moc.$cxxsuffix"; - $haveAutomocTag = 1; - } - else - { - # Not automoc so read the list of files supplied which - # should be .moc files. - - $postEqual =~ tr/\034/ /; - - # prune out extra headers - This also checks to make sure that - # the list is valid. - pruneMocCandidates ($postEqual); - } - - checkMocCandidates (); - - if (@newObs) { - my $ext = ($program =~ /_la$/) ? ".moc.lo " : ".moc.o "; - $realObjs{$program} .= "\034" . join ($ext, @newObs) . $ext; - $dependmocs{$program} = join (".moc.$cxxsuffix " , @newObs) . ".moc.$cxxsuffix"; - foreach $file (@newObs) { - $dep_files .= " \$(DEPDIR)/$file.moc.P" if($dep_files !~/$file.moc.P/); - } - } - if (@depend) { - $dependmocs{$program} .= " "; - $dependmocs{$program} .= join('.moc ', @depend) . ".moc"; - $dependmocs{$program} .= " "; - } - addMocRules (); - @globalmocs{keys %mocFiles}=values %mocFiles; -} - -#----------------------------------------------------------------------------- - -# Returns 0 if the line was processed - 1 otherwise. -# Errors are logged in the global $errorflags -sub tag_AUTOMAKE () -{ - my $lookup = '.*cd \$\(top_srcdir\)\s+&&[\034\s]+\$\(AUTOMAKE\)(.*)'; - return 1 if ($MakefileData !~ /\n($lookup)\n/); - print STDOUT "AUTOMAKE processing <$1>\n" if ($verbose); - - my $newLine = $1."\n\tcd \$(top_srcdir) && perl $thisProg $printname"; - - # automake 1.8.x adds another automake call. *sigh* - $newLine =~ s/;([\034\s]+cd\s+\$\(srcdir\)\s+&&[\034\s]+\$\(AUTOMAKE\).*)[\034\s]+\&\&[\034\s]+exit[\034\s]+0;([\034\s]+exit\s+1)/; \034 ( $1 ) || exit 1; echo \' cd \$(top_srcdir) && perl $thisProg \'; cd \$(top_srcdir) && perl $thisProg && exit 0; $2/; - substituteLine ($lookup, $newLine); - $automkCall = $1; - - $lookup = '.*cd \$\(srcdir\)\s+&&[\034\s]+\$\(AUTOCONF\)(.*)'; - if ($MakefileData =~ /\n($lookup)\n/) { - $newLine = "\tcd \$(srcdir) && rm -f configure\n"; - $newLine .= "\tcd \$(top_srcdir) && \$(MAKE) -f admin/Makefile.common configure"; - substituteLine ($lookup, $newLine); - } - - return 0; -} - -#----------------------------------------------------------------------------- - -sub handle_TOPLEVEL() -{ - my $pofiles = ""; - my @restfiles = (); - opendir (THISDIR, "."); - foreach $entry (readdir(THISDIR)) { - next if (-d $entry); - - next if ($entry eq "CVS" || $entry =~ /^\./ || $entry =~ /^Makefile/ || $entry =~ /~$/ || $entry =~ /^\#.*\#$/ || $entry =~ /.gmo$/); - - if ($entry =~ /\.po$/) { - next; - } - push(@restfiles, $entry); - } - closedir (THISDIR); - - if (@restfiles) { - $target_adds{"install-data-am"} .= "install-nls-files "; - $lines = "install-nls-files:\n"; - $lines .= "\t\$(mkinstalldirs) \$(DESTDIR)\$(kde_locale)/$kdelang\n"; - for $file (@restfiles) { - $lines .= "\t\$(INSTALL_DATA) \$\(srcdir\)/$file \$(DESTDIR)\$(kde_locale)/$kdelang/$file\n"; - } - $target_adds{"uninstall"} .= "uninstall-nls-files "; - $lines .= "uninstall-nls-files:\n"; - for $file (@restfiles) { - $lines .= "\t-rm -f \$(DESTDIR)\$(kde_locale)/$kdelang/$file\n"; - } - appendLines($lines); - } - - return 0; -} - -#----------------------------------------------------------------------------- - -sub tag_SUBDIRS () -{ - if ($MakefileData !~ /\nSUBDIRS\s*=\s*\$\(AUTODIRS\)\s*\n/) { - return 1; - } - - my $subdirs = "."; - - opendir (THISDIR, "."); - foreach $entry (readdir(THISDIR)) { - next if ($entry eq "CVS" || $entry =~ /^\./); - if (-d $entry && -f $entry . "/Makefile.am") { - $subdirs .= " $entry"; - next; - } - } - closedir (THISDIR); - - substituteLine('SUBDIRS\s*=.*', "SUBDIRS =$subdirs"); - return 0; -} - -sub tag_IDLFILES () -{ - my @psources = split(/[\034\s]+/, $sources{$program}); - my $dep_lines = ""; - my @cppFiles = (); - - foreach $source (@psources) { - my $skel = ($source =~ m/\.skel$/); - my $stub = ($source =~ m/\.stub$/); - my $signals = ($source =~ m/\.signals$/); # obsolete, remove in KDE-4 - - if ($stub || $skel || $signals) { - - my $qs = quotemeta($source); - $sources{$program} =~ s/$qs//; - $sources_changed{$program} = 1; - - $source =~ s/\.(stub|skel|signals)$//; - my $sourcename; - - if ($skel) { - $sourcename = "$source\_skel"; - } elsif ($stub) { - $sourcename = "$source\_stub"; - } else { - $sourcename = "$source\_signals"; - } - - my $sourcedir = ''; - if (-f "$makefileDir/$source.h") { - $sourcedir = '$(srcdir)/'; - } else { - if ($MakefileData =~ /\n$source\_DIR\s*=\s*(\S+)\n/) { - $sourcedir = $1; - $sourcedir .= "/" if ($sourcedir !~ /\/$/); - } - } - - if ($allidls !~ /$source\_kidl/) { - - $use_ng = ($MakefileData =~ /\n$source\_DCOPIDLNG\s*=\s*(\S+)\n/); - $dcopidl = $use_ng ? "KDECONFIG=\"\$(KDECONFIG)\" \$(DCOPIDLNG)" : "\$(DCOPIDL)"; - - $dep_lines .= "$source.kidl: $sourcedir$source.h \$(DCOP_DEPENDENCIES)\n"; - $dep_lines .= "\t$dcopidl $sourcedir$source.h > $source.kidl || ( rm -f $source.kidl ; false )\n"; - - $allidls .= $source . "_kidl "; - } - - if ($allidls !~ /$sourcename/) { - - $dep_lines_tmp = ""; - - if ($skel) { - $dep_lines .= "$sourcename.$cxxsuffix: $source.kidl\n"; - $dep_lines .= "\t\$(DCOPIDL2CPP) --c++-suffix $cxxsuffix --no-signals --no-stub $source.kidl\n"; - } elsif ($stub) { - $dep_lines_tmp = "\t\$(DCOPIDL2CPP) --c++-suffix $cxxsuffix --no-signals --no-skel $source.kidl\n"; - } else { # signals - obsolete, remove in KDE 4 - $dep_lines_tmp = "\t\$(DCOPIDL2CPP) --c++-suffix $cxxsuffix --no-stub --no-skel $source.kidl\n"; - } - - if ($stub || $signals) { - $target_adds{"$sourcename.$cxxsuffix"} .= "$sourcename.h "; - $dep_lines .= "$sourcename.h: $source.kidl\n"; - $dep_lines .= $dep_lines_tmp; - } - - $allidls .= $sourcename . " "; - } - - $idlfiles{$program} .= $sourcename . " "; - - if ($program =~ /_la$/) { - $realObjs{$program} .= " $sourcename.lo"; - } else { - $realObjs{$program} .= " $sourcename.\$(OBJEXT)"; - } - $sources{$program} .= " $sourcename.$cxxsuffix"; - $sources_changed{$program} = 1; - $important{$program} .= "$sourcename.h " if (!$skel); - $idl_output .= "\\\n\t$sourcename.$cxxsuffix $sourcename.h $source.kidl "; - push(@cleanfiles, "$sourcename.$cxxsuffix"); - push(@cleanfiles, "$sourcename.h"); - push(@cleanfiles, "$sourcename.kidl"); - $dep_files .= " \$(DEPDIR)/$sourcename.P" if ($dep_files !~/$sourcename.P/); - } - } - if ($dep_lines) { - appendLines($dep_lines); - } - - if (0) { - my $lookup = "($program)"; - $lookup .= '(|\$\(EXEEXT\))'; - $lookup =~ s/\_/./g; - $lookup .= ":(.*..$program\_OBJECTS..*)"; - # $lookup = quotemeta($lookup); - if ($MakefileData =~ /\n$lookup\n/) { - - my $line = "$1$2: "; - foreach $file (split(' ', $idlfiles{$program})) { - $line .= "$file.$cxxsuffix "; - } - $line .= $3; - substituteLine($lookup, $line); - } else { - print STDERR "no built dependency found $lookup\n"; - } - } -} - -sub tag_UIFILES () -{ - my @psources = split(/[\034\s]+/, $sources{$program}); - my @depFiles = (); - - foreach $source (@psources) { - - if ($source =~ m/\.ui$/) { - - print STDERR "adding UI file $source\n" if ($verbose); - - my $qs = quotemeta($source); - $sources{$program} =~ s/$qs//; - $sources_changed{$program} = 1; - - $source =~ s/\.ui$//; - - my $sourcedir = ''; - if (-f "$makefileDir/$source.ui") { - $sourcedir = '$(srcdir)/'; - } - - if (!$uiFiles{$source}) { - - my $dep_lines = "$source.$cxxsuffix: $sourcedir$source.ui $source.h $source.moc\n"; - $dep_lines .= "\trm -f $source.$cxxsuffix\n"; - if (!$kdeopts{"qtonly"}) { - $dep_lines .= "\techo '#include <kdialog.h>' > $source.$cxxsuffix\n"; - $dep_lines .= "\techo '#include <klocale.h>' >> $source.$cxxsuffix\n"; - my ($mangled_source) = $source; - $mangled_source =~ s/[^A-Za-z0-9]/_/g; # get rid of garbage - $dep_lines .= "\t\$(UIC) -tr \${UIC_TR} -i $source.h $sourcedir$source.ui > $source.$cxxsuffix.temp ; ret=\$\$?; \\\n"; - $dep_lines .= "\t\$(PERL) -pe \"s,\${UIC_TR}( \\\"\\\" ),QString::null,g\" $source.$cxxsuffix.temp | \$(PERL) -pe \"s,\${UIC_TR}( \\\"\\\"\\, \\\"\\\" ),QString::null,g\" | \$(PERL) -pe \"s,image([0-9][0-9]*)_data,img\\\$\$1_" . $mangled_source . ",g\" | \$(PERL) -pe \"s,: QWizard\\(,: KWizard(,g\" >> $source.$cxxsuffix ;\\\n"; - $dep_lines .= "\trm -f $source.$cxxsuffix.temp ;\\\n"; - } else { - $dep_lines .= "\t\$(UIC) -i $source.h $sourcedir$source.ui > $source.$cxxsuffix; ret=\$\$?; \\\n"; - } - $dep_lines .= "\tif test \"\$\$ret\" = 0; then echo '#include \"$source.moc\"' >> $source.$cxxsuffix; else rm -f $source.$cxxsuffix ; exit \$\$ret ; fi\n\n"; - $dep_lines .= "$source.h: $sourcedir$source.ui\n"; - $dep_lines .= "\trm -rf $source.h;\n"; - if (!$kdeopts{"qtonly"}) { - $dep_lines .= "\t\$(UIC) $sourcedir$source.ui | \$(PERL) -pi -e \"s,public QWizard,public KWizard,g; s,#include <qwizard.h>,#include <kwizard.h>,g\" >> $source.h ;\n"; - } else { - $dep_lines .= "\t\$(UIC) -o $source.h $sourcedir$source.ui\n"; - } - $dep_lines .= "$source.moc: $source.h\n"; - $dep_lines .= "\t\$(MOC) $source.h -o $source.moc\n"; - - $rule_adds{"$source.$cxxsuffix"} = $dep_lines; - - $uiFiles{$source} = 1; - $dependmocs{$program} .= " $source.moc"; - $globalmocs{$source} = "\035$source.h\035$source.cpp"; - } - - if ($program =~ /_la$/) { - $realObjs{$program} .= " $source.lo"; - } else { - $realObjs{$program} .= " $source.\$(OBJEXT)"; - } - $sources{$program} .= " $source.$cxxsuffix"; - $sources_changed{$program} = 1; - $important{$program} .= "$source.h "; - $ui_output .= "\\\n\t$source.$cxxsuffix $source.h $source.moc "; - push(@cleanfiles, "$source.$cxxsuffix"); - push(@cleanfiles, "$source.h"); - push(@cleanfiles, "$source.moc"); - $dep_files .= " \$(DEPDIR)/$source.P" if($dep_files !~/$source.P/ ); - } - } -} - -sub tag_KCFGFILES () -{ - my @psources = split(/[\034\s]+/, $sources{$program}); - my @depFiles = (); - - foreach $source (@psources) { - - if ($source =~ m/\.kcfgc$/) { - - print STDERR "adding KCFG file $source\n" if ($verbose); - - my $qs = quotemeta($source); - $sources{$program} =~ s/$qs//; - $sources_changed{$program} = 1; - - $source =~ s/\.kcfgc$//; - - my $sourcedir = ''; - if (-f "$makefileDir/$source.kcfgc") { - $sourcedir = '$(srcdir)/'; - } - - if (!$kcfgFiles{$source}) { - $kcfg = "$program.kcfg"; - findKcfgFile("$source.kcfgc"); - - my $fixsuffix = ""; - $fixsuffix = "else mv $source.cpp $source.$cxxsuffix ; " - unless "cpp" eq $cxxsuffix; - - my $dep_lines = "$source.$cxxsuffix: $source.h\n"; - $dep_lines .= "$source.h: $sourcedir$kcfg $sourcedir$source.kcfgc \$(KCFG_DEPENDENCIES)\n"; - $dep_lines .= "\t\$(KCONFIG_COMPILER) $sourcedir$kcfg $sourcedir$source.kcfgc; ret=\$\$?; \\\n"; - $dep_lines .= "\tif test \"\$\$ret\" != 0; then rm -f $source.h ; exit \$\$ret ; $fixsuffix fi\n\n"; - - $rule_adds{"$source.$cxxsuffix"} = $dep_lines; - - $kcfgFiles{$source} = 1; - } - - if ($program =~ /_la$/) { - $realObjs{$program} .= " $source.lo"; - } else { - $realObjs{$program} .= " $source.\$(OBJEXT)"; - } - $sources{$program} .= " $source.$cxxsuffix"; - $sources_changed{$program} = 1; - $important{$program} .= "$source.h "; - $kcfg_output .= "\\\n\t$source.$cxxsuffix $source.h "; - push(@cleanfiles, "$source.$cxxsuffix"); - push(@cleanfiles, "$source.h"); - $dep_files .= " \$(DEPDIR)/$source.P" if($dep_files !~/$source.P/ ); - } - } -} - -sub tag_ICON() -{ - my $lookup = '([^\s]*)_ICON\s*=[ \t]*(.*)'; - my $install = ""; - my $uninstall = ""; - - while ($MakefileData =~ /\n$lookup/g) { - my $destdir; - if ($1 eq "KDE") { - $destdir = "kde_icondir"; - } else { - $destdir = $1 . "dir"; - } - my $iconauto = ($2 =~ /AUTO\s*$/); - my @appnames = (); - if ( ! $iconauto ) { - my $appicon_str = $2; - my @_appnames = split(" ", $appicon_str); - print STDOUT "KDE_ICON processing <@_appnames>\n" if ($verbose); - foreach $appname (@_appnames) { - push(@appnames, quotemeta($appname)); - } - } else { - print STDOUT "KDE_ICON processing <AUTO>\n" if ($verbose); - } - - my @files = (); - opendir (THISDIR, "."); - foreach $entry (readdir(THISDIR)) { - next if ($entry eq "CVS" || $entry =~ /^\./ || $entry =~ /^Makefile/ || $entry =~ /~$/ || $entry =~ /^\#.*\#$/); - next if (! -f $entry); - if ( $iconauto ) - { - push(@files, $entry) - if ($entry =~ /\.xpm/ || $entry =~ /\.png/ || $entry =~ /\.mng/ || $entry =~ /\.svg/); - } else { - foreach $appname (@appnames) { - push(@files, $entry) - if ($entry =~ /-$appname\.xpm/ || $entry =~ /-$appname\.png/ || $entry =~ /-$appname\.mng/ || $entry =~ /-$appname\.svg/); - } - } - } - closedir (THISDIR); - - my %directories = (); - - foreach $file (@files) { - my $newfile = $file; - my $prefix = $file; - $prefix =~ s/\.(png|xpm|mng|svg|svgz)$//; - my $appname = $prefix; - $appname =~ s/^[^-]+-// if ($appname =~ /-/) ; - $appname =~ s/^[^-]+-// if ($appname =~ /-/) ; - $appname = quotemeta($appname); - $prefix =~ s/$appname$//; - $prefix =~ s/-$//; - - $prefix = 'lo16-app' if ($prefix eq 'mini'); - $prefix = 'lo32-app' if ($prefix eq 'lo'); - $prefix = 'hi48-app' if ($prefix eq 'large'); - $prefix .= '-app' if ($prefix =~ m/^...$/); - - my $type = $prefix; - $type =~ s/^.*-([^-]+)$/$1/; - $prefix =~ s/^(.*)-[^-]+$/$1/; - - my %type_hash = - ( - 'action' => 'actions', - 'app' => 'apps', - 'device' => 'devices', - 'filesys' => 'filesystems', - 'mime' => 'mimetypes' - ); - - if (! defined $type_hash{$type} ) { - print STDERR "unknown icon type $type in $printname ($file)\n"; - next; - } - - my %dir_hash = - ( - 'los' => 'locolor/16x16', - 'lom' => 'locolor/32x32', - 'him' => 'hicolor/32x32', - 'hil' => 'hicolor/48x48', - 'lo16' => 'locolor/16x16', - 'lo22' => 'locolor/22x22', - 'lo32' => 'locolor/32x32', - 'hi16' => 'hicolor/16x16', - 'hi22' => 'hicolor/22x22', - 'hi32' => 'hicolor/32x32', - 'hi48' => 'hicolor/48x48', - 'hi64' => 'hicolor/64x64', - 'hi128' => 'hicolor/128x128', - 'hisc' => 'hicolor/scalable', - 'cr16' => 'crystalsvg/16x16', - 'cr22' => 'crystalsvg/22x22', - 'cr32' => 'crystalsvg/32x32', - 'cr48' => 'crystalsvg/48x48', - 'cr64' => 'crystalsvg/64x64', - 'cr128' => 'crystalsvg/128x128', - 'crsc' => 'crystalsvg/scalable' - ); - - $newfile =~ s@.*-($appname\.(png|xpm|mng|svgz|svg?))@$1@; - - if (! defined $dir_hash{$prefix}) { - print STDERR "unknown icon prefix $prefix in $printname\n"; - next; - } - - my $dir = $dir_hash{$prefix} . "/" . $type_hash{$type}; - if ($newfile =~ /-[^\.]/) { - my $tmp = $newfile; - $tmp =~ s/^([^-]+)-.*$/$1/; - $dir = $dir . "/" . $tmp; - $newfile =~ s/^[^-]+-//; - } - - if (!defined $directories{$dir}) { - $install .= "\t\$(mkinstalldirs) \$(DESTDIR)\$($destdir)/$dir\n"; - $directories{$dir} = 1; - } - - $install .= "\t\$(INSTALL_DATA) \$(srcdir)/$file \$(DESTDIR)\$($destdir)/$dir/$newfile\n"; - $uninstall .= "\t-rm -f \$(DESTDIR)\$($destdir)/$dir/$newfile\n"; - - } - } - - if (length($install)) { - $target_adds{"install-data-am"} .= "install-kde-icons "; - $target_adds{"uninstall-am"} .= "uninstall-kde-icons "; - appendLines("install-kde-icons:\n" . $install . "\nuninstall-kde-icons:\n" . $uninstall); - } -} - -sub handle_POFILES($$) -{ - my @pofiles = split(" ", $_[0]); - my $lang = $_[1]; - - # Build rules for creating the gmo files - my $tmp = ""; - my $allgmofiles = ""; - my $pofileLine = "POFILES ="; - foreach $pofile (@pofiles) - { - $pofile =~ /(.*)\.[^\.]*$/; # Find name minus extension - $tmp .= "$1.gmo: $pofile\n"; - $tmp .= "\trm -f $1.gmo; \$(GMSGFMT) -o $1.gmo \$(srcdir)/$pofile\n"; - $tmp .= "\ttest ! -f $1.gmo || touch $1.gmo\n"; - $allgmofiles .= " $1.gmo"; - $pofileLine .= " $1.po"; - } - appendLines ($tmp); - my $lookup = 'POFILES\s*=([^\n]*)'; - if ($MakefileData !~ /\n$lookup/) { - appendLines("$pofileLine\nGMOFILES =$allgmofiles"); - } else { - substituteLine ($lookup, "$pofileLine\nGMOFILES =$allgmofiles"); - } - - if ($allgmofiles) { - - # Add the "clean" rule so that the maintainer-clean does something - appendLines ("clean-nls:\n\t-rm -f $allgmofiles\n"); - - $target_adds{"maintainer-clean"} .= "clean-nls "; - - $lookup = 'DISTFILES\s*=[ \t]*(.*)'; - if ($MakefileData =~ /\n$lookup/) { - $tmp = "DISTFILES = \$(GMOFILES) \$(POFILES) $1"; - substituteLine ($lookup, $tmp); - } - } - - $target_adds{"install-data-am"} .= "install-nls "; - - $tmp = "install-nls:\n"; - if ($lang) { - $tmp .= "\t\$(mkinstalldirs) \$(DESTDIR)\$(kde_locale)/$lang/LC_MESSAGES\n"; - } - $tmp .= "\t\@for base in "; - foreach $pofile (@pofiles) - { - $pofile =~ /(.*)\.[^\.]*$/; # Find name minus extension - $tmp .= "$1 "; - } - - $tmp .= "; do \\\n"; - if ($lang) { - $tmp .= "\t echo \$(INSTALL_DATA) \$\$base.gmo \$(DESTDIR)\$(kde_locale)/$lang/LC_MESSAGES/\$\$base.mo ;\\\n"; - $tmp .= "\t if test -f \$\$base.gmo; then \$(INSTALL_DATA) \$\$base.gmo \$(DESTDIR)\$(kde_locale)/$lang/LC_MESSAGES/\$\$base.mo ;\\\n"; - $tmp .= "\t elif test -f \$(srcdir)/\$\$base.gmo; then \$(INSTALL_DATA) \$(srcdir)/\$\$base.gmo \$(DESTDIR)\$(kde_locale)/$lang/LC_MESSAGES/\$\$base.mo ;\\\n"; - $tmp .= "\t fi ;\\\n"; - } else { - $tmp .= "\t echo \$(INSTALL_DATA) \$\$base.gmo \$(DESTDIR)\$(kde_locale)/\$\$base/LC_MESSAGES/\$(PACKAGE).mo ;\\\n"; - $tmp .= "\t \$(mkinstalldirs) \$(DESTDIR)\$(kde_locale)/\$\$base/LC_MESSAGES ; \\\n"; - $tmp .= "\t if test -f \$\$base.gmo; then \$(INSTALL_DATA) \$\$base.gmo \$(DESTDIR)\$(kde_locale)/\$\$base/LC_MESSAGES/\$(PACKAGE).mo ;\\\n"; - $tmp .= "\t elif test -f \$(srcdir)/\$\$base.gmo; then \$(INSTALL_DATA) \$(srcdir)/\$\$base.gmo \$(DESTDIR)\$(kde_locale)/\$\$base/LC_MESSAGES/\$(PACKAGE).mo ;\\\n"; - $tmp .= "\t fi ;\\\n"; - } - $tmp .= "\tdone\n\n"; - appendLines ($tmp); - - $target_adds{"uninstall"} .= "uninstall-nls "; - - $tmp = "uninstall-nls:\n"; - foreach $pofile (@pofiles) - { - $pofile =~ /(.*)\.[^\.]*$/; # Find name minus extension - if ($lang) { - $tmp .= "\trm -f \$(DESTDIR)\$(kde_locale)/$lang/LC_MESSAGES/$1.mo\n"; - } else { - $tmp .= "\trm -f \$(DESTDIR)\$(kde_locale)/$1/LC_MESSAGES/\$(PACKAGE).mo\n"; - } - } - appendLines($tmp); - - $target_adds{"all"} .= "all-nls "; - - $tmp = "all-nls: \$(GMOFILES)\n"; - - appendLines($tmp); - - $target_adds{"distdir"} .= "distdir-nls "; - - $tmp = "distdir-nls:\$(GMOFILES)\n"; - $tmp .= "\tfor file in \$(POFILES); do \\\n"; - $tmp .= "\t cp \$(srcdir)/\$\$file \$(distdir); \\\n"; - $tmp .= "\tdone\n"; - $tmp .= "\tfor file in \$(GMOFILES); do \\\n"; - $tmp .= "\t cp \$(srcdir)/\$\$file \$(distdir); \\\n"; - $tmp .= "\tdone\n"; - - appendLines ($tmp); - - if (!$lang) { - appendLines("merge:\n\t\$(MAKE) -f \$(top_srcdir)/admin/Makefile.common package-merge POFILES=\"\${POFILES}\" PACKAGE=\${PACKAGE}\n\n"); - } - -} - -#----------------------------------------------------------------------------- - -# Returns 0 if the line was processed - 1 otherwise. -# Errors are logged in the global $errorflags -sub tag_POFILES () -{ - my $lookup = 'POFILES\s*=([^\n]*)'; - return 1 if ($MakefileData !~ /\n$lookup/); - print STDOUT "POFILES processing <$1>\n" if ($verbose); - - my $tmp = $1; - - # make sure these are all gone. - if ($MakefileData =~ /\n\.po\.gmo:\n/) - { - print STDERR "Warning: Found old .po.gmo rules in $printname. New po rules not added\n"; - return 1; - } - - # Either find the pofiles in the directory (AUTO) or use - # only the specified po files. - my $pofiles = ""; - if ($tmp =~ /^\s*AUTO\s*$/) - { - opendir (THISDIR, "."); - $pofiles = join(" ", grep(/\.po$/, readdir(THISDIR))); - closedir (THISDIR); - print STDOUT "pofiles found = $pofiles\n" if ($verbose); - if (-f "charset" && -f "kdelibs/kdelibs.po") { - handle_TOPLEVEL(); - } - } - else - { - $tmp =~ s/\034/ /g; - $pofiles = $tmp; - } - return 1 if (!$pofiles); # Nothing to do - - handle_POFILES($pofiles, $kdelang); - - return 0; -} - -sub helper_LOCALINSTALL($) -{ - my $lookup = "\035" . $_[0] . " *:[^\035]*\035\t"; - my $copy = $MakefileData; - $copy =~ s/\n/\035/g; - if ($copy =~ /($lookup.*)$/) { - - $install = $1; - $install =~ s/\035$_[0] *:[^\035]*\035//; - my $emptyline = 0; - while (! $emptyline ) { - if ($install =~ /([^\035]*)\035(.*)/) { - local $line = $1; - $install = $2; - if ($line !~ /^\s*$/ && $line !~ /^(\@.*\@)*\t/) { - $emptyline = 1; - } else { - replaceDestDir($line); - } - } else { - $emptyline = 1; - } - } - } - -} - -sub tag_LOCALINSTALL () -{ - helper_LOCALINSTALL('install-exec-local'); - helper_LOCALINSTALL('install-data-local'); - helper_LOCALINSTALL('uninstall-local'); - - return 0; -} - -sub replaceDestDir($) { - local $line = $_[0]; - - if ( $line =~ /^\s*(\@.*\@)*\s*\$\(mkinstalldirs\)/ - || $line =~ /^\s*(\@.*\@)*\s*\$\(INSTALL\S*\)/ - || $line =~ /^\s*(\@.*\@)*\s*(-?rm.*) \S*$/) - { - $line =~ s/^(.*) ([^\s]+)\s*$/$1 \$(DESTDIR)$2/ if ($line !~ /\$\(DESTDIR\)/); - } - - if ($line ne $_[0]) { - $_[0] = quotemeta $_[0]; - substituteLine($_[0], $line); - } -} - -#--------------------------------------------------------------------------- -# libtool is very hard to persuade it could use -Wl,--no-undefined for making -# -no-undefined actually work -# append $(KDE_NO_UNFINED) after every -no-undefined in LDFLAGS -# this may go away if libtool ever does this on its own -sub tag_NO_UNDEFINED () { - return if ($program !~ /_la$/); - - my $lookup = quotemeta($realname{$program}) . ":.*?\n\t.*?\\((.*?)\\) .*\n"; - $MakefileData =~ m/$lookup/; - return if (!defined($1)); - return if ($1 !~ /CXXLINK/); - - if ($MakefileData !~ /\n$program\_LDFLAGS\s*=.*-no-undefined/ ) { - return; - } - - $lookup = $program . '\_LDFLAGS(\s*)=(.*)-no-undefined(.*)'; - if ($MakefileData =~ /\n$lookup\n/) { - my $replace = $program . "\_LDFLAGS$1=$2-no-undefined \$(KDE_NO_UNDEFINED)$3"; - substituteLine($lookup, $replace); - } -} - -sub tag_CLOSURE () { - return if ($program !~ /_la$/); - - my $lookup = quotemeta($realname{$program}) . ":.*?\n\t.*?\\((.*?)\\) .*\n"; - $MakefileData =~ m/$lookup/; - return if (!defined($1)); - return if ($1 !~ /CXXLINK/); - - if ($MakefileData !~ /\n$program\_LDFLAGS\s*=.*-no-undefined/ && - $MakefileData !~ /\n$program\_LDFLAGS\s*=.*KDE_PLUGIN/ ) { - print STDERR "Report: $program contains undefined in $printname\n" if ($program =~ /^lib/ && $dryrun); - return; - } - - my $closure = $realname{$program} . ".closure"; - my $lines = "$closure: \$($program\_OBJECTS) \$($program\_DEPENDENCIES)\n"; - $lines .= "\t\@echo \"int main() {return 0;}\" > $program\_closure.$cxxsuffix\n"; - $lines .= "\t\@\$\(LTCXXCOMPILE\) -c $program\_closure.$cxxsuffix\n"; - $lines .= "\t\$\(CXXLINK\) $program\_closure.lo \$($program\_LDFLAGS) \$($program\_OBJECTS) \$($program\_LIBADD) \$(LIBS)\n"; - $lines .= "\t\@rm -f $program\_closure.* $closure\n"; - $lines .= "\t\@echo \"timestamp\" > $closure\n"; - $lines .= "\n"; - appendLines($lines); - $lookup = $realname{$program} . ": (.*)"; - if ($MakefileData =~ /\n$lookup\n/) { - $lines = "\@KDE_USE_CLOSURE_TRUE@". $realname{$program} . ": $closure $1"; - $lines .= "\n\@KDE_USE_CLOSURE_FALSE@" . $realname{$program} . ": $1"; - substituteLine($lookup, $lines); - } - $closure_output .= " $closure"; -} - -sub tag_NMCHECK () { - return if ($program !~ /_la$/); - my $lookup = quotemeta($realname{$program}) . ":.*?\n\t.*?\\((.*?)\\) .*\n"; - $MakefileData =~ m/$lookup/; - my $linkcmd = $1; - return if (!defined($1)); - return if ($linkcmd !~ /CXXLINK/ && $linkcmd !~ /LINK/); - - $lookup = $program . '_NMCHECK\s*=([^\n]*)'; - if( $MakefileData !~ m/\n$lookup\n/ ) { - return; - } - my $allowed = $1; - $allowed =~ s/^ *//; - $lookup = $program . '_NMCHECKWEAK\s*=([^\n]*)'; - my $weak = ""; - my $is_weak = 0; - if( $MakefileData =~ m/\n$lookup\n/ ) { - $weak = $1; - $is_weak = 1; - } - $weak =~ s/^ *//; - - if( $is_weak ) - { - $weak = '--allowweak=\'' . $weak . '\' '; - } - my $nmline = "\@KDE_USE_NMCHECK_TRUE@\t\@\$(MAKE) \$(AM_MAKEFLAGS) nmcheck_$realname{$program} || ( rm -f $realname{$program}; exit 1 )"; - $lookup = '(\t\$\(CXXLINK\)[^\n]*' . $program . '_OBJECTS[^\n]*)'; - if( $MakefileData =~ /\n$lookup\n/ ) { - my $oldstuff = $1; - substituteLine( $lookup, $oldstuff . "\n" . $nmline ); - } - $lookup = '(\t\$\(LINK\)[^\n]*' . $program . '_OBJECTS[^\n]*)'; - if( $MakefileData =~ /\n$lookup\n/ ) { - my $oldstuff = $1; - substituteLine( $lookup, $oldstuff . "\n" . $nmline ); - } - $nmline = "\@\$(top_srcdir)/admin/nmcheck $realname{$program} \'$allowed\' $weak"; - appendLines( "\nnmcheck_$realname{$program}: $realname{$program} \n\t$nmline\n" ); - $target_adds{ "nmcheck" } .= "nmcheck_$realname{$program} "; -} - -sub tag_DIST () { - my %foundfiles = (); - opendir (THISDIR, "."); - foreach $entry (readdir(THISDIR)) { - next if ($entry eq "CVS" || $entry =~ /^\./ || $entry eq "Makefile" || $entry =~ /~$/ || $entry =~ /^\#.*\#$/); - next if (! -f $entry); - next if ($entry =~ /\.moc/ || $entry =~ /\.moc.$cppExt$/ || $entry =~ /\.lo$/ || $entry =~ /\.la$/ || $entry =~ /\.o/); - next if ($entry =~ /\.all_$cppExt\.$cppExt$/); - $foundfiles{$entry} = 1; - } - closedir (THISDIR); - - # doing this for MAINTAINERCLEANFILES would be wrong - my @marks = ("EXTRA_DIST", "DIST_COMMON", '\S*_SOURCES', '\S*_HEADERS', 'CLEANFILES', 'DISTCLEANFILES', '\S*_OBJECTS'); - foreach $mark (@marks) { - while ($MakefileData =~ /\n($mark)\s*=[ \t]*([^\n]*)/g) { - my $cleanfiles_str = $2; - foreach $file (split('[\034\s]+', $cleanfiles_str)) { - $file =~ s/\.\///; - $foundfiles{$file} = 0 if (defined $foundfiles{$file}); - } - } - } - my @files = ("Makefile", "config.cache", "config.log", "stamp-h", - "stamp-h1", "stamp-h1", "config.h", "Makefile", - "config.status", "config.h", "libtool", "core" ); - foreach $file (@files) { - $foundfiles{$file} = 0 if (defined $foundfiles{$file}); - } - - my $KDE_DIST = ""; - foreach $file (keys %foundfiles) { - if ($foundfiles{$file} == 1) { - $KDE_DIST .= "$file "; - } - } - if ($KDE_DIST) { - print "KDE_DIST $printname $KDE_DIST\n" if ($verbose); - - my $lookup = 'DISTFILES\s*=[ \t]*(.*)'; - if ($MakefileData =~ /\n$lookup/) { - substituteLine($lookup, "DISTFILES = $1 \$(KDE_DIST)"); - appendLines("KDE_DIST=$KDE_DIST\n"); - } - } -} - -#----------------------------------------------------------------------------- -# Returns 0 if the line was processed - 1 otherwise. -# Errors are logged in the global $errorflags -sub tag_DOCFILES () -{ - $target_adds{"all"} .= "docs-am "; - - my $lookup = 'KDE_DOCS\s*=[ \t]*([^\n]*)'; - goto nodocs if ($MakefileData !~ /\n$lookup/); - print STDOUT "KDE_DOCS processing <$1>\n" if ($verbose); - - my $tmp = $1; - - # Either find the files in the directory (AUTO) or use - # only the specified po files. - my $files = ""; - my $appname = $tmp; - $appname =~ s/^(\S*)\s*.*$/$1/; - if ($appname =~ /AUTO/) { - $appname = basename($makefileDir); - if ("$appname" eq "en") { - print STDERR "Error: KDE_DOCS = AUTO relies on the directory name. Yours is 'en' - you most likely want something else, e.g. KDE_DOCS = myapp\n"; - exit(1); - } - } - - if ($tmp !~ / - /) - { - opendir (THISDIR, "."); - foreach $entry (readdir(THISDIR)) { - next if ($entry eq "CVS" || $entry =~ /^\./ || $entry =~ /^Makefile/ || $entry =~ /~$/ || $entry =~ /^\#.*\#$/ || $entry eq "core" || $entry eq "index.cache.bz2"); - next if (! -f $entry); - $files .= "$entry "; - } - closedir (THISDIR); - print STDOUT "docfiles found = $files\n" if ($verbose); - } - else - { - $tmp =~ s/\034/ /g; - $tmp =~ s/^\S*\s*-\s*//; - $files = $tmp; - } - goto nodocs if (!$files); # Nothing to do - - if ($files =~ /(^| )index\.docbook($| )/) { - - my $lines = ""; - my $lookup = 'MEINPROC\s*='; - if ($MakefileData !~ /\n($lookup)/) { - $lines = "MEINPROC=/\$(kde_bindir)/meinproc\n"; - } - $lookup = 'KDE_XSL_STYLESHEET\s*='; - if ($MakefileData !~ /\n($lookup)/) { - $lines .= "KDE_XSL_STYLESHEET=/\$(kde_datadir)/ksgmltools2/customization/kde-chunk.xsl\n"; - } - $lookup = '\nindex.cache.bz2:'; - if ($MakefileData !~ /\n($lookup)/) { - $lines .= "index.cache.bz2: \$(srcdir)/index.docbook \$(KDE_XSL_STYLESHEET) $files\n"; - $lines .= "\t\@if test -n \"\$(MEINPROC)\"; then echo \$(MEINPROC) --check --cache index.cache.bz2 \$(srcdir)/index.docbook; \$(MEINPROC) --check --cache index.cache.bz2 \$(srcdir)/index.docbook; fi\n"; - $lines .= "\n"; - } - - $lines .= "docs-am: index.cache.bz2\n"; - $lines .= "\n"; - $lines .= "install-docs: docs-am install-nls\n"; - $lines .= "\t\$(mkinstalldirs) \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname\n"; - $lines .= "\t\@if test -f index.cache.bz2; then \\\n"; - $lines .= "\techo \$(INSTALL_DATA) index.cache.bz2 \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/; \\\n"; - $lines .= "\t\$(INSTALL_DATA) index.cache.bz2 \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/; \\\n"; - $lines .= "\telif test -f \$(srcdir)/index.cache.bz2; then \\\n"; - $lines .= "\techo \$(INSTALL_DATA) \$(srcdir)/index.cache.bz2 \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/; \\\n"; - $lines .= "\t\$(INSTALL_DATA) \$(srcdir)/index.cache.bz2 \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/; \\\n"; - $lines .= "\tfi\n"; - $lines .= "\t-rm -f \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/common\n"; - $lines .= "\t\$(LN_S) \$(kde_libs_htmldir)/$kdelang/common \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/common\n"; - - $lines .= "\n"; - $lines .= "uninstall-docs:\n"; - $lines .= "\t-rm -rf \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname\n"; - $lines .= "\n"; - $lines .= "clean-docs:\n"; - $lines .= "\t-rm -f index.cache.bz2\n"; - $lines .= "\n"; - $target_adds{"install-data-am"} .= "install-docs "; - $target_adds{"uninstall"} .= "uninstall-docs "; - $target_adds{"clean-am"} .= "clean-docs "; - appendLines ($lines); - } else { - appendLines("docs-am: $files\n"); - } - - $target_adds{"install-data-am"} .= "install-nls "; - $target_adds{"uninstall"} .= "uninstall-nls "; - - $tmp = "install-nls:\n"; - $tmp .= "\t\$(mkinstalldirs) \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname\n"; - $tmp .= "\t\@for base in $files; do \\\n"; - $tmp .= "\t echo \$(INSTALL_DATA) \$\$base \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/\$\$base ;\\\n"; - $tmp .= "\t \$(INSTALL_DATA) \$(srcdir)/\$\$base \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/\$\$base ;\\\n"; - $tmp .= "\tdone\n"; - if ($appname eq 'common') { - $tmp .= "\t\@echo \"merging common and language specific dir\" ;\\\n"; - $tmp .= "\tif test ! -f \$(kde_htmldir)/en/common/kde-common.css; then echo 'no english docs found in \$(kde_htmldir)/en/common/'; exit 1; fi \n"; - $tmp .= "\t\@com_files=`cd \$(kde_htmldir)/en/common && echo *` ;\\\n"; - $tmp .= "\tcd \$(DESTDIR)\$(kde_htmldir)/$kdelang/common ;\\\n"; - $tmp .= "\tif test -n \"\$\$com_files\"; then for p in \$\$com_files ; do \\\n"; - $tmp .= "\t case \" $files \" in \\\n"; - $tmp .= "\t *\" \$\$p \"*) ;; \\\n"; - $tmp .= "\t *) test ! -f \$\$p && echo \$(LN_S) ../../en/common/\$\$p \$(DESTDIR)\$(kde_htmldir)/$kdelang/common/\$\$p && \$(LN_S) ../../en/common/\$\$p \$\$p ;; \\\n"; - $tmp .= "\t esac ; \\\n"; - $tmp .= "\tdone ; fi ; true\n"; - } - $tmp .= "\n"; - $tmp .= "uninstall-nls:\n"; - $tmp .= "\tfor base in $files; do \\\n"; - $tmp .= "\t rm -f \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/\$\$base ;\\\n"; - $tmp .= "\tdone\n\n"; - appendLines ($tmp); - - $target_adds{"distdir"} .= "distdir-nls "; - - $tmp = "distdir-nls:\n"; - $tmp .= "\tfor file in $files; do \\\n"; - $tmp .= "\t cp \$(srcdir)/\$\$file \$(distdir); \\\n"; - $tmp .= "\tdone\n"; - - appendLines ($tmp); - - return 0; - - nodocs: - appendLines("docs-am:\n"); - return 1; -} - -#----------------------------------------------------------------------------- -# Find headers in any of the source directories specified previously, that -# are candidates for "moc-ing". -sub findMocCandidates () -{ - foreach $dir (@headerdirs) - { - my @list = (); - opendir (SRCDIR, "$dir"); - @hFiles = grep { /.+\.$hExt$/o && !/^\./ } readdir(SRCDIR); - closedir SRCDIR; - foreach $hf (@hFiles) - { - next if ($hf =~ /^\.\#/); - $hf =~ /(.*)\.[^\.]*$/; # Find name minus extension - next if ($uiFiles{$1}); - open (HFIN, "$dir/$hf") || die "Could not open $dir/$hf: $!\n"; - my $hfsize = 0; - seek(HFIN, 0, 2); - $hfsize = tell(HFIN); - seek(HFIN, 0, 0); - read HFIN, $hfData, $hfsize; - close HFIN; - # push (@list, $hf) if(index($hfData, "Q_OBJECT") >= 0); ### fast but doesn't handle //Q_OBJECT - # handle " { friend class blah; Q_OBJECT ", but don't match antlarr_Q_OBJECT (\b). - if ( $hfData =~ /{([^}]*)\bQ_OBJECT/s ) { - push (@list, $hf) unless $1 =~ m://[^\n]*Q_OBJECT[^\n]*$:s; ## reject "// Q_OBJECT" - } - } - # The assoc array of root of headerfile and header filename - foreach $hFile (@list) - { - $hFile =~ /(.*)\.[^\.]*$/; # Find name minus extension - if ($mocFiles{$1}) - { - print STDERR "Warning: Multiple header files found for $1\n"; - next; # Use the first one - } - $mocFiles{$1} = "$dir\035$hFile"; # Add relative dir - } - } - - return 0; -} - -#----------------------------------------------------------------------------- - -# The programmer has specified a moc list. Prune out the moc candidates -# list that we found based on looking at the header files. This generates -# a warning if the programmer gets the list wrong, but this doesn't have -# to be fatal here. -sub pruneMocCandidates ($) -{ - my %prunedMoc = (); - local @mocList = split(' ', $_[0]); - - foreach $mocname (@mocList) - { - $mocname =~ s/\.moc$//; - if ($mocFiles{$mocname}) - { - $prunedMoc{$mocname} = $mocFiles{$mocname}; - } - else - { - my $print = $makefileDir; - $print =~ s/^\Q$topdir\E\\//; - # They specified a moc file but we can't find a header that - # will generate this moc file. That's possible fatal! - print STDERR "Warning: No moc-able header file for $print/$mocname\n"; - } - } - - undef %mocFiles; - %mocFiles = %prunedMoc; -} - -#----------------------------------------------------------------------------- - -# Finds the cpp files (If they exist). -# The cpp files get appended to the header file separated by \035 -sub checkMocCandidates () -{ - my @cppFiles; - my $cpp2moc; # which c++ file includes which .moc files - my $moc2cpp; # which moc file is included by which c++ files - - return unless (keys %mocFiles); - opendir(THISDIR, ".") || return; - @cppFiles = grep { /.+\.$cppExt$/o && !/.+\.moc\.$cppExt$/o - && !/.+\.all_$cppExt\.$cppExt$/o - && !/^\./ } readdir(THISDIR); - closedir THISDIR; - return unless (@cppFiles); - my $files = join (" ", @cppFiles); - $cpp2moc = {}; - $moc2cpp = {}; - foreach $cxxf (@cppFiles) - { - open (CXXFIN, $cxxf) || die "Could not open $cxxf: $!\n"; - seek(CXXFIN, 0, 2); - my $cxxfsize = tell(CXXFIN); - seek(CXXFIN, 0, 0); - read CXXFIN, $cxxfData, $cxxfsize; - close CXXFIN; - while(($cxxfData =~ m/^[ \t]*\#include\s*[<\"](.*\.moc)[>\"]/gm)) { - $cpp2moc->{$cxxf}->{$1} = 1; - $moc2cpp->{$1}->{$cxxf} = 1; - } - } - foreach my $mocFile (keys (%mocFiles)) - { - @cppFiles = keys %{$moc2cpp->{"$mocFile.moc"}}; - if (@cppFiles == 1) { - $mocFiles{$mocFile} .= "\035" . $cppFiles[0]; - push(@depend, $mocFile); - } elsif (@cppFiles == 0) { - push (@newObs, $mocFile); # Produce new object file - next if ($haveAutomocTag); # This is expected... - # But this is an error we can deal with - let them know - print STDERR - "Warning: No c++ file that includes $mocFile.moc\n"; - } else { - # We can't decide which file to use, so it's fatal. Although as a - # guess we could use the mocFile.cpp file if it's in the list??? - print STDERR - "Error: Multiple c++ files that include $mocFile.moc\n"; - print STDERR "\t",join ("\t", @cppFiles),"\n"; - $errorflag = 1; - delete $mocFiles{$mocFile}; - # Let's continue and see what happens - They have been told! - } - } -} - -#----------------------------------------------------------------------------- - -# Add the rules for generating moc source from header files -# For Automoc output *.moc.cpp but normally we'll output *.moc -# (We must compile *.moc.cpp separately. *.moc files are included -# in the appropriate *.cpp file by the programmer) -sub addMocRules () -{ - my $cppFile; - my $hFile; - - foreach $mocFile (keys (%mocFiles)) - { - undef $cppFile; - ($dir, $hFile, $cppFile) = split ("\035", $mocFiles{$mocFile}, 3); - $dir =~ s#^\.#\$(srcdir)#; - if (defined ($cppFile)) - { - $cppFile =~ s,\.[^.]*$,,; - $target_adds{"$cppFile.o"} .= "$mocFile.moc "; - $target_adds{"$cppFile.lo"} .= "$mocFile.moc "; - appendLines ("$mocFile.moc: $dir/$hFile\n\t\$(MOC) $dir/$hFile -o $mocFile.moc\n"); - $cleanMoc .= " $mocFile.moc"; - appendLines ("mocs: $mocFile.moc\n"); - } - else - { - appendLines ("$mocFile$mocExt: $dir/$hFile\n\t\$(MOC) $dir/$hFile -o $mocFile$mocExt\n"); - $cleanMoc .= " $mocFile$mocExt"; - appendLines ("mocs: $mocFile$mocExt\n"); - } - } -} - -sub make_bcheck_target() -{ - my $lookup = 'RECURSIVE_TARGETS\s*=[ \t]*(.*)'; - my $bcheckdep = "bcheck-am"; - $bcheckdep = "bcheck-recursive" if ($MakefileData =~ /\n$lookup/); - - my $headers= ""; - $headers = $1 if($MakefileData =~ /\nHEADERS\s*=[ \t]*(.+)/); - $headers =~ s/\$\((?:noinst|EXTRA)_HEADERS\)//g; - - $target_adds{"clean-am"} .= "clean-bcheck "; - - my $t = "clean-bcheck: \n" . - "\trm -f *.bchecktest.cc *.bchecktest.cc.class a.out\n\n" . - "bcheck: $bcheckdep\n\n" . - "bcheck-am:\n" . - "\t\@for i in $headers; do \\\n" . - "\t if test \$(srcdir)/\$\$i -nt \$\$i.bchecktest.cc; then \\\n" . - "\t echo \"int main() {return 0;}\" > \$\$i.bchecktest.cc ; \\\n" . - "\t echo \"#include \\\"\$\$i\\\"\" >> \$\$i.bchecktest.cc ; \\\n" . - "\t echo \"\$\$i\"; \\\n" . - "\t if ! "; - $t .= $cxxsuffix eq "KKK" ? - "\$(CXX) \$(DEFS) -I. -I\$(srcdir) -I\$(top_builddir) \$(INCLUDES) \$(AM_CPPFLAGS) \$(CPPFLAGS) \$(CXXFLAGS) \$(KDE_CXXFLAGS) " : - "\$(CXXCOMPILE) "; - $t .= " --dump-class-hierarchy -c \$\$i.bchecktest.cc; then \\\n" . - "\t rm -f \$\$i.bchecktest.cc; exit 1; \\\n" . - "\t fi ; \\\n" . - "\t echo \"\" >> \$\$i.bchecktest.cc.class; \\\n" . - "\t perl \$(top_srcdir)/admin/bcheck.pl \$\$i.bchecktest.cc.class || { rm -f \$\$i.bchecktest.cc; exit 1; }; \\\n" . - "\t rm -f a.out; \\\n" . - "\t fi ; \\\n" . - "\tdone\n"; - appendLines("$t\n"); -} - -sub make_meta_classes () -{ - return if ($kdeopts{"qtonly"}); - - my $cppFile; - my $hFile; - my $moc_class_headers = ""; - foreach $program (@programs) { - my $mocs = ""; - my @progsources = split(/[\034\s]+/, $sources{$program}); - my @depmocs = split(' ', $dependmocs{$program}); - my %shash = (), %mhash = (); - @shash{@progsources} = 1; # we are only interested in the existence - @mhash{@depmocs} = 1; - - print STDOUT "program=$program\n" if ($verbose); - print STDOUT "psources=[".join(' ', keys %shash)."]\n" if ($verbose); - print STDOUT "depmocs=[".join(' ', keys %mhash)."]\n" if ($verbose); - print STDOUT "globalmocs=[".join(' ', keys(%globalmocs))."]\n" if ($verbose); - foreach my $mocFile (keys (%globalmocs)) - { - my ($dir, $hFile, $cppFile) = split ("\035", $globalmocs{$mocFile}, 3); - if (defined ($cppFile)) - { - $mocs .= " $mocFile.moc" if exists $shash{$cppFile}; - } - else - { - # Bah. This is the case, if no C++ file includes the .moc - # file. We make a .moc.cpp file for that. Unfortunately this - # is not included in the %sources hash, but rather is mentioned - # in %dependmocs. If the user wants to use AUTO he can't just - # use an unspecific METAINCLUDES. Instead he must use - # program_METAINCLUDES. Anyway, it's not working real nicely. - # E.g. Its not clear what happens if user specifies two - # METAINCLUDES=AUTO in the same Makefile.am. - $mocs .= " $mocFile.moc.$cxxsuffix" - if exists $mhash{$mocFile.".moc.$cxxsuffix"}; - } - } - if ($mocs) { - print STDOUT "==> mocs=[".$mocs."]\n" if ($verbose); - } - print STDOUT "\n" if $verbose; - } - if ($moc_class_headers) { - appendLines ("$cleantarget-moc-classes:\n\t-rm -f $moc_class_headers\n"); - $target_adds{"$cleantarget-am"} .= "$cleantarget-moc-classes "; - } -} - -#----------------------------------------------------------------------------- - -sub updateMakefile () -{ - return if ($dryrun); - - open (FILEOUT, "> $makefile") - || die "Could not create $makefile: $!\n"; - - $MakefileData =~ s/\034/\\\n/g; # Restore continuation lines - # Append our $progId line, _below_ the "generated by automake" line - # because automake-1.6 relies on the first line to be his own. - my $progIdLine = "\# $progId - " . '$Revision: 1.1 $ '."\n"; - if ( !( $MakefileData =~ s/^(.*generated .*by automake.*\n)/$1$progIdLine/ ) ) { - warn "automake line not found in $makefile\n"; - # Fallback: first line - print FILEOUT $progIdLine; - }; - print FILEOUT $MakefileData; - close FILEOUT; -} - -#----------------------------------------------------------------------------- - -# The given line needs to be removed from the makefile -# Do this by adding the special "removed line" comment at the line start. -sub removeLine ($$) -{ - my ($lookup, $old) = @_; - - $old =~ s/\034/\\\n#>- /g; # Fix continuation lines - $MakefileData =~ s/\n$lookup/\n#>\- $old/; -} - -#----------------------------------------------------------------------------- - -# Replaces the old line with the new line -# old line(s) are retained but tagged as removed. The new line(s) have the -# "added" tag placed before it. -sub substituteLine ($$) -{ - my ($lookup, $new) = @_; - - if ($MakefileData =~ /\n($lookup)/) { - $old = $1; - $old =~ s/\034/\\\n#>\- /g; # Fix continuation lines - my $newCount = ($new =~ tr/\034//) + ($new =~ tr/\n//) + 1; - $new =~ s/\\\n/\034/g; - $MakefileData =~ s/\n$lookup/\n#>- $old\n#>\+ $newCount\n$new/; - } else { - warn "Warning: substitution of \"$lookup\" in $printname failed\n"; - } -} - -#----------------------------------------------------------------------------- - -# Slap new lines on the back of the file. -sub appendLines ($) -{ - my ($new) = @_; - my $copynew = $new; - my $newCount = ($new =~ tr/\034//) + ($new =~ tr/\n//) + 1; - $new =~ s/\\\n/\034/g; # Fix continuation lines - $MakefileData .= "\n#>\+ $newCount\n$new"; -} - -#----------------------------------------------------------------------------- - -# Restore the Makefile.in to the state it was before we fiddled with it -sub restoreMakefile () -{ - $MakefileData =~ s/# $progId[^\n\034]*[\n\034]*//g; - # Restore removed lines - $MakefileData =~ s/([\n\034])#>\- /$1/g; - # Remove added lines - while ($MakefileData =~ /[\n\034]#>\+ ([^\n\034]*)/) - { - my $newCount = $1; - my $removeLines = ""; - while ($newCount--) { - $removeLines .= "[^\n\034]*([\n\034]|)"; - } - $MakefileData =~ s/[\n\034]#>\+.*[\n\034]$removeLines/\n/; - } -} - -#----------------------------------------------------------------------------- - -# find the .kcfg file listed in the .kcfgc file -sub findKcfgFile($) -{ - my ($kcfgf) = @_; - open (KCFGFIN, $kcfgf) || die "Could not open $kcfgf: $!\n"; - seek(KCFGFIN, 0, 2); - my $kcfgfsize = tell(KCFGFIN); - seek(KCFGFIN, 0, 0); - read KCFGFIN, $kcfgfData, $kcfgfsize; - close KCFGFIN; - if(($kcfgfData =~ m/^File=(.*\.kcfg)/gm)) { - $kcfg = $1; - } -} diff --git a/portland/dapi/kde/admin/bcheck.pl b/portland/dapi/kde/admin/bcheck.pl deleted file mode 100644 index cca973e..0000000 --- a/portland/dapi/kde/admin/bcheck.pl +++ /dev/null @@ -1,157 +0,0 @@ -#!/usr/bin/perl -w - -use DB_File; -use Fcntl ':flock'; - -if (!defined($ARGV[0])) { - print "usage: requires .class dump as parameter!\n"; - exit; -} - -sub bailout -{ - untie %bcheckdb if(defined(%bcheckdb)); - - if(defined(MYLOCK)) { - flock MYLOCK, LOCK_UN; - close(MYLOCK); - } - - print @_; - exit 5; -} - -sub ask_user -{ - my ($dbkey, $dbchunk) = @_; - - if (defined($ENV{"BCHECK_UPDATE"})) { - $bcheckdb{$dbkey} = $dbchunk; - return; - } - - &bailout("BC problem detected") if (! -t STDIN); - - print "(I)gnore / (Q)uit / (U)pdate: "; - - my $key; - while(defined(read STDIN, $key, 1)) { - $key = lc($key); - - print "got: >$key<\n"; - - return if ($key eq 'i'); - - &bailout("BC problem. aborted") if ($key eq 'q'); - - if ($key eq 'u') { - $bcheckdb{$dbkey} = $dbchunk; - return; - } - print "\n(I)gnore / (Q)uit / (U)pdate: "; - } -} - -sub diff_chunk($$) -{ - my ($oldl, $newl) = @_; - my @old = split /^/m, $oldl; - my @new = split /^/m, $newl; - my $haschanges = 0; - my $max = $#old > $#new ? $#old : $#new; - - die "whoops. key different" if ($old[0] ne $new[0]); - - if ($#old != $#new) { - warn ("Structural difference.\n"); - print @old; - print "-----------------------------------------------\n"; - print @new; - $haschanges = 1; - return $haschanges; - } - - print $old[0]; - - my ($class) = ($old[0] =~ /^(?:Class |Vtable for )(\S+)/); - - my $c = 1; - while ($c < $max) { - my ($o, $n) = ($old[$c], $new[$c]); - chomp $o; - chomp $n; - $c++; - next if ($o eq $n); - - if(defined($class) and $n =~ /^(\d+\s+)\w+(::\S+\s*.*)$/) { - next if ($n eq "$1$class$2"); - } - - $haschanges = 1; - - print "-$o\n+$n\n\n"; - } - - return $haschanges; -} - -local $dblock = $ENV{"HOME"} . "/bcheck.lock"; -my $dbfile = $ENV{"HOME"} . "/bcheck.db"; -my $cdump = $ARGV[0]; - -die "file $cdump is not readable: $!" if (! -f $cdump); - -# make sure the advisory lock exists -open(MYLOCK, ">$dblock"); -print MYLOCK ""; - -flock MYLOCK, LOCK_EX; - -tie %bcheckdb, 'DB_File', $dbfile; - -my $chunk = ""; - -open (IN, "<$cdump") or die "cannot open $cdump: $!"; -while (<IN>) { - - chop; - - s/0x[0-9a-fA-F]+/0x......../g; - s/base size=/size=/g; - s/\(\)\s*$//g; - s/base align=/align=/g; - - $chunk .= $_ . "\n"; - - if(/^\s*$/) { - my @lines = split /^/m, $chunk; - my $key = $lines[0]; - chomp $key; - - if($key !~ /<anonymous struct>/ && - $key !~ /<anonymous union>/) { - if(defined($bcheckdb{$key})) { - my $dbversion = $bcheckdb{$key}; - - if($dbversion ne $chunk) { - &ask_user($key, $chunk) if(&diff_chunk($dbversion, $chunk)); - } - } - else { - $bcheckdb{$key} = $chunk; - print "NEW: $key\n"; - } - } - - $chunk = ""; - next; - } - -} -close(IN); - -untie %bcheckdb; -flock MYLOCK, LOCK_UN; -close(MYLOCK); - -exit 0; diff --git a/portland/dapi/kde/admin/compile b/portland/dapi/kde/admin/compile deleted file mode 100755 index 1b1d232..0000000 --- a/portland/dapi/kde/admin/compile +++ /dev/null @@ -1,142 +0,0 @@ -#! /bin/sh -# Wrapper for compilers which do not understand `-c -o'. - -scriptversion=2005-05-14.22 - -# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc. -# Written by Tom Tromey <tromey@cygnus.com>. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# This file is maintained in Automake, please report -# bugs to <bug-automake@gnu.org> or send patches to -# <automake-patches@gnu.org>. - -case $1 in - '') - echo "$0: No command. Try \`$0 --help' for more information." 1>&2 - exit 1; - ;; - -h | --h*) - cat <<\EOF -Usage: compile [--help] [--version] PROGRAM [ARGS] - -Wrapper for compilers which do not understand `-c -o'. -Remove `-o dest.o' from ARGS, run PROGRAM with the remaining -arguments, and rename the output as expected. - -If you are trying to build a whole package this is not the -right script to run: please start by reading the file `INSTALL'. - -Report bugs to <bug-automake@gnu.org>. -EOF - exit $? - ;; - -v | --v*) - echo "compile $scriptversion" - exit $? - ;; -esac - -ofile= -cfile= -eat= - -for arg -do - if test -n "$eat"; then - eat= - else - case $1 in - -o) - # configure might choose to run compile as `compile cc -o foo foo.c'. - # So we strip `-o arg' only if arg is an object. - eat=1 - case $2 in - *.o | *.obj) - ofile=$2 - ;; - *) - set x "$@" -o "$2" - shift - ;; - esac - ;; - *.c) - cfile=$1 - set x "$@" "$1" - shift - ;; - *) - set x "$@" "$1" - shift - ;; - esac - fi - shift -done - -if test -z "$ofile" || test -z "$cfile"; then - # If no `-o' option was seen then we might have been invoked from a - # pattern rule where we don't need one. That is ok -- this is a - # normal compilation that the losing compiler can handle. If no - # `.c' file was seen then we are probably linking. That is also - # ok. - exec "$@" -fi - -# Name of file we expect compiler to create. -cofile=`echo "$cfile" | sed -e 's|^.*/||' -e 's/\.c$/.o/'` - -# Create the lock directory. -# Note: use `[/.-]' here to ensure that we don't use the same name -# that we are using for the .o file. Also, base the name on the expected -# object file name, since that is what matters with a parallel build. -lockdir=`echo "$cofile" | sed -e 's|[/.-]|_|g'`.d -while true; do - if mkdir "$lockdir" >/dev/null 2>&1; then - break - fi - sleep 1 -done -# FIXME: race condition here if user kills between mkdir and trap. -trap "rmdir '$lockdir'; exit 1" 1 2 15 - -# Run the compile. -"$@" -ret=$? - -if test -f "$cofile"; then - mv "$cofile" "$ofile" -elif test -f "${cofile}bj"; then - mv "${cofile}bj" "$ofile" -fi - -rmdir "$lockdir" -exit $ret - -# Local Variables: -# mode: shell-script -# sh-indentation: 2 -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" -# End: diff --git a/portland/dapi/kde/admin/conf.change.pl b/portland/dapi/kde/admin/conf.change.pl deleted file mode 100644 index 129d759..0000000 --- a/portland/dapi/kde/admin/conf.change.pl +++ /dev/null @@ -1,191 +0,0 @@ -#!/usr/bin/env perl - -# this script patches a config.status file, to use our own perl script -# in the main loop -# we do it this way to circumvent hacking (and thereby including) -# autoconf function (which are GPL) into our LGPL acinclude.m4.in -# written by Michael Matz <matz@kde.org> -# adapted by Dirk Mueller <mueller@kde.org> -# -# This file is free software; you can redistribute it and/or -# modify it under the terms of the GNU Library General Public -# License as published by the Free Software Foundation; either -# version 2 of the License, or (at your option) any later version. - -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Library General Public License for more details. - -# You should have received a copy of the GNU Library General Public License -# along with this library; see the file COPYING.LIB. If not, write to -# the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -# Boston, MA 02110-1301, USA. - -# we have to change two places -# 1. the splitting of the substitutions into chunks of 90 (or even 48 in -# later autoconf's -# 2. the big main loop which patches all Makefile.in's - -use strict; -use File::Basename; - -my $ac_aux_dir = dirname($0); -my ($flag); -my $ac_version = 0; -my $vpath_seen = 0; -$flag = 0; - -while (<>) { -# usage of $flag: 0 -- we have seen nothing yet -# 1 -- we are in (1) -# 2 -- we have ended (1) -# 3 -- we are in (2) -# 4 -- we ended (2) - - if ($flag == 4) { - print; - } elsif ($flag == 0) { -# 1. begins with (including): "ac_max_sed_\S+\s*=\s*[0-9]+..." -# ends with (excluding) "CONFIG_FILE=..." -# in later autoconf (2.14.1) there is no CONFIG_FILES= line, -# but instead the (2) directly follow (1) - if (/^\s*ac_max_sed_([a-z]+).*=\s*([0-9]+)/ ) { - $flag = 1; - if ($1 eq 'lines') { - # lets hope its different with 2141, - # wasn't able to verify that - if ($2 eq '48') { - $ac_version = 250; - } - else { - $ac_version = 2141; - } - } elsif ($1 eq 'cmds') { - $ac_version = 213; - } - # hmm, we don't know the autoconf version, but we try anyway - } else { - print; - } - } elsif ($flag == 1) { - if (/^\s*CONFIG_FILES=/ && ($ac_version != 250)) { - print; - $flag = 2; - } elsif (/^\s*for\s+ac_file\s+in\s+.*CONFIG_FILES/ ) { - $flag = 3; - } - } elsif ($flag == 2) { -# 2. begins with: "for ac_file in.*CONFIG_FILES" (the next 'for' after (1)) -# end with: "rm -f conftest.s\*" -# on autoconf 250, it ends with '# CONFIG_HEADER section' -# -# gg: if a post-processing commands section is found first, -# stop there and insert a new loop to honor the case/esac. -# (pattern: /^\s+#\sRun the commands associated with the file./) - - if (/^\s*for\s+ac_file\s+in\s+.*CONFIG_FILES/ ) { - $flag = 3; - } else { - print; - } - } elsif ($flag == 3) { - if (/^\s*rm\s+-f\s+conftest/ ) { - $flag = 4; - &insert_main_loop(); - } elsif (/^\s*rm\s+-f\s+.*ac_cs_root/ ) { - $flag = 4; - &insert_main_loop(); - #die "hhhhhhh"; - if ($ac_version != 2141) { - print STDERR "hmm, don't know autoconf version\n"; - } - } elsif (/^\#\s*CONFIG_(HEADER|COMMANDS) section.*|^\s+#\s(Run) the commands associated/) { - $flag = 4; - my $commands = defined $2; - &insert_main_loop(); - $commands && insert_command_loop(); - if($ac_version != 250) { - print STDERR "hmm, something went wrong :-(\n"; - } - } elsif (/VPATH/ ) { - $vpath_seen = 1; - } - } -} - -die "wrong input (flag != 4)" unless $flag == 4; -print STDERR "hmm, don't know autoconf version\n" unless $ac_version; - -sub insert_main_loop { - - if ($ac_version == 250) { - &insert_main_loop_250(); - } - else { - &insert_main_loop_213(); - } -} - -sub insert_main_loop_250 { - - print <<EOF; - #echo Doing the fast build of Makefiles -- autoconf $ac_version -EOF - if ($vpath_seen) { - print <<EOF; - # VPATH subst was seen in original config.status main loop - echo '/^[ ]*VPATH[ ]*=[^:]*\$/d' >>\$tmp/subs.sed -EOF - } - print <<EOF; - rm -f \$tmp/subs.files - for ac_file in .. \$CONFIG_FILES ; do - if test "x\$ac_file" != x..; then - echo \$ac_file >> \$tmp/subs.files - fi - done - if test -f \$tmp/subs.files ; then - perl $ac_aux_dir/config.pl "\$tmp/subs.sed" "\$tmp/subs.files" "\$srcdir" "\$INSTALL" - fi - rm -f \$tmp/subs.files - -fi -EOF - return; -} - -sub insert_main_loop_213 { - print <<EOF; -#echo Doing the fast build of Makefiles -- autoconf $ac_version -if test "x\$ac_cs_root" = "x" ; then - ac_cs_root=conftest -fi -EOF - if ($vpath_seen) { - print <<EOF; -# VPATH subst was seen in original config.status main loop -echo '/^[ ]*VPATH[ ]*=[^:]*\$/d' >> \$ac_cs_root.subs -EOF - } - print <<EOF; -rm -f \$ac_cs_root.sacfiles -for ac_file in .. \$CONFIG_FILES ; do - if test "x\$ac_file" != x..; then - echo \$ac_file >> \$ac_cs_root.sacfiles - fi -done -if test -f \$ac_cs_root.sacfiles ; then - perl $ac_aux_dir/config.pl "\$ac_cs_root.subs" "\$ac_cs_root.sacfiles" "\$ac_given_srcdir" "\$ac_given_INSTALL" -fi -rm -f \$ac_cs_root.s* - -EOF - return; -} - -sub insert_command_loop { - print <<EOF; - for ac_file in .. \$CONFIG_FILES ; do -EOF -} diff --git a/portland/dapi/kde/admin/config.guess b/portland/dapi/kde/admin/config.guess deleted file mode 100755 index 4f0f63f..0000000 --- a/portland/dapi/kde/admin/config.guess +++ /dev/null @@ -1,1464 +0,0 @@ -#! /bin/sh -# Attempt to guess a canonical system name. -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. - -timestamp='2005-06-30' - -# This file is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA -# 02110-1301, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - - -# Originally written by Per Bothner <per@bothner.com>. -# Please send patches to <config-patches@gnu.org>. Submit a context -# diff and a properly formatted ChangeLog entry. -# -# This script attempts to guess a canonical system name similar to -# config.sub. If it succeeds, it prints the system name on stdout, and -# exits with 0. Otherwise, it exits with 1. -# -# The plan is that this can be called by configure scripts if you -# don't specify an explicit build system type. - -me=`echo "$0" | sed -e 's,.*/,,'` - -usage="\ -Usage: $0 [OPTION] - -Output the configuration name of the system \`$me' is run on. - -Operation modes: - -h, --help print this help, then exit - -t, --time-stamp print date of last modification, then exit - -v, --version print version number, then exit - -Report bugs and patches to <config-patches@gnu.org>." - -version="\ -GNU config.guess ($timestamp) - -Originally written by Per Bothner. -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 -Free Software Foundation, Inc. - -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." - -help=" -Try \`$me --help' for more information." - -# Parse command line -while test $# -gt 0 ; do - case $1 in - --time-stamp | --time* | -t ) - echo "$timestamp" ; exit ;; - --version | -v ) - echo "$version" ; exit ;; - --help | --h* | -h ) - echo "$usage"; exit ;; - -- ) # Stop option processing - shift; break ;; - - ) # Use stdin as input. - break ;; - -* ) - echo "$me: invalid option $1$help" >&2 - exit 1 ;; - * ) - break ;; - esac -done - -if test $# != 0; then - echo "$me: too many arguments$help" >&2 - exit 1 -fi - -trap 'exit 1' 1 2 15 - -# CC_FOR_BUILD -- compiler used by this script. Note that the use of a -# compiler to aid in system detection is discouraged as it requires -# temporary files to be created and, as you can see below, it is a -# headache to deal with in a portable fashion. - -# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still -# use `HOST_CC' if defined, but it is deprecated. - -# Portable tmp directory creation inspired by the Autoconf team. - -set_cc_for_build=' -trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; -trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; -: ${TMPDIR=/tmp} ; - { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || - { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || - { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || - { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; -dummy=$tmp/dummy ; -tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; -case $CC_FOR_BUILD,$HOST_CC,$CC in - ,,) echo "int x;" > $dummy.c ; - for c in cc gcc c89 c99 ; do - if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then - CC_FOR_BUILD="$c"; break ; - fi ; - done ; - if test x"$CC_FOR_BUILD" = x ; then - CC_FOR_BUILD=no_compiler_found ; - fi - ;; - ,,*) CC_FOR_BUILD=$CC ;; - ,*,*) CC_FOR_BUILD=$HOST_CC ;; -esac ;' - -# This is needed to find uname on a Pyramid OSx when run in the BSD universe. -# (ghazi@noc.rutgers.edu 1994-08-24) -if (test -f /.attbin/uname) >/dev/null 2>&1 ; then - PATH=$PATH:/.attbin ; export PATH -fi - -UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown -UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown -UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown -UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown - -# Note: order is significant - the case branches are not exclusive. - -case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in - *:NetBSD:*:*) - # NetBSD (nbsd) targets should (where applicable) match one or - # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, - # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently - # switched to ELF, *-*-netbsd* would select the old - # object file format. This provides both forward - # compatibility and a consistent mechanism for selecting the - # object file format. - # - # Note: NetBSD doesn't particularly care about the vendor - # portion of the name. We always set it to "unknown". - sysctl="sysctl -n hw.machine_arch" - UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ - /usr/sbin/$sysctl 2>/dev/null || echo unknown)` - case "${UNAME_MACHINE_ARCH}" in - armeb) machine=armeb-unknown ;; - arm*) machine=arm-unknown ;; - sh3el) machine=shl-unknown ;; - sh3eb) machine=sh-unknown ;; - *) machine=${UNAME_MACHINE_ARCH}-unknown ;; - esac - # The Operating System including object format, if it has switched - # to ELF recently, or will in the future. - case "${UNAME_MACHINE_ARCH}" in - arm*|i386|m68k|ns32k|sh3*|sparc|vax) - eval $set_cc_for_build - if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ - | grep __ELF__ >/dev/null - then - # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). - # Return netbsd for either. FIX? - os=netbsd - else - os=netbsdelf - fi - ;; - *) - os=netbsd - ;; - esac - # The OS release - # Debian GNU/NetBSD machines have a different userland, and - # thus, need a distinct triplet. However, they do not need - # kernel version information, so it can be replaced with a - # suitable tag, in the style of linux-gnu. - case "${UNAME_VERSION}" in - Debian*) - release='-gnu' - ;; - *) - release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` - ;; - esac - # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: - # contains redundant information, the shorter form: - # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. - echo "${machine}-${os}${release}" - exit ;; - *:OpenBSD:*:*) - UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` - echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} - exit ;; - *:ekkoBSD:*:*) - echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} - exit ;; - macppc:MirBSD:*:*) - echo powerppc-unknown-mirbsd${UNAME_RELEASE} - exit ;; - *:MirBSD:*:*) - echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} - exit ;; - alpha:OSF1:*:*) - case $UNAME_RELEASE in - *4.0) - UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` - ;; - *5.*) - UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` - ;; - esac - # According to Compaq, /usr/sbin/psrinfo has been available on - # OSF/1 and Tru64 systems produced since 1995. I hope that - # covers most systems running today. This code pipes the CPU - # types through head -n 1, so we only detect the type of CPU 0. - ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` - case "$ALPHA_CPU_TYPE" in - "EV4 (21064)") - UNAME_MACHINE="alpha" ;; - "EV4.5 (21064)") - UNAME_MACHINE="alpha" ;; - "LCA4 (21066/21068)") - UNAME_MACHINE="alpha" ;; - "EV5 (21164)") - UNAME_MACHINE="alphaev5" ;; - "EV5.6 (21164A)") - UNAME_MACHINE="alphaev56" ;; - "EV5.6 (21164PC)") - UNAME_MACHINE="alphapca56" ;; - "EV5.7 (21164PC)") - UNAME_MACHINE="alphapca57" ;; - "EV6 (21264)") - UNAME_MACHINE="alphaev6" ;; - "EV6.7 (21264A)") - UNAME_MACHINE="alphaev67" ;; - "EV6.8CB (21264C)") - UNAME_MACHINE="alphaev68" ;; - "EV6.8AL (21264B)") - UNAME_MACHINE="alphaev68" ;; - "EV6.8CX (21264D)") - UNAME_MACHINE="alphaev68" ;; - "EV6.9A (21264/EV69A)") - UNAME_MACHINE="alphaev69" ;; - "EV7 (21364)") - UNAME_MACHINE="alphaev7" ;; - "EV7.9 (21364A)") - UNAME_MACHINE="alphaev79" ;; - esac - # A Pn.n version is a patched version. - # A Vn.n version is a released version. - # A Tn.n version is a released field test version. - # A Xn.n version is an unreleased experimental baselevel. - # 1.2 uses "1.2" for uname -r. - echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` - exit ;; - Alpha\ *:Windows_NT*:*) - # How do we know it's Interix rather than the generic POSIX subsystem? - # Should we change UNAME_MACHINE based on the output of uname instead - # of the specific Alpha model? - echo alpha-pc-interix - exit ;; - 21064:Windows_NT:50:3) - echo alpha-dec-winnt3.5 - exit ;; - Amiga*:UNIX_System_V:4.0:*) - echo m68k-unknown-sysv4 - exit ;; - *:[Aa]miga[Oo][Ss]:*:*) - echo ${UNAME_MACHINE}-unknown-amigaos - exit ;; - *:[Mm]orph[Oo][Ss]:*:*) - echo ${UNAME_MACHINE}-unknown-morphos - exit ;; - *:OS/390:*:*) - echo i370-ibm-openedition - exit ;; - *:z/VM:*:*) - echo s390-ibm-zvmoe - exit ;; - *:OS400:*:*) - echo powerpc-ibm-os400 - exit ;; - arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) - echo arm-acorn-riscix${UNAME_RELEASE} - exit ;; - arm:riscos:*:*|arm:RISCOS:*:*) - echo arm-unknown-riscos - exit ;; - SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) - echo hppa1.1-hitachi-hiuxmpp - exit ;; - Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) - # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. - if test "`(/bin/universe) 2>/dev/null`" = att ; then - echo pyramid-pyramid-sysv3 - else - echo pyramid-pyramid-bsd - fi - exit ;; - NILE*:*:*:dcosx) - echo pyramid-pyramid-svr4 - exit ;; - DRS?6000:unix:4.0:6*) - echo sparc-icl-nx6 - exit ;; - DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) - case `/usr/bin/uname -p` in - sparc) echo sparc-icl-nx7; exit ;; - esac ;; - sun4H:SunOS:5.*:*) - echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit ;; - sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) - echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit ;; - i86pc:SunOS:5.*:*) - echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit ;; - sun4*:SunOS:6*:*) - # According to config.sub, this is the proper way to canonicalize - # SunOS6. Hard to guess exactly what SunOS6 will be like, but - # it's likely to be more like Solaris than SunOS4. - echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit ;; - sun4*:SunOS:*:*) - case "`/usr/bin/arch -k`" in - Series*|S4*) - UNAME_RELEASE=`uname -v` - ;; - esac - # Japanese Language versions have a version number like `4.1.3-JL'. - echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` - exit ;; - sun3*:SunOS:*:*) - echo m68k-sun-sunos${UNAME_RELEASE} - exit ;; - sun*:*:4.2BSD:*) - UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` - test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 - case "`/bin/arch`" in - sun3) - echo m68k-sun-sunos${UNAME_RELEASE} - ;; - sun4) - echo sparc-sun-sunos${UNAME_RELEASE} - ;; - esac - exit ;; - aushp:SunOS:*:*) - echo sparc-auspex-sunos${UNAME_RELEASE} - exit ;; - # The situation for MiNT is a little confusing. The machine name - # can be virtually everything (everything which is not - # "atarist" or "atariste" at least should have a processor - # > m68000). The system name ranges from "MiNT" over "FreeMiNT" - # to the lowercase version "mint" (or "freemint"). Finally - # the system name "TOS" denotes a system which is actually not - # MiNT. But MiNT is downward compatible to TOS, so this should - # be no problem. - atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} - exit ;; - atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} - exit ;; - *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} - exit ;; - milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) - echo m68k-milan-mint${UNAME_RELEASE} - exit ;; - hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) - echo m68k-hades-mint${UNAME_RELEASE} - exit ;; - *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) - echo m68k-unknown-mint${UNAME_RELEASE} - exit ;; - m68k:machten:*:*) - echo m68k-apple-machten${UNAME_RELEASE} - exit ;; - powerpc:machten:*:*) - echo powerpc-apple-machten${UNAME_RELEASE} - exit ;; - RISC*:Mach:*:*) - echo mips-dec-mach_bsd4.3 - exit ;; - RISC*:ULTRIX:*:*) - echo mips-dec-ultrix${UNAME_RELEASE} - exit ;; - VAX*:ULTRIX*:*:*) - echo vax-dec-ultrix${UNAME_RELEASE} - exit ;; - 2020:CLIX:*:* | 2430:CLIX:*:*) - echo clipper-intergraph-clix${UNAME_RELEASE} - exit ;; - mips:*:*:UMIPS | mips:*:*:RISCos) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c -#ifdef __cplusplus -#include <stdio.h> /* for printf() prototype */ - int main (int argc, char *argv[]) { -#else - int main (argc, argv) int argc; char *argv[]; { -#endif - #if defined (host_mips) && defined (MIPSEB) - #if defined (SYSTYPE_SYSV) - printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); - #endif - #if defined (SYSTYPE_SVR4) - printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); - #endif - #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) - printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); - #endif - #endif - exit (-1); - } -EOF - $CC_FOR_BUILD -o $dummy $dummy.c && - dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && - SYSTEM_NAME=`$dummy $dummyarg` && - { echo "$SYSTEM_NAME"; exit; } - echo mips-mips-riscos${UNAME_RELEASE} - exit ;; - Motorola:PowerMAX_OS:*:*) - echo powerpc-motorola-powermax - exit ;; - Motorola:*:4.3:PL8-*) - echo powerpc-harris-powermax - exit ;; - Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) - echo powerpc-harris-powermax - exit ;; - Night_Hawk:Power_UNIX:*:*) - echo powerpc-harris-powerunix - exit ;; - m88k:CX/UX:7*:*) - echo m88k-harris-cxux7 - exit ;; - m88k:*:4*:R4*) - echo m88k-motorola-sysv4 - exit ;; - m88k:*:3*:R3*) - echo m88k-motorola-sysv3 - exit ;; - AViiON:dgux:*:*) - # DG/UX returns AViiON for all architectures - UNAME_PROCESSOR=`/usr/bin/uname -p` - if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] - then - if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ - [ ${TARGET_BINARY_INTERFACE}x = x ] - then - echo m88k-dg-dgux${UNAME_RELEASE} - else - echo m88k-dg-dguxbcs${UNAME_RELEASE} - fi - else - echo i586-dg-dgux${UNAME_RELEASE} - fi - exit ;; - M88*:DolphinOS:*:*) # DolphinOS (SVR3) - echo m88k-dolphin-sysv3 - exit ;; - M88*:*:R3*:*) - # Delta 88k system running SVR3 - echo m88k-motorola-sysv3 - exit ;; - XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) - echo m88k-tektronix-sysv3 - exit ;; - Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) - echo m68k-tektronix-bsd - exit ;; - *:IRIX*:*:*) - echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` - exit ;; - ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. - echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id - exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' - i*86:AIX:*:*) - echo i386-ibm-aix - exit ;; - ia64:AIX:*:*) - if [ -x /usr/bin/oslevel ] ; then - IBM_REV=`/usr/bin/oslevel` - else - IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} - fi - echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} - exit ;; - *:AIX:2:3) - if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #include <sys/systemcfg.h> - - main() - { - if (!__power_pc()) - exit(1); - puts("powerpc-ibm-aix3.2.5"); - exit(0); - } -EOF - if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` - then - echo "$SYSTEM_NAME" - else - echo rs6000-ibm-aix3.2.5 - fi - elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then - echo rs6000-ibm-aix3.2.4 - else - echo rs6000-ibm-aix3.2 - fi - exit ;; - *:AIX:*:[45]) - IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` - if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then - IBM_ARCH=rs6000 - else - IBM_ARCH=powerpc - fi - if [ -x /usr/bin/oslevel ] ; then - IBM_REV=`/usr/bin/oslevel` - else - IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} - fi - echo ${IBM_ARCH}-ibm-aix${IBM_REV} - exit ;; - *:AIX:*:*) - echo rs6000-ibm-aix - exit ;; - ibmrt:4.4BSD:*|romp-ibm:BSD:*) - echo romp-ibm-bsd4.4 - exit ;; - ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and - echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to - exit ;; # report: romp-ibm BSD 4.3 - *:BOSX:*:*) - echo rs6000-bull-bosx - exit ;; - DPX/2?00:B.O.S.:*:*) - echo m68k-bull-sysv3 - exit ;; - 9000/[34]??:4.3bsd:1.*:*) - echo m68k-hp-bsd - exit ;; - hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) - echo m68k-hp-bsd4.4 - exit ;; - 9000/[34678]??:HP-UX:*:*) - HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` - case "${UNAME_MACHINE}" in - 9000/31? ) HP_ARCH=m68000 ;; - 9000/[34]?? ) HP_ARCH=m68k ;; - 9000/[678][0-9][0-9]) - if [ -x /usr/bin/getconf ]; then - sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` - sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` - case "${sc_cpu_version}" in - 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 - 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 - 532) # CPU_PA_RISC2_0 - case "${sc_kernel_bits}" in - 32) HP_ARCH="hppa2.0n" ;; - 64) HP_ARCH="hppa2.0w" ;; - '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 - esac ;; - esac - fi - if [ "${HP_ARCH}" = "" ]; then - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - - #define _HPUX_SOURCE - #include <stdlib.h> - #include <unistd.h> - - int main () - { - #if defined(_SC_KERNEL_BITS) - long bits = sysconf(_SC_KERNEL_BITS); - #endif - long cpu = sysconf (_SC_CPU_VERSION); - - switch (cpu) - { - case CPU_PA_RISC1_0: puts ("hppa1.0"); break; - case CPU_PA_RISC1_1: puts ("hppa1.1"); break; - case CPU_PA_RISC2_0: - #if defined(_SC_KERNEL_BITS) - switch (bits) - { - case 64: puts ("hppa2.0w"); break; - case 32: puts ("hppa2.0n"); break; - default: puts ("hppa2.0"); break; - } break; - #else /* !defined(_SC_KERNEL_BITS) */ - puts ("hppa2.0"); break; - #endif - default: puts ("hppa1.0"); break; - } - exit (0); - } -EOF - (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` - test -z "$HP_ARCH" && HP_ARCH=hppa - fi ;; - esac - if [ ${HP_ARCH} = "hppa2.0w" ] - then - # avoid double evaluation of $set_cc_for_build - test -n "$CC_FOR_BUILD" || eval $set_cc_for_build - - # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating - # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler - # generating 64-bit code. GNU and HP use different nomenclature: - # - # $ CC_FOR_BUILD=cc ./config.guess - # => hppa2.0w-hp-hpux11.23 - # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess - # => hppa64-hp-hpux11.23 - - if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | - grep __LP64__ >/dev/null - then - HP_ARCH="hppa2.0w" - else - HP_ARCH="hppa64" - fi - fi - echo ${HP_ARCH}-hp-hpux${HPUX_REV} - exit ;; - ia64:HP-UX:*:*) - HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` - echo ia64-hp-hpux${HPUX_REV} - exit ;; - 3050*:HI-UX:*:*) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #include <unistd.h> - int - main () - { - long cpu = sysconf (_SC_CPU_VERSION); - /* The order matters, because CPU_IS_HP_MC68K erroneously returns - true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct - results, however. */ - if (CPU_IS_PA_RISC (cpu)) - { - switch (cpu) - { - case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; - case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; - case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; - default: puts ("hppa-hitachi-hiuxwe2"); break; - } - } - else if (CPU_IS_HP_MC68K (cpu)) - puts ("m68k-hitachi-hiuxwe2"); - else puts ("unknown-hitachi-hiuxwe2"); - exit (0); - } -EOF - $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && - { echo "$SYSTEM_NAME"; exit; } - echo unknown-hitachi-hiuxwe2 - exit ;; - 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) - echo hppa1.1-hp-bsd - exit ;; - 9000/8??:4.3bsd:*:*) - echo hppa1.0-hp-bsd - exit ;; - *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) - echo hppa1.0-hp-mpeix - exit ;; - hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) - echo hppa1.1-hp-osf - exit ;; - hp8??:OSF1:*:*) - echo hppa1.0-hp-osf - exit ;; - i*86:OSF1:*:*) - if [ -x /usr/sbin/sysversion ] ; then - echo ${UNAME_MACHINE}-unknown-osf1mk - else - echo ${UNAME_MACHINE}-unknown-osf1 - fi - exit ;; - parisc*:Lites*:*:*) - echo hppa1.1-hp-lites - exit ;; - C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) - echo c1-convex-bsd - exit ;; - C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) - if getsysinfo -f scalar_acc - then echo c32-convex-bsd - else echo c2-convex-bsd - fi - exit ;; - C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) - echo c34-convex-bsd - exit ;; - C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) - echo c38-convex-bsd - exit ;; - C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) - echo c4-convex-bsd - exit ;; - CRAY*Y-MP:*:*:*) - echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit ;; - CRAY*[A-Z]90:*:*:*) - echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ - | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ - -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ - -e 's/\.[^.]*$/.X/' - exit ;; - CRAY*TS:*:*:*) - echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit ;; - CRAY*T3E:*:*:*) - echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit ;; - CRAY*SV1:*:*:*) - echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit ;; - *:UNICOS/mp:*:*) - echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit ;; - F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) - FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` - FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` - FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` - echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" - exit ;; - 5000:UNIX_System_V:4.*:*) - FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` - FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` - echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" - exit ;; - i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) - echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} - exit ;; - sparc*:BSD/OS:*:*) - echo sparc-unknown-bsdi${UNAME_RELEASE} - exit ;; - *:BSD/OS:*:*) - echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} - exit ;; - *:FreeBSD:*:*) - echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` - exit ;; - i*:CYGWIN*:*) - echo ${UNAME_MACHINE}-pc-cygwin - exit ;; - i*:MINGW*:*) - echo ${UNAME_MACHINE}-pc-mingw32 - exit ;; - i*:windows32*:*) - # uname -m includes "-pc" on this system. - echo ${UNAME_MACHINE}-mingw32 - exit ;; - i*:PW*:*) - echo ${UNAME_MACHINE}-pc-pw32 - exit ;; - x86:Interix*:[34]*) - echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//' - exit ;; - [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) - echo i${UNAME_MACHINE}-pc-mks - exit ;; - i*:Windows_NT*:* | Pentium*:Windows_NT*:*) - # How do we know it's Interix rather than the generic POSIX subsystem? - # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we - # UNAME_MACHINE based on the output of uname instead of i386? - echo i586-pc-interix - exit ;; - i*:UWIN*:*) - echo ${UNAME_MACHINE}-pc-uwin - exit ;; - amd64:CYGWIN*:*:*) - echo x86_64-unknown-cygwin - exit ;; - p*:CYGWIN*:*) - echo powerpcle-unknown-cygwin - exit ;; - prep*:SunOS:5.*:*) - echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit ;; - *:GNU:*:*) - # the GNU system - echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` - exit ;; - *:GNU/*:*:*) - # other systems with GNU libc and userland - echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu - exit ;; - i*86:Minix:*:*) - echo ${UNAME_MACHINE}-pc-minix - exit ;; - arm*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - cris:Linux:*:*) - echo cris-axis-linux-gnu - exit ;; - crisv32:Linux:*:*) - echo crisv32-axis-linux-gnu - exit ;; - frv:Linux:*:*) - echo frv-unknown-linux-gnu - exit ;; - ia64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - m32r*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - m68*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - mips:Linux:*:*) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #undef CPU - #undef mips - #undef mipsel - #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) - CPU=mipsel - #else - #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) - CPU=mips - #else - CPU= - #endif - #endif -EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` - test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } - ;; - mips64:Linux:*:*) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #undef CPU - #undef mips64 - #undef mips64el - #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) - CPU=mips64el - #else - #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) - CPU=mips64 - #else - CPU= - #endif - #endif -EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` - test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } - ;; - ppc:Linux:*:*) - echo powerpc-unknown-linux-gnu - exit ;; - ppc64:Linux:*:*) - echo powerpc64-unknown-linux-gnu - exit ;; - alpha:Linux:*:*) - case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in - EV5) UNAME_MACHINE=alphaev5 ;; - EV56) UNAME_MACHINE=alphaev56 ;; - PCA56) UNAME_MACHINE=alphapca56 ;; - PCA57) UNAME_MACHINE=alphapca56 ;; - EV6) UNAME_MACHINE=alphaev6 ;; - EV67) UNAME_MACHINE=alphaev67 ;; - EV68*) UNAME_MACHINE=alphaev68 ;; - esac - objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null - if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi - echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} - exit ;; - parisc:Linux:*:* | hppa:Linux:*:*) - # Look for CPU level - case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in - PA7*) echo hppa1.1-unknown-linux-gnu ;; - PA8*) echo hppa2.0-unknown-linux-gnu ;; - *) echo hppa-unknown-linux-gnu ;; - esac - exit ;; - parisc64:Linux:*:* | hppa64:Linux:*:*) - echo hppa64-unknown-linux-gnu - exit ;; - s390:Linux:*:* | s390x:Linux:*:*) - echo ${UNAME_MACHINE}-ibm-linux - exit ;; - sh64*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - sh*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - sparc:Linux:*:* | sparc64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - x86_64:Linux:*:*) - echo x86_64-unknown-linux-gnu - exit ;; - i*86:Linux:*:*) - # The BFD linker knows what the default object file format is, so - # first see if it will tell us. cd to the root directory to prevent - # problems with other programs or directories called `ld' in the path. - # Set LC_ALL=C to ensure ld outputs messages in English. - ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ - | sed -ne '/supported targets:/!d - s/[ ][ ]*/ /g - s/.*supported targets: *// - s/ .*// - p'` - case "$ld_supported_targets" in - elf32-i386) - TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" - ;; - a.out-i386-linux) - echo "${UNAME_MACHINE}-pc-linux-gnuaout" - exit ;; - coff-i386) - echo "${UNAME_MACHINE}-pc-linux-gnucoff" - exit ;; - "") - # Either a pre-BFD a.out linker (linux-gnuoldld) or - # one that does not give us useful --help. - echo "${UNAME_MACHINE}-pc-linux-gnuoldld" - exit ;; - esac - # Determine whether the default compiler is a.out or elf - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #include <features.h> - #ifdef __ELF__ - # ifdef __GLIBC__ - # if __GLIBC__ >= 2 - LIBC=gnu - # else - LIBC=gnulibc1 - # endif - # else - LIBC=gnulibc1 - # endif - #else - #ifdef __INTEL_COMPILER - LIBC=gnu - #else - LIBC=gnuaout - #endif - #endif - #ifdef __dietlibc__ - LIBC=dietlibc - #endif -EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=` - test x"${LIBC}" != x && { - echo "${UNAME_MACHINE}-pc-linux-${LIBC}" - exit - } - test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; } - ;; - i*86:DYNIX/ptx:4*:*) - # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. - # earlier versions are messed up and put the nodename in both - # sysname and nodename. - echo i386-sequent-sysv4 - exit ;; - i*86:UNIX_SV:4.2MP:2.*) - # Unixware is an offshoot of SVR4, but it has its own version - # number series starting with 2... - # I am not positive that other SVR4 systems won't match this, - # I just have to hope. -- rms. - # Use sysv4.2uw... so that sysv4* matches it. - echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} - exit ;; - i*86:OS/2:*:*) - # If we were able to find `uname', then EMX Unix compatibility - # is probably installed. - echo ${UNAME_MACHINE}-pc-os2-emx - exit ;; - i*86:XTS-300:*:STOP) - echo ${UNAME_MACHINE}-unknown-stop - exit ;; - i*86:atheos:*:*) - echo ${UNAME_MACHINE}-unknown-atheos - exit ;; - i*86:syllable:*:*) - echo ${UNAME_MACHINE}-pc-syllable - exit ;; - i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) - echo i386-unknown-lynxos${UNAME_RELEASE} - exit ;; - i*86:*DOS:*:*) - echo ${UNAME_MACHINE}-pc-msdosdjgpp - exit ;; - i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) - UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` - if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then - echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} - else - echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} - fi - exit ;; - i*86:*:5:[678]*) - # UnixWare 7.x, OpenUNIX and OpenServer 6. - case `/bin/uname -X | grep "^Machine"` in - *486*) UNAME_MACHINE=i486 ;; - *Pentium) UNAME_MACHINE=i586 ;; - *Pent*|*Celeron) UNAME_MACHINE=i686 ;; - esac - echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} - exit ;; - i*86:*:3.2:*) - if test -f /usr/options/cb.name; then - UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` - echo ${UNAME_MACHINE}-pc-isc$UNAME_REL - elif /bin/uname -X 2>/dev/null >/dev/null ; then - UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` - (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 - (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ - && UNAME_MACHINE=i586 - (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ - && UNAME_MACHINE=i686 - (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ - && UNAME_MACHINE=i686 - echo ${UNAME_MACHINE}-pc-sco$UNAME_REL - else - echo ${UNAME_MACHINE}-pc-sysv32 - fi - exit ;; - pc:*:*:*) - # Left here for compatibility: - # uname -m prints for DJGPP always 'pc', but it prints nothing about - # the processor, so we play safe by assuming i386. - echo i386-pc-msdosdjgpp - exit ;; - Intel:Mach:3*:*) - echo i386-pc-mach3 - exit ;; - paragon:*:*:*) - echo i860-intel-osf1 - exit ;; - i860:*:4.*:*) # i860-SVR4 - if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then - echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 - else # Add other i860-SVR4 vendors below as they are discovered. - echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 - fi - exit ;; - mini*:CTIX:SYS*5:*) - # "miniframe" - echo m68010-convergent-sysv - exit ;; - mc68k:UNIX:SYSTEM5:3.51m) - echo m68k-convergent-sysv - exit ;; - M680?0:D-NIX:5.3:*) - echo m68k-diab-dnix - exit ;; - M68*:*:R3V[5678]*:*) - test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; - 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) - OS_REL='' - test -r /etc/.relid \ - && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && { echo i486-ncr-sysv4.3${OS_REL}; exit; } - /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ - && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; - 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && { echo i486-ncr-sysv4; exit; } ;; - m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) - echo m68k-unknown-lynxos${UNAME_RELEASE} - exit ;; - mc68030:UNIX_System_V:4.*:*) - echo m68k-atari-sysv4 - exit ;; - TSUNAMI:LynxOS:2.*:*) - echo sparc-unknown-lynxos${UNAME_RELEASE} - exit ;; - rs6000:LynxOS:2.*:*) - echo rs6000-unknown-lynxos${UNAME_RELEASE} - exit ;; - PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) - echo powerpc-unknown-lynxos${UNAME_RELEASE} - exit ;; - SM[BE]S:UNIX_SV:*:*) - echo mips-dde-sysv${UNAME_RELEASE} - exit ;; - RM*:ReliantUNIX-*:*:*) - echo mips-sni-sysv4 - exit ;; - RM*:SINIX-*:*:*) - echo mips-sni-sysv4 - exit ;; - *:SINIX-*:*:*) - if uname -p 2>/dev/null >/dev/null ; then - UNAME_MACHINE=`(uname -p) 2>/dev/null` - echo ${UNAME_MACHINE}-sni-sysv4 - else - echo ns32k-sni-sysv - fi - exit ;; - PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort - # says <Richard.M.Bartel@ccMail.Census.GOV> - echo i586-unisys-sysv4 - exit ;; - *:UNIX_System_V:4*:FTX*) - # From Gerald Hewes <hewes@openmarket.com>. - # How about differentiating between stratus architectures? -djm - echo hppa1.1-stratus-sysv4 - exit ;; - *:*:*:FTX*) - # From seanf@swdc.stratus.com. - echo i860-stratus-sysv4 - exit ;; - i*86:VOS:*:*) - # From Paul.Green@stratus.com. - echo ${UNAME_MACHINE}-stratus-vos - exit ;; - *:VOS:*:*) - # From Paul.Green@stratus.com. - echo hppa1.1-stratus-vos - exit ;; - mc68*:A/UX:*:*) - echo m68k-apple-aux${UNAME_RELEASE} - exit ;; - news*:NEWS-OS:6*:*) - echo mips-sony-newsos6 - exit ;; - R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) - if [ -d /usr/nec ]; then - echo mips-nec-sysv${UNAME_RELEASE} - else - echo mips-unknown-sysv${UNAME_RELEASE} - fi - exit ;; - BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. - echo powerpc-be-beos - exit ;; - BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. - echo powerpc-apple-beos - exit ;; - BePC:BeOS:*:*) # BeOS running on Intel PC compatible. - echo i586-pc-beos - exit ;; - SX-4:SUPER-UX:*:*) - echo sx4-nec-superux${UNAME_RELEASE} - exit ;; - SX-5:SUPER-UX:*:*) - echo sx5-nec-superux${UNAME_RELEASE} - exit ;; - SX-6:SUPER-UX:*:*) - echo sx6-nec-superux${UNAME_RELEASE} - exit ;; - Power*:Rhapsody:*:*) - echo powerpc-apple-rhapsody${UNAME_RELEASE} - exit ;; - *:Rhapsody:*:*) - echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} - exit ;; - *:Darwin:*:*) - UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown - case $UNAME_PROCESSOR in - *86) UNAME_PROCESSOR=i686 ;; - unknown) UNAME_PROCESSOR=powerpc ;; - esac - echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} - exit ;; - *:procnto*:*:* | *:QNX:[0123456789]*:*) - UNAME_PROCESSOR=`uname -p` - if test "$UNAME_PROCESSOR" = "x86"; then - UNAME_PROCESSOR=i386 - UNAME_MACHINE=pc - fi - echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} - exit ;; - *:QNX:*:4*) - echo i386-pc-qnx - exit ;; - NSE-?:NONSTOP_KERNEL:*:*) - echo nse-tandem-nsk${UNAME_RELEASE} - exit ;; - NSR-?:NONSTOP_KERNEL:*:*) - echo nsr-tandem-nsk${UNAME_RELEASE} - exit ;; - *:NonStop-UX:*:*) - echo mips-compaq-nonstopux - exit ;; - BS2000:POSIX*:*:*) - echo bs2000-siemens-sysv - exit ;; - DS/*:UNIX_System_V:*:*) - echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} - exit ;; - *:Plan9:*:*) - # "uname -m" is not consistent, so use $cputype instead. 386 - # is converted to i386 for consistency with other x86 - # operating systems. - if test "$cputype" = "386"; then - UNAME_MACHINE=i386 - else - UNAME_MACHINE="$cputype" - fi - echo ${UNAME_MACHINE}-unknown-plan9 - exit ;; - *:TOPS-10:*:*) - echo pdp10-unknown-tops10 - exit ;; - *:TENEX:*:*) - echo pdp10-unknown-tenex - exit ;; - KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) - echo pdp10-dec-tops20 - exit ;; - XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) - echo pdp10-xkl-tops20 - exit ;; - *:TOPS-20:*:*) - echo pdp10-unknown-tops20 - exit ;; - *:ITS:*:*) - echo pdp10-unknown-its - exit ;; - SEI:*:*:SEIUX) - echo mips-sei-seiux${UNAME_RELEASE} - exit ;; - *:DragonFly:*:*) - echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` - exit ;; - *:*VMS:*:*) - UNAME_MACHINE=`(uname -p) 2>/dev/null` - case "${UNAME_MACHINE}" in - A*) echo alpha-dec-vms ; exit ;; - I*) echo ia64-dec-vms ; exit ;; - V*) echo vax-dec-vms ; exit ;; - esac ;; - *:XENIX:*:SysV) - echo i386-pc-xenix - exit ;; - i*86:skyos:*:*) - echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' - exit ;; -esac - -#echo '(No uname command or uname output not recognized.)' 1>&2 -#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 - -eval $set_cc_for_build -cat >$dummy.c <<EOF -#ifdef _SEQUENT_ -# include <sys/types.h> -# include <sys/utsname.h> -#endif -main () -{ -#if defined (sony) -#if defined (MIPSEB) - /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, - I don't know.... */ - printf ("mips-sony-bsd\n"); exit (0); -#else -#include <sys/param.h> - printf ("m68k-sony-newsos%s\n", -#ifdef NEWSOS4 - "4" -#else - "" -#endif - ); exit (0); -#endif -#endif - -#if defined (__arm) && defined (__acorn) && defined (__unix) - printf ("arm-acorn-riscix\n"); exit (0); -#endif - -#if defined (hp300) && !defined (hpux) - printf ("m68k-hp-bsd\n"); exit (0); -#endif - -#if defined (NeXT) -#if !defined (__ARCHITECTURE__) -#define __ARCHITECTURE__ "m68k" -#endif - int version; - version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; - if (version < 4) - printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); - else - printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); - exit (0); -#endif - -#if defined (MULTIMAX) || defined (n16) -#if defined (UMAXV) - printf ("ns32k-encore-sysv\n"); exit (0); -#else -#if defined (CMU) - printf ("ns32k-encore-mach\n"); exit (0); -#else - printf ("ns32k-encore-bsd\n"); exit (0); -#endif -#endif -#endif - -#if defined (__386BSD__) - printf ("i386-pc-bsd\n"); exit (0); -#endif - -#if defined (sequent) -#if defined (i386) - printf ("i386-sequent-dynix\n"); exit (0); -#endif -#if defined (ns32000) - printf ("ns32k-sequent-dynix\n"); exit (0); -#endif -#endif - -#if defined (_SEQUENT_) - struct utsname un; - - uname(&un); - - if (strncmp(un.version, "V2", 2) == 0) { - printf ("i386-sequent-ptx2\n"); exit (0); - } - if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ - printf ("i386-sequent-ptx1\n"); exit (0); - } - printf ("i386-sequent-ptx\n"); exit (0); - -#endif - -#if defined (vax) -# if !defined (ultrix) -# include <sys/param.h> -# if defined (BSD) -# if BSD == 43 - printf ("vax-dec-bsd4.3\n"); exit (0); -# else -# if BSD == 199006 - printf ("vax-dec-bsd4.3reno\n"); exit (0); -# else - printf ("vax-dec-bsd\n"); exit (0); -# endif -# endif -# else - printf ("vax-dec-bsd\n"); exit (0); -# endif -# else - printf ("vax-dec-ultrix\n"); exit (0); -# endif -#endif - -#if defined (alliant) && defined (i860) - printf ("i860-alliant-bsd\n"); exit (0); -#endif - - exit (1); -} -EOF - -$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && - { echo "$SYSTEM_NAME"; exit; } - -# Apollos put the system type in the environment. - -test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } - -# Convex versions that predate uname can use getsysinfo(1) - -if [ -x /usr/convex/getsysinfo ] -then - case `getsysinfo -f cpu_type` in - c1*) - echo c1-convex-bsd - exit ;; - c2*) - if getsysinfo -f scalar_acc - then echo c32-convex-bsd - else echo c2-convex-bsd - fi - exit ;; - c34*) - echo c34-convex-bsd - exit ;; - c38*) - echo c38-convex-bsd - exit ;; - c4*) - echo c4-convex-bsd - exit ;; - esac -fi - -cat >&2 <<EOF -$0: unable to guess system type - -This script, last modified $timestamp, has failed to recognize -the operating system you are using. It is advised that you -download the most up to date version of the config scripts from - - http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess -and - http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub - -If the version you run ($0) is already up to date, please -send the following data and any information you think might be -pertinent to <config-patches@gnu.org> in order to provide the needed -information to handle your system. - -config.guess timestamp = $timestamp - -uname -m = `(uname -m) 2>/dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` - -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null` - -hostinfo = `(hostinfo) 2>/dev/null` -/bin/universe = `(/bin/universe) 2>/dev/null` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` -/bin/arch = `(/bin/arch) 2>/dev/null` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` - -UNAME_MACHINE = ${UNAME_MACHINE} -UNAME_RELEASE = ${UNAME_RELEASE} -UNAME_SYSTEM = ${UNAME_SYSTEM} -UNAME_VERSION = ${UNAME_VERSION} -EOF - -exit 1 - -# Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "timestamp='" -# time-stamp-format: "%:y-%02m-%02d" -# time-stamp-end: "'" -# End: diff --git a/portland/dapi/kde/admin/config.pl b/portland/dapi/kde/admin/config.pl deleted file mode 100644 index c2b0517..0000000 --- a/portland/dapi/kde/admin/config.pl +++ /dev/null @@ -1,238 +0,0 @@ -#!/usr/bin/env perl -# a script for use by autoconf to make the Makefiles -# from the Makefile.in's -# -# the original autoconf mechanism first splits all substitutions into groups -# of ca. 90, and than invokes sed for _every_ Makefile.in and every group -# (so around 2-3 times per Makefile.in). So this takes forever, as sed -# has to recompile the regexps every time. -# -# this script does better. It changes all Makefile.ins in one process. -# in kdelibs the time for building Makefile went down from 2:59 min to 13 sec! -# -# written by Michael Matz <matz@kde.org> -# adapted by Dirk Mueller <mueller@kde.org> - -# This file is free software; you can redistribute it and/or -# modify it under the terms of the GNU Library General Public -# License as published by the Free Software Foundation; either -# version 2 of the License, or (at your option) any later version. - -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Library General Public License for more details. - -# You should have received a copy of the GNU Library General Public License -# along with this library; see the file COPYING.LIB. If not, write to -# the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -# Boston, MA 02110-1301, USA. - -use strict; - -use File::Path; - -my $ac_subs=$ARGV[0]; -my $ac_sacfiles = $ARGV[1]; -my $ac_given_srcdir=$ARGV[2]; -my $ac_given_INSTALL=$ARGV[3]; - -my @comp_match; -my @comp_subs; - -#print "ac_subs=$ac_subs\n"; -#print "ac_sacfiles=$ac_sacfiles\n"; -#print "ac_given_srcdir=$ac_given_srcdir\n"; -#print "ac_given_INSTALL=$ac_given_INSTALL\n"; - -my $configure_input; -my ($srcdir, $top_srcdir); -my $INSTALL; -my $bad_perl = ($] < 5.005); -my $created_file_count = 0; - -open(CF, "< $ac_subs") || die "can't open $ac_subs: $!"; -my @subs = <CF>; -my $pat; -close(CF); -chomp @subs; -@comp_match=(); -@comp_subs=(); - -if ($bad_perl) { - print "Using perl older than version 5.005\n"; - foreach $pat (@subs) { - if ( ($pat =~ m/s%([^%]*)%([^%]*)%g/ ) - || ($pat =~ m/s%([^%]*)%([^%]*)%;t/ ) - || ($pat =~ m/s,([^,]*),(.*),;t/) - || ($pat =~ m%s/([^/]*)/([^/]*)/g% ) - || ($pat =~ m%s/([^/]*)/([^/]*)/;t% ) - ) { - # form : s%bla%blubb%g - # or s%bla%blubb%;t t (autoconf > 2.13 and < 2.52 ?) - # or s,bla,blubb,;t t (autoconf 2.52) - my $srch = $1; - my $repl = $2; - $repl =~ s/\\(.)/$1/g; - push @comp_subs, make_closure($srch, $repl); - - } elsif ( ($pat =~ /%([^%]*)%d/ ) - || ($pat =~ m%/([^/]*)/d% ) - ) { - push @comp_subs, make_closure($1, ""); - } else { - die "Uhh. Malformed pattern in $ac_subs ($pat)" - unless ( $pat =~ /^\s*$/ ); # ignore white lines - } - } -} else { - foreach $pat (@subs) { - if ( ($pat =~ /s%([^%]*)%([^%]*)%g/ ) || - ($pat =~ /s%([^%]*)%([^%]*)%;t/ ) || - ($pat =~ /s,([^,]*),(.*),;t/) ) { - # form : s%bla%blubb%g - # or s%bla%blubb%;t t (autoconf > 2.13 and < 2.52 ?) - # or s,bla,blubb,;t t (autoconf 2.52) - my $srch = $1; - my $repl = $2; - push @comp_match, eval "qr/\Q$srch\E/"; # compile match pattern - $repl =~ s/\\(.)/$1/g; - push @comp_subs, $repl; - } elsif ( ($pat =~ /%([^%]*)%d/ ) - || ($pat =~ m%/([^/]*)/d% ) - ) { - push @comp_match, eval "qr/\Q$1\E/"; - push @comp_subs, ""; - } else { - die "Uhh. Malformed pattern in $ac_subs ($pat)" - unless ( $pat =~ /^\s*$/ ); # ignore white lines - } - } -} -undef @subs; - -# read the list of files to be patched, form: -# ./Makefile arts/Makefile arts/examples/Makefile arts/flow/Makefile - -open(CF, "< $ac_sacfiles") || die "can't open $ac_sacfiles: $!"; -my @ac_files = <CF>; -close(CF); -chomp @ac_files; - - -my $ac_file; -foreach $ac_file (@ac_files) { - next if $ac_file =~ /\.\./; - next if $ac_file =~ /^\s*$/; - my $ac_file_in; - my ($ac_dir, $ac_dots, $ac_dir_suffix); - - if ($ac_file =~ /.*:.*/ ) { - ($ac_file_in = $ac_file) =~ s%[^:]*:%%; - $ac_file =~ s%:.*%%; - } else { - $ac_file_in = $ac_file.".in"; - } - -# Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories. - -# Remove last slash and all that follows it. Not all systems have dirname. - ($ac_dir = $ac_file) =~ s%/[^/][^/]*$%%; - if ( ($ac_dir ne $ac_file) && ($ac_dir ne ".")) { -# The file is in a subdirectory. - if (! -d "$ac_dir") { mkpath "$ac_dir", 0, 0777; } - ($ac_dir_suffix = $ac_dir) =~ s%^./%%; - $ac_dir_suffix="/".$ac_dir_suffix; -# A "../" for each directory in $ac_dir_suffix. - ($ac_dots = $ac_dir_suffix) =~ s%/[^/]*%../%g; - } else { - $ac_dir_suffix=""; - $ac_dots=""; - } - - if ($ac_given_srcdir eq ".") { - $srcdir="."; - if ($ac_dots) { - ( $top_srcdir = $ac_dots) =~ s%/$%%; - } else { $top_srcdir="."; } - } elsif ($ac_given_srcdir =~ m%^/%) { - $srcdir=$ac_given_srcdir.$ac_dir_suffix; - $top_srcdir = $ac_given_srcdir; - } else { - $srcdir = $ac_dots.$ac_given_srcdir.$ac_dir_suffix; - $top_srcdir = $ac_dots.$ac_given_srcdir; - } - - if ($ac_given_INSTALL) { - if ($ac_given_INSTALL =~ m%^/% ) { - $INSTALL = $ac_given_INSTALL; - } else { - $INSTALL = $ac_dots.$ac_given_INSTALL; - } - } - - print "fast creating $ac_file\n"; - unlink $ac_file; - my $ac_comsub=""; - my $fname=$ac_file_in; - $fname =~ s%.*/%%; - $configure_input="$ac_file. Generated from $fname by config.pl."; - - my $ac_file_inputs; - ($ac_file_inputs = $ac_file_in) =~ s%^%$ac_given_srcdir/%; - $ac_file_inputs =~ s%:% $ac_given_srcdir/%g; - - patch_file($ac_file, $ac_file_inputs); - ++$created_file_count; -} - -print "config.pl: fast created $created_file_count file(s).\n"; - -sub patch_file { - my ($outf, $infiles) = @_; - my $filedata; - my @infiles=split(' ', $infiles); - my $i=0; - my $name; - - foreach $name (@infiles) { - if (open(CF, "< $name")) { - while (<CF>) { - $filedata .= $_; - } - close(CF); - } else { - print STDERR "can't open $name: $!"."\n"; - } - } - - $filedata =~ s%\@configure_input\@%$configure_input%g; - $filedata =~ s%\@srcdir\@%$srcdir%g; - $filedata =~ s%\@top_srcdir\@%$top_srcdir%g; - $filedata =~ s%\@INSTALL\@%$INSTALL%g; - - if ($bad_perl) { - while ($i <= $#comp_subs) { - my $ref = $comp_subs[$i]; - &$ref(\$filedata); - $i++; - } - } else { - while ($i <= $#comp_match) { - $filedata =~ s/$comp_match[$i]/$comp_subs[$i]/g; - $i++; - } - } - open(CF, "> $outf") || die "can't create $outf: $!"; - print CF $filedata; - close(CF); -} - -sub make_closure { - my ($pat, $sub) = @_; - my $ret = eval "return sub { my \$ref=shift; \$\$ref =~ s%\Q$pat\E%\Q$sub\E%g; }"; - if ($@) { - print "can't create CODE: $@\n"; - } - return $ret; -} diff --git a/portland/dapi/kde/admin/config.sub b/portland/dapi/kde/admin/config.sub deleted file mode 100755 index 2ef2842..0000000 --- a/portland/dapi/kde/admin/config.sub +++ /dev/null @@ -1,1575 +0,0 @@ -#! /bin/sh -# Configuration validation subroutine script. -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. - -timestamp='2005-07-01' - -# This file is (in principle) common to ALL GNU software. -# The presence of a machine in this file suggests that SOME GNU software -# can handle that machine. It does not imply ALL GNU software can. -# -# This file is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA -# 02110-1301, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - - -# Please send patches to <config-patches@gnu.org>. Submit a context -# diff and a properly formatted ChangeLog entry. -# -# Configuration subroutine to validate and canonicalize a configuration type. -# Supply the specified configuration type as an argument. -# If it is invalid, we print an error message on stderr and exit with code 1. -# Otherwise, we print the canonical config type on stdout and succeed. - -# This file is supposed to be the same for all GNU packages -# and recognize all the CPU types, system types and aliases -# that are meaningful with *any* GNU software. -# Each package is responsible for reporting which valid configurations -# it does not support. The user should be able to distinguish -# a failure to support a valid configuration from a meaningless -# configuration. - -# The goal of this file is to map all the various variations of a given -# machine specification into a single specification in the form: -# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM -# or in some cases, the newer four-part form: -# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM -# It is wrong to echo any other type of specification. - -me=`echo "$0" | sed -e 's,.*/,,'` - -usage="\ -Usage: $0 [OPTION] CPU-MFR-OPSYS - $0 [OPTION] ALIAS - -Canonicalize a configuration name. - -Operation modes: - -h, --help print this help, then exit - -t, --time-stamp print date of last modification, then exit - -v, --version print version number, then exit - -Report bugs and patches to <config-patches@gnu.org>." - -version="\ -GNU config.sub ($timestamp) - -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 -Free Software Foundation, Inc. - -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." - -help=" -Try \`$me --help' for more information." - -# Parse command line -while test $# -gt 0 ; do - case $1 in - --time-stamp | --time* | -t ) - echo "$timestamp" ; exit ;; - --version | -v ) - echo "$version" ; exit ;; - --help | --h* | -h ) - echo "$usage"; exit ;; - -- ) # Stop option processing - shift; break ;; - - ) # Use stdin as input. - break ;; - -* ) - echo "$me: invalid option $1$help" - exit 1 ;; - - *local*) - # First pass through any local machine types. - echo $1 - exit ;; - - * ) - break ;; - esac -done - -case $# in - 0) echo "$me: missing argument$help" >&2 - exit 1;; - 1) ;; - *) echo "$me: too many arguments$help" >&2 - exit 1;; -esac - -# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). -# Here we must recognize all the valid KERNEL-OS combinations. -maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` -case $maybe_os in - nto-qnx* | linux-gnu* | linux-dietlibc | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \ - kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*) - os=-$maybe_os - basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` - ;; - *) - basic_machine=`echo $1 | sed 's/-[^-]*$//'` - if [ $basic_machine != $1 ] - then os=`echo $1 | sed 's/.*-/-/'` - else os=; fi - ;; -esac - -### Let's recognize common machines as not being operating systems so -### that things like config.sub decstation-3100 work. We also -### recognize some manufacturers as not being operating systems, so we -### can provide default operating systems below. -case $os in - -sun*os*) - # Prevent following clause from handling this invalid input. - ;; - -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ - -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ - -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ - -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ - -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ - -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ - -apple | -axis | -knuth | -cray) - os= - basic_machine=$1 - ;; - -sim | -cisco | -oki | -wec | -winbond) - os= - basic_machine=$1 - ;; - -scout) - ;; - -wrs) - os=-vxworks - basic_machine=$1 - ;; - -chorusos*) - os=-chorusos - basic_machine=$1 - ;; - -chorusrdb) - os=-chorusrdb - basic_machine=$1 - ;; - -hiux*) - os=-hiuxwe2 - ;; - -sco5) - os=-sco3.2v5 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco4) - os=-sco3.2v4 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco3.2.[4-9]*) - os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco3.2v[4-9]*) - # Don't forget version if it is 3.2v4 or newer. - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco*) - os=-sco3.2v2 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -udk*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -isc) - os=-isc2.2 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -clix*) - basic_machine=clipper-intergraph - ;; - -isc*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -lynx*) - os=-lynxos - ;; - -ptx*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` - ;; - -windowsnt*) - os=`echo $os | sed -e 's/windowsnt/winnt/'` - ;; - -psos*) - os=-psos - ;; - -mint | -mint[0-9]*) - basic_machine=m68k-atari - os=-mint - ;; -esac - -# Decode aliases for certain CPU-COMPANY combinations. -case $basic_machine in - # Recognize the basic CPU types without company name. - # Some are omitted here because they have special meanings below. - 1750a | 580 \ - | a29k \ - | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ - | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ - | am33_2.0 \ - | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \ - | bfin \ - | c4x | clipper \ - | d10v | d30v | dlx | dsp16xx \ - | fr30 | frv \ - | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ - | i370 | i860 | i960 | ia64 \ - | ip2k | iq2000 \ - | m32r | m32rle | m68000 | m68k | m88k | maxq | mcore \ - | mips | mipsbe | mipseb | mipsel | mipsle \ - | mips16 \ - | mips64 | mips64el \ - | mips64vr | mips64vrel \ - | mips64orion | mips64orionel \ - | mips64vr4100 | mips64vr4100el \ - | mips64vr4300 | mips64vr4300el \ - | mips64vr5000 | mips64vr5000el \ - | mips64vr5900 | mips64vr5900el \ - | mipsisa32 | mipsisa32el \ - | mipsisa32r2 | mipsisa32r2el \ - | mipsisa64 | mipsisa64el \ - | mipsisa64r2 | mipsisa64r2el \ - | mipsisa64sb1 | mipsisa64sb1el \ - | mipsisa64sr71k | mipsisa64sr71kel \ - | mipstx39 | mipstx39el \ - | mn10200 | mn10300 \ - | ms1 \ - | msp430 \ - | ns16k | ns32k \ - | or32 \ - | pdp10 | pdp11 | pj | pjl \ - | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ - | pyramid \ - | sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \ - | sh64 | sh64le \ - | sparc | sparc64 | sparc64b | sparc86x | sparclet | sparclite \ - | sparcv8 | sparcv9 | sparcv9b \ - | strongarm \ - | tahoe | thumb | tic4x | tic80 | tron \ - | v850 | v850e \ - | we32k \ - | x86 | xscale | xscalee[bl] | xstormy16 | xtensa \ - | z8k) - basic_machine=$basic_machine-unknown - ;; - m32c) - basic_machine=$basic_machine-unknown - ;; - m6811 | m68hc11 | m6812 | m68hc12) - # Motorola 68HC11/12. - basic_machine=$basic_machine-unknown - os=-none - ;; - m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) - ;; - - # We use `pc' rather than `unknown' - # because (1) that's what they normally are, and - # (2) the word "unknown" tends to confuse beginning users. - i*86 | x86_64) - basic_machine=$basic_machine-pc - ;; - # Object if more than one company name word. - *-*-*) - echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 - exit 1 - ;; - # Recognize the basic CPU types with company name. - 580-* \ - | a29k-* \ - | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ - | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ - | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ - | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ - | avr-* \ - | bfin-* | bs2000-* \ - | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ - | clipper-* | craynv-* | cydra-* \ - | d10v-* | d30v-* | dlx-* \ - | elxsi-* \ - | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \ - | h8300-* | h8500-* \ - | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ - | i*86-* | i860-* | i960-* | ia64-* \ - | ip2k-* | iq2000-* \ - | m32r-* | m32rle-* \ - | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ - | m88110-* | m88k-* | maxq-* | mcore-* \ - | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ - | mips16-* \ - | mips64-* | mips64el-* \ - | mips64vr-* | mips64vrel-* \ - | mips64orion-* | mips64orionel-* \ - | mips64vr4100-* | mips64vr4100el-* \ - | mips64vr4300-* | mips64vr4300el-* \ - | mips64vr5000-* | mips64vr5000el-* \ - | mips64vr5900-* | mips64vr5900el-* \ - | mipsisa32-* | mipsisa32el-* \ - | mipsisa32r2-* | mipsisa32r2el-* \ - | mipsisa64-* | mipsisa64el-* \ - | mipsisa64r2-* | mipsisa64r2el-* \ - | mipsisa64sb1-* | mipsisa64sb1el-* \ - | mipsisa64sr71k-* | mipsisa64sr71kel-* \ - | mipstx39-* | mipstx39el-* \ - | mmix-* \ - | ms1-* \ - | msp430-* \ - | none-* | np1-* | ns16k-* | ns32k-* \ - | orion-* \ - | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ - | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ - | pyramid-* \ - | romp-* | rs6000-* \ - | sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \ - | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ - | sparc-* | sparc64-* | sparc64b-* | sparc86x-* | sparclet-* \ - | sparclite-* \ - | sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \ - | tahoe-* | thumb-* \ - | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ - | tron-* \ - | v850-* | v850e-* | vax-* \ - | we32k-* \ - | x86-* | x86_64-* | xps100-* | xscale-* | xscalee[bl]-* \ - | xstormy16-* | xtensa-* \ - | ymp-* \ - | z8k-*) - ;; - m32c-*) - ;; - # 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) - basic_machine=m68000-att - ;; - 3b*) - basic_machine=we32k-att - ;; - a29khif) - basic_machine=a29k-amd - os=-udi - ;; - abacus) - basic_machine=abacus-unknown - ;; - adobe68k) - basic_machine=m68010-adobe - os=-scout - ;; - alliant | fx80) - basic_machine=fx80-alliant - ;; - altos | altos3068) - basic_machine=m68k-altos - ;; - am29k) - basic_machine=a29k-none - os=-bsd - ;; - amd64) - basic_machine=x86_64-pc - ;; - amd64-*) - basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - amdahl) - basic_machine=580-amdahl - os=-sysv - ;; - amiga | amiga-*) - basic_machine=m68k-unknown - ;; - amigaos | amigados) - basic_machine=m68k-unknown - os=-amigaos - ;; - amigaunix | amix) - basic_machine=m68k-unknown - os=-sysv4 - ;; - apollo68) - basic_machine=m68k-apollo - os=-sysv - ;; - apollo68bsd) - basic_machine=m68k-apollo - os=-bsd - ;; - aux) - basic_machine=m68k-apple - os=-aux - ;; - balance) - basic_machine=ns32k-sequent - os=-dynix - ;; - c90) - basic_machine=c90-cray - os=-unicos - ;; - convex-c1) - basic_machine=c1-convex - os=-bsd - ;; - convex-c2) - basic_machine=c2-convex - os=-bsd - ;; - convex-c32) - basic_machine=c32-convex - os=-bsd - ;; - convex-c34) - basic_machine=c34-convex - os=-bsd - ;; - convex-c38) - basic_machine=c38-convex - os=-bsd - ;; - cray | j90) - basic_machine=j90-cray - os=-unicos - ;; - craynv) - basic_machine=craynv-cray - os=-unicosmp - ;; - cr16c) - basic_machine=cr16c-unknown - os=-elf - ;; - crds | unos) - basic_machine=m68k-crds - ;; - crisv32 | crisv32-* | etraxfs*) - basic_machine=crisv32-axis - ;; - cris | cris-* | etrax*) - basic_machine=cris-axis - ;; - crx) - basic_machine=crx-unknown - os=-elf - ;; - da30 | da30-*) - basic_machine=m68k-da30 - ;; - decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) - basic_machine=mips-dec - ;; - decsystem10* | dec10*) - basic_machine=pdp10-dec - os=-tops10 - ;; - decsystem20* | dec20*) - basic_machine=pdp10-dec - os=-tops20 - ;; - delta | 3300 | motorola-3300 | motorola-delta \ - | 3300-motorola | delta-motorola) - basic_machine=m68k-motorola - ;; - delta88) - basic_machine=m88k-motorola - os=-sysv3 - ;; - djgpp) - basic_machine=i586-pc - os=-msdosdjgpp - ;; - dpx20 | dpx20-*) - basic_machine=rs6000-bull - os=-bosx - ;; - dpx2* | dpx2*-bull) - basic_machine=m68k-bull - os=-sysv3 - ;; - ebmon29k) - basic_machine=a29k-amd - os=-ebmon - ;; - elxsi) - basic_machine=elxsi-elxsi - os=-bsd - ;; - encore | umax | mmax) - basic_machine=ns32k-encore - ;; - es1800 | OSE68k | ose68k | ose | OSE) - basic_machine=m68k-ericsson - os=-ose - ;; - fx2800) - basic_machine=i860-alliant - ;; - genix) - basic_machine=ns32k-ns - ;; - gmicro) - basic_machine=tron-gmicro - os=-sysv - ;; - go32) - basic_machine=i386-pc - os=-go32 - ;; - h3050r* | hiux*) - basic_machine=hppa1.1-hitachi - os=-hiuxwe2 - ;; - h8300hms) - basic_machine=h8300-hitachi - os=-hms - ;; - h8300xray) - basic_machine=h8300-hitachi - os=-xray - ;; - h8500hms) - basic_machine=h8500-hitachi - os=-hms - ;; - harris) - basic_machine=m88k-harris - os=-sysv3 - ;; - hp300-*) - basic_machine=m68k-hp - ;; - hp300bsd) - basic_machine=m68k-hp - os=-bsd - ;; - hp300hpux) - basic_machine=m68k-hp - os=-hpux - ;; - hp3k9[0-9][0-9] | hp9[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hp9k2[0-9][0-9] | hp9k31[0-9]) - basic_machine=m68000-hp - ;; - hp9k3[2-9][0-9]) - basic_machine=m68k-hp - ;; - hp9k6[0-9][0-9] | hp6[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hp9k7[0-79][0-9] | hp7[0-79][0-9]) - basic_machine=hppa1.1-hp - ;; - hp9k78[0-9] | hp78[0-9]) - # FIXME: really hppa2.0-hp - basic_machine=hppa1.1-hp - ;; - hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) - # FIXME: really hppa2.0-hp - basic_machine=hppa1.1-hp - ;; - hp9k8[0-9][13679] | hp8[0-9][13679]) - basic_machine=hppa1.1-hp - ;; - hp9k8[0-9][0-9] | hp8[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hppa-next) - os=-nextstep3 - ;; - hppaosf) - basic_machine=hppa1.1-hp - os=-osf - ;; - hppro) - basic_machine=hppa1.1-hp - os=-proelf - ;; - i370-ibm* | ibm*) - basic_machine=i370-ibm - ;; -# I'm not sure what "Sysv32" means. Should this be sysv3.2? - i*86v32) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv32 - ;; - i*86v4*) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv4 - ;; - i*86v) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv - ;; - i*86sol2) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-solaris2 - ;; - i386mach) - basic_machine=i386-mach - os=-mach - ;; - i386-vsta | vsta) - basic_machine=i386-unknown - os=-vsta - ;; - iris | iris4d) - basic_machine=mips-sgi - case $os in - -irix*) - ;; - *) - os=-irix4 - ;; - esac - ;; - isi68 | isi) - basic_machine=m68k-isi - os=-sysv - ;; - m88k-omron*) - basic_machine=m88k-omron - ;; - magnum | m3230) - basic_machine=mips-mips - os=-sysv - ;; - merlin) - basic_machine=ns32k-utek - os=-sysv - ;; - mingw32) - basic_machine=i386-pc - os=-mingw32 - ;; - miniframe) - basic_machine=m68000-convergent - ;; - *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) - basic_machine=m68k-atari - os=-mint - ;; - mips3*-*) - basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` - ;; - mips3*) - basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown - ;; - monitor) - basic_machine=m68k-rom68k - os=-coff - ;; - morphos) - basic_machine=powerpc-unknown - os=-morphos - ;; - msdos) - basic_machine=i386-pc - os=-msdos - ;; - mvs) - basic_machine=i370-ibm - os=-mvs - ;; - ncr3000) - basic_machine=i486-ncr - os=-sysv4 - ;; - netbsd386) - basic_machine=i386-unknown - os=-netbsd - ;; - netwinder) - basic_machine=armv4l-rebel - os=-linux - ;; - news | news700 | news800 | news900) - basic_machine=m68k-sony - os=-newsos - ;; - news1000) - basic_machine=m68030-sony - os=-newsos - ;; - news-3600 | risc-news) - basic_machine=mips-sony - os=-newsos - ;; - necv70) - basic_machine=v70-nec - os=-sysv - ;; - next | m*-next ) - basic_machine=m68k-next - case $os in - -nextstep* ) - ;; - -ns2*) - os=-nextstep2 - ;; - *) - os=-nextstep3 - ;; - esac - ;; - nh3000) - basic_machine=m68k-harris - os=-cxux - ;; - nh[45]000) - basic_machine=m88k-harris - os=-cxux - ;; - nindy960) - basic_machine=i960-intel - os=-nindy - ;; - mon960) - basic_machine=i960-intel - os=-mon960 - ;; - nonstopux) - basic_machine=mips-compaq - os=-nonstopux - ;; - np1) - basic_machine=np1-gould - ;; - nsr-tandem) - basic_machine=nsr-tandem - ;; - op50n-* | op60c-*) - basic_machine=hppa1.1-oki - os=-proelf - ;; - openrisc | openrisc-*) - basic_machine=or32-unknown - ;; - os400) - basic_machine=powerpc-ibm - os=-os400 - ;; - OSE68000 | ose68000) - basic_machine=m68000-ericsson - os=-ose - ;; - os68k) - basic_machine=m68k-none - os=-os68k - ;; - pa-hitachi) - basic_machine=hppa1.1-hitachi - os=-hiuxwe2 - ;; - paragon) - basic_machine=i860-intel - os=-osf - ;; - pbd) - basic_machine=sparc-tti - ;; - pbb) - basic_machine=m68k-tti - ;; - pc532 | pc532-*) - basic_machine=ns32k-pc532 - ;; - pentium | p5 | k5 | k6 | nexgen | viac3) - basic_machine=i586-pc - ;; - pentiumpro | p6 | 6x86 | athlon | athlon_*) - basic_machine=i686-pc - ;; - pentiumii | pentium2 | pentiumiii | pentium3) - basic_machine=i686-pc - ;; - pentium4) - basic_machine=i786-pc - ;; - pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) - basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentiumpro-* | p6-* | 6x86-* | athlon-*) - basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) - basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentium4-*) - basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pn) - basic_machine=pn-gould - ;; - power) basic_machine=power-ibm - ;; - ppc) basic_machine=powerpc-unknown - ;; - ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppcle | powerpclittle | ppc-le | powerpc-little) - basic_machine=powerpcle-unknown - ;; - ppcle-* | powerpclittle-*) - basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppc64) basic_machine=powerpc64-unknown - ;; - ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppc64le | powerpc64little | ppc64-le | powerpc64-little) - basic_machine=powerpc64le-unknown - ;; - ppc64le-* | powerpc64little-*) - basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ps2) - basic_machine=i386-ibm - ;; - pw32) - basic_machine=i586-unknown - os=-pw32 - ;; - rom68k) - basic_machine=m68k-rom68k - os=-coff - ;; - rm[46]00) - basic_machine=mips-siemens - ;; - rtpc | rtpc-*) - basic_machine=romp-ibm - ;; - s390 | s390-*) - basic_machine=s390-ibm - ;; - s390x | s390x-*) - basic_machine=s390x-ibm - ;; - sa29200) - basic_machine=a29k-amd - os=-udi - ;; - sb1) - basic_machine=mipsisa64sb1-unknown - ;; - sb1el) - basic_machine=mipsisa64sb1el-unknown - ;; - sei) - basic_machine=mips-sei - os=-seiux - ;; - sequent) - basic_machine=i386-sequent - ;; - sh) - basic_machine=sh-hitachi - os=-hms - ;; - sh64) - basic_machine=sh64-unknown - ;; - sparclite-wrs | simso-wrs) - basic_machine=sparclite-wrs - os=-vxworks - ;; - sps7) - basic_machine=m68k-bull - os=-sysv2 - ;; - spur) - basic_machine=spur-unknown - ;; - st2000) - basic_machine=m68k-tandem - ;; - stratus) - basic_machine=i860-stratus - os=-sysv4 - ;; - sun2) - basic_machine=m68000-sun - ;; - sun2os3) - basic_machine=m68000-sun - os=-sunos3 - ;; - sun2os4) - basic_machine=m68000-sun - os=-sunos4 - ;; - sun3os3) - basic_machine=m68k-sun - os=-sunos3 - ;; - sun3os4) - basic_machine=m68k-sun - os=-sunos4 - ;; - sun4os3) - basic_machine=sparc-sun - os=-sunos3 - ;; - sun4os4) - basic_machine=sparc-sun - os=-sunos4 - ;; - sun4sol2) - basic_machine=sparc-sun - os=-solaris2 - ;; - sun3 | sun3-*) - basic_machine=m68k-sun - ;; - sun4) - basic_machine=sparc-sun - ;; - sun386 | sun386i | roadrunner) - basic_machine=i386-sun - ;; - sv1) - basic_machine=sv1-cray - os=-unicos - ;; - symmetry) - basic_machine=i386-sequent - os=-dynix - ;; - t3e) - basic_machine=alphaev5-cray - os=-unicos - ;; - t90) - basic_machine=t90-cray - os=-unicos - ;; - tic54x | c54x*) - basic_machine=tic54x-unknown - os=-coff - ;; - tic55x | c55x*) - basic_machine=tic55x-unknown - os=-coff - ;; - tic6x | c6x*) - basic_machine=tic6x-unknown - os=-coff - ;; - tx39) - basic_machine=mipstx39-unknown - ;; - tx39el) - basic_machine=mipstx39el-unknown - ;; - toad1) - basic_machine=pdp10-xkl - os=-tops20 - ;; - tower | tower-32) - basic_machine=m68k-ncr - ;; - tpf) - basic_machine=s390x-ibm - os=-tpf - ;; - udi29k) - basic_machine=a29k-amd - os=-udi - ;; - ultra3) - basic_machine=a29k-nyu - os=-sym1 - ;; - v810 | necv810) - basic_machine=v810-nec - os=-none - ;; - vaxv) - basic_machine=vax-dec - os=-sysv - ;; - vms) - basic_machine=vax-dec - os=-vms - ;; - vpp*|vx|vx-*) - basic_machine=f301-fujitsu - ;; - vxworks960) - basic_machine=i960-wrs - os=-vxworks - ;; - vxworks68) - basic_machine=m68k-wrs - os=-vxworks - ;; - vxworks29k) - basic_machine=a29k-wrs - os=-vxworks - ;; - w65*) - basic_machine=w65-wdc - os=-none - ;; - w89k-*) - basic_machine=hppa1.1-winbond - os=-proelf - ;; - xbox) - basic_machine=i686-pc - os=-mingw32 - ;; - xps | xps100) - basic_machine=xps100-honeywell - ;; - ymp) - basic_machine=ymp-cray - os=-unicos - ;; - z8k-*-coff) - basic_machine=z8k-unknown - os=-sim - ;; - none) - basic_machine=none-none - os=-none - ;; - -# Here we handle the default manufacturer of certain CPU types. It is in -# some cases the only manufacturer, in others, it is the most popular. - w89k) - basic_machine=hppa1.1-winbond - ;; - op50n) - basic_machine=hppa1.1-oki - ;; - op60c) - basic_machine=hppa1.1-oki - ;; - romp) - basic_machine=romp-ibm - ;; - mmix) - basic_machine=mmix-knuth - ;; - rs6000) - basic_machine=rs6000-ibm - ;; - vax) - basic_machine=vax-dec - ;; - pdp10) - # there are many clones, so DEC is not a safe bet - basic_machine=pdp10-unknown - ;; - pdp11) - basic_machine=pdp11-dec - ;; - we32k) - basic_machine=we32k-att - ;; - sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele) - basic_machine=sh-unknown - ;; - sparc | sparcv8 | sparcv9 | sparcv9b) - basic_machine=sparc-sun - ;; - cydra) - basic_machine=cydra-cydrome - ;; - orion) - basic_machine=orion-highlevel - ;; - orion105) - basic_machine=clipper-highlevel - ;; - mac | mpw | mac-mpw) - basic_machine=m68k-apple - ;; - pmac | pmac-mpw) - basic_machine=powerpc-apple - ;; - *-unknown) - # Make sure to match an already-canonicalized machine name. - ;; - *) - echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 - exit 1 - ;; -esac - -# Here we canonicalize certain aliases for manufacturers. -case $basic_machine in - *-digital*) - basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` - ;; - *-commodore*) - basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` - ;; - *) - ;; -esac - -# Decode manufacturer-specific aliases for certain operating systems. - -if [ x"$os" != x"" ] -then -case $os in - # First match some system type aliases - # that might get confused with valid system types. - # -solaris* is a basic system type, with this one exception. - -solaris1 | -solaris1.*) - os=`echo $os | sed -e 's|solaris1|sunos4|'` - ;; - -solaris) - os=-solaris2 - ;; - -svr4*) - os=-sysv4 - ;; - -unixware*) - os=-sysv4.2uw - ;; - -gnu/linux*) - os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` - ;; - # First accept the basic system types. - # The portable systems comes first. - # Each alternative MUST END IN A *, to match a version number. - # -sysv* is not here because it comes later, after sysvr4. - -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ - | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ - | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ - | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ - | -aos* \ - | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ - | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ - | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \ - | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ - | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ - | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ - | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ - | -chorusos* | -chorusrdb* \ - | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ - | -mingw32* | -linux-gnu* | -linux-uclibc* | -uxpv* | -beos* | -mpeix* | -udk* \ - | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ - | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ - | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ - | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ - | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ - | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* | -skyos*) - # Remember, each alternative MUST END IN *, to match a version number. - ;; - -qnx*) - case $basic_machine in - x86-* | i*86-*) - ;; - *) - os=-nto$os - ;; - esac - ;; - -nto-qnx*) - ;; - -nto*) - os=`echo $os | sed -e 's|nto|nto-qnx|'` - ;; - -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ - | -windows* | -osx | -abug | -netware* | -os9* | -beos* \ - | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) - ;; - -mac*) - os=`echo $os | sed -e 's|mac|macos|'` - ;; - -linux-dietlibc) - os=-linux-dietlibc - ;; - -linux*) - os=`echo $os | sed -e 's|linux|linux-gnu|'` - ;; - -sunos5*) - os=`echo $os | sed -e 's|sunos5|solaris2|'` - ;; - -sunos6*) - os=`echo $os | sed -e 's|sunos6|solaris3|'` - ;; - -opened*) - os=-openedition - ;; - -os400*) - os=-os400 - ;; - -wince*) - os=-wince - ;; - -osfrose*) - os=-osfrose - ;; - -osf*) - os=-osf - ;; - -utek*) - os=-bsd - ;; - -dynix*) - os=-bsd - ;; - -acis*) - os=-aos - ;; - -atheos*) - os=-atheos - ;; - -syllable*) - os=-syllable - ;; - -386bsd) - os=-bsd - ;; - -ctix* | -uts*) - os=-sysv - ;; - -nova*) - os=-rtmk-nova - ;; - -ns2 ) - os=-nextstep2 - ;; - -nsk*) - os=-nsk - ;; - # Preserve the version number of sinix5. - -sinix5.*) - os=`echo $os | sed -e 's|sinix|sysv|'` - ;; - -sinix*) - os=-sysv4 - ;; - -tpf*) - os=-tpf - ;; - -triton*) - os=-sysv3 - ;; - -oss*) - os=-sysv3 - ;; - -svr4) - os=-sysv4 - ;; - -svr3) - os=-sysv3 - ;; - -sysvr4) - os=-sysv4 - ;; - # This must come after -sysvr4. - -sysv*) - ;; - -ose*) - os=-ose - ;; - -es1800*) - os=-ose - ;; - -xenix) - os=-xenix - ;; - -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) - os=-mint - ;; - -aros*) - os=-aros - ;; - -kaos*) - os=-kaos - ;; - -zvmoe) - os=-zvmoe - ;; - -none) - ;; - *) - # Get rid of the `-' at the beginning of $os. - os=`echo $os | sed 's/[^-]*-//'` - echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 - exit 1 - ;; -esac -else - -# Here we handle the default operating systems that come with various machines. -# The value should be what the vendor currently ships out the door with their -# machine or put another way, the most popular os provided with the machine. - -# Note that if you're going to try to match "-MANUFACTURER" here (say, -# "-sun"), then you have to tell the case statement up towards the top -# that MANUFACTURER isn't an operating system. Otherwise, code above -# will signal an error saying that MANUFACTURER isn't an operating -# system, and we'll never get to this point. - -case $basic_machine in - *-acorn) - os=-riscix1.2 - ;; - arm*-rebel) - os=-linux - ;; - arm*-semi) - os=-aout - ;; - c4x-* | tic4x-*) - os=-coff - ;; - # This must come before the *-dec entry. - pdp10-*) - os=-tops20 - ;; - pdp11-*) - os=-none - ;; - *-dec | vax-*) - os=-ultrix4.2 - ;; - m68*-apollo) - os=-domain - ;; - i386-sun) - os=-sunos4.0.2 - ;; - m68000-sun) - os=-sunos3 - # This also exists in the configure program, but was not the - # default. - # os=-sunos4 - ;; - m68*-cisco) - os=-aout - ;; - mips*-cisco) - os=-elf - ;; - mips*-*) - os=-elf - ;; - or32-*) - os=-coff - ;; - *-tti) # must be before sparc entry or we get the wrong os. - os=-sysv3 - ;; - sparc-* | *-sun) - os=-sunos4.1.1 - ;; - *-be) - os=-beos - ;; - *-ibm) - os=-aix - ;; - *-knuth) - os=-mmixware - ;; - *-wec) - os=-proelf - ;; - *-winbond) - os=-proelf - ;; - *-oki) - os=-proelf - ;; - *-hp) - os=-hpux - ;; - *-hitachi) - os=-hiux - ;; - i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) - os=-sysv - ;; - *-cbm) - os=-amigaos - ;; - *-dg) - os=-dgux - ;; - *-dolphin) - os=-sysv3 - ;; - m68k-ccur) - os=-rtu - ;; - m88k-omron*) - os=-luna - ;; - *-next ) - os=-nextstep - ;; - *-sequent) - os=-ptx - ;; - *-crds) - os=-unos - ;; - *-ns) - os=-genix - ;; - i370-*) - os=-mvs - ;; - *-next) - os=-nextstep3 - ;; - *-gould) - os=-sysv - ;; - *-highlevel) - os=-bsd - ;; - *-encore) - os=-bsd - ;; - *-sgi) - os=-irix - ;; - *-siemens) - os=-sysv4 - ;; - *-masscomp) - os=-rtu - ;; - f30[01]-fujitsu | f700-fujitsu) - os=-uxpv - ;; - *-rom68k) - os=-coff - ;; - *-*bug) - os=-coff - ;; - *-apple) - os=-macos - ;; - *-atari*) - os=-mint - ;; - *) - os=-none - ;; -esac -fi - -# Here we handle the case where we know the os, and the CPU type, but not the -# manufacturer. We pick the logical manufacturer. -vendor=unknown -case $basic_machine in - *-unknown) - case $os in - -riscix*) - vendor=acorn - ;; - -sunos*) - vendor=sun - ;; - -aix*) - vendor=ibm - ;; - -beos*) - vendor=be - ;; - -hpux*) - vendor=hp - ;; - -mpeix*) - vendor=hp - ;; - -hiux*) - vendor=hitachi - ;; - -unos*) - vendor=crds - ;; - -dgux*) - vendor=dg - ;; - -luna*) - vendor=omron - ;; - -genix*) - vendor=ns - ;; - -mvs* | -opened*) - vendor=ibm - ;; - -os400*) - vendor=ibm - ;; - -ptx*) - vendor=sequent - ;; - -tpf*) - vendor=ibm - ;; - -vxsim* | -vxworks* | -windiss*) - vendor=wrs - ;; - -aux*) - vendor=apple - ;; - -hms*) - vendor=hitachi - ;; - -mpw* | -macos*) - vendor=apple - ;; - -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) - vendor=atari - ;; - -vos*) - vendor=stratus - ;; - esac - basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` - ;; -esac - -echo $basic_machine$os -exit - -# Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "timestamp='" -# time-stamp-format: "%:y-%02m-%02d" -# time-stamp-end: "'" -# End: diff --git a/portland/dapi/kde/admin/configure.in.bot.end b/portland/dapi/kde/admin/configure.in.bot.end deleted file mode 100644 index 1bc030b..0000000 --- a/portland/dapi/kde/admin/configure.in.bot.end +++ /dev/null @@ -1,45 +0,0 @@ -# Check if KDE_SET_PREFIX was called, and --prefix was passed to configure -if test -n "$kde_libs_prefix" -a -n "$given_prefix"; then - # And if so, warn when they don't match - if test "$kde_libs_prefix" != "$given_prefix"; then - # And if kde doesn't know about the prefix yet - echo ":"`kde-config --path exe`":" | grep ":$given_prefix/bin/:" 2>&1 >/dev/null - if test $? -ne 0; then - echo "" - echo "Warning: you chose to install this package in $given_prefix," - echo "but KDE was found in $kde_libs_prefix." - echo "For this to work, you will need to tell KDE about the new prefix, by ensuring" - echo "that KDEDIRS contains it, e.g. export KDEDIRS=$given_prefix:$kde_libs_prefix" - echo "Then restart KDE." - echo "" - fi - fi -fi - -if test x$GXX = "xyes" -a x$kde_have_gcc_visibility = "xyes" -a x$kde_cv_val_qt_gcc_visibility_patched = "xno"; then - echo "" - echo "Your GCC supports symbol visibility, but the patch for Qt supporting visibility" - echo "was not included. Therefore, GCC symbol visibility support remains disabled." - echo "" - echo "For better performance, consider including the Qt visibility supporting patch" - echo "located at:" - echo "" - echo "http://bugs.kde.org/show_bug.cgi?id=109386" - echo "" - echo "and recompile all of Qt and KDE. Note, this is entirely optional and" - echo "everything will continue to work just fine without it." - echo "" -fi - -if test "$all_tests" = "bad"; then - if test ! "$cache_file" = "/dev/null"; then - echo "" - echo "Please remove the file $cache_file after changing your setup" - echo "so that configure will find the changes next time." - echo "" - fi -else - echo "" - echo "Good - your configure finished. Start make now" - echo "" -fi diff --git a/portland/dapi/kde/admin/configure.in.min b/portland/dapi/kde/admin/configure.in.min deleted file mode 100644 index 0dfe378..0000000 --- a/portland/dapi/kde/admin/configure.in.min +++ /dev/null @@ -1,57 +0,0 @@ -dnl This file is part of the KDE libraries/packages -dnl Copyright (C) 2001 Stephan Kulow (coolo@kde.org) - -dnl This file is free software; you can redistribute it and/or -dnl modify it under the terms of the GNU Library General Public -dnl License as published by the Free Software Foundation; either -dnl version 2 of the License, or (at your option) any later version. - -dnl This library is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -dnl Library General Public License for more details. - -dnl You should have received a copy of the GNU Library General Public License -dnl along with this library; see the file COPYING.LIB. If not, write to -dnl the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -dnl Boston, MA 02110-1301, USA. - -# Original Author was Kalle@kde.org -# I lifted it in some mater. (Stephan Kulow) -# I used much code from Janos Farkas - -dnl Process this file with autoconf to produce a configure script. - -AC_INIT(acinclude.m4) dnl a source file from your sub dir - -dnl This is so we can use kde-common -AC_CONFIG_AUX_DIR(admin) - -dnl This ksh/zsh feature conflicts with `cd blah ; pwd` -unset CDPATH - -dnl Checking host/target/build systems, for make, install etc. -AC_CANONICAL_SYSTEM -dnl Perform program name transformation -AC_ARG_PROGRAM - -dnl Automake doc recommends to do this only here. (Janos) -AM_INIT_AUTOMAKE(@MODULENAME@, @VERSION@) dnl searches for some needed programs - -KDE_SET_PREFIX - -dnl generate the config header -AM_CONFIG_HEADER(config.h) dnl at the distribution this done - -dnl Checks for programs. -AC_CHECK_COMPILERS -AC_ENABLE_SHARED(yes) -AC_ENABLE_STATIC(no) -KDE_PROG_LIBTOOL - -dnl for NLS support. Call them in this order! -dnl WITH_NLS is for the po files -AM_KDE_WITH_NLS - -dnl KDE_USE_QT -AC_PATH_KDE diff --git a/portland/dapi/kde/admin/cvs.sh b/portland/dapi/kde/admin/cvs.sh deleted file mode 100644 index 875b9f3..0000000 --- a/portland/dapi/kde/admin/cvs.sh +++ /dev/null @@ -1,661 +0,0 @@ -#! /bin/sh -# -# cvs.sh -# -# This file contains support code from Makefile.common -# It defines a shell function for each known target -# and then does a case to call the correct function. - -unset MAKEFLAGS - -call_and_fix_autoconf() -{ - $AUTOCONF || exit 1 - if test -r configure.in.in ; then - perl -pi -e "print \"if test \\\"x\\\$with_fast_perl\\\" = \\\"xyes\\\"; then\ - \\n perl -i.bak \\\$ac_aux_dir/conf.change.pl \\\$CONFIG_STATUS\ - \\\\\\n || mv \\\$CONFIG_STATUS.bak \\\$CONFIG_STATUS\ - \\n rm -f \\\$CONFIG_STATUS.bak\\nfi\ - \\n\" if /^\\s*chmod\\s+.*\\+x\\s+.*CONFIG_STATUS/; s,^#line.*LINENO.*\$,/* \$& */, ;" configure - fi -} - -strip_makefile() -{ - if test ! -f $makefile_wo; then - perl -e '$in=0; while ( <> ) { $in = 1 if ($_ =~ m/^if / ); print $_ unless ($in || $_ =~ m/^include /); $in = 0 if ($_ =~ m/^endif/); }' < $makefile_am > $makefile_wo - fi -} - -check_autotool_versions() -{ -required_autoconf_version="2.53 or newer" -AUTOCONF_VERSION=`$AUTOCONF --version | head -n 1` -case $AUTOCONF_VERSION in - Autoconf*2.5* | autoconf*2.5* ) : ;; - "" ) - echo "*** AUTOCONF NOT FOUND!." - echo "*** KDE requires autoconf $required_autoconf_version" - exit 1 - ;; - * ) - echo "*** YOU'RE USING $AUTOCONF_VERSION." - echo "*** KDE requires autoconf $required_autoconf_version" - exit 1 - ;; -esac - -AUTOHEADER_VERSION=`$AUTOHEADER --version | head -n 1` -case $AUTOHEADER_VERSION in - Autoconf*2.5* | autoheader*2.5* ) : ;; - "" ) - echo "*** AUTOHEADER NOT FOUND!." - echo "*** KDE requires autoheader $required_autoconf_version" - exit 1 - ;; - * ) - echo "*** YOU'RE USING $AUTOHEADER_VERSION." - echo "*** KDE requires autoheader $required_autoconf_version" - exit 1 - ;; -esac - -AUTOMAKE_STRING=`$AUTOMAKE --version | head -n 1` -required_automake_version="1.6.1 or newer" -case $AUTOMAKE_STRING in - automake*1.5d* | automake*1.5* | automake*1.5-* ) - echo "*** YOU'RE USING $AUTOMAKE_STRING." - echo "*** KDE requires automake $required_automake_version" - exit 1 - ;; - automake*1.6.* | automake*1.7* | automake*1.8* | automake*1.9*) - echo "*** $AUTOMAKE_STRING found." - UNSERMAKE=no - ;; - "" ) - echo "*** AUTOMAKE NOT FOUND!." - echo "*** KDE requires automake $required_automake_version" - exit 1 - ;; - *unsermake* ) : - echo "*** YOU'RE USING UNSERMAKE." - echo "*** GOOD LUCK!! :)" - UNSERMAKE=unsermake - ;; - * ) - echo "*** YOU'RE USING $AUTOMAKE_STRING." - echo "*** KDE requires automake $required_automake_version" - exit 1 - ;; -esac -unset required_automake_version -} - -cvs() -{ -check_autotool_versions -acinclude_m4 - -### Make new subdirs and configure.in. -### The make calls could be optimized away here, -### with a little thought. -if test -r configure.in.in; then - rm -f configure.in - echo "*** Creating list of subdirectories" - create_subdirs - - if test -r Makefile.am.in; then - echo "*** Creating Makefile.am" - if grep '\$(top_srcdir)/Makefile.am:' $makefile_am >/dev/null; then - strip_makefile - $MAKE -f $makefile_wo top_srcdir=. ./Makefile.am || exit 1 - else - Makefile_am - fi - fi - configure_files - echo "*** Creating configure.in" - if grep '\$(top_srcdir)/configure.in:' $makefile_am >/dev/null; then - strip_makefile - $MAKE -f $makefile_wo top_srcdir=. ./configure.in || exit 1 - else - configure_in - fi -fi - -echo "*** Creating aclocal.m4" -$ACLOCAL $ACLOCALFLAGS || exit 1 -echo "*** Creating configure" -call_and_fix_autoconf - -if egrep "^AM_CONFIG_HEADER" configure.in >/dev/null 2>&1; then - echo "*** Creating config.h template" - $AUTOHEADER || exit 1 - touch config.h.in -fi - -echo "*** Creating Makefile templates" -$AUTOMAKE || exit 1 - -if test "$UNSERMAKE" = no; then - echo "*** Postprocessing Makefile templates" - perl -w admin/am_edit || exit 1 -fi - -if egrep "^cvs-local:" $makefile_am >/dev/null; then \ - strip_makefile - $MAKE -f $makefile_wo cvs-local top_srcdir=. || exit 1 -fi - -echo "*** Creating date/time stamp" -touch stamp-h.in - -echo "*** Finished" -echo " Don't forget to run ./configure" -echo " If you haven't done so in a while, run ./configure --help" -} - -dist() -{ -check_autotool_versions - -### -### First build all of the files necessary to do just "make" -### -acinclude_m4 -if test -r configure.in.in; then - rm -f configure.in - create_subdirs - - if test -r Makefile.am.in; then - if grep '\$(top_srcdir)/Makefile.am:' $makefile_am >/dev/null; then - strip_makefile - $MAKE -f $makefile_wo top_srcdir=. ./Makefile.am || exit 1 - else - Makefile_am - fi - fi - configure_files - if grep '\$(top_srcdir)/configure.in:' $makefile_am >/dev/null; then - strip_makefile - $MAKE -f $makefile_wo top_srcdir=. ./configure.in || exit 1 - else - configure_in - fi -fi -$ACLOCAL $ACLOCALFLAGS -if egrep "^AM_CONFIG_HEADER" configure.in >/dev/null 2>&1; then - echo "*** Creating config.h template" - $AUTOHEADER || exit 1 - touch config.h.in -fi -$AUTOMAKE --foreign || exit 1 -if test "$UNSERMAKE" = no; then - echo "*** Postprocessing Makefile templates" - perl -w admin/am_edit || exit 1 -fi -call_and_fix_autoconf -touch stamp-h.in -if grep "^cvs-local:" $makefile_am >/dev/null; then - strip_makefile - $MAKE -f $makefile_wo cvs-local top_srcdir=. -fi - -### -### Then make messages -### -if test -d po; then - LIST=`find ./po -name "*.po"` - for i in $LIST; do - file2=`echo $i | sed -e "s#\.po#\.gmo#"` - msgfmt -o $file2 $i || touch $file2 - done -fi -if grep "^cvs-dist-local:" $makefile_am >/dev/null; then - strip_makefile - $MAKE -f $makefile_wo cvs-dist-local top_srcdir=. -fi -} - -subdir_dist() -{ -$ACLOCAL $ACLOCALFLAGS -$AUTOHEADER -touch config.h.in -$AUTOMAKE -AUTOMAKE_STRING=`$AUTOMAKE --version | head -n 1` -case $AUTOMAKE_STRING in - *unsermake* ) : - ;; - *) - perl -w ../admin/am_edit --path=../admin -esac -call_and_fix_autoconf -touch stamp-h.in -} - -configure_in() -{ -rm -f configure.in configure.in.new -kde_use_qt_param= -test -f configure.files || { echo "need configure.files for configure.in"; exit 1; } -list=`fgrep -v "configure.in.bot" < configure.files | fgrep -v "configure.in.mid"` -: > configure.in.new -for file in $list; do - echo "dnl =======================================================" >> configure.in.new - echo "dnl FILE: $file" >> configure.in.new - echo "dnl =======================================================" >> configure.in.new - echo "" >> configure.in.new - cat $file >> configure.in.new -done -echo "KDE_CREATE_SUBDIRSLIST" >> configure.in.new -if test -f Makefile.am.in; then - subdirs=`cat subdirs` - for dir in $subdirs; do - vdir=`echo $dir | sed -e 's,[-+.@],_,g'` - echo "AM_CONDITIONAL($vdir""_SUBDIR_included, test \"x\$$vdir""_SUBDIR_included\" = xyes)" >> configure.in.new - if test -f "$dir/configure.in"; then - echo "if test \"x\$$vdir""_SUBDIR_included\" = xyes; then " >> configure.in.new - echo " AC_CONFIG_SUBDIRS($dir)" >> configure.in.new - echo "fi" >> configure.in.new - fi - done -fi - -echo "AC_CONFIG_FILES([ Makefile ])" >> configure.in.new - -if test -f inst-apps; then - topleveldirs=`cat inst-apps` -else - topleveldirs= - for dir in `ls -1d * | sort`; do - if test "$dir" != "debian" && test -d $dir; then - topleveldirs="$topleveldirs $dir" - fi - done -fi - -for topleveldir in $topleveldirs; do - if test -f $topleveldir/configure.in; then - continue - fi - if test -f $topleveldir/Makefile.am; then :; else - continue - fi - - mfs=`find $topleveldir -follow -name Makefile.am -print | fgrep -v "/." | \ - sed -e 's#\./##; s#/Makefile.am$##' | sort | sed -e 's#$#/Makefile#'` - for i in $mfs; do - echo "AC_CONFIG_FILES([ $i ])" >> configure.in.new - done -done - -files=`cat configure.files` -list=`egrep '^dnl AC_OUTPUT\(.*\)' $files | sed -e "s#^.*dnl AC_OUTPUT(\(.*\))#\1#"` -for file in $list; do - echo "AC_CONFIG_FILES([ $file ])" >> configure.in.new -done - -midfiles=`cat configure.files | fgrep "configure.in.mid"` -test -n "$midfiles" && cat $midfiles >> configure.in.new - -echo "AC_OUTPUT" >> configure.in.new -modulename= -if test -f configure.in.in; then - if head -n 2 configure.in.in | egrep "^#MIN_CONFIG\(.*\)$" > /dev/null; then - kde_use_qt_param=`cat configure.in.in | sed -n -e "s/#MIN_CONFIG(\(.*\))/\1/p"` - fi - if head -n 2 configure.in.in | egrep "^#MIN_CONFIG" > /dev/null; then - line=`grep "^AM_INIT_AUTOMAKE(" configure.in.in` - if test -n "$line"; then - modulename=`echo $line | sed -e "s#AM_INIT_AUTOMAKE(\([^,]*\),.*#\1#"` - VERSION=`echo $line | sed -e "s#AM_INIT_AUTOMAKE([^,]*, *\([^)]*\)).*#\1#"` - fi - sed -e "s#AM_INIT_AUTOMAKE([^@].*#dnl PACKAGE set before#" \ - configure.in.new > configure.in && mv configure.in configure.in.new - fi -fi -if test -z "$VERSION" || test "$VERSION" = "@VERSION@"; then - VERSION="\"3.5.1\"" -fi -if test -z "$modulename" || test "$modulename" = "@MODULENAME@"; then - modulename=`pwd`; - modulename=`basename $modulename` - esc_VERSION=`echo $VERSION | sed -e "s#[^.0-9a-zA-Z]##g"` - modulename=`echo $modulename | sed -e "s#-$esc_VERSION##"` - -fi -if test -n "$kde_use_qt_param"; then - sed -e "s#^dnl KDE_USE_QT#KDE_USE_QT($kde_use_qt_param)#" \ - configure.in.new > configure.in && mv configure.in configure.in.new -fi -sed -e "s#@MODULENAME@#$modulename#" configure.in.new | - sed -e "s#@VERSION@#$VERSION#" > configure.in -botfiles=`cat configure.files | egrep "configure.in.bot"` -test -n "$botfiles" && cat $botfiles >> configure.in -cat $admindir/configure.in.bot.end >> configure.in -rm -f configure.in.new -} - -configure_files() -{ -echo "*** Creating configure.files" -admindir=NO -for i in . .. ../.. ../../..; do - if test -x $i/admin; then admindir=$i/admin; break; fi -done -rm -f configure.files -touch configure.files -if test -f configure.in.in && head -n 2 configure.in.in | grep "^#MIN_CONFIG" > /dev/null; then - echo $admindir/configure.in.min >> configure.files -fi -test -f configure.in.in && echo configure.in.in >> configure.files -# we collect files in the subdirs and do some sorting tricks, so subsubdirs come after subdirs -if test -f inst-apps; then - inst=`cat inst-apps` - list="" - for i in $inst; do - list="$list `find $i/ -follow -name "configure.in.in" -o -name "configure.in.bot" -o -name "configure.in.mid" | \ - sed -e "s,/configure,/aaaconfigure," | sort | sed -e "s,/aaaconfigure,/configure,"`" - done -else - list=`find . -follow -name "configure.in.in" -o -name "configure.in.bot" -o -name "configure.in.mid" | \ - sed -e "s,/configure,/aaaconfigure," | sort | sed -e "s,/aaaconfigure,/configure,"` -fi -for i in $list; do if test -f $i && test `dirname $i` != "." ; then - echo $i >> configure.files -fi; done -test -f configure.in.mid && echo configure.in.mid >> configure.files -test -f configure.in.bot && echo configure.in.bot >> configure.files -if test ! -s configure.files; then - echo "There are no files to build a configure. Please check your checkout." - exit 1 -fi -} - -create_subdirs() -{ -if grep '\$(top_srcdir)/subdirs:' $makefile_am >/dev/null; then - # as many modules contain rules to create subdirs without any - # dependencies make won't create it unless there is no file. - # so we check if that's a dummy rule or one that works - rm -f subdirs.cvs.sh.$$ - if test -f subdirs; then - mv subdirs subdirs.cvs.sh.$$ - fi - strip_makefile - $MAKE -f $makefile_wo top_srcdir=. ./subdirs || exit 1 - if test -f subdirs.cvs.sh.$$; then - if test -s subdirs; then - rm subdirs.cvs.sh.$$ - else - mv subdirs.cvs.sh.$$ subdirs - fi - fi -else - subdirs -fi -} - -subdirs() -{ -dirs= -idirs= -if test -f inst-apps; then - idirs=`cat inst-apps` -else - idirs=`ls -1 | sort` -fi - -compilefirst=`sed -ne 's#^COMPILE_FIRST[ ]*=[ ]*##p' $makefile_am | head -n 1` -compilelast=`sed -ne 's#^COMPILE_LAST[ ]*=[ ]*##p' $makefile_am | head -n 1` -for i in $idirs; do - if test -f $i/Makefile.am; then - case " $compilefirst $compilelast " in - *" $i "*) ;; - *) dirs="$dirs $i" - esac - fi -done - -: > ./_SUBDIRS - -for d in $compilefirst; do - echo $d >> ./_SUBDIRS -done - -(for d in $dirs; do - list=`sed -ne "s#^COMPILE_BEFORE_$d""[ ]*=[ ]*##p" $makefile_am | head -n 1` - for s in $list; do - echo $s $d - done - list=`sed -ne "s#^COMPILE_AFTER_$d""[ ]*=[ ]*##p" $makefile_am | head -n 1` - for s in $list; do - echo $d $s - done - echo $d $d -done ) | tsort >> ./_SUBDIRS - -for d in $compilelast; do - echo $d >> ./_SUBDIRS -done - -if test -r subdirs && cmp -s subdirs _SUBDIRS; then - rm -f _SUBDIRS -fi -test -r _SUBDIRS && mv _SUBDIRS subdirs || true -} - -Makefile_am() -{ -if test -f Makefile.am.in; then - compilefirst=`sed -ne 's#^COMPILE_FIRST[ ]*=[ ]*##p' $makefile_am | head -n 1` - compilelast=`sed -ne 's#^COMPILE_LAST[ ]*=[ ]*##p' $makefile_am | head -n 1` - - idirs= - dirs= - if test -f inst-apps; then - idirs=`cat inst-apps` - else - idirs=`cat subdirs` - fi - for i in $idirs; do - case " $compilefirst $compilelast " in - *" $i "*) ;; - *) dirs="$dirs $i" - esac - done - - adds=`fgrep '$(top_srcdir)/acinclude.m4:' Makefile.am.in | sed -e 's,^[^:]*: *,,; s,\$(top_srcdir)/,,g'` - if echo "$adds" | fgrep "*" >/dev/null ; then - adds=`ls -d -1 $adds 2>/dev/null` - fgrep -v '$(top_srcdir)/acinclude.m4:' Makefile.am.in > Makefile.am.in.adds - str='$(top_srcdir)/acinclude.m4:' - for add in $adds; do - str="$str \$(top_srcdir)/$add" - done - echo $str >> Makefile.am.in.adds - else - cat Makefile.am.in > Makefile.am.in.adds - fi - - cat Makefile.am.in.adds | \ - sed -e 's,^\s*\(COMPILE_BEFORE.*\),# \1,' | \ - sed -e 's,^\s*\(COMPILE_AFTER.*\),# \1,' > Makefile.am - echo "SUBDIRS="'$(TOPSUBDIRS)' >> Makefile.am - rm Makefile.am.in.adds -fi -} - -acinclude_m4() -{ - echo "*** Creating acinclude.m4" - adds= - if grep '\$(top_srcdir)/acinclude.m4:' $makefile_am >/dev/null; then - strip_makefile - rm -f acinclude.m4 - adds=`grep '\$(top_srcdir)/acinclude.m4:' $makefile_wo | sed -e 's,^[^:]*: *,,; s,\$(top_srcdir),.,g'` - if echo $adds | fgrep "*" >/dev/null ; then - adds=`ls -d -1 $adds 2>/dev/null` - else - $MAKE -f $makefile_wo top_srcdir=. ./acinclude.m4 || exit 1 - fi - else - rm -f acinclude.m4 - fi - # if it wasn't created up to now, then we do it better - if test ! -f acinclude.m4; then - cat admin/acinclude.m4.in admin/libtool.m4.in admin/pkg.m4.in $adds > acinclude.m4 - fi -} - -package_merge() -{ -catalogs=$POFILES -for cat in $catalogs; do - msgmerge -o $cat.new $cat $PACKAGE.pot - if test -s $cat.new; then - grep -v "\"POT-Creation" $cat.new > $cat.new.2 - grep -v "\"POT-Creation" $cat >> $cat.new.1 - if diff $cat.new.1 $cat.new.2; then - rm $cat.new - else - mv $cat.new $cat - fi - rm -f $cat.new.1 $cat.new.2 - fi -done -} - -extract_messages() -{ -podir=${podir:-$PWD/po} -files=`find . -name Makefile.am | xargs egrep -l '^messages:' ` -dirs=`for i in $files; do echo \`dirname $i\`; done` -tmpname="$PWD/messages.log" -if test -z "$EXTRACTRC"; then EXTRACTRC=extractrc ; fi -if test -z "$PREPARETIPS"; then PREPARETIPS=preparetips ; fi -export EXTRACTRC PREPARETIPS - -for subdir in $dirs; do - test -z "$VERBOSE" || echo "Making messages in $subdir" - (cd $subdir - if test -n "`grep -e '^messages:.*rc.cpp' Makefile.am`"; then - $EXTRACTRC *.rc *.ui *.kcfg > rc.cpp - else - candidates=`ls -1 *.rc *.ui *.kcfg 2>/dev/null` - if test -n "$candidates"; then - echo "$subdir has *.rc, *.ui or *.kcfg files, but not correct messages line" - fi - fi - if find . -name \*.c\* -o -name \*.h\* | fgrep -v ".svn" | xargs fgrep -s -q KAboutData ; then - echo -e 'i18n("_: NAME OF TRANSLATORS\\n"\n"Your names")\ni18n("_: EMAIL OF TRANSLATORS\\n"\n"Your emails")' > _translatorinfo.cpp - else echo " " > _translatorinfo.cpp - fi - perl -e '$mes=0; while (<STDIN>) { next if (/^(if\s|else\s|endif)/); if (/^messages:/) { $mes=1; print $_; next; } if ($mes) { if (/$\\(XGETTEXT\)/ && / -o/) { s/ -o \$\(podir\)/ _translatorinfo.cpp -o \$\(podir\)/ } print $_; } else { print $_; } }' < Makefile.am | egrep -v '^include ' > _transMakefile - - kdepotpath=${includedir:-`kde-config --expandvars --install include`}/kde.pot - if ! test -f $kdepotpath; then - kdepotpath=`kde-config --expandvars --prefix`/include/kde.pot - fi - - $MAKE -s -f _transMakefile podir=$podir EXTRACTRC="$EXTRACTRC" PREPARETIPS="$PREPARETIPS" srcdir=. \ - XGETTEXT="${XGETTEXT:-xgettext} --foreign-user -C -ci18n -ki18n -ktr2i18n -kI18N_NOOP -kI18N_NOOP2 -kaliasLocale -x $kdepotpath" messages - exit_code=$? - if test "$exit_code" != 0; then - echo "make exit code: $exit_code" - fi - ) 2>&1 | grep -v '^make\[1\]' > $tmpname - test -s $tmpname && { echo $subdir ; cat "$tmpname"; } - test -f $subdir/rc.cpp && rm -f $subdir/rc.cpp - rm -f $subdir/_translatorinfo.cpp - rm -f $subdir/_transMakefile -done -rm -f $tmpname -} - -package_messages() -{ -rm -rf po.backup -mkdir po.backup - -for i in `ls -1 po/*.pot 2>/dev/null | sed -e "s#po/##"`; do - egrep -v '^#[^,]' po/$i | egrep '^.*[^ ]+.*$' | grep -v "\"POT-Creation" > po.backup/$i - cat po/$i > po.backup/backup_$i - touch -r po/$i po.backup/backup_$i - rm po/$i -done - -extract_messages - -for i in `ls -1 po.backup/*.pot 2>/dev/null | sed -e "s#po.backup/##" | egrep -v '^backup_'`; do - test -f po/$i || echo "disappeared: $i" -done -for i in `ls -1 po/*.pot 2>/dev/null | sed -e "s#po/##"`; do - sed -e 's,^"Content-Type: text/plain; charset=CHARSET\\n"$,"Content-Type: text/plain; charset=UTF-8\\n",' po/$i > po/$i.new && mv po/$i.new po/$i - #msgmerge -q -o po/$i po/$i po/$i - egrep -v '^#[^,]' po/$i | egrep '^.*[^ ]+.*$' | grep -v "\"POT-Creation" > temp.pot - if test -f po.backup/$i && ! cmp -s temp.pot po.backup/$i; then - echo "will update $i" - else - if test -f po.backup/backup_$i; then - test -z "$VERBOSE" || echo "I'm restoring $i" - mv po.backup/backup_$i po/$i - rm po.backup/$i - else - echo "will add $i" - fi - fi -done -rm -f temp.pot -rm -rf po.backup -} - -# Make sure that sorting is always done the same way -LC_ALL=C -export LC_ALL -unset LANG || : -unset LC_CTYPE || : -unset LANGUAGE || : - -unset CDPATH || : -admindir=`echo "$0" | sed 's%[\\/][^\\/][^\\/]*$%%'` -test "x$admindir" = "x$0" && admindir=. - -test "x$MAKE" = x && MAKE=make -makefile_am=Makefile.am -makefile_wo=Makefile.am.wo -if test -f Makefile.am.in; then - makefile_am=Makefile.am.in - makefile_wo=Makefile.am.in.wo - rm -f $makefile_wo -fi - -# Call script to find autoconf and friends. Uses eval since the script outputs -# sh-compatible code. -eval `$admindir/detect-autoconf.pl` - -### -### Main -### - -arg=`echo $1 | tr .- __` -case $arg in - cvs | dist | subdir_dist | configure_in | configure_files | subdirs | \ - cvs_clean | package_merge | package_messages | Makefile_am | acinclude_m4 | extract_messages ) $arg ;; - configure ) call_and_fix_autoconf ;; - * ) echo "Usage: cvs.sh <target>" - echo "Target can be one of:" - echo " cvs svn dist" - echo " configure.in configure.files" - echo " package-merge package-messages" - echo "" - echo "Usage: anything but $1" - exit 1 ;; -esac - -if test -f $makefile_wo; then - rm $makefile_wo -fi - -exit 0 diff --git a/portland/dapi/kde/admin/debianrules b/portland/dapi/kde/admin/debianrules deleted file mode 100755 index 25897f2..0000000 --- a/portland/dapi/kde/admin/debianrules +++ /dev/null @@ -1,43 +0,0 @@ -#!/usr/bin/perl -w - -use Shell qw(mv cp mkdir rm) ; -use File::Find; -use Cwd; - -$origPwd = `pwd`; -chomp $origPwd; - -$kde_prefix = "/usr"; -$sysconfdir = "/etc"; -$kde_includedir = "$kde_prefix/include/kde"; -$infodir = "$kde_prefix/share/info"; -$mandir = "$kde_prefix/share/man"; -$qtdir = "/usr/share/qt3"; - -$kde_cgidir = "$kde_prefix/lib/cgi-bin"; -$kde_confdir = "$sysconfdir/kde3"; -$kde_htmldir = "$kde_prefix/share/doc/kde/HTML"; - -if (defined $ENV{DEB_BUILD_OPTIONS} && - $ENV{DEB_BUILD_OPTIONS} =~ /\bnostrip\b/) { - $enable_debug="--enable-debug=full"; -} else { - $enable_debug="--disable-debug"; -} - -if (@ARGV && $ARGV[0] eq 'echodirs') { - print STDOUT "export kde_prefix=$kde_prefix\n"; - print STDOUT "export sysconfdir=$sysconfdir\n"; - print STDOUT "export kde_includedir=$kde_includedir\n"; - print STDOUT "export infodir=$infodir\n"; - print STDOUT "export mandir=$mandir\n"; - print STDOUT "export qtdir=$qtdir\n"; - - print STDOUT "export kde_cgidir=$kde_cgidir\n"; - print STDOUT "export kde_confdir=$kde_confdir\n"; - print STDOUT "export kde_htmldir=$kde_htmldir\n"; - - print STDOUT "configkde=$enable_debug --disable-rpath --prefix=\$(kde_prefix) --sysconfdir=\$(sysconfdir) --includedir=\$(kde_includedir) --infodir=\$(infodir) --mandir=\$(mandir) --with-qt-dir=\$(qtdir)\n"; - - exit -} diff --git a/portland/dapi/kde/admin/depcomp b/portland/dapi/kde/admin/depcomp deleted file mode 100755 index 88b3a13..0000000 --- a/portland/dapi/kde/admin/depcomp +++ /dev/null @@ -1,529 +0,0 @@ -#! /bin/sh -# depcomp - compile a program generating dependencies as side-effects - -scriptversion=2005-05-14.22 - -# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -# 02110-1301, USA. - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>. - -case $1 in - '') - echo "$0: No command. Try \`$0 --help' for more information." 1>&2 - exit 1; - ;; - -h | --h*) - cat <<\EOF -Usage: depcomp [--help] [--version] PROGRAM [ARGS] - -Run PROGRAMS ARGS to compile a file, generating dependencies -as side-effects. - -Environment variables: - depmode Dependency tracking mode. - source Source file read by `PROGRAMS ARGS'. - object Object file output by `PROGRAMS ARGS'. - DEPDIR directory where to store dependencies. - depfile Dependency file to output. - tmpdepfile Temporary file to use when outputing dependencies. - libtool Whether libtool is used (yes/no). - -Report bugs to <bug-automake@gnu.org>. -EOF - exit $? - ;; - -v | --v*) - echo "depcomp $scriptversion" - exit $? - ;; -esac - -if test -z "$depmode" || test -z "$source" || test -z "$object"; then - echo "depcomp: Variables source, object and depmode must be set" 1>&2 - exit 1 -fi - -# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po. -depfile=${depfile-`echo "$object" | - sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`} -tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} - -rm -f "$tmpdepfile" - -# Some modes work just like other modes, but use different flags. We -# parameterize here, but still list the modes in the big case below, -# to make depend.m4 easier to write. Note that we *cannot* use a case -# here, because this file can only contain one case statement. -if test "$depmode" = hp; then - # HP compiler uses -M and no extra arg. - gccflag=-M - depmode=gcc -fi - -if test "$depmode" = dashXmstdout; then - # This is just like dashmstdout with a different argument. - dashmflag=-xM - depmode=dashmstdout -fi - -case "$depmode" in -gcc3) -## gcc 3 implements dependency tracking that does exactly what -## we want. Yay! Note: for some reason libtool 1.4 doesn't like -## it if -MD -MP comes after the -MF stuff. Hmm. - "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" - stat=$? - if test $stat -eq 0; then : - else - rm -f "$tmpdepfile" - exit $stat - fi - mv "$tmpdepfile" "$depfile" - ;; - -gcc) -## There are various ways to get dependency output from gcc. Here's -## why we pick this rather obscure method: -## - Don't want to use -MD because we'd like the dependencies to end -## up in a subdir. Having to rename by hand is ugly. -## (We might end up doing this anyway to support other compilers.) -## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like -## -MM, not -M (despite what the docs say). -## - Using -M directly means running the compiler twice (even worse -## than renaming). - if test -z "$gccflag"; then - gccflag=-MD, - fi - "$@" -Wp,"$gccflag$tmpdepfile" - stat=$? - if test $stat -eq 0; then : - else - rm -f "$tmpdepfile" - exit $stat - fi - rm -f "$depfile" - echo "$object : \\" > "$depfile" - alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz -## The second -e expression handles DOS-style file names with drive letters. - sed -e 's/^[^:]*: / /' \ - -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" -## This next piece of magic avoids the `deleted header file' problem. -## The problem is that when a header file which appears in a .P file -## is deleted, the dependency causes make to die (because there is -## typically no way to rebuild the header). We avoid this by adding -## dummy dependencies for each header file. Too bad gcc doesn't do -## this for us directly. - tr ' ' ' -' < "$tmpdepfile" | -## Some versions of gcc put a space before the `:'. On the theory -## that the space means something, we add a space to the output as -## well. -## Some versions of the HPUX 10.20 sed can't process this invocation -## correctly. Breaking it into two sed invocations is a workaround. - sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -hp) - # This case exists only to let depend.m4 do its work. It works by - # looking at the text of this script. This case will never be run, - # since it is checked for above. - exit 1 - ;; - -sgi) - if test "$libtool" = yes; then - "$@" "-Wp,-MDupdate,$tmpdepfile" - else - "$@" -MDupdate "$tmpdepfile" - fi - stat=$? - if test $stat -eq 0; then : - else - rm -f "$tmpdepfile" - exit $stat - fi - rm -f "$depfile" - - if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files - echo "$object : \\" > "$depfile" - - # Clip off the initial element (the dependent). Don't try to be - # clever and replace this with sed code, as IRIX sed won't handle - # lines with more than a fixed number of characters (4096 in - # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; - # the IRIX cc adds comments like `#:fec' to the end of the - # dependency line. - tr ' ' ' -' < "$tmpdepfile" \ - | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ - tr ' -' ' ' >> $depfile - echo >> $depfile - - # The second pass generates a dummy entry for each header file. - tr ' ' ' -' < "$tmpdepfile" \ - | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ - >> $depfile - else - # The sourcefile does not contain any dependencies, so just - # store a dummy comment line, to avoid errors with the Makefile - # "include basename.Plo" scheme. - echo "#dummy" > "$depfile" - fi - rm -f "$tmpdepfile" - ;; - -aix) - # The C for AIX Compiler uses -M and outputs the dependencies - # in a .u file. In older versions, this file always lives in the - # current directory. Also, the AIX compiler puts `$object:' at the - # start of each line; $object doesn't have directory information. - # Version 6 uses the directory in both cases. - stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'` - tmpdepfile="$stripped.u" - if test "$libtool" = yes; then - "$@" -Wc,-M - else - "$@" -M - fi - stat=$? - - if test -f "$tmpdepfile"; then : - else - stripped=`echo "$stripped" | sed 's,^.*/,,'` - tmpdepfile="$stripped.u" - fi - - if test $stat -eq 0; then : - else - rm -f "$tmpdepfile" - exit $stat - fi - - if test -f "$tmpdepfile"; then - outname="$stripped.o" - # Each line is of the form `foo.o: dependent.h'. - # Do two passes, one to just change these to - # `$object: dependent.h' and one to simply `dependent.h:'. - sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile" - sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile" - else - # The sourcefile does not contain any dependencies, so just - # store a dummy comment line, to avoid errors with the Makefile - # "include basename.Plo" scheme. - echo "#dummy" > "$depfile" - fi - rm -f "$tmpdepfile" - ;; - -icc) - # Intel's C compiler understands `-MD -MF file'. However on - # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c - # ICC 7.0 will fill foo.d with something like - # foo.o: sub/foo.c - # foo.o: sub/foo.h - # which is wrong. We want: - # sub/foo.o: sub/foo.c - # sub/foo.o: sub/foo.h - # sub/foo.c: - # sub/foo.h: - # ICC 7.1 will output - # foo.o: sub/foo.c sub/foo.h - # and will wrap long lines using \ : - # foo.o: sub/foo.c ... \ - # sub/foo.h ... \ - # ... - - "$@" -MD -MF "$tmpdepfile" - stat=$? - if test $stat -eq 0; then : - else - rm -f "$tmpdepfile" - exit $stat - fi - rm -f "$depfile" - # Each line is of the form `foo.o: dependent.h', - # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'. - # Do two passes, one to just change these to - # `$object: dependent.h' and one to simply `dependent.h:'. - sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile" - # Some versions of the HPUX 10.20 sed can't process this invocation - # correctly. Breaking it into two sed invocations is a workaround. - sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" | - sed -e 's/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -tru64) - # The Tru64 compiler uses -MD to generate dependencies as a side - # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'. - # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put - # dependencies in `foo.d' instead, so we check for that too. - # Subdirectories are respected. - dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` - test "x$dir" = "x$object" && dir= - base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` - - if test "$libtool" = yes; then - # With Tru64 cc, shared objects can also be used to make a - # static library. This mecanism is used in libtool 1.4 series to - # handle both shared and static libraries in a single compilation. - # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d. - # - # With libtool 1.5 this exception was removed, and libtool now - # generates 2 separate objects for the 2 libraries. These two - # compilations output dependencies in in $dir.libs/$base.o.d and - # in $dir$base.o.d. We have to check for both files, because - # one of the two compilations can be disabled. We should prefer - # $dir$base.o.d over $dir.libs/$base.o.d because the latter is - # automatically cleaned when .libs/ is deleted, while ignoring - # the former would cause a distcleancheck panic. - tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4 - tmpdepfile2=$dir$base.o.d # libtool 1.5 - tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5 - tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504 - "$@" -Wc,-MD - else - tmpdepfile1=$dir$base.o.d - tmpdepfile2=$dir$base.d - tmpdepfile3=$dir$base.d - tmpdepfile4=$dir$base.d - "$@" -MD - fi - - stat=$? - if test $stat -eq 0; then : - else - rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" - exit $stat - fi - - for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" - do - test -f "$tmpdepfile" && break - done - if test -f "$tmpdepfile"; then - sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" - # That's a tab and a space in the []. - sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" - else - echo "#dummy" > "$depfile" - fi - rm -f "$tmpdepfile" - ;; - -#nosideeffect) - # This comment above is used by automake to tell side-effect - # dependency tracking mechanisms from slower ones. - -dashmstdout) - # Important note: in order to support this mode, a compiler *must* - # always write the preprocessed file to stdout, regardless of -o. - "$@" || exit $? - - # Remove the call to Libtool. - if test "$libtool" = yes; then - while test $1 != '--mode=compile'; do - shift - done - shift - fi - - # Remove `-o $object'. - IFS=" " - for arg - do - case $arg in - -o) - shift - ;; - $object) - shift - ;; - *) - set fnord "$@" "$arg" - shift # fnord - shift # $arg - ;; - esac - done - - test -z "$dashmflag" && dashmflag=-M - # Require at least two characters before searching for `:' - # in the target name. This is to cope with DOS-style filenames: - # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise. - "$@" $dashmflag | - sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile" - rm -f "$depfile" - cat < "$tmpdepfile" > "$depfile" - tr ' ' ' -' < "$tmpdepfile" | \ -## Some versions of the HPUX 10.20 sed can't process this invocation -## correctly. Breaking it into two sed invocations is a workaround. - sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -dashXmstdout) - # This case only exists to satisfy depend.m4. It is never actually - # run, as this mode is specially recognized in the preamble. - exit 1 - ;; - -makedepend) - "$@" || exit $? - # Remove any Libtool call - if test "$libtool" = yes; then - while test $1 != '--mode=compile'; do - shift - done - shift - fi - # X makedepend - shift - cleared=no - for arg in "$@"; do - case $cleared in - no) - set ""; shift - cleared=yes ;; - esac - case "$arg" in - -D*|-I*) - set fnord "$@" "$arg"; shift ;; - # Strip any option that makedepend may not understand. Remove - # the object too, otherwise makedepend will parse it as a source file. - -*|$object) - ;; - *) - set fnord "$@" "$arg"; shift ;; - esac - done - obj_suffix="`echo $object | sed 's/^.*\././'`" - touch "$tmpdepfile" - ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" - rm -f "$depfile" - cat < "$tmpdepfile" > "$depfile" - sed '1,2d' "$tmpdepfile" | tr ' ' ' -' | \ -## Some versions of the HPUX 10.20 sed can't process this invocation -## correctly. Breaking it into two sed invocations is a workaround. - sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" "$tmpdepfile".bak - ;; - -cpp) - # Important note: in order to support this mode, a compiler *must* - # always write the preprocessed file to stdout. - "$@" || exit $? - - # Remove the call to Libtool. - if test "$libtool" = yes; then - while test $1 != '--mode=compile'; do - shift - done - shift - fi - - # Remove `-o $object'. - IFS=" " - for arg - do - case $arg in - -o) - shift - ;; - $object) - shift - ;; - *) - set fnord "$@" "$arg" - shift # fnord - shift # $arg - ;; - esac - done - - "$@" -E | - sed -n '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' | - sed '$ s: \\$::' > "$tmpdepfile" - rm -f "$depfile" - echo "$object : \\" > "$depfile" - cat < "$tmpdepfile" >> "$depfile" - sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -msvisualcpp) - # Important note: in order to support this mode, a compiler *must* - # always write the preprocessed file to stdout, regardless of -o, - # because we must use -o when running libtool. - "$@" || exit $? - IFS=" " - for arg - do - case "$arg" in - "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") - set fnord "$@" - shift - shift - ;; - *) - set fnord "$@" "$arg" - shift - shift - ;; - esac - done - "$@" -E | - sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile" - rm -f "$depfile" - echo "$object : \\" > "$depfile" - . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" - echo " " >> "$depfile" - . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -none) - exec "$@" - ;; - -*) - echo "Unknown depmode $depmode" 1>&2 - exit 1 - ;; -esac - -exit 0 - -# Local Variables: -# mode: shell-script -# sh-indentation: 2 -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" -# End: diff --git a/portland/dapi/kde/admin/deps.am b/portland/dapi/kde/admin/deps.am deleted file mode 100644 index e8f5015..0000000 --- a/portland/dapi/kde/admin/deps.am +++ /dev/null @@ -1,19 +0,0 @@ -$(top_srcdir)/acinclude.m4: $(top_srcdir)/admin/acinclude.m4.in $(top_srcdir)/admin/libtool.m4.in $(top_srcdir)/admin/cvs.sh $(top_srcdir)/admin/pkg.m4.in - @cd $(top_srcdir) && $(SHELL) admin/cvs.sh acinclude_m4 - -$(top_srcdir)/configure.in: $(top_srcdir)/subdirs $(top_srcdir)/configure.files $(top_srcdir)/admin/cvs.sh - @cd $(top_srcdir) && $(SHELL) admin/cvs.sh configure_in - -$(top_srcdir)/configure.files: $(top_srcdir)/subdirs $(CONF_FILES) - @cd $(top_srcdir) && $(SHELL) admin/cvs.sh configure.files $(top_srcdir)/admin/cvs.sh - -$(top_srcdir)/Makefile.am: $(top_srcdir)/Makefile.am.in $(top_srcdir)/subdirs $(top_srcdir)/admin/cvs.sh - @cd $(top_srcdir) && $(SHELL) admin/cvs.sh Makefile_am - -$(top_srcdir)/subdirs: $(top_srcdir)/Makefile.am.in $(top_srcdir)/admin/cvs.sh - @cd $(top_srcdir) && $(SHELL) admin/cvs.sh subdirs - -# defining default rules for files that may not be present -$(top_srcdir)/Makefile.am.in: -$(CONF_FILES): - diff --git a/portland/dapi/kde/admin/detect-autoconf.pl b/portland/dapi/kde/admin/detect-autoconf.pl deleted file mode 100755 index 7166bce..0000000 --- a/portland/dapi/kde/admin/detect-autoconf.pl +++ /dev/null @@ -1,173 +0,0 @@ -#!/usr/bin/env perl - -# Try to locate best version of auto* -# By Michael Pyne <michael.pyne@kdemail.net> -# -# Copyright (c) 2005. -# This code is public domain. You may use it however you like (including -# relicensing). - -# Emulate the 'which' program. -sub which -{ - my $prog = shift; - my @paths = split(/:/, $ENV{'PATH'}); - - for $path (@paths) - { - return "$path/$prog" if -x "$path/$prog"; - } - - return ""; -} - -# Subroutine to determine the highest installed version of the given program, -# searching from the given paths. -sub findBest -{ - my ($program, @paths) = @_; - my $best_version_found = '0'; # Deliberately a string. - my %versions; - my %minimumVersions = ( - 'autoconf' => '2.5', - 'automake' => '1.6', - ); - - # Allow user to use environment variable to override search. - return $ENV{uc $program} if $ENV{uc $program}; - - for $prefix (@paths) - { - @files = glob "$prefix/$program*"; - for $file (@files) - { - # Don't check non-executable scripts. - next unless -x $file; - - ($version) = $file =~ /$prefix\/$program-?(.*)$/; - $version =~ s/-|\.//g; - - # Special case some programs to make sure it has a minimum version. - if (not $version and exists $minimumVersions{$program}) - { - my $min_version = $minimumVersions{$program}; - my $versionOutput = `$program --version 2>/dev/null | head -n 1`; - - # If we can't run the script to get the version it likely won't work later. - next unless $versionOutput; - - # Use number.number for version (we don't need the excess in general). - ($versionOutput) = ($versionOutput =~ /(\d\.\d)/); - - # Use lt to do lexicographical comparison of strings (which should be - # equivalent and doesn't involve issues with floating point conversions). - if (not $versionOutput or $versionOutput lt $min_version) - { - next; - } - } - - # If no version suffix then use it in favor of a versioned autotool - # since the ever-popular WANT_AUTOFOO should then work (in theory). - return $file unless $version; - - # Emulate 'which', and abort if we've already seen this version. - next if exists $versions{$version}; - - # Save filename of program. - $versions{$version} = $file; - - # Use string comparison so that e.g. 253a will be > 253 but < 254. - if ($version gt $best_version_found) - { - $best_version_found = $version; - } - } - } - - return $versions{$best_version_found}; -} - -# Find an appropriate "which" program for later use by the shell script calling -# us. -sub findWhich -{ - for $candidate ('type -p', 'which', 'type') - { - $test = `$candidate sh 2>/dev/null`; - chomp $test; - - return $candidate if -x $test; - } -} - -# Uses which() to find a program unless the user provided its path in the -# environment (the upper case program name is searched). -sub findProgram -{ - $suffix = ""; # For use if @_ has only one param. - my ($program, $suffix) = @_; - - return $ENV{uc $program} if $ENV{uc $program}; - return which("$program$suffix"); -} - -# SCRIPT STARTS. - -# Search in path. -@paths = split(/:/, $ENV{'PATH'}); - -# Make sure at least /usr/bin and /usr/local/bin are in this search. -unshift @paths, '/usr/local/bin' unless grep $_ eq '/usr/local/bin', @paths; -unshift @paths, '/usr/bin' unless grep $_ eq '/usr/bin', @paths; - -$autoconf = findBest('autoconf', @paths); -($autoconf_suffix) = $autoconf =~ /.*autoconf(.*)$/; - -# Find matching autoconf companions. -$autoheader = findProgram('autoheader', $autoconf_suffix); -$autom4te = findProgram('autom4te', $autoconf_suffix); - -# Get best automake, and look for unsermake to possibly override it. -$automake = findBest('automake', @paths); -$unsermake = ""; -# backward compatible: if $UNSERMAKE points to a path, use it -$unsermake = findProgram('unsermake') if (defined($ENV{'UNSERMAKE'}) and $ENV{'UNSERMAKE'} =~ /\//); -# new compatible: if it says 'yes', use the one from path -$unsermake = which('unsermake') if ($ENV{'UNSERMAKE'} ne 'no'); - -($automake_suffix) = $automake =~ /.*automake(.*)$/; - -# Use unsermake if we found it. -$automake = "$unsermake -c" if $unsermake; - -# Find matching automake companions. -$aclocal = findProgram('aclocal', $automake_suffix); - -$which = findWhich(); - -# Make sure we have all of the needed programs. -for $i (qw'autoconf autoheader autom4te automake aclocal') -{ - unless(${$i}) - { - print "# Unable to find $i!!\n"; - exit 1; - } -} - -# Print results in eval-able form. -print <<EOF; -AUTOCONF="$autoconf" -AUTOHEADER="$autoheader" -AUTOM4TE="$autom4te" - -AUTOMAKE="$automake" -ACLOCAL="$aclocal" - -WHICH="$which" - -export AUTOCONF AUTOHEADER AUTOM4TE AUTOMAKE ACLOCAL WHICH -EOF - -exit 0; diff --git a/portland/dapi/kde/admin/doxygen.sh b/portland/dapi/kde/admin/doxygen.sh deleted file mode 100644 index 98cb9ba..0000000 --- a/portland/dapi/kde/admin/doxygen.sh +++ /dev/null @@ -1,872 +0,0 @@ -#! /bin/sh -# -# doxygen.sh Copyright (C) 2005 by Adriaan de Groot -# Based on some code from Doxyfile.am, among other things. -# License: GPL version 2. -# See file COPYING in kdelibs for details. - -echo "*** doxygen.sh" - -# Recurse handling is a little complicated, since normally -# subdir (given on the command-line) processing doesn't recurse -# but you can force it to do so. -recurse=1 -recurse_given=NO -use_modulename=1 -cleanup=YES - -while test -n "$1" ; do -case "x$1" in -"x--no-cleanup" ) - cleanup=NO - ;; -"x--no-recurse" ) - recurse=0 - recurse_given=YES - ;; -"x--recurse" ) - recurse=1 - recurse_given=YES - ;; -"x--no-modulename" ) - use_modulename=0 - ;; -"x--modulename" ) - use_modulename=1 - ;; -"x--help" ) - echo "doxygen.sh usage:" - echo "doxygen.sh [--no-recurse] [--no-modulename] <srcdir> [<subdir>]" - exit 2 - ;; -x--doxdatadir=* ) - DOXDATA=`echo $1 | sed -e 's+--doxdatadir=++'` - ;; -x--installdir=*) - PREFIX=`echo $1 | sed -e 's+--installdir=++'` - ;; -x--* ) - echo "Unknown option: $1" - exit 1 - ;; -* ) - top_srcdir="$1" - break - ;; -esac -shift -done - - -### Sanity check the mandatory "top srcdir" argument. -if test -z "$top_srcdir" ; then - echo "Usage: doxygen.sh <top_srcdir>" - exit 1 -fi -if ! test -d "$top_srcdir" ; then - echo "top_srcdir ($top_srcdir) is not a directory." - exit 1 -fi - -### Normalize top_srcdir so it is an absolute path. -if ! expr "x$top_srcdir" : "x/" > /dev/null ; then - top_srcdir=`cd "$top_srcdir" 2> /dev/null && pwd` - if ! test -d "$top_srcdir" ; then - echo "top_srcdir ($top_srcdir) is not a directory." - exit 1 - fi -fi - - - -### Sanity check and guess QTDOCDIR. -if test -z "$QTDOCDIR" ; then - if test -z "$QTDIR" ; then - for i in /usr/X11R6/share/doc/qt/html - do - QTDOCDIR="$i" - test -d "$QTDOCDIR" && break - done - else - for i in share/doc/qt/html doc/html - do - QTDOCDIR="$QTDIR/$i" - test -d "$QTDOCDIR" && break - done - fi -fi -if test -z "$QTDOCDIR" || test \! -d "$QTDOCDIR" ; then - if test -z "$QTDOCDIR" ; then - echo "* QTDOCDIR could not be guessed." - else - echo "* QTDOCDIR does not name a directory." - fi - if test -z "$QTDOCTAG" ; then - echo "* QTDOCDIR set to \"\"" - QTDOCDIR="" - else - echo "* But I'll use $QTDOCDIR anyway because of QTDOCTAG." - fi -fi - -### Get the "top srcdir", also its name, and handle the case that subdir "." -### is given (which would be top_srcdir then, so it's equal to none-given -### but no recursion either). -### -# top_srcdir="$1" # Already set by options processing -module_name=`basename "$top_srcdir"` -subdir="$2" -if test "x." = "x$subdir" ; then - subdir="" - if test "x$recurse_given" = "xNO" ; then - recurse=0 - fi -fi -if test "x" != "x$subdir" ; then - # If no recurse option given explicitly, default to - # no recurse when processing subdirs given on the command-line. - if test "x$recurse_given" = "xNO" ; then - recurse=0 - fi -fi - -if test -z "$DOXDATA" || test ! -d "$DOXDATA" ; then - if test -n "$DOXDATA" ; then - echo "* \$DOXDATA is '$DOXDATA' which does not name a directory" - fi - DOXDATA="$top_srcdir/doc/common" -fi - -if ! test -d "$DOXDATA" ; then - echo "* \$DOXDATA does not name a directory ( or is unset ), tried \"$DOXDATA\"" - exit 1 -fi - -if test -n "$PREFIX" && test ! -d "$PREFIX" ; then - echo "* \$PREFIX does not name a directory, tried \"$PREFIX\"" - echo "* \$PREFIX is disabled." - PREFIX="" -fi - -### We need some values from top-level files, which -### are not preserved between invocations of this -### script, so factor it out for easy use. -create_doxyfile_in() -{ - eval `grep 'VERSION="' "$top_srcdir/admin/cvs.sh"` - echo "PROJECT_NUMBER = $VERSION" > Doxyfile.in - grep ^KDE_INIT_DOXYGEN "$top_srcdir/configure.in.in" | \ - sed -e 's+[^[]*\[\([^]]*\)+PROJECT_NAME = "\1"+' \ - -e 's+].*++' >> Doxyfile.in -} - -apidoxdir="$module_name"-apidocs -test "x$use_modulename" = "x0" && apidoxdir="apidocs" - -### If we're making the top subdir, create the structure -### for the apidox and initialize it. Otherwise, just use the -### structure assumed to be there. -if test -z "$subdir" ; then - if ! test -d "$apidoxdir" ; then - mkdir "$apidoxdir" > /dev/null 2>&1 - fi - if ! cd "$apidoxdir" > /dev/null 2>&1 ; then - echo "Cannot create and cd into $apidoxdir" - exit 1 - fi - - test -f "Doxyfile.in" || create_doxyfile_in - - # Copy in logos and the like - for i in "favicon.ico" "kde_gear_64.png" - do - cp "$DOXDATA/$i" . > /dev/null 2> /dev/null - done - for i in "$top_srcdir/doc/api/Dox-"*.png - do - T=`basename "$i" | sed -e 's+Dox-++'` - test -f "$i" && cp "$i" "./$T" > /dev/null 2> /dev/null - done - - top_builddir="." - srcdir="$1" - subdir="." -else - if ! cd "$apidoxdir" > /dev/null 2>&1 ; then - echo "Cannot cd into $apidoxdir -- maybe you need to" - echo "build the top-level dox first." - exit 1 - fi - - if test "x1" = "x$recurse" ; then - # OK, so --recurse was requested - if ! test -f "subdirs.top" ; then - echo "* No subdirs.top available in the $apidoxdir." - echo "* The --recurse option will be ignored." - recurse=0 - fi - fi -fi - -### Read a single line (TODO: support \ continuations) from the Makefile.am. -### Used to extract variable assignments from it. -extract_line() -{ - file="$2" ; test -z "$file" && file="$srcdir/Makefile.am" - pattern=`echo "$1" | tr + .` - grep "^$1" "$file" | \ - sed -e "s+$pattern.*=\s*++" -} - -### Handle the COMPILE_{FIRST,LAST,BEFORE,AFTER} part of Makefile.am -### in the toplevel. Copied from admin/cvs.sh. Licence presumed LGPL). -create_subdirs() -{ -echo "* Sorting top-level subdirs" -dirs= -idirs= -if test -f "$top_srcdir/inst-apps"; then - idirs=`cat "$top_srcdir/"inst-apps` -else - idirs=`cd "$top_srcdir" && ls -1 | sort` -fi - -compilefirst="" -compilelast="" -if test -f "$top_srcdir/"Makefile.am.in ; then - compilefirst=`sed -ne 's#^COMPILE_FIRST[ ]*=[ ]*##p' "$top_srcdir/"Makefile.am.in | head -n 1` - compilelast=`sed -ne 's#^COMPILE_LAST[ ]*=[ ]*##p' "$top_srcdir/"Makefile.am.in | head -n 1` -fi -for i in $idirs; do - if test -f "$top_srcdir/$i"/Makefile.am; then - case " $compilefirst $compilelast " in - *" $i "*) ;; - *) dirs="$dirs $i" - esac - fi -done - -: > ./_SUBDIRS - -for d in $compilefirst; do - echo $d >> ./_SUBDIRS -done - -(for d in $dirs; do - list="" - if test -f "$top_srcdir/"Makefile.am.in ; then - list=`sed -ne "s#^COMPILE_BEFORE_$d""[ ]*=[ ]*##p" "$top_srcdir/"Makefile.am.in | head -n 1` - fi - for s in $list; do - echo $s $d - done - list="" - if test -f "$top_srcdir/"Makefile.am.in ; then - list=`sed -ne "s#^COMPILE_AFTER_$d""[ ]*=[ ]*##p" "$top_srcdir/"Makefile.am.in | head -n 1` - fi - for s in $list; do - echo $d $s - done - echo $d $d -done ) | tsort >> ./_SUBDIRS - -for d in $compilelast; do - echo $d >> ./_SUBDIRS -done - -test -r _SUBDIRS && mv _SUBDIRS subdirs.top || true -} - - -### Add HTML header, footer, CSS tags to Doxyfile. -### Assumes $subdir is set. Argument is a string -### to stick in front of the file if needed. -apidox_htmlfiles() -{ - dox_header="$top_srcdir/doc/api/$1header.html" - dox_footer="$top_srcdir/doc/api/$1footer.html" - dox_css="$top_srcdir/doc/api/doxygen.css" - test -f "$dox_header" || dox_header="$DOXDATA/$1header.html" - test -f "$dox_footer" || dox_footer="$DOXDATA/$1footer.html" - test -f "$dox_css" || dox_css="$DOXDATA/doxygen.css" - - echo "HTML_HEADER = $dox_header" >> "$subdir/Doxyfile" ; \ - echo "HTML_FOOTER = $dox_footer" >> "$subdir/Doxyfile" ; \ - echo "HTML_STYLESHEET = $dox_css" >> "$subdir/Doxyfile" -} - -apidox_specials() -{ - line=`extract_line DOXYGEN_PROJECTNAME "$1"` - test -n "$line" && echo "PROJECT_NAME = \"$line\"" >> "$2" -} - -apidox_local() -{ - for i in "$top_srcdir/doc/api/Doxyfile.local" - do - if test -f "$i" ; then - cat "$i" >> "$subdir/Doxyfile" - break - fi - done -} - -### Post-process HTML files by substituting in the menu files -# -# In non-top directories, both <!-- menu --> and <!-- gmenu --> -# are calculated and replaced. Top directories get an empty <!-- menu --> -# if any. -doxyndex() -{ - # Special case top-level to have an empty MENU. - if test "x$subdir" = "x." ; then - MENU="" - htmldir="." - htmltop="$top_builddir" # Just ., presumably - echo "* Post-processing top-level files" - else - MENU="<ul>" - htmldir="$subdir/html" - htmltop="$top_builddir.." # top_builddir ends with / - echo "* Post-processing files in $htmldir" - - # Build a little PHP file that maps class names to file - # names, for the quick-class-picker functionality. - # (The quick-class-picker is disabled due to styling - # problems in IE & FF). - ( - echo "<?php \$map = array("; \ - for htmlfile in `find $htmldir/ -type f -name "class[A-Z]*.html" | grep -v "\-members.html$"`; do - classname=`echo $htmlfile | sed -e "s,.*/class\\(.*\\).html,\1," -e "s,_1_1,::,g" -e "s,_01, ,g" -e "s,_4,>,g" -e "s+_00+,+g" -e "s+_3+<+g" | tr "[A-Z]" "[a-z]"` - echo " \"$classname\" => \"$htmlfile\"," - done | sort ; \ - echo ") ?>" - ) > "$subdir/classmap.inc" - - # This is a list of pairs, with / separators so we can use - # basename and dirname (a crude shell hack) to split them - # into parts. For each, if the file part exists (as a html - # file) tack it onto the MENU variable as a <li> with link. - for i in "Main Page/index" \ - "Modules/modules" \ - "Namespace List/namespaces" \ - "Class Hierarchy/hierarchy" \ - "Alphabetical List/classes" \ - "Class List/annotated" \ - "File List/files" \ - "Directories/dirs" \ - "Namespace Members/namespacemembers" \ - "Class Members/functions" \ - "Related Pages/pages" - do - NAME=`dirname "$i"` - FILE=`basename "$i"` - test -f "$htmldir/$FILE.html" && MENU="$MENU<li><a href=\"$FILE.html\">$NAME</a></li>" - done - - MENU="$MENU</ul>" - fi - - - # Get the list of global Menu entries. - GMENU=`cat subdirs | tr -d '\n'` - - PMENU=`grep '<!-- pmenu' "$htmldir/index.html" | sed -e 's+.*pmenu *++' -e 's+ *-->++' | awk '{ c=split($0,a,"/"); for (j=1; j<=c; j++) { printf " / <a href=\""; if (j==c) { printf("."); } for (k=j; k<c; k++) { printf "../"; } if (j<c) { printf("../html/index.html"); } printf "\">%s</a>\n" , a[j]; } }' | tr -d '\n'` - - # Map the PHP file into HTML options so that - # it can be substituted in for the quick-class-picker. - CMENU="" - # For now, leave the CMENU disabled - CMENUBEGIN="<!--" - CMENUEND="-->" - - if test "x$subdir" = "x." ; then - # Disable CMENU on toplevel anyway - CMENUBEGIN="<!--" - CMENUEND="-->" - else - test -f "$subdir/classmap.inc" && \ - CMENU=`grep '=>' "$subdir/classmap.inc" | sed -e 's+"\([^"]*\)" => "'"$subdir/html/"'\([^"]*\)"+<option value="\2">\1<\/option>+' | tr -d '\n'` - - if ! test -f "$subdir/classmap.inc" || ! grep "=>" "$subdir/classmap.inc" > /dev/null 2>&1 ; then - CMENUBEGIN="<!--" - CMENUEND="-->" - fi - fi - - # Now substitute in the MENU in every file. This depends - # on HTML_HEADER (ie. header.html) containing the - # <!-- menu --> comment. - for i in "$htmldir"/*.html - do - if test -f "$i" ; then - sed -e "s+<!-- menu -->+$MENU+" \ - -e "s+<!-- gmenu -->+$GMENU+" \ - -e "s+<!-- pmenu.*-->+$PMENU+" \ - -e "s+<!-- cmenu.begin -->+$CMENUBEGIN+" \ - -e "s+<!-- cmenu.end -->+$CMENUEND+" \ - < "$i" | sed -e "s+@topdir@+$htmltop+g" > "$i.new" && mv "$i.new" "$i" - sed -e "s+<!-- cmenu -->+$CMENU+" < "$i" > "$i.new" - test -s "$i.new" && mv "$i.new" "$i" - fi - done -} - - - - - - -### Handle the Doxygen processing of a toplevel directory. -apidox_toplevel() -{ - echo "" - echo "*** Creating API documentation main page for $module_name" - echo "*" - rm -f "Doxyfile" - for i in "$top_srcdir/doc/api/Doxyfile.global" \ - "$top_srcdir/admin/Doxyfile.global" \ - "$DOXDATA/Doxyfile.global" - do - if test -f "$i" ; then - cp "$i" Doxyfile - break - fi - done - - if test ! -f "Doxyfile" ; then - echo "* Cannot create Doxyfile." - exit 1 - fi - - cat "$top_builddir/Doxyfile.in" >> Doxyfile - - - echo "INPUT = $top_srcdir" >> Doxyfile - echo "OUTPUT_DIRECTORY = $top_builddir" >> Doxyfile ; \ - echo "FILE_PATTERNS = *.dox" >> Doxyfile ; \ - echo "RECURSIVE = NO" >> Doxyfile ; \ - echo "ALPHABETICAL_INDEX = NO" >> Doxyfile ; \ - echo "HTML_OUTPUT = ." >> Doxyfile ; \ - apidox_htmlfiles "main" - - # KDevelop has a top-level Makefile.am with settings. - for i in "$top_srcdir/Makefile.am.in" "$top_srcdir/Makefile.am" - do - if test -f "$i" ; then - grep '^DOXYGEN_SET_' "$i" | \ - sed -e 's+DOXYGEN_SET_++' -e "s+@topdir@+$top_srcdir+" >> Doxyfile - apidox_specials "$srcdir/Makefile.am" "$subdir/Doxyfile" - - break - fi - done - - apidox_local - - doxygen Doxyfile - - ( cd "$top_srcdir" && grep -l ^include.*Doxyfile.am `find . -name Makefile.am` ) | sed -e 's+/Makefile.am$++' -e 's+^\./++' | sort > subdirs.in - for i in `cat subdirs.in` - do - test "x." = "x$i" && continue; - - dir=`dirname "$i"` - file=`basename "$i"` - if test "x." = "x$dir" ; then - dir="" - else - dir="$dir/" - fi - indent=`echo "$dir" | sed -e 's+[^/]*/+\ \ +g' | sed -e 's+&+\\\&+g'` - entryname=`extract_line DOXYGEN_SET_PROJECT_NAME "$top_srcdir/$dir/$file/Makefile.am"` - test -z "$entryname" && entryname="$file" - - if grep DOXYGEN_EMPTY "$top_srcdir/$dir/$file/Makefile.am" > /dev/null 2>&1 ; then - echo "<li>$indent$file</li>" - else - echo "<li>$indent<a href=\"@topdir@/$dir$file/html/index.html\">$entryname</a></li>" - fi - done > subdirs - - doxyndex -} - -### Handle the Doxygen processing of a non-toplevel directory. -apidox_subdir() -{ - echo "" - echo "*** Creating apidox in $subdir" - echo "*" - rm -f "$subdir/Doxyfile" - if ! test -d "$top_srcdir/$subdir" ; then - echo "* No source (sub)directory $subdir" - return - fi - for i in "$top_srcdir/doc/api/Doxyfile.global" \ - "$top_srcdir/admin/Doxyfile.global" \ - "$DOXDATA/Doxyfile.global" - do - if test -f "$i" ; then - cp "$i" "$subdir/Doxyfile" - break - fi - done - - - test -f "Doxyfile.in" || create_doxyfile_in - cat "Doxyfile.in" >> "$subdir/Doxyfile" - - echo "PROJECT_NAME = \"$subdir\"" >> "$subdir/Doxyfile" - echo "INPUT = $srcdir" >> "$subdir/Doxyfile" - echo "OUTPUT_DIRECTORY = ." >> "$subdir/Doxyfile" - if grep -l "$subdir/" subdirs.in > /dev/null 2>&1 ; then - echo "RECURSIVE = NO" >> "$subdir/Doxyfile" - fi - echo "HTML_OUTPUT = $subdir/html" >> "$subdir/Doxyfile" - echo "GENERATE_TAGFILE = $subdir/$subdirname.tag" >> "$subdir/Doxyfile" - test -d "$top_srcdir/doc/api" && \ - echo "IMAGE_PATH = $top_srcdir/doc/api" >> "$subdir/Doxyfile" - - apidox_htmlfiles "" - - # Makefile.ams may contain overrides to our settings, - # so copy them in. - grep '^DOXYGEN_SET_' "$srcdir/Makefile.am" | \ - sed -e 's+DOXYGEN_SET_++' >> "$subdir/Doxyfile" - apidox_specials "$srcdir/Makefile.am" "$subdir/Doxyfile" - - excludes=`extract_line DOXYGEN_EXCLUDE` - if test -n "$excludes"; then - patterns="" - dirs="" - for item in `echo "$excludes"`; do - if test -d "$top_srcdir/$subdir/$item"; then - dirs="$dirs $top_srcdir/$subdir/$item/" - else - patterns="$patterns $item" - fi - done - echo "EXCLUDE_PATTERNS += $patterns" >> "$subdir/Doxyfile" - echo "EXCLUDE += $dirs" >> "$subdir/Doxyfile" - fi - - echo "TAGFILES = \\" >> "$subdir/Doxyfile" - ## For now, don't support \ continued references lines - tags=`extract_line DOXYGEN_REFERENCES` - for i in $tags qt ; do - tagsubdir=`dirname $i` ; tag=`basename $i` - tagpath="" - not_found="" - - if test "x$tagsubdir" = "x." ; then - tagsubdir="" - else - tagsubdir="$tagsubdir/" - fi - - # Find location of tag file - if test -f "$tagsubdir$tag/$tag.tag" ; then - file="$tagsubdir$tag/$tag.tag" - loc="$tagsubdir$tag/html" - else - # This checks for dox built with_out_ --no-modulename - # in the same build dir as this dox run was started in. - file=`ls -1 ../*-apidocs/"$tagsubdir$tag/$tag.tag" 2> /dev/null` - - if test -n "$file" ; then - loc=`echo "$file" | sed -e "s/$tag.tag\$/html/"` - else - # If the tag file doesn't exist yet, but should - # because we have the right dirs here, queue - # this directory for re-processing later. - if test -d "$top_srcdir/$tagsubdir$tag" ; then - echo "* Need to re-process $subdir for tag $i" - echo "$subdir" >> "subdirs.later" - else - # Re-check in $PREFIX if needed. - test -n "$PREFIX" && \ - file=`cd "$PREFIX" && \ - ls -1 *-apidocs/"$tagsubdir$tag/$tag.tag" 2> /dev/null` - - # If something is found, patch it up. The location must be - # relative to the installed location of the dox and the - # file must be absolute. - if test -n "$file" ; then - loc=`echo "../$file" | sed -e "s/$tag.tag\$/html/"` - file="$PREFIX/$file" - echo "* Tags for $tagsubdir$tag will only work when installed." - not_found="YES" - fi - fi - fi - fi - if test "$tag" = "qt" ; then - if test -z "$QTDOCDIR" ; then - echo " $file" >> "$subdir/Doxyfile" - else - if test -z "$file" ; then - # Really no Qt tags - echo "" >> "$subdir/Doxyfile" - else - echo " $file=$QTDOCDIR" >> "$subdir/Doxyfile" - fi - fi - else - if test -n "$file" ; then - test -z "$not_found" && echo "* Found tag $file" - echo " $file=../$top_builddir$loc \\" >> "$subdir/Doxyfile" - fi - fi - done - - apidox_local - - if ! grep '^DOXYGEN_EMPTY' "$srcdir/Makefile.am" > /dev/null 2>&1 ; then - doxygen "$subdir/Doxyfile" - doxyndex - fi -} - -### Run a given subdir by setting up global variables first. -do_subdir() -{ - subdir=`echo "$1" | sed -e 's+/$++'` - srcdir="$top_srcdir/$subdir" - subdirname=`basename "$subdir"` - mkdir -p "$subdir" 2> /dev/null - if ! test -d "$subdir" ; then - echo "Can't create dox subdirectory $subdir" - return - fi - top_builddir=`echo "/$subdir" | sed -e 's+/[^/]*+../+g'` - apidox_subdir -} - - -### Create installdox-slow in the toplevel -create_installdox() -{ -# Fix up the installdox script so it accepts empty args -# -# This code is copied from the installdox generated by Doxygen, -# copyright by Dimitri van Heesch and released under the GPL. -# This does a _slow_ update of the dox, because it loops -# over the given substitutions instead of assuming all the -# needed ones are given. -# -cat <<\EOF -#! /usr/bin/env perl - -%subst = () ; -$quiet = 0; - -if (open(F,"search.cfg")) -{ - $_=<F> ; s/[ \t\n]*$//g ; $subst{"_doc"} = $_; - $_=<F> ; s/[ \t\n]*$//g ; $subst{"_cgi"} = $_; -} - -while ( @ARGV ) { - $_ = shift @ARGV; - if ( s/^-// ) { - if ( /^l(.*)/ ) { - $v = ($1 eq "") ? shift @ARGV : $1; - ($v =~ /\/$/) || ($v .= "/"); - $_ = $v; - if ( /(.+)\@(.+)/ ) { - $subst{$1} = $2; - } else { - print STDERR "Argument $_ is invalid for option -l\n"; - &usage(); - } - } - elsif ( /^q/ ) { - $quiet = 1; - } - elsif ( /^\?|^h/ ) { - &usage(); - } - else { - print STDERR "Illegal option -$_\n"; - &usage(); - } - } - else { - push (@files, $_ ); - } -} - - -if ( ! @files ) { - if (opendir(D,".")) { - foreach $file ( readdir(D) ) { - $match = ".html"; - next if ( $file =~ /^\.\.?$/ ); - ($file =~ /$match/) && (push @files, $file); - ($file =~ "tree.js") && (push @files, $file); - } - closedir(D); - } -} - -if ( ! @files ) { - print STDERR "Warning: No input files given and none found!\n"; -} - -foreach $f (@files) -{ - if ( ! $quiet ) { - print "Editing: $f...\n"; - } - $oldf = $f; - $f .= ".bak"; - unless (rename $oldf,$f) { - print STDERR "Error: cannot rename file $oldf\n"; - exit 1; - } - if (open(F,"<$f")) { - unless (open(G,">$oldf")) { - print STDERR "Error: opening file $oldf for writing\n"; - exit 1; - } - if ($oldf ne "tree.js") { - while (<F>) { - foreach $sub (keys %subst) { - s/doxygen\=\"$sub\:([^ \"\t\>\<]*)\" (href|src)=\"\1/doxygen\=\"$sub:$subst{$sub}\" \2=\"$subst{$sub}/g; - print G "$_"; - } - } - } - else { - while (<F>) { - foreach $sub (keys %subst) { - s/\"$sub\:([^ \"\t\>\<]*)\", \"\1/\"$sub:$subst{$sub}\" ,\"$subst{$sub}/g; - print G "$_"; - } - } - } - } - else { - print STDERR "Warning file $f does not exist\n"; - } - unlink $f; -} - -sub usage { - print STDERR "Usage: installdox [options] [html-file [html-file ...]]\n"; - print STDERR "Options:\n"; - print STDERR " -l tagfile\@linkName tag file + URL or directory \n"; - print STDERR " -q Quiet mode\n\n"; - exit 1; -} -EOF -} - -# Do only the subdirs that match the RE passed in as $1 -do_subdirs_re() -{ - RE=`echo "$1" | sed -e 's+/$++'` - - # Here's a queue of dirs to re-process later when - # all the rest have been done already. - > subdirs.later - - # subdirs.top lists _all_ subdirs of top in the order they - # should be handled; subdirs.in lists those dirs that contain - # dox. So the intersection of the two is the ordered list - # of top-level subdirs that contain dox. - # - # subdirs.top also doesn't contain ".", so that special - # case can be ignored in the loop. - - - ( - for i in `grep "^$RE" subdirs.top` - do - if test "x$i" = "x." ; then - continue - fi - # Calculate intersection of this element and the - # set of dox dirs. - if grep "^$i\$" subdirs.in > /dev/null 2>&1 ; then - echo "$i" - mkdir -p "$i" 2> /dev/null - - # Handle the subdirs of this one - for j in `grep "$i/" subdirs.in` - do - echo "$j" - mkdir -p "$j" 2> /dev/null - done - fi - done - - # Now we still need to handle whatever is left - for i in `cat subdirs.in` - do - test -d "$i" || echo "$i" - mkdir -p "$i" 2> /dev/null - done - ) > subdirs.sort - for i in `cat subdirs.sort` - do - do_subdir "$i" - done - - if test -s "subdirs.later" ; then - sort subdirs.later | uniq > subdirs.sort - for i in `cat subdirs.sort` - do - : > subdirs.later - echo "*** Reprocessing $i" - do_subdir "$i" - test -s "subdirs.later" && echo "* Some tag files were still not found." - done - fi -} - -if test "x." = "x$top_builddir" ; then - apidox_toplevel - create_subdirs - create_installdox > installdox-slow - if test "x$recurse" = "x1" ; then - if test "x$module_name" = "xkdelibs" ; then - if test -z "$QTDOCTAG" && test -d "$QTDOCDIR" && \ - test ! -f "qt/qt.tag" ; then - # Special case: create a qt tag file. - echo "*** Creating a tag file for the Qt library:" - mkdir qt - doxytag -t qt/qt.tag "$QTDOCDIR" > /dev/null 2>&1 - fi - fi - if test -n "$QTDOCTAG" && test -r "$QTDOCTAG" ; then - echo "*** Copying tag file for the Qt library:" - mkdir qt - cp "$QTDOCTAG" qt/qt.tag - fi - - do_subdirs_re "." - - fi -else - if test "x$recurse" = "x1" ; then - do_subdirs_re "$subdir" - else - do_subdir "$subdir" - fi -fi - - -# At the end of a run, clean up stuff. -if test "YES" = "$cleanup" ; then - rm -f subdirs.in subdirs.later subdirs.sort subdirs.top Doxyfile.in - rm -f `find . -name Doxyfile` - rm -f qt/qt.tag - rmdir qt > /dev/null 2>&1 -fi - - -exit 0 - diff --git a/portland/dapi/kde/admin/install-sh b/portland/dapi/kde/admin/install-sh deleted file mode 100755 index 4d4a951..0000000 --- a/portland/dapi/kde/admin/install-sh +++ /dev/null @@ -1,323 +0,0 @@ -#!/bin/sh -# install - install a program, script, or datafile - -scriptversion=2005-05-14.22 - -# This originates from X11R5 (mit/util/scripts/install.sh), which was -# later released in X11R6 (xc/config/util/install.sh) with the -# following copyright and license. -# -# Copyright (C) 1994 X Consortium -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to -# deal in the Software without restriction, including without limitation the -# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -# sell copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN -# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- -# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -# -# Except as contained in this notice, the name of the X Consortium shall not -# be used in advertising or otherwise to promote the sale, use or other deal- -# ings in this Software without prior written authorization from the X Consor- -# tium. -# -# -# FSF changes to this file are in the public domain. -# -# Calling this script install-sh is preferred over install.sh, to prevent -# `make' implicit rules from creating a file called install from it -# when there is no Makefile. -# -# This script is compatible with the BSD install script, but was written -# from scratch. It can only install one file at a time, a restriction -# shared with many OS's install programs. - -# set DOITPROG to echo to test this script - -# Don't use :- since 4.3BSD and earlier shells don't like it. -doit="${DOITPROG-}" - -# put in absolute paths if you don't have them in your path; or use env. vars. - -mvprog="${MVPROG-mv}" -cpprog="${CPPROG-cp}" -chmodprog="${CHMODPROG-chmod}" -chownprog="${CHOWNPROG-chown}" -chgrpprog="${CHGRPPROG-chgrp}" -stripprog="${STRIPPROG-strip}" -rmprog="${RMPROG-rm}" -mkdirprog="${MKDIRPROG-mkdir}" - -chmodcmd="$chmodprog 0755" -chowncmd= -chgrpcmd= -stripcmd= -rmcmd="$rmprog -f" -mvcmd="$mvprog" -src= -dst= -dir_arg= -dstarg= -no_target_directory= - -usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE - or: $0 [OPTION]... SRCFILES... DIRECTORY - or: $0 [OPTION]... -t DIRECTORY SRCFILES... - or: $0 [OPTION]... -d DIRECTORIES... - -In the 1st form, copy SRCFILE to DSTFILE. -In the 2nd and 3rd, copy all SRCFILES to DIRECTORY. -In the 4th, create DIRECTORIES. - -Options: --c (ignored) --d create directories instead of installing files. --g GROUP $chgrpprog installed files to GROUP. --m MODE $chmodprog installed files to MODE. --o USER $chownprog installed files to USER. --s $stripprog installed files. --t DIRECTORY install into DIRECTORY. --T report an error if DSTFILE is a directory. ---help display this help and exit. ---version display version info and exit. - -Environment variables override the default commands: - CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG -" - -while test -n "$1"; do - case $1 in - -c) shift - continue;; - - -d) dir_arg=true - shift - continue;; - - -g) chgrpcmd="$chgrpprog $2" - shift - shift - continue;; - - --help) echo "$usage"; exit $?;; - - -m) chmodcmd="$chmodprog $2" - shift - shift - continue;; - - -o) chowncmd="$chownprog $2" - shift - shift - continue;; - - -s) stripcmd=$stripprog - shift - continue;; - - -t) dstarg=$2 - shift - shift - continue;; - - -T) no_target_directory=true - shift - continue;; - - --version) echo "$0 $scriptversion"; exit $?;; - - *) # When -d is used, all remaining arguments are directories to create. - # When -t is used, the destination is already specified. - test -n "$dir_arg$dstarg" && break - # Otherwise, the last argument is the destination. Remove it from $@. - for arg - do - if test -n "$dstarg"; then - # $@ is not empty: it contains at least $arg. - set fnord "$@" "$dstarg" - shift # fnord - fi - shift # arg - dstarg=$arg - done - break;; - esac -done - -if test -z "$1"; then - if test -z "$dir_arg"; then - echo "$0: no input file specified." >&2 - exit 1 - fi - # It's OK to call `install-sh -d' without argument. - # This can happen when creating conditional directories. - exit 0 -fi - -for src -do - # Protect names starting with `-'. - case $src in - -*) src=./$src ;; - esac - - if test -n "$dir_arg"; then - dst=$src - src= - - if test -d "$dst"; then - mkdircmd=: - chmodcmd= - else - mkdircmd=$mkdirprog - fi - else - # Waiting for this to be detected by the "$cpprog $src $dsttmp" command - # might cause directories to be created, which would be especially bad - # if $src (and thus $dsttmp) contains '*'. - if test ! -f "$src" && test ! -d "$src"; then - echo "$0: $src does not exist." >&2 - exit 1 - fi - - if test -z "$dstarg"; then - echo "$0: no destination specified." >&2 - exit 1 - fi - - dst=$dstarg - # Protect names starting with `-'. - case $dst in - -*) dst=./$dst ;; - esac - - # If destination is a directory, append the input filename; won't work - # if double slashes aren't ignored. - if test -d "$dst"; then - if test -n "$no_target_directory"; then - echo "$0: $dstarg: Is a directory" >&2 - exit 1 - fi - dst=$dst/`basename "$src"` - fi - fi - - # This sed command emulates the dirname command. - dstdir=`echo "$dst" | sed -e 's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'` - - # Make sure that the destination directory exists. - - # Skip lots of stat calls in the usual case. - if test ! -d "$dstdir"; then - defaultIFS=' - ' - IFS="${IFS-$defaultIFS}" - - oIFS=$IFS - # Some sh's can't handle IFS=/ for some reason. - IFS='%' - set x `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'` - shift - IFS=$oIFS - - pathcomp= - - while test $# -ne 0 ; do - pathcomp=$pathcomp$1 - shift - if test ! -d "$pathcomp"; then - $mkdirprog "$pathcomp" - # mkdir can fail with a `File exist' error in case several - # install-sh are creating the directory concurrently. This - # is OK. - test -d "$pathcomp" || exit - fi - pathcomp=$pathcomp/ - done - fi - - if test -n "$dir_arg"; then - $doit $mkdircmd "$dst" \ - && { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \ - && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \ - && { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \ - && { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; } - - else - dstfile=`basename "$dst"` - - # Make a couple of temp file names in the proper directory. - dsttmp=$dstdir/_inst.$$_ - rmtmp=$dstdir/_rm.$$_ - - # Trap to clean up those temp files at exit. - trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 - trap '(exit $?); exit' 1 2 13 15 - - # Copy the file name to the temp name. - $doit $cpprog "$src" "$dsttmp" && - - # and set any options; do chmod last to preserve setuid bits. - # - # If any of these fail, we abort the whole thing. If we want to - # ignore errors from any of these, just make sure not to ignore - # errors from the above "$doit $cpprog $src $dsttmp" command. - # - { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \ - && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \ - && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } \ - && { test -z "$chmodcmd" || $doit $chmodcmd "$dsttmp"; } && - - # Now rename the file to the real destination. - { $doit $mvcmd -f "$dsttmp" "$dstdir/$dstfile" 2>/dev/null \ - || { - # The rename failed, perhaps because mv can't rename something else - # to itself, or perhaps because mv is so ancient that it does not - # support -f. - - # Now remove or move aside any old file at destination location. - # We try this two ways since rm can't unlink itself on some - # systems and the destination file might be busy for other - # reasons. In this case, the final cleanup might fail but the new - # file should still install successfully. - { - if test -f "$dstdir/$dstfile"; then - $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \ - || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \ - || { - echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2 - (exit 1); exit 1 - } - else - : - fi - } && - - # Now rename the file to the real destination. - $doit $mvcmd "$dsttmp" "$dstdir/$dstfile" - } - } - fi || { (exit 1); exit 1; } -done - -# The final little trick to "correctly" pass the exit status to the exit trap. -{ - (exit 0); exit 0 -} - -# Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" -# End: diff --git a/portland/dapi/kde/admin/libtool.m4.in b/portland/dapi/kde/admin/libtool.m4.in deleted file mode 100644 index ce9f5ab..0000000 --- a/portland/dapi/kde/admin/libtool.m4.in +++ /dev/null @@ -1,5891 +0,0 @@ -# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- -## Copyright 1996, 1997, 1998, 1999, 2000, 2001 -## Free Software Foundation, Inc. -## Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996 -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, but -## WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -## General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -## -## As a special exception to the GNU General Public License, if you -## distribute this file as part of a program that contains a -## configuration script generated by Autoconf, you may include it under -## the same distribution terms that you use for the rest of that program. - -# serial 47 AC_PROG_LIBTOOL - - -# AC_PROVIDE_IFELSE(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED) -# ----------------------------------------------------------- -# If this macro is not defined by Autoconf, define it here. -m4_ifdef([AC_PROVIDE_IFELSE], - [], - [m4_define([AC_PROVIDE_IFELSE], - [m4_ifdef([AC_PROVIDE_$1], - [$2], [$3])])]) - - -# AC_PROG_LIBTOOL -# --------------- -AC_DEFUN([AC_PROG_LIBTOOL], -[AC_REQUIRE([_AC_PROG_LIBTOOL])dnl -dnl If AC_PROG_CXX has already been expanded, run AC_LIBTOOL_CXX -dnl immediately, otherwise, hook it in at the end of AC_PROG_CXX. - AC_PROVIDE_IFELSE([AC_PROG_CXX], - [AC_LIBTOOL_CXX], - [define([AC_PROG_CXX], defn([AC_PROG_CXX])[AC_LIBTOOL_CXX - ])]) -dnl And a similar setup for Fortran 77 support - AC_PROVIDE_IFELSE([AC_PROG_F77], - [AC_LIBTOOL_F77], - [define([AC_PROG_F77], defn([AC_PROG_F77])[AC_LIBTOOL_F77 -])]) - -dnl Quote A][M_PROG_GCJ so that aclocal doesn't bring it in needlessly. -dnl If either AC_PROG_GCJ or A][M_PROG_GCJ have already been expanded, run -dnl AC_LIBTOOL_GCJ immediately, otherwise, hook it in at the end of both. - AC_PROVIDE_IFELSE([AC_PROG_GCJ], - [AC_LIBTOOL_GCJ], - [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], - [AC_LIBTOOL_GCJ], - [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ], - [AC_LIBTOOL_GCJ], - [ifdef([AC_PROG_GCJ], - [define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[AC_LIBTOOL_GCJ])]) - ifdef([A][M_PROG_GCJ], - [define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[AC_LIBTOOL_GCJ])]) - ifdef([LT_AC_PROG_GCJ], - [define([LT_AC_PROG_GCJ], - defn([LT_AC_PROG_GCJ])[AC_LIBTOOL_GCJ])])])]) -])])# AC_PROG_LIBTOOL - - -# _AC_PROG_LIBTOOL -# ---------------- -AC_DEFUN([_AC_PROG_LIBTOOL], -[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl -AC_BEFORE([$0],[AC_LIBTOOL_CXX])dnl -AC_BEFORE([$0],[AC_LIBTOOL_F77])dnl -AC_BEFORE([$0],[AC_LIBTOOL_GCJ])dnl - -# This can be used to rebuild libtool when needed -LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh" - -# Always use our own libtool. -LIBTOOL='$(SHELL) $(top_builddir)/libtool --silent' -AC_SUBST(LIBTOOL)dnl - -# Prevent multiple expansion -define([AC_PROG_LIBTOOL], []) -])# _AC_PROG_LIBTOOL - - -# AC_LIBTOOL_SETUP -# ---------------- -AC_DEFUN([AC_LIBTOOL_SETUP], -[AC_PREREQ(2.50)dnl -AC_REQUIRE([AC_ENABLE_SHARED])dnl -AC_REQUIRE([AC_ENABLE_STATIC])dnl -AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl -AC_REQUIRE([AC_CANONICAL_HOST])dnl -AC_REQUIRE([AC_CANONICAL_BUILD])dnl -AC_REQUIRE([AC_PROG_CC])dnl -AC_REQUIRE([AC_PROG_LD])dnl -AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl -AC_REQUIRE([AC_PROG_NM])dnl - -AC_REQUIRE([AC_PROG_LN_S])dnl -AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl -# Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers! -AC_REQUIRE([AC_OBJEXT])dnl -AC_REQUIRE([AC_EXEEXT])dnl -dnl - -AC_LIBTOOL_SYS_MAX_CMD_LEN -AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE -AC_LIBTOOL_OBJDIR - -AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl -_LT_AC_PROG_ECHO_BACKSLASH - -case $host_os in -aix3*) - # AIX sometimes has problems with the GCC collect2 program. For some - # reason, if we set the COLLECT_NAMES environment variable, the problems - # vanish in a puff of smoke. - if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES - fi - ;; -esac - -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -Xsed='sed -e s/^X//' -[sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g'] - -# 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 avoid accidental globbing in evaled expressions -no_glob_subst='s/\*/\\\*/g' - -# Constants: -rm="rm -f" - -# Global variables: -default_ofile=libtool -can_build_shared=yes - -# All known linkers require a `.a' archive for static linking (except M$VC, -# which needs '.lib'). -libext=a -ltmain="$ac_aux_dir/ltmain.sh" -ofile="$default_ofile" -with_gnu_ld="$lt_cv_prog_gnu_ld" - -AC_CHECK_TOOL(AR, ar, false) -AC_CHECK_TOOL(RANLIB, ranlib, :) -AC_CHECK_TOOL(STRIP, strip, :) - -old_CC="$CC" -old_CFLAGS="$CFLAGS" - -# Set sane defaults for various variables -test -z "$AR" && AR=ar -test -z "$AR_FLAGS" && AR_FLAGS=cru -test -z "$AS" && AS=as -test -z "$CC" && CC=cc -test -z "$LTCC" && LTCC=$CC -test -z "$DLLTOOL" && DLLTOOL=dlltool -test -z "$LD" && LD=ld -test -z "$LN_S" && LN_S="ln -s" -test -z "$MAGIC_CMD" && MAGIC_CMD=file -test -z "$NM" && NM=nm -test -z "$SED" && SED=sed -test -z "$OBJDUMP" && OBJDUMP=objdump -test -z "$RANLIB" && RANLIB=: -test -z "$STRIP" && STRIP=: -test -z "$ac_objext" && ac_objext=o - -# Determine commands to create old-style static archives. -old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs' -old_postinstall_cmds='chmod 644 $oldlib' -old_postuninstall_cmds= - -if test -n "$RANLIB"; then - case $host_os in - openbsd*) - old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds" - ;; - *) - old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds" - ;; - esac - old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" -fi - -# Only perform the check for file, if the check method requires it -case $deplibs_check_method in -file_magic*) - if test "$file_magic_cmd" = '$MAGIC_CMD'; then - AC_PATH_MAGIC - fi - ;; -esac - -AC_PROVIDE_IFELSE([AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no) -AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL], -enable_win32_dll=yes, enable_win32_dll=no) - -AC_ARG_ENABLE([libtool-lock], - [AC_HELP_STRING([--disable-libtool-lock], - [avoid locking (might break parallel builds)])]) -test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes - -AC_ARG_WITH([pic], - [AC_HELP_STRING([--with-pic], - [try to use only PIC/non-PIC objects @<:@default=use both@:>@])], - [pic_mode="$withval"], - [pic_mode=default]) -test -z "$pic_mode" && pic_mode=default - -# Use C for the default configuration in the libtool script -tagname= -AC_LIBTOOL_LANG_C_CONFIG -_LT_AC_TAGCONFIG -])# AC_LIBTOOL_SETUP - - -# _LT_AC_SYS_COMPILER -# ------------------- -AC_DEFUN([_LT_AC_SYS_COMPILER], -[AC_REQUIRE([AC_PROG_CC])dnl - -# If no C compiler was specified, use CC. -LTCC=${LTCC-"$CC"} - -# Allow CC to be a program name with arguments. -compiler=$CC -])# _LT_AC_SYS_COMPILER - - -# _LT_AC_SYS_LIBPATH_AIX -# ---------------------- -# Links a minimal program and checks the executable -# for the system default hardcoded library path. In most cases, -# this is /usr/lib:/lib, but when the MPI compilers are used -# the location of the communication and MPI libs are included too. -# If we don't find anything, use the default library path according -# to the aix ld manual. -AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX], -[AC_LINK_IFELSE(AC_LANG_PROGRAM,[ -aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } -}'` -# Check for a 64-bit object if we didn't find anything. -if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } -}'`; fi],[]) -if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi -])# _LT_AC_SYS_LIBPATH_AIX - - -# _LT_AC_SHELL_INIT(ARG) -# ---------------------- -AC_DEFUN([_LT_AC_SHELL_INIT], -[ifdef([AC_DIVERSION_NOTICE], - [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)], - [AC_DIVERT_PUSH(NOTICE)]) -$1 -AC_DIVERT_POP -])# _LT_AC_SHELL_INIT - - -# _LT_AC_PROG_ECHO_BACKSLASH -# -------------------------- -# Add some code to the start of the generated configure script which -# will find an echo command which doesn't interpret backslashes. -AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH], -[_LT_AC_SHELL_INIT([ -# Check that we are running under the correct shell. -SHELL=${CONFIG_SHELL-/bin/sh} - -case X$ECHO in -X*--fallback-echo) - # Remove one level of quotation (which was required for Make). - ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','` - ;; -esac - -echo=${ECHO-echo} -if test "X[$]1" = X--no-reexec; then - # Discard the --no-reexec flag, and continue. - shift -elif test "X[$]1" = X--fallback-echo; then - # Avoid inline document here, it may be left over - : -elif test "X`($echo '\t') 2>/dev/null`" = 'X\t' ; then - # Yippee, $echo works! - : -else - # Restart under the correct shell. - exec $SHELL "[$]0" --no-reexec ${1+"[$]@"} -fi - -if test "X[$]1" = X--fallback-echo; then - # used as fallback echo - shift - cat <<EOF -[$]* -EOF - exit 0 -fi - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi - -if test -z "$ECHO"; then -if test "X${echo_test_string+set}" != Xset; then -# find a string as large as possible, as long as the shell can cope with it - for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do - # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ... - if (echo_test_string="`eval $cmd`") 2>/dev/null && - echo_test_string="`eval $cmd`" && - (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null - then - break - fi - done -fi - -if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - : -else - # The Solaris, AIX, and Digital Unix default echo programs unquote - # backslashes. This makes it impossible to quote backslashes using - # echo "$something" | sed 's/\\/\\\\/g' - # - # So, first we look for a working echo in the user's PATH. - - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for dir in $PATH /usr/ucb; do - IFS="$lt_save_ifs" - if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && - test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - echo="$dir/echo" - break - fi - done - IFS="$lt_save_ifs" - - if test "X$echo" = Xecho; then - # We didn't find a better echo, so look for alternatives. - if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - # This shell has a builtin print -r that does the trick. - echo='print -r' - elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) && - test "X$CONFIG_SHELL" != X/bin/ksh; then - # If we have ksh, try running configure again with it. - ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} - export ORIGINAL_CONFIG_SHELL - CONFIG_SHELL=/bin/ksh - export CONFIG_SHELL - exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"} - else - # Try using printf. - echo='printf %s\n' - if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - # Cool, printf works - : - elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && - test "X$echo_testing_string" = 'X\t' && - echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL - export CONFIG_SHELL - SHELL="$CONFIG_SHELL" - export SHELL - echo="$CONFIG_SHELL [$]0 --fallback-echo" - elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && - test "X$echo_testing_string" = 'X\t' && - echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - echo="$CONFIG_SHELL [$]0 --fallback-echo" - else - # maybe with a smaller string... - prev=: - - for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do - if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null - then - break - fi - prev="$cmd" - done - - if test "$prev" != 'sed 50q "[$]0"'; then - echo_test_string=`eval $prev` - export echo_test_string - exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"} - else - # Oops. We lost completely, so just stick with echo. - echo=echo - fi - fi - fi - fi -fi -fi - -# Copy echo and quote the copy suitably for passing to libtool from -# the Makefile, instead of quoting the original, which is used later. -ECHO=$echo -if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then - ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo" -fi - -AC_SUBST(ECHO) -])])# _LT_AC_PROG_ECHO_BACKSLASH - - -# _LT_AC_LOCK -# ----------- -AC_DEFUN([_LT_AC_LOCK], -[AC_ARG_ENABLE([libtool-lock], - [AC_HELP_STRING([--disable-libtool-lock], - [avoid locking (might break parallel builds)])]) -test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes - -# Some flags need to be propagated to the compiler or linker for good -# libtool support. -case $host in -ia64-*-hpux*) - # Find out which ABI we are using. - echo 'int i;' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then - case `/usr/bin/file conftest.$ac_objext` in - *ELF-32*) - HPUX_IA64_MODE="32" - ;; - *ELF-64*) - HPUX_IA64_MODE="64" - ;; - esac - fi - rm -rf conftest* - ;; -*-*-irix6*) - # Find out which ABI we are using. - echo '[#]line __oline__ "configure"' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then - if test "$lt_cv_prog_gnu_ld" = yes; then - case `/usr/bin/file conftest.$ac_objext` in - *32-bit*) - LD="${LD-ld} -melf32bsmip" - ;; - *N32*) - LD="${LD-ld} -melf32bmipn32" - ;; - *64-bit*) - LD="${LD-ld} -melf64bmip" - ;; - esac - else - case `/usr/bin/file conftest.$ac_objext` in - *32-bit*) - LD="${LD-ld} -32" - ;; - *N32*) - LD="${LD-ld} -n32" - ;; - *64-bit*) - LD="${LD-ld} -64" - ;; - esac - fi - fi - rm -rf conftest* - ;; - -x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*) - # Find out which ABI we are using. - echo 'int i;' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then - case "`/usr/bin/file conftest.o`" in - *32-bit*) - LINUX_64_MODE="32" - case $host in - x86_64-*linux*) - LD="${LD-ld} -m elf_i386" - ;; - ppc64-*linux*) - LD="${LD-ld} -m elf32ppclinux" - ;; - s390x-*linux*) - LD="${LD-ld} -m elf_s390" - ;; - sparc64-*linux*) - LD="${LD-ld} -m elf32_sparc" - ;; - esac - ;; - *64-bit*) - LINUX_64_MODE="64" - case $host in - x86_64-*linux*) - LD="${LD-ld} -m elf_x86_64" - ;; - ppc*-*linux*|powerpc*-*linux*) - LD="${LD-ld} -m elf64ppc" - ;; - s390*-*linux*) - LD="${LD-ld} -m elf64_s390" - ;; - sparc*-*linux*) - LD="${LD-ld} -m elf64_sparc" - ;; - esac - ;; - esac - fi - rm -rf conftest* - ;; - -*-*-sco3.2v5*) - # On SCO OpenServer 5, we need -belf to get full-featured binaries. - SAVE_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -belf" - AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, - [AC_LANG_PUSH(C) - AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) - AC_LANG_POP]) - if test x"$lt_cv_cc_needs_belf" != x"yes"; then - # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf - CFLAGS="$SAVE_CFLAGS" - fi - ;; -AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL], -[*-*-cygwin* | *-*-mingw* | *-*-pw32*) - AC_CHECK_TOOL(DLLTOOL, dlltool, false) - AC_CHECK_TOOL(AS, as, false) - AC_CHECK_TOOL(OBJDUMP, objdump, false) - ;; - ]) -esac - -need_locks="$enable_libtool_lock" - -])# _LT_AC_LOCK - - -# AC_LIBTOOL_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, -# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE]) -# ---------------------------------------------------------------- -# Check whether the given compiler option works -AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], -[AC_REQUIRE([LT_AC_PROG_SED]) -AC_CACHE_CHECK([$1], [$2], - [$2=no - ifelse([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4]) - printf "$lt_simple_compile_test_code" > conftest.$ac_ext - lt_compiler_flag="$3" - # Insert the option either (1) after the last *FLAGS variable, or - # (2) before a word containing "conftest.", or (3) at the end. - # Note that $ac_compile itself does not contain backslashes and begins - # with a dollar sign (not a hyphen), so the echo should work correctly. - # The option is referenced via a variable to avoid confusing sed. - lt_compile=`echo "$ac_compile" | $SED \ - -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ - -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD) - (eval "$lt_compile" 2>conftest.err) - ac_status=$? - cat conftest.err >&AS_MESSAGE_LOG_FD - echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD - if (exit $ac_status) && test -s "$ac_outfile"; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test ! -s conftest.err; then - $2=yes - fi - fi - $rm conftest* -]) - -if test x"[$]$2" = xyes; then - ifelse([$5], , :, [$5]) -else - ifelse([$6], , :, [$6]) -fi -])# AC_LIBTOOL_COMPILER_OPTION - - -# AC_LIBTOOL_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, -# [ACTION-SUCCESS], [ACTION-FAILURE]) -# ------------------------------------------------------------ -# Check whether the given compiler option works -AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], -[AC_CACHE_CHECK([$1], [$2], - [$2=no - save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS $3" - printf "$lt_simple_link_test_code" > conftest.$ac_ext - if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s conftest.err; then - # Append any errors to the config.log. - cat conftest.err 1>&AS_MESSAGE_LOG_FD - else - $2=yes - fi - fi - $rm conftest* - LDFLAGS="$save_LDFLAGS" -]) - -if test x"[$]$2" = xyes; then - ifelse([$4], , :, [$4]) -else - ifelse([$5], , :, [$5]) -fi -])# AC_LIBTOOL_LINKER_OPTION - - -# AC_LIBTOOL_SYS_MAX_CMD_LEN -# -------------------------- -AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], -[# 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 - testring="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; - ;; - - cygwin* | mingw*) - # On Win9x/ME, this test blows up -- it succeeds, but takes - # about 5 minutes as the teststring grows exponentially. - # Worse, since 9x/ME are not pre-emptively multitasking, - # you end up with a "frozen" computer, even though with patience - # the test eventually succeeds (with a max line length of 256k). - # Instead, let's just punt: use the minimum linelength reported by - # all of the supported platforms: 8192 (on NT/2K/XP). - lt_cv_sys_max_cmd_len=8192; - ;; - - *) - # If test is not a shell built-in, we'll probably end up computing a - # maximum length that is only half of the actual maximum length, but - # we can't tell. - while (test "X"`$CONFIG_SHELL [$]0 --fallback-echo "X$testring" 2>/dev/null` \ - = "XX$testring") >/dev/null 2>&1 && - new_result=`expr "X$testring" : ".*" 2>&1` && - lt_cv_sys_max_cmd_len=$new_result && - test $i != 17 # 1/2 MB should be enough - do - i=`expr $i + 1` - testring=$testring$testring - done - testring= - # Add a significant safety factor because C++ compilers can tack on massive - # amounts of additional arguments before passing them to the linker. - # It appears as though 1/2 is a usable value. - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` - ;; - esac -]) -if test -n $lt_cv_sys_max_cmd_len ; then - AC_MSG_RESULT($lt_cv_sys_max_cmd_len) -else - AC_MSG_RESULT(none) -fi -])# AC_LIBTOOL_SYS_MAX_CMD_LEN - - -# _LT_AC_CHECK_DLFCN -# -------------------- -AC_DEFUN([_LT_AC_CHECK_DLFCN], -[AC_CHECK_HEADERS(dlfcn.h)dnl -])# _LT_AC_CHECK_DLFCN - - -# _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, -# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) -# ------------------------------------------------------------------ -AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF], -[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl -if test "$cross_compiling" = yes; then : - [$4] -else - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext <<EOF -[#line __oline__ "configure" -#include "confdefs.h" - -#if HAVE_DLFCN_H -#include <dlfcn.h> -#endif - -#include <stdio.h> - -#ifdef RTLD_GLOBAL -# define LT_DLGLOBAL RTLD_GLOBAL -#else -# ifdef DL_GLOBAL -# define LT_DLGLOBAL DL_GLOBAL -# else -# define LT_DLGLOBAL 0 -# endif -#endif - -/* We may have to define LT_DLLAZY_OR_NOW in the command line if we - find out it does not work in some platform. */ -#ifndef LT_DLLAZY_OR_NOW -# ifdef RTLD_LAZY -# define LT_DLLAZY_OR_NOW RTLD_LAZY -# else -# ifdef DL_LAZY -# define LT_DLLAZY_OR_NOW DL_LAZY -# else -# ifdef RTLD_NOW -# define LT_DLLAZY_OR_NOW RTLD_NOW -# else -# ifdef DL_NOW -# define LT_DLLAZY_OR_NOW DL_NOW -# else -# define LT_DLLAZY_OR_NOW 0 -# endif -# endif -# endif -# endif -#endif - -#ifdef __cplusplus -extern "C" void exit (int); -#endif - -void fnord() { int i=42;} -int main () -{ - void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); - int status = $lt_dlunknown; - - if (self) - { - if (dlsym (self,"fnord")) status = $lt_dlno_uscore; - else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; - /* dlclose (self); */ - } - - exit (status); -}] -EOF - if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then - (./conftest; exit; ) 2>/dev/null - lt_status=$? - case x$lt_status in - x$lt_dlno_uscore) $1 ;; - x$lt_dlneed_uscore) $2 ;; - x$lt_unknown|x*) $3 ;; - esac - else : - # compilation failed - $3 - fi -fi -rm -fr conftest* -])# _LT_AC_TRY_DLOPEN_SELF - - -# AC_LIBTOOL_DLOPEN_SELF -# ------------------- -AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], -[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl -if test "x$enable_dlopen" != xyes; then - enable_dlopen=unknown - enable_dlopen_self=unknown - enable_dlopen_self_static=unknown -else - lt_cv_dlopen=no - lt_cv_dlopen_libs= - - case $host_os in - beos*) - lt_cv_dlopen="load_add_on" - lt_cv_dlopen_libs= - lt_cv_dlopen_self=yes - ;; - - mingw* | pw32*) - lt_cv_dlopen="LoadLibrary" - lt_cv_dlopen_libs= - ;; - - cygwin*) - lt_cv_dlopen="dlopen" - lt_cv_dlopen_libs= - ;; - - darwin*) - # if libdl is installed we need to link against it - AC_CHECK_LIB([dl], [dlopen], - [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[ - lt_cv_dlopen="dyld" - lt_cv_dlopen_libs= - lt_cv_dlopen_self=yes - ]) - ;; - - *) - AC_CHECK_FUNC([shl_load], - [lt_cv_dlopen="shl_load"], - [AC_CHECK_LIB([dld], [shl_load], - [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"], - [AC_CHECK_FUNC([dlopen], - [lt_cv_dlopen="dlopen"], - [AC_CHECK_LIB([dl], [dlopen], - [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"], - [AC_CHECK_LIB([svld], [dlopen], - [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"], - [AC_CHECK_LIB([dld], [dld_link], - [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"]) - ]) - ]) - ]) - ]) - ]) - ;; - esac - - if test "x$lt_cv_dlopen" != xno; then - enable_dlopen=yes - else - enable_dlopen=no - fi - - case $lt_cv_dlopen in - dlopen) - save_CPPFLAGS="$CPPFLAGS" - test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" - - save_LDFLAGS="$LDFLAGS" - eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" - - save_LIBS="$LIBS" - LIBS="$lt_cv_dlopen_libs $LIBS" - - AC_CACHE_CHECK([whether a program can dlopen itself], - lt_cv_dlopen_self, [dnl - _LT_AC_TRY_DLOPEN_SELF( - lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, - lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) - ]) - - if test "x$lt_cv_dlopen_self" = xyes; then - LDFLAGS="$LDFLAGS $link_static_flag" - AC_CACHE_CHECK([whether a statically linked program can dlopen itself], - lt_cv_dlopen_self_static, [dnl - _LT_AC_TRY_DLOPEN_SELF( - lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, - lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) - ]) - fi - - CPPFLAGS="$save_CPPFLAGS" - LDFLAGS="$save_LDFLAGS" - LIBS="$save_LIBS" - ;; - esac - - case $lt_cv_dlopen_self in - yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; - *) enable_dlopen_self=unknown ;; - esac - - case $lt_cv_dlopen_self_static in - yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; - *) enable_dlopen_self_static=unknown ;; - esac -fi -])# AC_LIBTOOL_DLOPEN_SELF - - -# AC_LIBTOOL_PROG_CC_C_O([TAGNAME]) -# --------------------------------- -# Check to see if options -c and -o are simultaneously supported by compiler -AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O], -[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl -AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext], - [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)], - [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no - $rm -r conftest 2>/dev/null - mkdir conftest - cd conftest - mkdir out - printf "$lt_simple_compile_test_code" > conftest.$ac_ext - - # According to Tom Tromey, Ian Lance Taylor reported there are C compilers - # that will create temporary files in the current directory regardless of - # the output directory. Thus, making CWD read-only will cause this test - # to fail, enabling locking or at least warning the user not to do parallel - # builds. - chmod -w . - - lt_compiler_flag="-o out/conftest2.$ac_objext" - # Insert the option either (1) after the last *FLAGS variable, or - # (2) before a word containing "conftest.", or (3) at the end. - # Note that $ac_compile itself does not contain backslashes and begins - # with a dollar sign (not a hyphen), so the echo should work correctly. - lt_compile=`echo "$ac_compile" | $SED \ - -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ - -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD) - (eval "$lt_compile" 2>out/conftest.err) - ac_status=$? - cat out/conftest.err >&AS_MESSAGE_LOG_FD - echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD - if (exit $ac_status) && test -s out/conftest2.$ac_objext - then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test ! -s out/conftest.err; then - _LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes - fi - fi - chmod u+w . - $rm conftest* out/* - rmdir out - cd .. - rmdir conftest - $rm conftest* -]) -])# AC_LIBTOOL_PROG_CC_C_O - - -# AC_LIBTOOL_SYS_HARD_LINK_LOCKS([TAGNAME]) -# ----------------------------------------- -# Check to see if we can do hard links to lock some files if needed -AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], -[AC_REQUIRE([_LT_AC_LOCK])dnl - -hard_links="nottested" -if test "$_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then - # do not overwrite the value of need_locks provided by the user - AC_MSG_CHECKING([if we can lock with hard links]) - hard_links=yes - $rm conftest* - ln conftest.a conftest.b 2>/dev/null && hard_links=no - touch conftest.a - ln conftest.a conftest.b 2>&5 || hard_links=no - ln conftest.a conftest.b 2>/dev/null && hard_links=no - AC_MSG_RESULT([$hard_links]) - if test "$hard_links" = no; then - AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe]) - need_locks=warn - fi -else - need_locks=no -fi -])# AC_LIBTOOL_SYS_HARD_LINK_LOCKS - - -# AC_LIBTOOL_OBJDIR -# ----------------- -AC_DEFUN([AC_LIBTOOL_OBJDIR], -[AC_CACHE_CHECK([for objdir], [lt_cv_objdir], -[rm -f .libs 2>/dev/null -mkdir .libs 2>/dev/null -if test -d .libs; then - lt_cv_objdir=.libs -else - # MS-DOS does not allow filenames that begin with a dot. - lt_cv_objdir=_libs -fi -rmdir .libs 2>/dev/null]) -objdir=$lt_cv_objdir -])# AC_LIBTOOL_OBJDIR - - -# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH([TAGNAME]) -# ---------------------------------------------- -# Check hardcoding attributes. -AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], -[AC_MSG_CHECKING([how to hardcode library paths into programs]) -_LT_AC_TAGVAR(hardcode_action, $1)= -if test -n "$_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)" || \ - test -n "$_LT_AC_TAGVAR(runpath_var $1)" || \ - test "X$_LT_AC_TAGVAR(hardcode_automatic, $1)"="Xyes" ; then - - # We can hardcode non-existant directories. - if test "$_LT_AC_TAGVAR(hardcode_direct, $1)" != no && - # If the only mechanism to avoid hardcoding is shlibpath_var, we - # have to relink, otherwise we might link with an installed library - # when we should be linking with a yet-to-be-installed one - ## test "$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)" != no && - test "$_LT_AC_TAGVAR(hardcode_minus_L, $1)" != no; then - # Linking always hardcodes the temporary library directory. - _LT_AC_TAGVAR(hardcode_action, $1)=relink - else - # We can link without hardcoding, and we can hardcode nonexisting dirs. - _LT_AC_TAGVAR(hardcode_action, $1)=immediate - fi -else - # We cannot hardcode anything, or else we can only hardcode existing - # directories. - _LT_AC_TAGVAR(hardcode_action, $1)=unsupported -fi -AC_MSG_RESULT([$_LT_AC_TAGVAR(hardcode_action, $1)]) - -if test "$_LT_AC_TAGVAR(hardcode_action, $1)" = relink; then - # Fast installation is not supported - enable_fast_install=no -elif test "$shlibpath_overrides_runpath" = yes || - test "$enable_shared" = no; then - # Fast installation is not necessary - enable_fast_install=needless -fi -])# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH - - -# AC_LIBTOOL_SYS_LIB_STRIP -# ------------------------ -AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP], -[striplib= -old_striplib= -AC_MSG_CHECKING([whether stripping libraries is possible]) -if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then - test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" - test -z "$striplib" && striplib="$STRIP --strip-unneeded" - AC_MSG_RESULT([yes]) -else -# FIXME - insert some real tests, host_os isn't really good enough - case $host_os in - darwin*) - if test -n "$STRIP" ; then - striplib="$STRIP -x" - AC_MSG_RESULT([yes]) - else - AC_MSG_RESULT([no]) -fi - ;; - *) - AC_MSG_RESULT([no]) - ;; - esac -fi -])# AC_LIBTOOL_SYS_LIB_STRIP - - -# AC_LIBTOOL_SYS_DYNAMIC_LINKER -# ----------------------------- -# PORTME Fill in your ld.so characteristics -AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER], -[AC_MSG_CHECKING([dynamic linker characteristics]) -library_names_spec= -libname_spec='lib$name' -soname_spec= -shrext=".so" -postinstall_cmds= -postuninstall_cmds= -finish_cmds= -finish_eval= -shlibpath_var= -shlibpath_overrides_runpath=unknown -version_type=none -dynamic_linker="$host_os ld.so" -sys_lib_dlsearch_path_spec="/lib /usr/lib" -sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" -need_lib_prefix=unknown -hardcode_into_libs=no - -# when you set need_version to no, make sure it does not cause -set_version -# flags to be left without arguments -need_version=unknown - -case $host_os in -aix3*) - version_type=linux - library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' - shlibpath_var=LIBPATH - - # AIX 3 has no versioning support, so we append a major version to the name. - soname_spec='${libname}${release}${shared_ext}$major' - ;; - -aix4* | aix5*) - version_type=linux - need_lib_prefix=no - need_version=no - hardcode_into_libs=yes - if test "$host_cpu" = ia64; then - # AIX 5 supports IA64 - library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' - shlibpath_var=LD_LIBRARY_PATH - else - # With GCC up to 2.95.x, collect2 would create an import file - # for dependence libraries. The import file would start with - # the line `#! .'. This would cause the generated library to - # depend on `.', always an invalid library. This was fixed in - # development snapshots of GCC prior to 3.0. - case $host_os in - aix4 | aix4.[[01]] | aix4.[[01]].*) - if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' - echo ' yes ' - echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then - : - else - can_build_shared=no - fi - ;; - esac - # AIX (on Power*) has no versioning support, so currently we can not hardcode correct - # soname into executable. Probably we can add versioning support to - # collect2, so additional links can be useful in future. - if test "$aix_use_runtimelinking" = yes; then - # If using run time linking (on AIX 4.2 or later) use lib<name>.so - # instead of lib<name>.a to let people know that these are not - # typical AIX shared libraries. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - else - # We preserve .a as extension for shared libraries through AIX4.2 - # and later when we are not doing run time linking. - library_names_spec='${libname}${release}.a $libname.a' - soname_spec='${libname}${release}${shared_ext}$major' - fi - shlibpath_var=LIBPATH - fi - ;; - -amigaos*) - library_names_spec='$libname.ixlibrary $libname.a' - # Create ${libname}_ixlibrary.a entries in /sys/libs. - finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done' - ;; - -beos*) - library_names_spec='${libname}${shared_ext}' - dynamic_linker="$host_os ld.so" - shlibpath_var=LIBRARY_PATH - ;; - -bsdi4*) - version_type=linux - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" - sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" - # the default ld.so.conf also contains /usr/contrib/lib and - # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow - # libtool to hard-code these into programs - ;; - -cygwin* | mingw* | pw32*) - version_type=windows - shrext=".dll" - need_version=no - need_lib_prefix=no - - case $GCC,$host_os in - yes,cygwin* | yes,mingw* | yes,pw32*) - library_names_spec='$libname.dll.a' - # DLL is installed to $(libdir)/../bin by postinstall_cmds - postinstall_cmds='base_file=`basename \${file}`~ - dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~ - dldir=$destdir/`dirname \$dlpath`~ - test -d \$dldir || mkdir -p \$dldir~ - $install_prog $dir/$dlname \$dldir/$dlname' - postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ - dlpath=$dir/\$dldll~ - $rm \$dlpath' - shlibpath_overrides_runpath=yes - - case $host_os in - cygwin*) - # Cygwin DLLs use 'cyg' prefix rather than 'lib' - soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' - sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib" - ;; - mingw*) - # MinGW DLLs use traditional 'lib' prefix - soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' - sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` - if echo "$sys_lib_search_path_spec" | [grep ';[c-zC-Z]:/' >/dev/null]; then - # It is most probably a Windows format PATH printed by - # mingw gcc, but we are running on Cygwin. Gcc prints its search - # path with ; separators, and with drive letters. We can handle the - # drive letters (cygwin fileutils understands them), so leave them, - # especially as we might pass files found there to a mingw objdump, - # which wouldn't understand a cygwinified path. Ahh. - sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` - else - sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` - fi - ;; - pw32*) - # pw32 DLLs use 'pw' prefix rather than 'lib' - library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' - ;; - esac - ;; - - *) - library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib' - ;; - esac - dynamic_linker='Win32 ld.exe' - # FIXME: first we should search . and the directory the executable is in - shlibpath_var=PATH - ;; - -darwin* | rhapsody*) - dynamic_linker="$host_os dyld" - version_type=darwin - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${versuffix}$shared_ext ${libname}${release}${major}$shared_ext ${libname}$shared_ext' - soname_spec='${libname}${release}${major}$shared_ext' - shlibpath_overrides_runpath=yes - shlibpath_var=DYLD_LIBRARY_PATH - shrext='$(test .$module = .yes && echo .so || echo .dylib)' - # Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same. - if test "$GCC" = yes; then - sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"` - else - sys_lib_search_path_spec='/lib /usr/lib /usr/local/lib' - fi - sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' - ;; - -dgux*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -freebsd1*) - dynamic_linker=no - ;; - -kfreebsd*-gnu*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - dynamic_linker='GNU ld.so' - ;; - -freebsd*) - objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` - version_type=freebsd-$objformat - case $version_type in - freebsd-elf*) - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' - need_version=no - need_lib_prefix=no - ;; - freebsd-*) - library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' - need_version=yes - ;; - esac - shlibpath_var=LD_LIBRARY_PATH - case $host_os in - freebsd2*) - shlibpath_overrides_runpath=yes - ;; - freebsd3.[01]* | freebsdelf3.[01]*) - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - *) # from 3.2 on - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - esac - ;; - -gnu*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - hardcode_into_libs=yes - ;; - -hpux9* | hpux10* | hpux11*) - # Give a soname corresponding to the major version so that dld.sl refuses to - # link against other versions. - version_type=sunos - need_lib_prefix=no - need_version=no - case "$host_cpu" in - ia64*) - shrext='.so' - hardcode_into_libs=yes - dynamic_linker="$host_os dld.so" - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - if test "X$HPUX_IA64_MODE" = X32; then - sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" - else - sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" - fi - sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec - ;; - hppa*64*) - shrext='.sl' - hardcode_into_libs=yes - dynamic_linker="$host_os dld.sl" - shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH - shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" - sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec - ;; - *) - shrext='.sl' - dynamic_linker="$host_os dld.sl" - shlibpath_var=SHLIB_PATH - shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - ;; - esac - # HP-UX runs *really* slowly unless shared libraries are mode 555. - postinstall_cmds='chmod 555 $lib' - ;; - -irix5* | irix6* | nonstopux*) - case $host_os in - nonstopux*) version_type=nonstopux ;; - *) - if test "$lt_cv_prog_gnu_ld" = yes; then - version_type=linux - else - version_type=irix - fi ;; - esac - need_lib_prefix=no - need_version=no - soname_spec='${libname}${release}${shared_ext}$major' - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}' - case $host_os in - irix5* | nonstopux*) - libsuff= shlibsuff= - ;; - *) - case $LD in # libtool.m4 will add one of these switches to LD - *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") - libsuff= shlibsuff= libmagic=32-bit;; - *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") - libsuff=32 shlibsuff=N32 libmagic=N32;; - *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") - libsuff=64 shlibsuff=64 libmagic=64-bit;; - *) libsuff= shlibsuff= libmagic=never-match;; - esac - ;; - esac - shlibpath_var=LD_LIBRARY${shlibsuff}_PATH - shlibpath_overrides_runpath=no - sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" - sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" - hardcode_into_libs=yes - ;; - -# No shared lib support for Linux oldld, aout, or coff. -linux*oldld* | linux*aout* | linux*coff*) - dynamic_linker=no - ;; - -# This must be Linux ELF. -linux*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' - libsuff= - if test "x$LINUX_64_MODE" = x64; then - # Some platforms are per default 64-bit, so there's no /lib64 - if test -d /lib64; then - libsuff=64 - fi - fi - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff}" - sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" - # This implies no fast_install, which is unacceptable. - # Some rework will be needed to allow for fast_install - # before this can be enabled. - hardcode_into_libs=yes - - # We used to test for /lib/ld.so.1 and disable shared libraries on - # powerpc, because MkLinux only supported shared libraries with the - # GNU dynamic linker. Since this was broken with cross compilers, - # most powerpc-linux boxes support dynamic linking these days and - # people can always --disable-shared, the test was removed, and we - # assume the GNU/Linux dynamic linker is in use. - dynamic_linker='GNU/Linux ld.so' - ;; - -netbsd*) - version_type=sunos - need_lib_prefix=no - need_version=no - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - dynamic_linker='NetBSD (a.out) ld.so' - else - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - dynamic_linker='NetBSD ld.elf_so' - fi - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - -newsos6) - version_type=linux - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - ;; - -nto-qnx*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - ;; - -openbsd*) - version_type=sunos - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - shlibpath_var=LD_LIBRARY_PATH - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - case $host_os in - openbsd2.[[89]] | openbsd2.[[89]].*) - shlibpath_overrides_runpath=no - ;; - *) - shlibpath_overrides_runpath=yes - ;; - esac - else - shlibpath_overrides_runpath=yes - fi - ;; - -os2*) - libname_spec='$name' - shrext=".dll" - need_lib_prefix=no - library_names_spec='$libname${shared_ext} $libname.a' - dynamic_linker='OS/2 ld.exe' - shlibpath_var=LIBPATH - ;; - -osf3* | osf4* | osf5*) - version_type=osf - need_lib_prefix=no - need_version=no - soname_spec='${libname}${release}${shared_ext}$major' - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" - sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" - ;; - -sco3.2v5*) - version_type=osf - soname_spec='${libname}${release}${shared_ext}$major' - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - shlibpath_var=LD_LIBRARY_PATH - ;; - -solaris*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - # ldd complains unless libraries are executable - postinstall_cmds='chmod +x $lib' - ;; - -sunos4*) - version_type=sunos - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' - finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - if test "$with_gnu_ld" = yes; then - need_lib_prefix=no - fi - need_version=yes - ;; - -sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - version_type=linux - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - case $host_vendor in - sni) - shlibpath_overrides_runpath=no - need_lib_prefix=no - export_dynamic_flag_spec='${wl}-Blargedynsym' - runpath_var=LD_RUN_PATH - ;; - siemens) - need_lib_prefix=no - ;; - motorola) - need_lib_prefix=no - need_version=no - shlibpath_overrides_runpath=no - sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' - ;; - esac - ;; - -sysv4*MP*) - if test -d /usr/nec ;then - version_type=linux - library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' - soname_spec='$libname${shared_ext}.$major' - shlibpath_var=LD_LIBRARY_PATH - fi - ;; - -uts4*) - version_type=linux - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -*) - dynamic_linker=no - ;; -esac -AC_MSG_RESULT([$dynamic_linker]) -test "$dynamic_linker" = no && can_build_shared=no -])# AC_LIBTOOL_SYS_DYNAMIC_LINKER - - -# _LT_AC_TAGCONFIG -# ---------------- -AC_DEFUN([_LT_AC_TAGCONFIG], -[AC_ARG_WITH([tags], - [AC_HELP_STRING([--with-tags@<:@=TAGS@:>@], - [include additional configurations @<:@automatic@:>@])], - [tagnames="$withval"]) - -if test -f "$ltmain" && test -n "$tagnames"; then - if test ! -f "${ofile}"; then - AC_MSG_WARN([output file `$ofile' does not exist]) - fi - - if test -z "$LTCC"; then - eval "`$SHELL ${ofile} --config | grep '^LTCC='`" - if test -z "$LTCC"; then - AC_MSG_WARN([output file `$ofile' does not look like a libtool script]) - else - AC_MSG_WARN([using `LTCC=$LTCC', extracted from `$ofile']) - fi - fi - - # Extract list of available tagged configurations in $ofile. - # Note that this assumes the entire list is on one line. - available_tags=`grep "^available_tags=" "${ofile}" | $SED -e 's/available_tags=\(.*$\)/\1/' -e 's/\"//g'` - - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," - for tagname in $tagnames; do - IFS="$lt_save_ifs" - # Check whether tagname contains only valid characters - case `$echo "X$tagname" | $Xsed -e 's:[[-_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890,/]]::g'` in - "") ;; - *) AC_MSG_ERROR([invalid tag name: $tagname]) - ;; - esac - - if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "${ofile}" > /dev/null - then - AC_MSG_ERROR([tag name \"$tagname\" already exists]) - fi - - # Update the list of available tags. - if test -n "$tagname"; then - echo appending configuration tag \"$tagname\" to $ofile - - case $tagname in - CXX) - if test -n "$CXX" && test "X$CXX" != "Xno"; then - AC_LIBTOOL_LANG_CXX_CONFIG - else - tagname="" - fi - ;; - - F77) - if test -n "$F77" && test "X$F77" != "Xno"; then - AC_LIBTOOL_LANG_F77_CONFIG - else - tagname="" - fi - ;; - - GCJ) - if test -n "$GCJ" && test "X$GCJ" != "Xno"; then - AC_LIBTOOL_LANG_GCJ_CONFIG - else - tagname="" - fi - ;; - - RC) - AC_LIBTOOL_LANG_RC_CONFIG - ;; - - *) - AC_MSG_ERROR([Unsupported tag name: $tagname]) - ;; - esac - - # Append the new tag name to the list of available tags. - if test -n "$tagname" ; then - available_tags="$available_tags $tagname" - fi - fi - done - IFS="$lt_save_ifs" - - # Now substitute the updated list of available tags. - if eval "sed -e 's/^available_tags=.*\$/available_tags=\"$available_tags\"/' \"$ofile\" > \"${ofile}T\""; then - mv "${ofile}T" "$ofile" - chmod +x "$ofile" - else - rm -f "${ofile}T" - AC_MSG_ERROR([unable to update list of available tagged configurations.]) - fi -fi -])# _LT_AC_TAGCONFIG - - -# AC_LIBTOOL_DLOPEN -# ----------------- -# enable checks for dlopen support -AC_DEFUN([AC_LIBTOOL_DLOPEN], - [AC_BEFORE([$0],[AC_LIBTOOL_SETUP]) -])# AC_LIBTOOL_DLOPEN - - -# AC_LIBTOOL_WIN32_DLL -# -------------------- -# declare package support for building win32 dll's -AC_DEFUN([AC_LIBTOOL_WIN32_DLL], -[AC_BEFORE([$0], [AC_LIBTOOL_SETUP]) -])# AC_LIBTOOL_WIN32_DLL - - -# AC_ENABLE_SHARED([DEFAULT]) -# --------------------------- -# implement the --enable-shared flag -# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. -AC_DEFUN([AC_ENABLE_SHARED], -[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl -AC_ARG_ENABLE([shared], - [AC_HELP_STRING([--enable-shared@<:@=PKGS@:>@], - [build shared libraries @<:@default=]AC_ENABLE_SHARED_DEFAULT[@:>@])], - [p=${PACKAGE-default} - case $enableval in - yes) enable_shared=yes ;; - no) enable_shared=no ;; - *) - enable_shared=no - # Look at the argument we got. We use all the common list separators. - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," - for pkg in $enableval; do - IFS="$lt_save_ifs" - if test "X$pkg" = "X$p"; then - enable_shared=yes - fi - done - IFS="$lt_save_ifs" - ;; - esac], - [enable_shared=]AC_ENABLE_SHARED_DEFAULT) -])# AC_ENABLE_SHARED - - -# AC_DISABLE_SHARED -# ----------------- -#- set the default shared flag to --disable-shared -AC_DEFUN([AC_DISABLE_SHARED], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -AC_ENABLE_SHARED(no) -])# AC_DISABLE_SHARED - - -# AC_ENABLE_STATIC([DEFAULT]) -# --------------------------- -# implement the --enable-static flag -# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. -AC_DEFUN([AC_ENABLE_STATIC], -[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl -AC_ARG_ENABLE([static], - [AC_HELP_STRING([--enable-static@<:@=PKGS@:>@], - [build static libraries @<:@default=]AC_ENABLE_STATIC_DEFAULT[@:>@])], - [p=${PACKAGE-default} - case $enableval in - yes) enable_static=yes ;; - no) enable_static=no ;; - *) - enable_static=no - # Look at the argument we got. We use all the common list separators. - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," - for pkg in $enableval; do - IFS="$lt_save_ifs" - if test "X$pkg" = "X$p"; then - enable_static=yes - fi - done - IFS="$lt_save_ifs" - ;; - esac], - [enable_static=]AC_ENABLE_STATIC_DEFAULT) -])# AC_ENABLE_STATIC - - -# AC_DISABLE_STATIC -# ----------------- -# set the default static flag to --disable-static -AC_DEFUN([AC_DISABLE_STATIC], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -AC_ENABLE_STATIC(no) -])# AC_DISABLE_STATIC - - -# AC_ENABLE_FAST_INSTALL([DEFAULT]) -# --------------------------------- -# implement the --enable-fast-install flag -# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. -AC_DEFUN([AC_ENABLE_FAST_INSTALL], -[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl -AC_ARG_ENABLE([fast-install], - [AC_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@], - [optimize for fast installation @<:@default=]AC_ENABLE_FAST_INSTALL_DEFAULT[@:>@])], - [p=${PACKAGE-default} - case $enableval in - yes) enable_fast_install=yes ;; - no) enable_fast_install=no ;; - *) - enable_fast_install=no - # Look at the argument we got. We use all the common list separators. - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," - for pkg in $enableval; do - IFS="$lt_save_ifs" - if test "X$pkg" = "X$p"; then - enable_fast_install=yes - fi - done - IFS="$lt_save_ifs" - ;; - esac], - [enable_fast_install=]AC_ENABLE_FAST_INSTALL_DEFAULT) -])# AC_ENABLE_FAST_INSTALL - - -# AC_DISABLE_FAST_INSTALL -# ----------------------- -# set the default to --disable-fast-install -AC_DEFUN([AC_DISABLE_FAST_INSTALL], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -AC_ENABLE_FAST_INSTALL(no) -])# AC_DISABLE_FAST_INSTALL - - -# AC_LIBTOOL_PICMODE([MODE]) -# -------------------------- -# implement the --with-pic flag -# MODE is either `yes' or `no'. If omitted, it defaults to `both'. -AC_DEFUN([AC_LIBTOOL_PICMODE], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -pic_mode=ifelse($#,1,$1,default) -])# AC_LIBTOOL_PICMODE - - -# AC_PROG_EGREP -# ------------- -# This is predefined starting with Autoconf 2.54, so this conditional -# definition can be removed once we require Autoconf 2.54 or later. -m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP], -[AC_CACHE_CHECK([for egrep], [ac_cv_prog_egrep], - [if echo a | (grep -E '(a|b)') >/dev/null 2>&1 - then ac_cv_prog_egrep='grep -E' - else ac_cv_prog_egrep='egrep' - fi]) - EGREP=$ac_cv_prog_egrep - AC_SUBST([EGREP]) -])]) - - -# AC_PATH_TOOL_PREFIX -# ------------------- -# find a file program which can recognise shared library -AC_DEFUN([AC_PATH_TOOL_PREFIX], -[AC_REQUIRE([AC_PROG_EGREP])dnl -AC_MSG_CHECKING([for $1]) -AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, -[case $MAGIC_CMD in -[[\\/*] | ?:[\\/]*]) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. - ;; -*) - lt_save_MAGIC_CMD="$MAGIC_CMD" - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR -dnl $ac_dummy forces splitting on constant user-supplied paths. -dnl POSIX.2 word splitting is done only on the output of word expansions, -dnl not every word. This closes a longstanding sh security hole. - ac_dummy="ifelse([$2], , $PATH, [$2])" - for ac_dir in $ac_dummy; do - IFS="$lt_save_ifs" - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$1; then - lt_cv_path_MAGIC_CMD="$ac_dir/$1" - if test -n "$file_magic_test_file"; then - case $deplibs_check_method in - "file_magic "*) - file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" - MAGIC_CMD="$lt_cv_path_MAGIC_CMD" - if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | - $EGREP "$file_magic_regex" > /dev/null; then - : - else - cat <<EOF 1>&2 - -*** Warning: the command libtool uses to detect shared libraries, -*** $file_magic_cmd, produces output that libtool cannot recognize. -*** The result is that libtool may fail to recognize shared libraries -*** as such. This will affect the creation of libtool libraries that -*** depend on shared libraries, but programs linked with such libtool -*** libraries will work regardless of this problem. Nevertheless, you -*** may want to report the problem to your system manager and/or to -*** bug-libtool@gnu.org - -EOF - fi ;; - esac - fi - break - fi - done - IFS="$lt_save_ifs" - MAGIC_CMD="$lt_save_MAGIC_CMD" - ;; -esac]) -MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -if test -n "$MAGIC_CMD"; then - AC_MSG_RESULT($MAGIC_CMD) -else - AC_MSG_RESULT(no) -fi -])# AC_PATH_TOOL_PREFIX - - -# AC_PATH_MAGIC -# ------------- -# find a file program which can recognise a shared library -AC_DEFUN([AC_PATH_MAGIC], -[AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH) -if test -z "$lt_cv_path_MAGIC_CMD"; then - if test -n "$ac_tool_prefix"; then - AC_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH) - else - MAGIC_CMD=: - fi -fi -])# AC_PATH_MAGIC - - -# AC_PROG_LD -# ---------- -# find the pathname to the GNU or non-GNU linker -AC_DEFUN([AC_PROG_LD], -[AC_ARG_WITH([gnu-ld], - [AC_HELP_STRING([--with-gnu-ld], - [assume the C compiler uses GNU ld @<:@default=no@:>@])], - [test "$withval" = no || with_gnu_ld=yes], - [with_gnu_ld=no]) -AC_REQUIRE([LT_AC_PROG_SED])dnl -AC_REQUIRE([AC_PROG_CC])dnl -AC_REQUIRE([AC_CANONICAL_HOST])dnl -AC_REQUIRE([AC_CANONICAL_BUILD])dnl -ac_prog=ld -if test "$GCC" = yes; then - # Check if gcc -print-prog-name=ld gives a path. - AC_MSG_CHECKING([for ld used by $CC]) - case $host in - *-*-mingw*) - # gcc leaves a trailing carriage return which upsets mingw - ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; - *) - ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; - esac - case $ac_prog in - # Accept absolute paths. - [[\\/]]* | ?:[[\\/]]*) - re_direlt='/[[^/]][[^/]]*/\.\./' - # Canonicalize the pathname of ld - ac_prog=`echo $ac_prog| $SED 's%\\\\%/%g'` - while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do - ac_prog=`echo $ac_prog| $SED "s%$re_direlt%/%"` - done - test -z "$LD" && LD="$ac_prog" - ;; - "") - # If it fails, then pretend we aren't using GCC. - ac_prog=ld - ;; - *) - # If it is relative, then search for the first ld in PATH. - with_gnu_ld=unknown - ;; - esac -elif test "$with_gnu_ld" = yes; then - AC_MSG_CHECKING([for GNU ld]) -else - AC_MSG_CHECKING([for non-GNU ld]) -fi -AC_CACHE_VAL(lt_cv_path_LD, -[if test -z "$LD"; then - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - IFS="$lt_save_ifs" - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - lt_cv_path_LD="$ac_dir/$ac_prog" - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some GNU ld's only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. - case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in - *GNU* | *'with BFD'*) - test "$with_gnu_ld" != no && break - ;; - *) - test "$with_gnu_ld" != yes && break - ;; - esac - fi - done - IFS="$lt_save_ifs" -else - lt_cv_path_LD="$LD" # Let the user override the test with a path. -fi]) -LD="$lt_cv_path_LD" -if test -n "$LD"; then - AC_MSG_RESULT($LD) -else - AC_MSG_RESULT(no) -fi -test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) -AC_PROG_LD_GNU -])# AC_PROG_LD - - -# AC_PROG_LD_GNU -# -------------- -AC_DEFUN([AC_PROG_LD_GNU], -[AC_REQUIRE([AC_PROG_EGREP])dnl -AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, -[# I'd rather use --version here, but apparently some GNU ld's only accept -v. -case `$LD -v 2>&1 </dev/null` in -*GNU* | *'with BFD'*) - lt_cv_prog_gnu_ld=yes - ;; -*) - lt_cv_prog_gnu_ld=no - ;; -esac]) -with_gnu_ld=$lt_cv_prog_gnu_ld -])# AC_PROG_LD_GNU - - -# AC_PROG_LD_RELOAD_FLAG -# ---------------------- -# find reload flag for linker -# -- PORTME Some linkers may need a different reload flag. -AC_DEFUN([AC_PROG_LD_RELOAD_FLAG], -[AC_CACHE_CHECK([for $LD option to reload object files], - lt_cv_ld_reload_flag, - [lt_cv_ld_reload_flag='-r']) -reload_flag=$lt_cv_ld_reload_flag -case $reload_flag in -"" | " "*) ;; -*) reload_flag=" $reload_flag" ;; -esac -reload_cmds='$LD$reload_flag -o $output$reload_objs' -])# AC_PROG_LD_RELOAD_FLAG - - -# AC_DEPLIBS_CHECK_METHOD -# ----------------------- -# how to check for library dependencies -# -- PORTME fill in with the dynamic library characteristics -AC_DEFUN([AC_DEPLIBS_CHECK_METHOD], -[AC_CACHE_CHECK([how to recognise dependent libraries], -lt_cv_deplibs_check_method, -[lt_cv_file_magic_cmd='$MAGIC_CMD' -lt_cv_file_magic_test_file= -lt_cv_deplibs_check_method='unknown' -# Need to set the preceding variable on all platforms that support -# interlibrary dependencies. -# 'none' -- dependencies not supported. -# `unknown' -- same as none, but documents that we really don't know. -# 'pass_all' -- all dependencies passed with no checks. -# 'test_compile' -- check by making test program. -# 'file_magic [[regex]]' -- check by looking for files in library path -# which responds to the $file_magic_cmd with a given extended regex. -# If you have `file' or equivalent on your system and you're not sure -# whether `pass_all' will *always* work, you probably want this one. - -case $host_os in -aix4* | aix5*) - lt_cv_deplibs_check_method=pass_all - ;; - -beos*) - lt_cv_deplibs_check_method=pass_all - ;; - -bsdi4*) - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)' - lt_cv_file_magic_cmd='/usr/bin/file -L' - lt_cv_file_magic_test_file=/shlib/libc.so - ;; - -cygwin*) - lt_cv_deplibs_check_method=pass_all - ;; - -mingw* | pw32*) - # win32_libid is a shell function defined in ltmain.sh - lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' - lt_cv_file_magic_cmd='win32_libid' - ;; - -darwin* | rhapsody*) - # this will be overwritten by pass_all, but leave it in just in case - lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library' - lt_cv_file_magic_cmd='/usr/bin/file -L' - case "$host_os" in - rhapsody* | darwin1.[[012]]) - lt_cv_file_magic_test_file=`/System/Library/Frameworks/System.framework/System` - ;; - *) # Darwin 1.3 on - lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib' - ;; - esac - lt_cv_deplibs_check_method=pass_all - ;; - -freebsd* | kfreebsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - case $host_cpu in - i*86 ) - # Not sure whether the presence of OpenBSD here was a mistake. - # Let's accept both of them until this is cleared up. - lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[[3-9]]86 (compact )?demand paged shared library' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` - ;; - esac - else - lt_cv_deplibs_check_method=pass_all - fi - ;; - -gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - -hpux10.20* | hpux11*) - lt_cv_file_magic_cmd=/usr/bin/file - case "$host_cpu" in - ia64*) - lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64' - lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so - ;; - hppa*64*) - [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]'] - lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl - ;; - *) - lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library' - lt_cv_file_magic_test_file=/usr/lib/libc.sl - ;; - esac - ;; - -irix5* | irix6* | nonstopux*) - case $host_os in - irix5* | nonstopux*) - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" - ;; - *) - case $LD in - *-32|*"-32 ") libmagic=32-bit;; - *-n32|*"-n32 ") libmagic=N32;; - *-64|*"-64 ") libmagic=64-bit;; - *) libmagic=never-match;; - esac - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[[1234]] dynamic lib MIPS - version 1" - ;; - esac - lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` - lt_cv_deplibs_check_method=pass_all - ;; - -# This must be Linux ELF. -linux*) - case $host_cpu in - alpha* | hppa* | i*86 | ia64* | m68* | mips* | powerpc* | sparc* | s390* | sh* | x86_64* ) - lt_cv_deplibs_check_method=pass_all ;; - # the debian people say, arm and glibc 2.3.1 works for them with pass_all - arm* ) - lt_cv_deplibs_check_method=pass_all ;; - *) - # glibc up to 2.1.1 does not perform some relocations on ARM - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;; - esac - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' - else - lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$' - fi - ;; - -newos6*) - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=/usr/lib/libnls.so - ;; - -nto-qnx*) - lt_cv_deplibs_check_method=unknown - ;; - -openbsd*) - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB shared object' - else - lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library' - fi - ;; - -osf3* | osf4* | osf5*) - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' - lt_cv_file_magic_test_file=/shlib/libc.so - lt_cv_deplibs_check_method=pass_all - ;; - -sco3.2v5*) - lt_cv_deplibs_check_method=pass_all - ;; - -solaris*) - lt_cv_deplibs_check_method=pass_all - lt_cv_file_magic_test_file=/lib/libc.so - ;; - -sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - case $host_vendor in - motorola) - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]' - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` - ;; - ncr) - lt_cv_deplibs_check_method=pass_all - ;; - sequent) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' - ;; - sni) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" - lt_cv_file_magic_test_file=/lib/libc.so - ;; - siemens) - lt_cv_deplibs_check_method=pass_all - ;; - esac - ;; - -sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7* | sysv4*uw2*) - lt_cv_deplibs_check_method=pass_all - ;; -esac -]) -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 -])# AC_DEPLIBS_CHECK_METHOD - - -# AC_PROG_NM -# ---------- -# find the pathname to a BSD-compatible name lister -AC_DEFUN([AC_PROG_NM], -[AC_CACHE_CHECK([for BSD-compatible nm], lt_cv_path_NM, -[if test -n "$NM"; then - # Let the user override the test. - lt_cv_path_NM="$NM" -else - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do - IFS="$lt_save_ifs" - test -z "$ac_dir" && ac_dir=. - tmp_nm="$ac_dir/${ac_tool_prefix}nm" - if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then - # Check to see if the nm accepts a BSD-compat flag. - # Adding the `sed 1q' prevents false positives on HP-UX, which says: - # nm: unknown option "B" ignored - # Tru64's nm complains that /dev/null is an invalid object file - case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in - */dev/null* | *'Invalid file or object type'*) - lt_cv_path_NM="$tmp_nm -B" - break - ;; - *) - case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in - */dev/null*) - lt_cv_path_NM="$tmp_nm -p" - break - ;; - *) - lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but - continue # so that we can try to find one that supports BSD flags - ;; - esac - esac - fi - done - IFS="$lt_save_ifs" - test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm -fi]) -NM="$lt_cv_path_NM" -])# AC_PROG_NM - - -# AC_CHECK_LIBM -# ------------- -# check for math library -AC_DEFUN([AC_CHECK_LIBM], -[AC_REQUIRE([AC_CANONICAL_HOST])dnl -LIBM= -case $host in -*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*) - # These system don't have libm, or don't need it - ;; -*-ncr-sysv4.3*) - AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") - AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") - ;; -*) - AC_CHECK_LIB(m, cos, LIBM="-lm") - ;; -esac -])# AC_CHECK_LIBM - - -# AC_LIBLTDL_CONVENIENCE([DIRECTORY]) -# ----------------------------------- -# sets LIBLTDL to the link flags for the libltdl convenience library and -# LTDLINCL to the include flags for the libltdl header and adds -# --enable-ltdl-convenience to the configure arguments. Note that LIBLTDL -# and LTDLINCL are not AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If -# DIRECTORY is not provided, it is assumed to be `libltdl'. LIBLTDL will -# be prefixed with '${top_builddir}/' and LTDLINCL will be prefixed with -# '${top_srcdir}/' (note the single quotes!). If your package is not -# flat and you're not using automake, define top_builddir and -# top_srcdir appropriately in the Makefiles. -AC_DEFUN([AC_LIBLTDL_CONVENIENCE], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - case $enable_ltdl_convenience in - no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; - "") enable_ltdl_convenience=yes - ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; - esac - LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la - LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) - # For backwards non-gettext consistent compatibility... - INCLTDL="$LTDLINCL" -])# AC_LIBLTDL_CONVENIENCE - - -# AC_LIBLTDL_INSTALLABLE([DIRECTORY]) -# ----------------------------------- -# sets LIBLTDL to the link flags for the libltdl installable library and -# LTDLINCL to the include flags for the libltdl header and adds -# --enable-ltdl-install to the configure arguments. Note that LIBLTDL -# and LTDLINCL are not AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If -# DIRECTORY is not provided and an installed libltdl is not found, it is -# assumed to be `libltdl'. LIBLTDL will be prefixed with '${top_builddir}/' -# and LTDLINCL will be prefixed with '${top_srcdir}/' (note the single -# quotes!). If your package is not flat and you're not using automake, -# define top_builddir and top_srcdir appropriately in the Makefiles. -# In the future, this macro may have to be called after AC_PROG_LIBTOOL. -AC_DEFUN([AC_LIBLTDL_INSTALLABLE], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - AC_CHECK_LIB(ltdl, lt_dlinit, - [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no], - [if test x"$enable_ltdl_install" = xno; then - AC_MSG_WARN([libltdl not installed, but installation disabled]) - else - enable_ltdl_install=yes - fi - ]) - if test x"$enable_ltdl_install" = x"yes"; then - ac_configure_args="$ac_configure_args --enable-ltdl-install" - LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la - LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) - else - ac_configure_args="$ac_configure_args --enable-ltdl-install=no" - LIBLTDL="-lltdl" - LTDLINCL= - fi - # For backwards non-gettext consistent compatibility... - INCLTDL="$LTDLINCL" -])# AC_LIBLTDL_INSTALLABLE - - -# AC_LIBTOOL_CXX -# -------------- -# enable support for C++ libraries -AC_DEFUN([AC_LIBTOOL_CXX], -[AC_REQUIRE([_LT_AC_LANG_CXX]) -])# AC_LIBTOOL_CXX - - -# _LT_AC_LANG_CXX -# --------------- -AC_DEFUN([_LT_AC_LANG_CXX], -[AC_REQUIRE([AC_PROG_CXX]) -AC_REQUIRE([AC_PROG_CXXCPP]) -_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}CXX]) -])# _LT_AC_LANG_CXX - - -# AC_LIBTOOL_F77 -# -------------- -# enable support for Fortran 77 libraries -AC_DEFUN([AC_LIBTOOL_F77], -[AC_REQUIRE([_LT_AC_LANG_F77]) -])# AC_LIBTOOL_F77 - - -# _LT_AC_LANG_F77 -# --------------- -AC_DEFUN([_LT_AC_LANG_F77], -[AC_REQUIRE([AC_PROG_F77]) -_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}F77]) -])# _LT_AC_LANG_F77 - - -# AC_LIBTOOL_GCJ -# -------------- -# enable support for GCJ libraries -AC_DEFUN([AC_LIBTOOL_GCJ], -[AC_REQUIRE([_LT_AC_LANG_GCJ]) -])# AC_LIBTOOL_GCJ - - -# _LT_AC_LANG_GCJ -# --------------- -AC_DEFUN([_LT_AC_LANG_GCJ], -[AC_PROVIDE_IFELSE([AC_PROG_GCJ],[], - [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[], - [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[], - [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])], - [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])], - [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])]) -_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}GCJ]) -])# _LT_AC_LANG_GCJ - - -# AC_LIBTOOL_RC -# -------------- -# enable support for Windows resource files -AC_DEFUN([AC_LIBTOOL_RC], -[AC_REQUIRE([LT_AC_PROG_RC]) -_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}RC]) -])# AC_LIBTOOL_RC - - -# AC_LIBTOOL_LANG_C_CONFIG -# ------------------------ -# Ensure that the configuration vars for the C compiler are -# suitably defined. Those variables are subsequently used by -# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. -AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG], [_LT_AC_LANG_C_CONFIG]) -AC_DEFUN([_LT_AC_LANG_C_CONFIG], -[lt_save_CC="$CC" -AC_LANG_PUSH(C) - -# Source file extension for C test sources. -ac_ext=c - -# Object file extension for compiled C test sources. -objext=o -_LT_AC_TAGVAR(objext, $1)=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code="int some_variable = 0;\n" - -# Code to be used in simple link tests -lt_simple_link_test_code='int main(){return(0);}\n' - -_LT_AC_SYS_COMPILER - -# -# Check for any special shared library compilation flags. -# -_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)= -if test "$GCC" = no; then - case $host_os in - sco3.2v5*) - _LT_AC_TAGVAR(lt_prog_cc_shlib, $1)='-belf' - ;; - esac -fi -if test -n "$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)"; then - AC_MSG_WARN([`$CC' requires `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to build shared libraries]) - if echo "$old_CC $old_CFLAGS " | grep "[[ ]]$]_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)[[[ ]]" >/dev/null; then : - else - AC_MSG_WARN([add `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to the CC or CFLAGS env variable and reconfigure]) - _LT_AC_TAGVAR(lt_cv_prog_cc_can_build_shared, $1)=no - fi -fi - - -# -# Check to make sure the static flag actually works. -# -AC_LIBTOOL_LINKER_OPTION([if $compiler static flag $_LT_AC_TAGVAR(lt_prog_compiler_static, $1) works], - _LT_AC_TAGVAR(lt_prog_compiler_static_works, $1), - $_LT_AC_TAGVAR(lt_prog_compiler_static, $1), - [], - [_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=]) - - -## CAVEAT EMPTOR: -## There is no encapsulation within the following macros, do not change -## the running order or otherwise move them around unless you know exactly -## what you are doing... -AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1) -AC_LIBTOOL_PROG_COMPILER_PIC($1) -AC_LIBTOOL_PROG_CC_C_O($1) -AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) -AC_LIBTOOL_PROG_LD_SHLIBS($1) -AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) -AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) -AC_LIBTOOL_SYS_LIB_STRIP -AC_LIBTOOL_DLOPEN_SELF($1) - -# Report which librarie types wil actually be built -AC_MSG_CHECKING([if libtool supports shared libraries]) -AC_MSG_RESULT([$can_build_shared]) - -AC_MSG_CHECKING([whether to build shared libraries]) -test "$can_build_shared" = "no" && enable_shared=no - -# On AIX, shared libraries and static libraries use the same namespace, and -# are all built from PIC. -case "$host_os" in -aix3*) - test "$enable_shared" = yes && enable_static=no - if test -n "$RANLIB"; then - archive_cmds="$archive_cmds~\$RANLIB \$lib" - postinstall_cmds='$RANLIB $lib' - fi - ;; - -aix4*) - if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then - test "$enable_shared" = yes && enable_static=no - fi - ;; - darwin* | rhapsody*) - if test "$GCC" = yes; then - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - case "$host_os" in - rhapsody* | darwin1.[[012]]) - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,suppress' - ;; - *) # Darwin 1.3 on - if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress' - else - case ${MACOSX_DEPLOYMENT_TARGET} in - 10.[012]) - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress' - ;; - 10.*) - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,dynamic_lookup' - ;; - esac - fi - ;; - esac - output_verbose_link_cmd='echo' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring' - _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs' - # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - _LT_AC_TAGVAR(hardcode_direct, $1)=no - _LT_AC_TAGVAR(hardcode_automatic, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience' - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - else - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; -esac -AC_MSG_RESULT([$enable_shared]) - -AC_MSG_CHECKING([whether to build static libraries]) -# Make sure either enable_shared or enable_static is yes. -test "$enable_shared" = yes || enable_static=yes -AC_MSG_RESULT([$enable_static]) - -AC_LIBTOOL_CONFIG($1) - -AC_LANG_POP -CC="$lt_save_CC" -])# AC_LIBTOOL_LANG_C_CONFIG - - -# AC_LIBTOOL_LANG_CXX_CONFIG -# -------------------------- -# Ensure that the configuration vars for the C compiler are -# suitably defined. Those variables are subsequently used by -# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. -AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG], [_LT_AC_LANG_CXX_CONFIG(CXX)]) -AC_DEFUN([_LT_AC_LANG_CXX_CONFIG], -[AC_LANG_PUSH(C++) -AC_REQUIRE([AC_PROG_CXX]) -AC_REQUIRE([AC_PROG_CXXCPP]) - -_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no -_LT_AC_TAGVAR(allow_undefined_flag, $1)= -_LT_AC_TAGVAR(always_export_symbols, $1)=no -_LT_AC_TAGVAR(archive_expsym_cmds, $1)= -_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)= -_LT_AC_TAGVAR(hardcode_direct, $1)=no -_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= -_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= -_LT_AC_TAGVAR(hardcode_libdir_separator, $1)= -_LT_AC_TAGVAR(hardcode_minus_L, $1)=no -_LT_AC_TAGVAR(hardcode_automatic, $1)=no -_LT_AC_TAGVAR(module_cmds, $1)= -_LT_AC_TAGVAR(module_expsym_cmds, $1)= -_LT_AC_TAGVAR(link_all_deplibs, $1)=unknown -_LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds -_LT_AC_TAGVAR(no_undefined_flag, $1)= -_LT_AC_TAGVAR(whole_archive_flag_spec, $1)= -_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no - -# Dependencies to place before and after the object being linked: -_LT_AC_TAGVAR(predep_objects, $1)= -_LT_AC_TAGVAR(postdep_objects, $1)= -_LT_AC_TAGVAR(predeps, $1)= -_LT_AC_TAGVAR(postdeps, $1)= -_LT_AC_TAGVAR(compiler_lib_search_path, $1)= - -# Source file extension for C++ test sources. -ac_ext=cc - -# Object file extension for compiled C++ test sources. -objext=o -_LT_AC_TAGVAR(objext, $1)=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code="int some_variable = 0;\n" - -# Code to be used in simple link tests -lt_simple_link_test_code='int main(int, char *[]) { return(0); }\n' - -# ltmain only uses $CC for tagged configurations so make sure $CC is set. -_LT_AC_SYS_COMPILER - -# Allow CC to be a program name with arguments. -lt_save_CC=$CC -lt_save_LD=$LD -lt_save_GCC=$GCC -GCC=$GXX -lt_save_with_gnu_ld=$with_gnu_ld -lt_save_path_LD=$lt_cv_path_LD -if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then - lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx -else - unset lt_cv_prog_gnu_ld -fi -if test -n "${lt_cv_path_LDCXX+set}"; then - lt_cv_path_LD=$lt_cv_path_LDCXX -else - unset lt_cv_path_LD -fi -test -z "${LDCXX+set}" || LD=$LDCXX -CC=${CXX-"c++"} -compiler=$CC -_LT_AC_TAGVAR(compiler, $1)=$CC -cc_basename=`$echo X"$compiler" | $Xsed -e 's%^.*/%%'` - -# We don't want -fno-exception wen compiling C++ code, so set the -# no_builtin_flag separately -if test "$GXX" = yes; then - _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' -else - _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= -fi - -if test "$GXX" = yes; then - # Set up default GNU C++ configuration - - AC_PROG_LD - - # Check if GNU C++ uses GNU ld as the underlying linker, since the - # archiving commands below assume that GNU ld is being used. - if test "$with_gnu_ld" = yes; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - - # If archive_cmds runs LD, not CC, wlarc should be empty - # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to - # investigate it a little bit more. (MM) - wlarc='${wl}' - - # ancient GNU ld didn't support --whole-archive et. al. - if eval "`$CC -print-prog-name=ld` --help 2>&1" | \ - grep 'no-whole-archive' > /dev/null; then - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' - else - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= - fi - else - with_gnu_ld=no - wlarc= - - # A generic and very simple default shared library creation - # command for GNU C++ for the case where it uses the native - # linker, instead of GNU ld. If possible, this setting should - # overridden to take advantage of the native linker features on - # the platform it is being used on. - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -o $lib' - fi - - # 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 "\-L"' - -else - GXX=no - with_gnu_ld=no - wlarc= -fi - -# PORTME: fill in a description of your system's C++ link characteristics -AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) -_LT_AC_TAGVAR(ld_shlibs, $1)=yes -case $host_os in - aix3*) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - aix4* | aix5*) - if test "$host_cpu" = ia64; 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 - # KDE requires run time linking. Make it the default. - aix_use_runtimelinking=yes - exp_sym_flag='-bexport' - no_entry_flag='-bnoentry' - fi - - # When large executables or shared objects are built, AIX ld can - # have problems creating the table of contents. If linking a library - # or program results in "error TOC overflow" add -mminimal-toc to - # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not - # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. - - _LT_AC_TAGVAR(archive_cmds, $1)='' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':' - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - - if test "$GXX" = yes; then - case $host_os in aix4.[012]|aix4.[012].*) - # We only want to do this on AIX 4.2 and lower, the check - # below for broken collect2 doesn't work under 4.3+ - collect2name=`${CC} -print-prog-name=collect2` - if test -f "$collect2name" && \ - strings "$collect2name" | grep resolve_lib_name >/dev/null - then - # We have reworked collect2 - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - else - # We have old collect2 - _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported - # It fails to find uninstalled libraries when the uninstalled - # path is not listed in the libpath. Setting hardcode_minus_L - # to unsupported forces relinking - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)= - fi - esac - shared_flag='-shared' - else - # not using gcc - if test "$host_cpu" = ia64; then - # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release - # chokes on -Wl,-G. The following line is correct: - shared_flag='-G' - else - if test "$aix_use_runtimelinking" = yes; then - shared_flag='-qmkshrobj ${wl}-G' - else - shared_flag='-qmkshrobj' - fi - fi - fi - - # Let the compiler handle the export list. - _LT_AC_TAGVAR(always_export_symbols, $1)=no - if test "$aix_use_runtimelinking" = yes; then - # Warning - without using the other runtime loading flags (-brtl), - # -berok will link without error, but may produce a broken library. - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok' - # Determine the default libpath from the value encoded in an empty executable. - _LT_AC_SYS_LIBPATH_AIX - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" - - _LT_AC_TAGVAR(archive_cmds, $1)="\$CC"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '" $shared_flag" - _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" - else - if test "$host_cpu" = ia64; then - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' - _LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs" - _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" - else - # Determine the default libpath from the value encoded in an empty executable. - _LT_AC_SYS_LIBPATH_AIX - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" - # Warning - without using the other run time loading flags, - # -berok will link without error, but may produce a broken library. - _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' - # -bexpall does not export symbols beginning with underscore (_) - _LT_AC_TAGVAR(always_export_symbols, $1)=yes - # Exported symbols can be pulled into shared objects from archives - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' ' - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes - # This is similar to how AIX traditionally builds it's shared libraries. - _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' - fi - fi - ;; - chorus*) - case $cc_basename in - *) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - - cygwin* | mingw* | pw32*) - # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, - # as there is no search path for DLLs. - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(allow_undefined_flag, $1)=no - _LT_AC_TAGVAR(always_export_symbols, $1)=no - _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - - if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib' - # If the export-symbols file already is a .def file (1st line - # is EXPORTS), use it as is; otherwise, prepend... - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then - cp $export_symbols $output_objdir/$soname.def; - else - echo EXPORTS > $output_objdir/$soname.def; - cat $export_symbols >> $output_objdir/$soname.def; - fi~ - $CC -shared -nostdlib $output_objdir/$soname.def $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib' - else - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - darwin* | rhapsody*) - if test "$GXX" = yes; then - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - case "$host_os" in - rhapsody* | darwin1.[[012]]) - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,suppress' - ;; - *) # Darwin 1.3 on - if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress' - else - case ${MACOSX_DEPLOYMENT_TARGET} in - 10.[012]) - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress' - ;; - 10.*) - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,dynamic_lookup' - ;; - esac - fi - ;; - esac - lt_int_apple_cc_single_mod=no - output_verbose_link_cmd='echo' - if $CC -dumpspecs 2>&1 | grep 'single_module' >/dev/null ; then - lt_int_apple_cc_single_mod=yes - fi - if test "X$lt_int_apple_cc_single_mod" = Xyes ; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring' - else - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $compiler_flags $deplibs -install_name $rpath/$soname $verstring' - fi - _LT_AC_TAGVAR(module_cmds, $1)='$CC ${wl}-bind_at_load $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs' - - # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's - if test "X$lt_int_apple_cc_single_mod" = Xyes ; then - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - else - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $compiler_flags $deplibs -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - fi - _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - _LT_AC_TAGVAR(hardcode_direct, $1)=no - _LT_AC_TAGVAR(hardcode_automatic, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience' - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - else - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - dgux*) - case $cc_basename in - ec++) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - ghcx) - # Green Hills C++ Compiler - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - freebsd[12]*) - # C++ shared libraries reported to be fairly broken before switch to ELF - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - freebsd-elf*) - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - ;; - freebsd* | kfreebsd*-gnu) - # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF - # conventions - _LT_AC_TAGVAR(ld_shlibs, $1)=yes - ;; - gnu*) - ;; - hpux9*) - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, - # but as the default - # location of the library. - - case $cc_basename in - CC) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - aCC) - _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | egrep "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - ;; - *) - if test "$GXX" = yes; then - _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' - else - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - ;; - hpux10*|hpux11*) - if test $with_gnu_ld = no; then - case "$host_cpu" in - hppa*64*) - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - ;; - ia64*) - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - ;; - *) - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - ;; - esac - fi - case "$host_cpu" in - hppa*64*) - _LT_AC_TAGVAR(hardcode_direct, $1)=no - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - ia64*) - _LT_AC_TAGVAR(hardcode_direct, $1)=no - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, - # but as the default - # location of the library. - ;; - *) - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, - # but as the default - # location of the library. - ;; - esac - - case $cc_basename in - CC) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - aCC) - case "$host_cpu" in - hppa*64*|ia64*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs' - ;; - *) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects' - ;; - esac - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | grep "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - ;; - *) - if test "$GXX" = yes; then - if test $with_gnu_ld = no; then - case "$host_cpu" in - ia64*|hppa*64*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs' - ;; - *) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects' - ;; - esac - fi - else - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - ;; - irix5* | irix6*) - case $cc_basename in - CC) - # SGI C++ - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' - - # Archives containing C++ object files must be created using - # "CC -ar", where "CC" is the IRIX C++ compiler. This is - # necessary to make sure instantiated templates are included - # in the archive. - _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs' - ;; - *) - if test "$GXX" = yes; then - if test "$with_gnu_ld" = no; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' - else - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` -o $lib' - fi - fi - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - ;; - esac - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - ;; - linux*) - case $cc_basename in - KCC) - # Kuck and Associates, Inc. (KAI) C++ Compiler - - # KCC will only create a shared library if the output file - # ends with ".so" (or ".sl" for HP-UX), so rename the library - # to its proper name (with version) after linking. - _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects --soname $soname -o \$templib; mv \$templib $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib' - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | grep "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath,$libdir' - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - - # Archives containing C++ object files must be created using - # "CC -Bstatic", where "CC" is the KAI C++ compiler. - _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' - ;; - icpc) - # Intel C++ - with_gnu_ld=yes - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' - ;; - cxx) - # Compaq C++ - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols' - - runpath_var=LD_RUN_PATH - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # 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=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - ;; - esac - ;; - lynxos*) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - m88k*) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - mvs*) - case $cc_basename in - cxx) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' - wlarc= - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - fi - # Workaround some broken pre-1.5 toolchains - output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"' - ;; - osf3*) - case $cc_basename in - KCC) - # Kuck and Associates, Inc. (KAI) C++ Compiler - - # KCC will only create a shared library if the output file - # ends with ".so" (or ".sl" for HP-UX), so rename the library - # to its proper name (with version) after linking. - _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects --soname $soname -o \$templib; mv \$templib $lib' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - - # Archives containing C++ object files must be created using - # "CC -Bstatic", where "CC" is the KAI C++ compiler. - _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' - - ;; - RCC) - # Rational C++ 2.4.1 - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - cxx) - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $soname `test -n "$verstring" && echo ${wl}-set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # 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" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - ;; - *) - if test "$GXX" = yes && test "$with_gnu_ld" = no; then - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - - # 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 "\-L"' - - else - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - ;; - osf4* | osf5*) - case $cc_basename in - KCC) - # Kuck and Associates, Inc. (KAI) C++ Compiler - - # KCC will only create a shared library if the output file - # ends with ".so" (or ".sl" for HP-UX), so rename the library - # to its proper name (with version) after linking. - _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects --soname $soname -o \$templib; mv \$templib $lib' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - - # Archives containing C++ object files must be created using - # the KAI C++ compiler. - _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' - ;; - RCC) - # Rational C++ 2.4.1 - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - cxx) - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ - echo "-hidden">> $lib.exp~ - $CC -shared$allow_undefined_flag $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -msym -soname $soname -Wl,-input -Wl,$lib.exp `test -n "$verstring" && echo -set_version $verstring` -update_registry $objdir/so_locations -o $lib~ - $rm $lib.exp' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # 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" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - ;; - *) - if test "$GXX" = yes && test "$with_gnu_ld" = no; then - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - - # 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 "\-L"' - - else - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - ;; - psos*) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - sco*) - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - case $cc_basename in - CC) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - sunos4*) - case $cc_basename in - CC) - # Sun C++ 4.x - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - lcc) - # Lucid - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - solaris*) - case $cc_basename in - CC) - # Sun C++ 4.2, 5.x and Centerline C++ - _LT_AC_TAGVAR(no_undefined_flag, $1)=' -zdefs' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -nolib -h$soname -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects' - _LT_AC_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} -nolib ${wl}-M ${wl}$lib.exp -h$soname -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~$rm $lib.exp' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - case $host_os in - solaris2.[0-5] | solaris2.[0-5].*) ;; - *) - # The C++ compiler is used as linker so we must use $wl - # flag to pass the commands to the underlying system - # linker. - # Supported since Solaris 2.6 (maybe 2.5.1?) - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' - ;; - esac - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep "\-[[LR]]"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - - # Archives containing C++ object files must be created using - # "CC -xar", where "CC" is the Sun C++ compiler. This is - # necessary to make sure instantiated templates are included - # in the archive. - _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' - ;; - gcx) - # Green Hills C++ Compiler - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-h $wl$soname -o $lib' - - # The C++ compiler must be used to create the archive. - _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs' - ;; - *) - # GNU C++ compiler with Solaris linker - if test "$GXX" = yes && test "$with_gnu_ld" = no; then - _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs' - if $CC --version | grep -v '^2\.7' > /dev/null; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-h $wl$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~$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 \"\-L\"" - else - # g++ 2.7 appears to require `-G' NOT `-shared' on this - # platform. - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-h $wl$soname -o $lib' - _LT_AC_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 -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~$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 \"\-L\"" - fi - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir' - fi - ;; - esac - ;; - sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7*) - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - ;; - tandem*) - case $cc_basename in - NCC) - # NonStop-UX NCC 3.20 - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - vxworks*) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; -esac -AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)]) -test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no - -_LT_AC_TAGVAR(GCC, $1)="$GXX" -_LT_AC_TAGVAR(LD, $1)="$LD" - -## CAVEAT EMPTOR: -## There is no encapsulation within the following macros, do not change -## the running order or otherwise move them around unless you know exactly -## what you are doing... -AC_LIBTOOL_POSTDEP_PREDEP($1) -AC_LIBTOOL_PROG_COMPILER_PIC($1) -AC_LIBTOOL_PROG_CC_C_O($1) -AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) -AC_LIBTOOL_PROG_LD_SHLIBS($1) -AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) -AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) -AC_LIBTOOL_SYS_LIB_STRIP -AC_LIBTOOL_DLOPEN_SELF($1) - -AC_LIBTOOL_CONFIG($1) - -AC_LANG_POP -CC=$lt_save_CC -LDCXX=$LD -LD=$lt_save_LD -GCC=$lt_save_GCC -with_gnu_ldcxx=$with_gnu_ld -with_gnu_ld=$lt_save_with_gnu_ld -lt_cv_path_LDCXX=$lt_cv_path_LD -lt_cv_path_LD=$lt_save_path_LD -lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld -lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld -])# AC_LIBTOOL_LANG_CXX_CONFIG - -# AC_LIBTOOL_POSTDEP_PREDEP([TAGNAME]) -# ------------------------ -# Figure out "hidden" library dependencies from verbose -# compiler output when linking a shared library. -# Parse the compiler output and extract the necessary -# objects, libraries and library flags. -AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP],[ -dnl we can't use the lt_simple_compile_test_code here, -dnl because it contains code intended for an executable, -dnl not a library. It's possible we should let each -dnl tag define a new lt_????_link_test_code variable, -dnl but it's only used here... -ifelse([$1],[],[cat > conftest.$ac_ext <<EOF -int a; -void foo (void) { a = 0; } -EOF -],[$1],[CXX],[cat > conftest.$ac_ext <<EOF -class Foo -{ -public: - Foo (void) { a = 0; } -private: - int a; -}; -EOF -],[$1],[F77],[cat > conftest.$ac_ext <<EOF - subroutine foo - implicit none - integer*4 a - a=0 - return - end -EOF -],[$1],[GCJ],[cat > conftest.$ac_ext <<EOF -public class foo { - private int a; - public void bar (void) { - a = 0; - } -}; -EOF -]) -dnl Parse the compiler output and extract the necessary -dnl objects, libraries and library flags. -if AC_TRY_EVAL(ac_compile); then - # Parse the compiler output and extract the necessary - # objects, libraries and library flags. - - # Sentinel used to keep track of whether or not we are before - # the conftest object file. - pre_test_object_deps_done=no - - # The `*' in the case matches for architectures that use `case' in - # $output_verbose_cmd can trigger glob expansion during the loop - # eval without this substitution. - output_verbose_link_cmd="`$echo \"X$output_verbose_link_cmd\" | $Xsed -e \"$no_glob_subst\"`" - - for p in `eval $output_verbose_link_cmd`; do - case $p in - - -L* | -R* | -l*) - # Some compilers place space between "-{L,R}" and the path. - # Remove the space. - if test $p = "-L" \ - || test $p = "-R"; then - prev=$p - continue - else - prev= - fi - - if test "$pre_test_object_deps_done" = no; then - case $p in - -L* | -R*) - # Internal compiler library paths should come after those - # provided the user. The postdeps already come after the - # user supplied libs so there is no need to process them. - if test -z "$_LT_AC_TAGVAR(compiler_lib_search_path, $1)"; then - _LT_AC_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}" - else - _LT_AC_TAGVAR(compiler_lib_search_path, $1)="${_LT_AC_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}" - fi - ;; - # The "-l" case would never come before the object being - # linked, so don't bother handling this case. - esac - else - if test -z "$_LT_AC_TAGVAR(postdeps, $1)"; then - _LT_AC_TAGVAR(postdeps, $1)="${prev}${p}" - else - _LT_AC_TAGVAR(postdeps, $1)="${_LT_AC_TAGVAR(postdeps, $1)} ${prev}${p}" - fi - fi - ;; - - *.$objext|*.$libext) - # This assumes that the test object file only shows up - # once in the compiler output. - if test "$p" = "conftest.$objext"; then - pre_test_object_deps_done=yes - continue - fi - - if test "$pre_test_object_deps_done" = no; then - if test -z "$_LT_AC_TAGVAR(predep_objects, $1)"; then - _LT_AC_TAGVAR(predep_objects, $1)="$p" - else - _LT_AC_TAGVAR(predep_objects, $1)="$_LT_AC_TAGVAR(predep_objects, $1) $p" - fi - else - if test -z "$_LT_AC_TAGVAR(postdep_objects, $1)"; then - _LT_AC_TAGVAR(postdep_objects, $1)="$p" - else - _LT_AC_TAGVAR(postdep_objects, $1)="$_LT_AC_TAGVAR(postdep_objects, $1) $p" - fi - fi - ;; - - *) ;; # Ignore the rest. - - esac - done - - # Clean up. - rm -f a.out a.exe -else - echo "libtool.m4: error: problem compiling $1 test program" -fi - -$rm -f confest.$objext - -case " $_LT_AC_TAGVAR(postdeps, $1) " in -*" -lc "*) _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no ;; -esac -])# AC_LIBTOOL_POSTDEP_PREDEP - -# AC_LIBTOOL_LANG_F77_CONFIG -# ------------------------ -# Ensure that the configuration vars for the C compiler are -# suitably defined. Those variables are subsequently used by -# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. -AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG], [_LT_AC_LANG_F77_CONFIG(F77)]) -AC_DEFUN([_LT_AC_LANG_F77_CONFIG], -[AC_REQUIRE([AC_PROG_F77]) -AC_LANG_PUSH(Fortran 77) - -_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no -_LT_AC_TAGVAR(allow_undefined_flag, $1)= -_LT_AC_TAGVAR(always_export_symbols, $1)=no -_LT_AC_TAGVAR(archive_expsym_cmds, $1)= -_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)= -_LT_AC_TAGVAR(hardcode_direct, $1)=no -_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= -_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= -_LT_AC_TAGVAR(hardcode_libdir_separator, $1)= -_LT_AC_TAGVAR(hardcode_minus_L, $1)=no -_LT_AC_TAGVAR(hardcode_automatic, $1)=no -_LT_AC_TAGVAR(module_cmds, $1)= -_LT_AC_TAGVAR(module_expsym_cmds, $1)= -_LT_AC_TAGVAR(link_all_deplibs, $1)=unknown -_LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds -_LT_AC_TAGVAR(no_undefined_flag, $1)= -_LT_AC_TAGVAR(whole_archive_flag_spec, $1)= -_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no - -# Source file extension for f77 test sources. -ac_ext=f - -# Object file extension for compiled f77 test sources. -objext=o -_LT_AC_TAGVAR(objext, $1)=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code=" subroutine t\n return\n end\n" - -# Code to be used in simple link tests -lt_simple_link_test_code=" program t\n end\n" - -# ltmain only uses $CC for tagged configurations so make sure $CC is set. -_LT_AC_SYS_COMPILER - -# Allow CC to be a program name with arguments. -lt_save_CC="$CC" -CC=${F77-"f77"} -compiler=$CC -_LT_AC_TAGVAR(compiler, $1)=$CC -cc_basename=`$echo X"$compiler" | $Xsed -e 's%^.*/%%'` - -AC_MSG_CHECKING([if libtool supports shared libraries]) -AC_MSG_RESULT([$can_build_shared]) - -AC_MSG_CHECKING([whether to build shared libraries]) -test "$can_build_shared" = "no" && enable_shared=no - -# On AIX, shared libraries and static libraries use the same namespace, and -# are all built from PIC. -case "$host_os" in -aix3*) - test "$enable_shared" = yes && enable_static=no - if test -n "$RANLIB"; then - archive_cmds="$archive_cmds~\$RANLIB \$lib" - postinstall_cmds='$RANLIB $lib' - fi - ;; -aix4*) - test "$enable_shared" = yes && enable_static=no - ;; -esac -AC_MSG_RESULT([$enable_shared]) - -AC_MSG_CHECKING([whether to build static libraries]) -# Make sure either enable_shared or enable_static is yes. -test "$enable_shared" = yes || enable_static=yes -AC_MSG_RESULT([$enable_static]) - -test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no - -_LT_AC_TAGVAR(GCC, $1)="$G77" -_LT_AC_TAGVAR(LD, $1)="$LD" - -AC_LIBTOOL_PROG_COMPILER_PIC($1) -AC_LIBTOOL_PROG_CC_C_O($1) -AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) -AC_LIBTOOL_PROG_LD_SHLIBS($1) -AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) -AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) -AC_LIBTOOL_SYS_LIB_STRIP - - -AC_LIBTOOL_CONFIG($1) - -AC_LANG_POP -CC="$lt_save_CC" -])# AC_LIBTOOL_LANG_F77_CONFIG - - -# AC_LIBTOOL_LANG_GCJ_CONFIG -# -------------------------- -# Ensure that the configuration vars for the C compiler are -# suitably defined. Those variables are subsequently used by -# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. -AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG], [_LT_AC_LANG_GCJ_CONFIG(GCJ)]) -AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG], -[AC_LANG_SAVE - -# Source file extension for Java test sources. -ac_ext=java - -# Object file extension for compiled Java test sources. -objext=o -_LT_AC_TAGVAR(objext, $1)=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code="class foo {}\n" - -# Code to be used in simple link tests -lt_simple_link_test_code='public class conftest { public static void main(String[] argv) {}; }\n' - -# ltmain only uses $CC for tagged configurations so make sure $CC is set. -_LT_AC_SYS_COMPILER - -# Allow CC to be a program name with arguments. -lt_save_CC="$CC" -CC=${GCJ-"gcj"} -compiler=$CC -_LT_AC_TAGVAR(compiler, $1)=$CC - -# GCJ did not exist at the time GCC didn't implicitly link libc in. -_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - -## CAVEAT EMPTOR: -## There is no encapsulation within the following macros, do not change -## the running order or otherwise move them around unless you know exactly -## what you are doing... -AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1) -AC_LIBTOOL_PROG_COMPILER_PIC($1) -AC_LIBTOOL_PROG_CC_C_O($1) -AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) -AC_LIBTOOL_PROG_LD_SHLIBS($1) -AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) -AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) -AC_LIBTOOL_SYS_LIB_STRIP -AC_LIBTOOL_DLOPEN_SELF($1) - -AC_LIBTOOL_CONFIG($1) - -AC_LANG_RESTORE -CC="$lt_save_CC" -])# AC_LIBTOOL_LANG_GCJ_CONFIG - - -# AC_LIBTOOL_LANG_RC_CONFIG -# -------------------------- -# Ensure that the configuration vars for the Windows resource compiler are -# suitably defined. Those variables are subsequently used by -# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. -AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG], [_LT_AC_LANG_RC_CONFIG(RC)]) -AC_DEFUN([_LT_AC_LANG_RC_CONFIG], -[AC_LANG_SAVE - -# Source file extension for RC test sources. -ac_ext=rc - -# Object file extension for compiled RC test sources. -objext=o -_LT_AC_TAGVAR(objext, $1)=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }\n' - -# Code to be used in simple link tests -lt_simple_link_test_code="$lt_simple_compile_test_code" - -# ltmain only uses $CC for tagged configurations so make sure $CC is set. -_LT_AC_SYS_COMPILER - -# Allow CC to be a program name with arguments. -lt_save_CC="$CC" -CC=${RC-"windres"} -compiler=$CC -_LT_AC_TAGVAR(compiler, $1)=$CC -_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes - -AC_LIBTOOL_CONFIG($1) - -AC_LANG_RESTORE -CC="$lt_save_CC" -])# AC_LIBTOOL_LANG_RC_CONFIG - - -# AC_LIBTOOL_CONFIG([TAGNAME]) -# ---------------------------- -# If TAGNAME is not passed, then create an initial libtool script -# with a default configuration from the untagged config vars. Otherwise -# add code to config.status for appending the configuration named by -# TAGNAME from the matching tagged config vars. -AC_DEFUN([AC_LIBTOOL_CONFIG], -[# The else clause should only fire when bootstrapping the -# libtool distribution, otherwise you forgot to ship ltmain.sh -# with your package, and you will get complaints that there are -# no rules to generate ltmain.sh. -if test -f "$ltmain"; then - # See if we are running on zsh, and set the options which allow our commands through - # without removal of \ escapes. - if test -n "${ZSH_VERSION+set}" ; then - setopt NO_GLOB_SUBST - fi - # Now quote all the things that may contain metacharacters while being - # careful not to overquote the AC_SUBSTed values. We take copies of the - # variables and quote the copies for generation of the libtool script. - for var in echo old_CC old_CFLAGS AR AR_FLAGS EGREP RANLIB LN_S LTCC NM SED SHELL \ - libname_spec library_names_spec soname_spec extract_expsyms_cmds \ - old_striplib striplib file_magic_cmd finish_cmds finish_eval \ - deplibs_check_method reload_flag reload_cmds need_locks \ - lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl \ - lt_cv_sys_global_symbol_to_c_name_address \ - sys_lib_search_path_spec sys_lib_dlsearch_path_spec \ - old_postinstall_cmds old_postuninstall_cmds \ - _LT_AC_TAGVAR(compiler, $1) \ - _LT_AC_TAGVAR(CC, $1) \ - _LT_AC_TAGVAR(LD, $1) \ - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1) \ - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1) \ - _LT_AC_TAGVAR(lt_prog_compiler_static, $1) \ - _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) \ - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1) \ - _LT_AC_TAGVAR(thread_safe_flag_spec, $1) \ - _LT_AC_TAGVAR(whole_archive_flag_spec, $1) \ - _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1) \ - _LT_AC_TAGVAR(old_archive_cmds, $1) \ - _LT_AC_TAGVAR(old_archive_from_new_cmds, $1) \ - _LT_AC_TAGVAR(predep_objects, $1) \ - _LT_AC_TAGVAR(postdep_objects, $1) \ - _LT_AC_TAGVAR(predeps, $1) \ - _LT_AC_TAGVAR(postdeps, $1) \ - _LT_AC_TAGVAR(compiler_lib_search_path, $1) \ - _LT_AC_TAGVAR(archive_cmds, $1) \ - _LT_AC_TAGVAR(archive_expsym_cmds, $1) \ - _LT_AC_TAGVAR(postinstall_cmds, $1) \ - _LT_AC_TAGVAR(postuninstall_cmds, $1) \ - _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) \ - _LT_AC_TAGVAR(allow_undefined_flag, $1) \ - _LT_AC_TAGVAR(no_undefined_flag, $1) \ - _LT_AC_TAGVAR(export_symbols_cmds, $1) \ - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) \ - _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1) \ - _LT_AC_TAGVAR(hardcode_libdir_separator, $1) \ - _LT_AC_TAGVAR(hardcode_automatic, $1) \ - _LT_AC_TAGVAR(module_cmds, $1) \ - _LT_AC_TAGVAR(module_expsym_cmds, $1) \ - _LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1) \ - _LT_AC_TAGVAR(exclude_expsyms, $1) \ - _LT_AC_TAGVAR(include_expsyms, $1); do - - case $var in - _LT_AC_TAGVAR(old_archive_cmds, $1) | \ - _LT_AC_TAGVAR(old_archive_from_new_cmds, $1) | \ - _LT_AC_TAGVAR(archive_cmds, $1) | \ - _LT_AC_TAGVAR(archive_expsym_cmds, $1) | \ - _LT_AC_TAGVAR(module_cmds, $1) | \ - _LT_AC_TAGVAR(module_expsym_cmds, $1) | \ - _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) | \ - _LT_AC_TAGVAR(export_symbols_cmds, $1) | \ - extract_expsyms_cmds | reload_cmds | finish_cmds | \ - postinstall_cmds | postuninstall_cmds | \ - old_postinstall_cmds | old_postuninstall_cmds | \ - sys_lib_search_path_spec | sys_lib_dlsearch_path_spec) - # Double-quote double-evaled strings. - eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" - ;; - *) - eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" - ;; - esac - done - - case $lt_echo in - *'\[$]0 --fallback-echo"') - lt_echo=`$echo "X$lt_echo" | $Xsed -e 's/\\\\\\\[$]0 --fallback-echo"[$]/[$]0 --fallback-echo"/'` - ;; - esac - -ifelse([$1], [], - [cfgfile="${ofile}T" - trap "$rm \"$cfgfile\"; exit 1" 1 2 15 - $rm -f "$cfgfile" - AC_MSG_NOTICE([creating $ofile])], - [cfgfile="$ofile"]) - - cat <<__EOF__ >> "$cfgfile" -ifelse([$1], [], -[#! $SHELL - -# `$echo "$cfgfile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) -# NOTE: Changes made to this file will be lost: look at ltmain.sh. -# -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 -# Free Software Foundation, Inc. -# -# This file is part of GNU Libtool: -# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996 -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# A sed program that does not truncate output. -SED=$lt_SED - -# Sed that helps us avoid accidentally triggering echo(1) options like -n. -Xsed="$SED -e s/^X//" - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi - -# The names of the tagged configurations supported by this script. -available_tags= - -# ### BEGIN LIBTOOL CONFIG], -[# ### BEGIN LIBTOOL TAG CONFIG: $tagname]) - -# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: - -# Shell to use when invoking shell scripts. -SHELL=$lt_SHELL - -# Whether or not to build shared libraries. -build_libtool_libs=$enable_shared - -# Whether or not to build static libraries. -build_old_libs=$enable_static - -# Whether or not to add -lc for building shared libraries. -build_libtool_need_lc=$_LT_AC_TAGVAR(archive_cmds_need_lc, $1) - -# Whether or not to disallow shared libs when runtime libs are static -allow_libtool_libs_with_static_runtimes=$_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1) - -# Whether or not to optimize for fast installation. -fast_install=$enable_fast_install - -# The host system. -host_alias=$host_alias -host=$host - -# An echo program that does not interpret backslashes. -echo=$lt_echo - -# The archiver. -AR=$lt_AR -AR_FLAGS=$lt_AR_FLAGS - -# A C compiler. -LTCC=$lt_LTCC - -# A language-specific compiler. -CC=$lt_[]_LT_AC_TAGVAR(compiler, $1) - -# Is the compiler the GNU C compiler? -with_gcc=$_LT_AC_TAGVAR(GCC, $1) - -# An ERE matcher. -EGREP=$lt_EGREP - -# The linker used to build libraries. -LD=$lt_[]_LT_AC_TAGVAR(LD, $1) - -# Whether we need hard or soft links. -LN_S=$lt_LN_S - -# A BSD-compatible nm program. -NM=$lt_NM - -# A symbol stripping program -STRIP=$STRIP - -# Used to examine libraries when file_magic_cmd begins "file" -MAGIC_CMD=$MAGIC_CMD - -# Used on cygwin: DLL creation program. -DLLTOOL="$DLLTOOL" - -# Used on cygwin: object dumper. -OBJDUMP="$OBJDUMP" - -# Used on cygwin: assembler. -AS="$AS" - -# The name of the directory that contains temporary libtool files. -objdir=$objdir - -# How to create reloadable object files. -reload_flag=$lt_reload_flag -reload_cmds=$lt_reload_cmds - -# How to pass a linker flag through the compiler. -wl=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) - -# Object file suffix (normally "o"). -objext="$ac_objext" - -# Old archive suffix (normally "a"). -libext="$libext" - -# Shared library suffix (normally ".so"). -shrext='$shrext' - -# Executable file suffix (normally ""). -exeext="$exeext" - -# Additional compiler flags for building library objects. -pic_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) -pic_mode=$pic_mode - -# What is the maximum length of a command? -max_cmd_len=$lt_cv_sys_max_cmd_len - -# Does compiler simultaneously support -c and -o options? -compiler_c_o=$lt_[]_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1) - -# Must we lock files when doing compilation ? -need_locks=$lt_need_locks - -# Do we need the lib prefix for modules? -need_lib_prefix=$need_lib_prefix - -# Do we need a version for libraries? -need_version=$need_version - -# Whether dlopen is supported. -dlopen_support=$enable_dlopen - -# Whether dlopen of programs is supported. -dlopen_self=$enable_dlopen_self - -# Whether dlopen of statically linked programs is supported. -dlopen_self_static=$enable_dlopen_self_static - -# Compiler flag to prevent dynamic linking. -link_static_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_static, $1) - -# Compiler flag to turn off builtin functions. -no_builtin_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) - -# Compiler flag to allow reflexive dlopens. -export_dynamic_flag_spec=$lt_[]_LT_AC_TAGVAR(export_dynamic_flag_spec, $1) - -# Compiler flag to generate shared objects directly from archives. -whole_archive_flag_spec=$lt_[]_LT_AC_TAGVAR(whole_archive_flag_spec, $1) - -# Compiler flag to generate thread-safe objects. -thread_safe_flag_spec=$lt_[]_LT_AC_TAGVAR(thread_safe_flag_spec, $1) - -# Library versioning type. -version_type=$version_type - -# Format of library name prefix. -libname_spec=$lt_libname_spec - -# List of archive names. First name is the real one, the rest are links. -# The last name is the one that the linker finds with -lNAME. -library_names_spec=$lt_library_names_spec - -# The coded name of the library, if different from the real name. -soname_spec=$lt_soname_spec - -# Commands used to build and install an old-style archive. -RANLIB=$lt_RANLIB -old_archive_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_cmds, $1) -old_postinstall_cmds=$lt_old_postinstall_cmds -old_postuninstall_cmds=$lt_old_postuninstall_cmds - -# Create an old-style archive from a shared archive. -old_archive_from_new_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_new_cmds, $1) - -# Create a temporary old-style archive to link instead of a shared archive. -old_archive_from_expsyms_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) - -# Commands used to build and install a shared archive. -archive_cmds=$lt_[]_LT_AC_TAGVAR(archive_cmds, $1) -archive_expsym_cmds=$lt_[]_LT_AC_TAGVAR(archive_expsym_cmds, $1) -postinstall_cmds=$lt_postinstall_cmds -postuninstall_cmds=$lt_postuninstall_cmds - -# Commands used to build a loadable module (assumed same as above if empty) -module_cmds=$lt_[]_LT_AC_TAGVAR(module_cmds, $1) -module_expsym_cmds=$lt_[]_LT_AC_TAGVAR(module_expsym_cmds, $1) - -# Commands to strip libraries. -old_striplib=$lt_old_striplib -striplib=$lt_striplib - -# Dependencies to place before the objects being linked to create a -# shared library. -predep_objects=$lt_[]_LT_AC_TAGVAR(predep_objects, $1) - -# Dependencies to place after the objects being linked to create a -# shared library. -postdep_objects=$lt_[]_LT_AC_TAGVAR(postdep_objects, $1) - -# Dependencies to place before the objects being linked to create a -# shared library. -predeps=$lt_[]_LT_AC_TAGVAR(predeps, $1) - -# Dependencies to place after the objects being linked to create a -# shared library. -postdeps=$lt_[]_LT_AC_TAGVAR(postdeps, $1) - -# The library search path used internally by the compiler when linking -# a shared library. -compiler_lib_search_path=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1) - -# 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 - -# Flag that allows shared libraries with undefined symbols to be built. -allow_undefined_flag=$lt_[]_LT_AC_TAGVAR(allow_undefined_flag, $1) - -# Flag that forces no undefined symbols. -no_undefined_flag=$lt_[]_LT_AC_TAGVAR(no_undefined_flag, $1) - -# Commands used to finish a libtool library installation in a directory. -finish_cmds=$lt_finish_cmds - -# Same as above, but a single script fragment to be evaled but not shown. -finish_eval=$lt_finish_eval - -# 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 in a C name address pair -global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address - -# This is the shared library runtime path variable. -runpath_var=$runpath_var - -# This is the shared library path variable. -shlibpath_var=$shlibpath_var - -# Is shlibpath searched before the hard-coded library search path? -shlibpath_overrides_runpath=$shlibpath_overrides_runpath - -# How to hardcode a shared library path into an executable. -hardcode_action=$_LT_AC_TAGVAR(hardcode_action, $1) - -# Whether we should hardcode library paths into libraries. -hardcode_into_libs=$hardcode_into_libs - -# Flag to hardcode \$libdir into a binary during linking. -# This must work even if \$libdir does not exist. -hardcode_libdir_flag_spec=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) - -# If ld is used when linking, flag to hardcode \$libdir into -# a binary during linking. This must work even if \$libdir does -# not exist. -hardcode_libdir_flag_spec_ld=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1) - -# Whether we need a single -rpath flag with a separated argument. -hardcode_libdir_separator=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_separator, $1) - -# Set to yes if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the -# resulting binary. -hardcode_direct=$_LT_AC_TAGVAR(hardcode_direct, $1) - -# Set to yes if using the -LDIR flag during linking hardcodes DIR into the -# resulting binary. -hardcode_minus_L=$_LT_AC_TAGVAR(hardcode_minus_L, $1) - -# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into -# the resulting binary. -hardcode_shlibpath_var=$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1) - -# Set to yes if building a shared library automatically hardcodes DIR into the library -# and all subsequent libraries and executables linked against it. -hardcode_automatic=$_LT_AC_TAGVAR(hardcode_automatic, $1) - -# Variables whose values should be saved in libtool wrapper scripts and -# restored at relink time. -variables_saved_for_relink="$variables_saved_for_relink" - -# Whether libtool must link a program against all its dependency libraries. -link_all_deplibs=$_LT_AC_TAGVAR(link_all_deplibs, $1) - -# Compile-time system search path for libraries -sys_lib_search_path_spec=$lt_sys_lib_search_path_spec - -# Run-time system search path for libraries -sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec - -# Fix the shell variable \$srcfile for the compiler. -fix_srcfile_path="$_LT_AC_TAGVAR(fix_srcfile_path, $1)" - -# Set to yes if exported symbols are required. -always_export_symbols=$_LT_AC_TAGVAR(always_export_symbols, $1) - -# The commands to list exported symbols. -export_symbols_cmds=$lt_[]_LT_AC_TAGVAR(export_symbols_cmds, $1) - -# The commands to extract the exported symbol list from a shared archive. -extract_expsyms_cmds=$lt_extract_expsyms_cmds - -# Symbols that should not be listed in the preloaded symbols. -exclude_expsyms=$lt_[]_LT_AC_TAGVAR(exclude_expsyms, $1) - -# Symbols that must always be exported. -include_expsyms=$lt_[]_LT_AC_TAGVAR(include_expsyms, $1) - -ifelse([$1],[], -[# ### END LIBTOOL CONFIG], -[# ### END LIBTOOL TAG CONFIG: $tagname]) - -__EOF__ - -ifelse([$1],[], [ - case $host_os in - aix3*) - cat <<\EOF >> "$cfgfile" - -# AIX sometimes has problems with the GCC collect2 program. For some -# reason, if we set the COLLECT_NAMES environment variable, the problems -# vanish in a puff of smoke. -if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES -fi -EOF - ;; - esac - - # We use sed instead of cat because bash on DJGPP gets confused if - # if finds mixed CR/LF and LF-only lines. Since sed operates in - # text mode, it properly converts lines to CR/LF. This bash problem - # is reportedly fixed, but why not run on old versions too? - sed '$q' "$ltmain" >> "$cfgfile" || (rm -f "$cfgfile"; exit 1) - - mv -f "$cfgfile" "$ofile" || \ - (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") - chmod +x "$ofile" -]) -else - # If there is no Makefile yet, we rely on a make rule to execute - # `config.status --recheck' to rerun these tests and create the - # libtool script then. - test -f Makefile && make "$ltmain" -fi -])# AC_LIBTOOL_CONFIG - - -# AC_LIBTOOL_PROG_COMPILER_NO_RTTI([TAGNAME]) -# ------------------------------------------- -AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], -[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl - -_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= - -if test "$GCC" = yes; then - _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' - - AC_LIBTOOL_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions], - lt_cv_prog_compiler_rtti_exceptions, - [-fno-rtti -fno-exceptions], [], - [_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"]) -fi -])# AC_LIBTOOL_PROG_COMPILER_NO_RTTI - - -# AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE -# --------------------------------- -AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], -[AC_REQUIRE([AC_CANONICAL_HOST]) -AC_REQUIRE([AC_PROG_NM]) -AC_REQUIRE([AC_OBJEXT]) -# 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]]*\)' - -# Transform the above into a raw symbol and a C symbol. -symxfrm='\1 \2\3 \3' - -# Transform an extracted symbol line into a proper C declaration -lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern int \1;/p'" - -# Transform an extracted symbol line into symbol name and symbol address -lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" - -# Define system-specific variables. -case $host_os in -aix*) - symcode='[[BCDT]]' - ;; -cygwin* | mingw* | pw32*) - symcode='[[ABCDGISTW]]' - ;; -hpux*) # Its linker distinguishes data from code symbols - if test "$host_cpu" = ia64; then - symcode='[[ABCDEGRST]]' - fi - lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" - lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" - ;; -irix* | nonstopux*) - symcode='[[BCDEGRST]]' - ;; -osf*) - symcode='[[BCDEGQRST]]' - ;; -solaris* | sysv5*) - symcode='[[BDT]]' - ;; -sysv4) - symcode='[[DFNSTU]]' - ;; -esac - -# 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 - ;; -esac - -# If we're using GNU nm, then use its standard symbol codes. -case `$NM -V 2>&1` in -*GNU* | *'with BFD'*) - symcode='[[ABCDGISTW]]' ;; -esac - -# Try without a prefix undercore, then with it. -for ac_symprfx in "" "_"; do - - # Write the raw and C identifiers. - lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'" - - # Check to see that the pipe works correctly. - pipe_works=no - - rm -f conftest* - cat > conftest.$ac_ext <<EOF -#ifdef __cplusplus -extern "C" { -#endif -char nm_test_var; -void nm_test_func(){} -#ifdef __cplusplus -} -#endif -int main(){nm_test_var='a';nm_test_func();return(0);} -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 - cat <<EOF > conftest.$ac_ext -#ifdef __cplusplus -extern "C" { -#endif - -EOF - # Now generate the symbol file. - eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | grep -v main >> conftest.$ac_ext' - - cat <<EOF >> conftest.$ac_ext -#if defined (__STDC__) && __STDC__ -# define lt_ptr_t void * -#else -# define lt_ptr_t char * -# define const -#endif - -/* The mapping between symbol names and symbols. */ -const struct { - const char *name; - lt_ptr_t address; -} -lt_preloaded_symbols[[]] = -{ -EOF - $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr_t) \&\2},/" < "$nlist" | grep -v main >> conftest.$ac_ext - cat <<\EOF >> conftest.$ac_ext - {0, (lt_ptr_t) 0} -}; - -#ifdef __cplusplus -} -#endif -EOF - # Now try linking the two files. - mv conftest.$ac_objext conftstm.$ac_objext - lt_save_LIBS="$LIBS" - lt_save_CFLAGS="$CFLAGS" - LIBS="conftstm.$ac_objext" - CFLAGS="$CFLAGS$_LT_AC_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_save_LIBS" - CFLAGS="$lt_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 -f conftest* conftst* - - # Do not use the global_symbol_pipe unless it works. - if test "$pipe_works" = yes; 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 -]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE - - -# AC_LIBTOOL_PROG_COMPILER_PIC([TAGNAME]) -# --------------------------------------- -AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC], -[_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)= -_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= -_LT_AC_TAGVAR(lt_prog_compiler_static, $1)= - -AC_MSG_CHECKING([for $compiler option to produce PIC]) - ifelse([$1],[CXX],[ - # C++ specific cases for pic, static, wl, etc. - if test "$GXX" = yes; then - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' - - case $host_os in - aix*) - # All AIX code is PIC. - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - fi - ;; - amigaos*) - # FIXME: we need at least 68020 code to build shared libraries, but - # adding the `-m68020' flag to GCC prevents building anything better, - # like `-m68040'. - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' - ;; - beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) - # PIC is the default for these OSes. - ;; - mingw* | os2* | pw32*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT' - ;; - darwin* | rhapsody*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' - ;; - *djgpp*) - # DJGPP does not support shared libraries at all - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= - ;; - sysv4*MP*) - if test -d /usr/nec; then - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic - fi - ;; - hpux*) - # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but - # not for PA HP-UX. - case "$host_cpu" in - hppa*64*|ia64*) - ;; - *) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - esac - ;; - *) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - esac - else - case $host_os in - aix4* | aix5*) - # All AIX code is PIC. - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - else - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' - fi - ;; - chorus*) - case $cc_basename in - cxch68) - # Green Hills C++ Compiler - # _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a" - ;; - esac - ;; - dgux*) - case $cc_basename in - ec++) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - ;; - ghcx) - # Green Hills C++ Compiler - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - ;; - *) - ;; - esac - ;; - freebsd* | kfreebsd*-gnu) - # FreeBSD uses GNU C++ - ;; - hpux9* | hpux10* | hpux11*) - case $cc_basename in - CC) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive" - if test "$host_cpu" != ia64; then - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z' - fi - ;; - aCC) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive" - case "$host_cpu" in - hppa*64*|ia64*) - # +Z the default - ;; - *) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z' - ;; - esac - ;; - *) - ;; - esac - ;; - irix5* | irix6* | nonstopux*) - case $cc_basename in - CC) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - # CC pic flag -KPIC is the default. - ;; - *) - ;; - esac - ;; - linux*) - case $cc_basename in - KCC) - # KAI C++ Compiler - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - icpc) - # Intel C++ - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' - ;; - cxx) - # Compaq C++ - # Make sure the PIC flag is empty. It appears that all Alpha - # Linux and Compaq Tru64 Unix objects are PIC. - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - *) - ;; - esac - ;; - lynxos*) - ;; - m88k*) - ;; - mvs*) - case $cc_basename in - cxx) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall' - ;; - *) - ;; - esac - ;; - netbsd*) - ;; - osf3* | osf4* | osf5*) - case $cc_basename in - KCC) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' - ;; - RCC) - # Rational C++ 2.4.1 - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - ;; - cxx) - # Digital/Compaq C++ - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # Make sure the PIC flag is empty. It appears that all Alpha - # Linux and Compaq Tru64 Unix objects are PIC. - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - *) - ;; - esac - ;; - psos*) - ;; - sco*) - case $cc_basename in - CC) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - *) - ;; - esac - ;; - solaris*) - case $cc_basename in - CC) - # Sun C++ 4.2, 5.x and Centerline C++ - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' - ;; - gcx) - # Green Hills C++ Compiler - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' - ;; - *) - ;; - esac - ;; - sunos4*) - case $cc_basename in - CC) - # Sun C++ 4.x - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - lcc) - # Lucid - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - ;; - *) - ;; - esac - ;; - tandem*) - case $cc_basename in - NCC) - # NonStop-UX NCC 3.20 - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - ;; - *) - ;; - esac - ;; - unixware*) - ;; - vxworks*) - ;; - *) - _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no - ;; - esac - fi -], -[ - if test "$GCC" = yes; then - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' - - case $host_os in - aix*) - # All AIX code is PIC. - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - fi - ;; - - amigaos*) - # FIXME: we need at least 68020 code to build shared libraries, but - # adding the `-m68020' flag to GCC prevents building anything better, - # like `-m68040'. - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' - ;; - - beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) - # PIC is the default for these OSes. - ;; - - mingw* | pw32* | os2*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT' - ;; - - darwin* | rhapsody*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' - ;; - - msdosdjgpp*) - # Just because we use GCC doesn't mean we suddenly get shared libraries - # on systems that don't support them. - _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no - enable_shared=no - ;; - - sysv4*MP*) - if test -d /usr/nec; then - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic - fi - ;; - - hpux*) - # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but - # not for PA HP-UX. - case "$host_cpu" in - hppa*64*|ia64*) - # +Z the default - ;; - *) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - esac - ;; - - *) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - esac - else - # PORTME Check for flag to pass linker flags through the system compiler. - case $host_os in - aix*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - else - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' - fi - ;; - - mingw* | pw32* | os2*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT' - ;; - - hpux9* | hpux10* | hpux11*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but - # not for PA HP-UX. - case "$host_cpu" in - hppa*64*|ia64*) - # +Z the default - ;; - *) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z' - ;; - esac - # Is there a better lt_prog_compiler_static that works with the bundled CC? - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' - ;; - - irix5* | irix6* | nonstopux*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # PIC (with -KPIC) is the default. - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - - newsos6) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - linux*) - case $CC in - icc* | ecc*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' - ;; - ccc*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # All Alpha code is PIC. - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - esac - ;; - - osf3* | osf4* | osf5*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # All OSF/1 code is PIC. - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - - sco3.2v5*) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-Kpic' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-dn' - ;; - - solaris*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - sunos4*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - sysv4*MP*) - if test -d /usr/nec ;then - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - fi - ;; - - uts4*) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - *) - _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no - ;; - esac - fi -]) -AC_MSG_RESULT([$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)]) - -# -# Check to make sure the PIC flag actually works. -# -if test -n "$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)"; then - AC_LIBTOOL_COMPILER_OPTION([if $compiler PIC flag $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) works], - _LT_AC_TAGVAR(lt_prog_compiler_pic_works, $1), - [$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])], [], - [case $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) in - "" | " "*) ;; - *) _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)" ;; - esac], - [_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= - _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no]) -fi -case "$host_os" in - # For platforms which do not support PIC, -DPIC is meaningless: - *djgpp*) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= - ;; - *) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])" - ;; -esac -]) - - -# AC_LIBTOOL_PROG_LD_SHLIBS([TAGNAME]) -# ------------------------------------ -# See if the linker supports building shared libraries. -AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS], -[AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) -ifelse([$1],[CXX],[ - _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' - case $host_os in - aix4* | aix5*) - # 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 - if $NM -V 2>&1 | grep 'GNU' > /dev/null; then - _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols' - else - _LT_AC_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_AC_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds" - ;; - cygwin* | mingw*) - _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGS]] /s/.* \([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols' - ;; - *) - _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' - ;; - esac -],[ - runpath_var= - _LT_AC_TAGVAR(allow_undefined_flag, $1)= - _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no - _LT_AC_TAGVAR(archive_cmds, $1)= - _LT_AC_TAGVAR(archive_expsym_cmds, $1)= - _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)= - _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1)= - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)= - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= - _LT_AC_TAGVAR(thread_safe_flag_spec, $1)= - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= - _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)= - _LT_AC_TAGVAR(hardcode_direct, $1)=no - _LT_AC_TAGVAR(hardcode_minus_L, $1)=no - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported - _LT_AC_TAGVAR(link_all_deplibs, $1)=unknown - _LT_AC_TAGVAR(hardcode_automatic, $1)=no - _LT_AC_TAGVAR(module_cmds, $1)= - _LT_AC_TAGVAR(module_expsym_cmds, $1)= - _LT_AC_TAGVAR(always_export_symbols, $1)=no - _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' - # include_expsyms should be a list of space-separated symbols to be *always* - # included in the symbol list - _LT_AC_TAGVAR(include_expsyms, $1)= - # exclude_expsyms can be an extended regexp of symbols to exclude - # it will be wrapped by ` (' and `)$', so one must not match beginning or - # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', - # as well as any symbol that contains `d'. - _LT_AC_TAGVAR(exclude_expsyms, $1)="_GLOBAL_OFFSET_TABLE_" - # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out - # platforms (ab)use it in PIC code, but their linkers get confused if - # the symbol is explicitly referenced. Since portable code cannot - # rely on this symbol name, it's probably fine to never include it in - # preloaded symbol tables. - extract_expsyms_cmds= - - case $host_os in - cygwin* | mingw* | pw32*) - # FIXME: the MSVC++ port hasn't been tested in a loooong time - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - if test "$GCC" != yes; then - with_gnu_ld=no - fi - ;; - openbsd*) - with_gnu_ld=no - ;; - esac - - _LT_AC_TAGVAR(ld_shlibs, $1)=yes - if test "$with_gnu_ld" = yes; then - # If archive_cmds runs LD, not CC, wlarc should be empty - wlarc='${wl}' - - # See if GNU ld supports shared libraries. - case $host_os in - aix3* | aix4* | aix5*) - # On AIX/PPC, the GNU linker is very broken - if test "$host_cpu" != ia64; then - _LT_AC_TAGVAR(ld_shlibs, $1)=no - cat <<EOF 1>&2 - -*** Warning: the GNU linker, at least up to release 2.9.1, is reported -*** to be unable to reliably create shared libraries on AIX. -*** Therefore, libtool is disabling shared libraries support. If you -*** really care for shared libraries, you may want to modify your PATH -*** so that a non-GNU linker is found, and then restart. - -EOF - fi - ;; - - amigaos*) - _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - - # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports - # that the semantics of dynamic libraries on AmigaOS, at least up - # to version 4, is to share data among multiple programs linked - # with the same dynamic library. Since this doesn't match the - # behavior of shared libraries on other platforms, we can't use - # them. - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - - beos*) - if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported - # Joseph Beckenbach <jrb3@best.com> says some releases of gcc - # support --undefined. This deserves some investigation. FIXME - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -nostart $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname -o $lib' - else - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - cygwin* | mingw* | pw32*) - # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, - # as there is no search path for DLLs. - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(allow_undefined_flag, $1)=no - _LT_AC_TAGVAR(always_export_symbols, $1)=no - _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGS]] /s/.* \([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols' - - if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib' - # If the export-symbols file already is a .def file (1st line - # is EXPORTS), use it as is; otherwise, prepend... - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then - cp $export_symbols $output_objdir/$soname.def; - else - echo EXPORTS > $output_objdir/$soname.def; - cat $export_symbols >> $output_objdir/$soname.def; - fi~ - $CC -shared $output_objdir/$soname.def $compiler_flags $libobjs $deplibs -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib' - else - ld_shlibs=no - fi - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' - wlarc= - else - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - fi - ;; - - solaris* | sysv5*) - if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then - _LT_AC_TAGVAR(ld_shlibs, $1)=no - cat <<EOF 1>&2 - -*** Warning: The releases 2.8.* of the GNU linker cannot reliably -*** create shared libraries on Solaris systems. Therefore, libtool -*** is disabling shared libraries support. We urge you to upgrade GNU -*** binutils to release 2.9.1 or newer. Another option is to modify -*** your PATH or compiler configuration so that the native linker is -*** used, and then restart. - -EOF - elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - sunos4*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' - wlarc= - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - *) - if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - - if test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = yes; then - runpath_var=LD_RUN_PATH - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - # ancient GNU ld didn't support --whole-archive et. al. - if $LD --help 2>&1 | grep 'no-whole-archive' > /dev/null; then - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' - else - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= - fi - fi - else - # PORTME fill in a description of your system's linker (not GNU ld) - case $host_os in - aix3*) - _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported - _LT_AC_TAGVAR(always_export_symbols, $1)=yes - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' - # Note: this linker hardcodes the directories in LIBPATH if there - # are no directories specified by -L. - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - if test "$GCC" = yes && test -z "$link_static_flag"; then - # Neither direct hardcoding nor static linking is supported with a - # broken collect2. - _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported - fi - ;; - - aix4* | aix5*) - if test "$host_cpu" = ia64; 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 - if $NM -V 2>&1 | grep 'GNU' > /dev/null; then - _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols' - else - _LT_AC_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 - - # KDE requires run time linking. Make it the default. - aix_use_runtimelinking=yes - exp_sym_flag='-bexport' - no_entry_flag='-bnoentry' - fi - - # When large executables or shared objects are built, AIX ld can - # have problems creating the table of contents. If linking a library - # or program results in "error TOC overflow" add -mminimal-toc to - # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not - # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. - - _LT_AC_TAGVAR(archive_cmds, $1)='' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':' - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - - if test "$GCC" = yes; then - case $host_os in aix4.[012]|aix4.[012].*) - # We only want to do this on AIX 4.2 and lower, the check - # below for broken collect2 doesn't work under 4.3+ - collect2name=`${CC} -print-prog-name=collect2` - if test -f "$collect2name" && \ - strings "$collect2name" | grep resolve_lib_name >/dev/null - then - # We have reworked collect2 - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - else - # We have old collect2 - _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported - # It fails to find uninstalled libraries when the uninstalled - # path is not listed in the libpath. Setting hardcode_minus_L - # to unsupported forces relinking - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)= - fi - esac - shared_flag='-shared' - else - # not using gcc - if test "$host_cpu" = ia64; then - # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release - # chokes on -Wl,-G. The following line is correct: - shared_flag='-G' - else - if test "$aix_use_runtimelinking" = yes; then - shared_flag='-qmkshrobj ${wl}-G' - else - shared_flag='-qmkshrobj' - fi - fi - fi - - # Let the compiler handle the export list. - _LT_AC_TAGVAR(always_export_symbols, $1)=no - if test "$aix_use_runtimelinking" = yes; then - # Warning - without using the other runtime loading flags (-brtl), - # -berok will link without error, but may produce a broken library. - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok' - # Determine the default libpath from the value encoded in an empty executable. - _LT_AC_SYS_LIBPATH_AIX - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" - _LT_AC_TAGVAR(archive_cmds, $1)="\$CC"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '" $shared_flag" - _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" - else - if test "$host_cpu" = ia64; then - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' - _LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs" - _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" - else - # Determine the default libpath from the value encoded in an empty executable. - _LT_AC_SYS_LIBPATH_AIX - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" - # Warning - without using the other run time loading flags, - # -berok will link without error, but may produce a broken library. - _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' - # -bexpall does not export symbols beginning with underscore (_) - _LT_AC_TAGVAR(always_export_symbols, $1)=yes - # Exported symbols can be pulled into shared objects from archives - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' ' - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes - # This is similar to how AIX traditionally builds it's shared libraries. - _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' - fi - fi - ;; - - amigaos*) - _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - # see comment about different semantics on the GNU ld section - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - - bsdi4*) - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic - ;; - - cygwin* | mingw* | pw32*) - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' - _LT_AC_TAGVAR(allow_undefined_flag, $1)=no - # Tell ltmain to make .lib files, not .a files. - libext=lib - # Tell ltmain to make .dll files, not .so files. - shrext=".dll" - # FIXME: Setting linknames here is a bad hack. - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -o $lib $compiler_flags $libobjs `echo "$deplibs" | $SED -e '\''s/ -lc$//'\''` -link -dll~linknames=' - # The linker will automatically build a .lib file if we build a DLL. - _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='true' - # FIXME: Should let the user specify the lib program. - _LT_AC_TAGVAR(old_archive_cmds, $1)='lib /OUT:$oldlib$oldobjs$old_deplibs' - fix_srcfile_path='`cygpath -w "$srcfile"`' - _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - ;; - - darwin* | rhapsody*) - if test "$GXX" = yes ; then - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - case "$host_os" in - rhapsody* | darwin1.[[012]]) - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,suppress' - ;; - *) # Darwin 1.3 on - if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress' - else - case ${MACOSX_DEPLOYMENT_TARGET} in - 10.[012]) - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress' - ;; - 10.*) - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,dynamic_lookup' - ;; - esac - fi - ;; - esac - lt_int_apple_cc_single_mod=no - output_verbose_link_cmd='echo' - if $CC -dumpspecs 2>&1 | grep 'single_module' >/dev/null ; then - lt_int_apple_cc_single_mod=yes - fi - if test "X$lt_int_apple_cc_single_mod" = Xyes ; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring' - else - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $compiler_flags $deplibs -install_name $rpath/$soname $verstring' - fi - _LT_AC_TAGVAR(module_cmds, $1)='$CC ${wl}-bind_at_load $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs' - # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's - if test "X$lt_int_apple_cc_single_mod" = Xyes ; then - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - else - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $compiler_flags $deplibs -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - fi - _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - _LT_AC_TAGVAR(hardcode_direct, $1)=no - _LT_AC_TAGVAR(hardcode_automatic, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience' - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - else - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - dgux*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - freebsd1*) - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - - # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor - # support. Future versions do this automatically, but an explicit c++rt0.o - # does not break anything, and helps significantly (at the cost of a little - # extra space). - freebsd2.2*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - # Unfortunately, older versions of FreeBSD 2 do not have this feature. - freebsd2*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - # FreeBSD 3 and greater uses gcc -shared to do shared libraries. - freebsd* | kfreebsd*-gnu) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $compiler_flags $libobjs $deplibs' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - hpux9*) - if test "$GCC" = yes; then - _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $compiler_flags $libobjs $deplibs~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' - else - _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' - fi - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - ;; - - hpux10* | hpux11*) - if test "$GCC" = yes -a "$with_gnu_ld" = no; then - case "$host_cpu" in - hppa*64*|ia64*) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $compiler_flags $libobjs $deplibs' - ;; - *) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $compiler_flags $libobjs $deplibs' - ;; - esac - else - case "$host_cpu" in - hppa*64*|ia64*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $libobjs $deplibs $linker_flags' - ;; - *) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' - ;; - esac - fi - if test "$with_gnu_ld" = no; then - case "$host_cpu" in - hppa*64*) - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_AC_TAGVAR(hardcode_direct, $1)=no - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - ia64*) - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_direct, $1)=no - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - ;; - *) - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - ;; - esac - fi - ;; - - irix5* | irix6* | nonstopux*) - if test "$GCC" = yes; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - else - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir' - fi - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out - else - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF - fi - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - newsos6) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - openbsd*) - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $compiler_flags $libobjs $deplibs' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - else - case $host_os in - openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - ;; - *) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $compiler_flags $libobjs $deplibs' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - ;; - esac - fi - ;; - - os2*) - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported - _LT_AC_TAGVAR(archive_cmds, $1)='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $compiler_flags $libobjs $deplibs$output_objdir/$libname.def' - _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' - ;; - - osf3*) - if test "$GCC" = yes; then - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $compiler_flags $libobjs $deplibs ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - else - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - fi - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - ;; - - osf4* | osf5*) # as osf3* with the addition of -msym flag - if test "$GCC" = yes; then - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $compiler_flags $libobjs $deplibs ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - else - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~ - $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp' - - # Both c and cxx compiler support -rpath directly - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' - fi - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - ;; - - sco3.2v5*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - ;; - - solaris*) - _LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text' - if test "$GCC" = yes; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o $lib $compiler_flags $libobjs $deplibs' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $CC -shared ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $compiler_flags $libobjs $deplibs~$rm $lib.exp' - else - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_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' - fi - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - case $host_os in - solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; - *) # Supported since Solaris 2.6 (maybe 2.5.1?) - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' ;; - esac - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - ;; - - sunos4*) - if test "x$host_vendor" = xsequent; then - # Use $CC to link under sequent, because it throws in some extra .o - # files that make .init and .fini sections work. - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $compiler_flags $libobjs $deplibs' - else - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' - fi - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - sysv4) - case $host_vendor in - sni) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes # is this really true??? - ;; - siemens) - ## LD is ld it makes a PLAMLIB - ## CC just makes a GrossModule. - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs' - _LT_AC_TAGVAR(hardcode_direct, $1)=no - ;; - motorola) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie - ;; - esac - runpath_var='LD_RUN_PATH' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - sysv4.3*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport' - ;; - - sysv4*MP*) - if test -d /usr/nec; then - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - _LT_AC_TAGVAR(ld_shlibs, $1)=yes - fi - ;; - - sysv4.2uw2*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_minus_L, $1)=no - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - hardcode_runpath_var=yes - runpath_var=LD_RUN_PATH - ;; - - sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7*) - _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z ${wl}text' - if test "$GCC" = yes; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o $lib $compiler_flags $libobjs $deplibs' - else - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h ${wl}$soname -o $lib $compiler_flags $libobjs $deplibs' - fi - runpath_var='LD_RUN_PATH' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - sysv5*) - _LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text' - # $CC -shared without GNU ld will not create a library from C++ - # object files and a static libstdc++, better avoid it by now - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_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' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - runpath_var='LD_RUN_PATH' - ;; - - uts4*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - *) - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - esac - fi -]) -AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)]) -test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no - -variables_saved_for_relink="PATH $shlibpath_var $runpath_var" -if test "$GCC" = yes; then - variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" -fi - -# -# Do we need to explicitly link libc? -# -case "x$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)" in -x|xyes) - # Assume -lc should be added - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes - - if test "$enable_shared" = yes && test "$GCC" = yes; then - case $_LT_AC_TAGVAR(archive_cmds, $1) in - *'~'*) - # FIXME: we may have to deal with multi-command sequences. - ;; - '$CC '*) - # Test whether the compiler implicitly links with -lc since on some - # systems, -lgcc has to come before -lc. If gcc already passes -lc - # to ld, don't add -lc before -lgcc. - AC_MSG_CHECKING([whether -lc should be explicitly linked in]) - $rm conftest* - printf "$lt_simple_compile_test_code" > conftest.$ac_ext - - if AC_TRY_EVAL(ac_compile) 2>conftest.err; then - soname=conftest - lib=conftest - libobjs=conftest.$ac_objext - deplibs= - wl=$_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) - compiler_flags=-v - linker_flags=-v - verstring= - output_objdir=. - libname=conftest - lt_save_allow_undefined_flag=$_LT_AC_TAGVAR(allow_undefined_flag, $1) - _LT_AC_TAGVAR(allow_undefined_flag, $1)= - if AC_TRY_EVAL(_LT_AC_TAGVAR(archive_cmds, $1) 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) - then - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - else - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes - fi - _LT_AC_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag - else - cat conftest.err 1>&5 - fi - $rm conftest* - AC_MSG_RESULT([$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)]) - ;; - esac - fi - ;; -esac -])# AC_LIBTOOL_PROG_LD_SHLIBS - - -# _LT_AC_FILE_LTDLL_C -# ------------------- -# Be careful that the start marker always follows a newline. -AC_DEFUN([_LT_AC_FILE_LTDLL_C], [ -# /* ltdll.c starts here */ -# #define WIN32_LEAN_AND_MEAN -# #include <windows.h> -# #undef WIN32_LEAN_AND_MEAN -# #include <stdio.h> -# -# #ifndef __CYGWIN__ -# # ifdef __CYGWIN32__ -# # define __CYGWIN__ __CYGWIN32__ -# # endif -# #endif -# -# #ifdef __cplusplus -# extern "C" { -# #endif -# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved); -# #ifdef __cplusplus -# } -# #endif -# -# #ifdef __CYGWIN__ -# #include <cygwin/cygwin_dll.h> -# DECLARE_CYGWIN_DLL( DllMain ); -# #endif -# HINSTANCE __hDllInstance_base; -# -# BOOL APIENTRY -# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved) -# { -# __hDllInstance_base = hInst; -# return TRUE; -# } -# /* ltdll.c ends here */ -])# _LT_AC_FILE_LTDLL_C - - -# _LT_AC_TAGVAR(VARNAME, [TAGNAME]) -# --------------------------------- -AC_DEFUN([_LT_AC_TAGVAR], [ifelse([$2], [], [$1], [$1_$2])]) - - -# old names -AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL]) -AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) -AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) -AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) -AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) -AC_DEFUN([AM_PROG_LD], [AC_PROG_LD]) -AC_DEFUN([AM_PROG_NM], [AC_PROG_NM]) - -# This is just to silence aclocal about the macro not being used -ifelse([AC_DISABLE_FAST_INSTALL]) - -AC_DEFUN([LT_AC_PROG_GCJ], -[AC_CHECK_TOOL(GCJ, gcj, no) - test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" - AC_SUBST(GCJFLAGS) -]) - -AC_DEFUN([LT_AC_PROG_RC], -[AC_CHECK_TOOL(RC, windres, no) -]) - -############################################################ -# NOTE: This macro has been submitted for inclusion into # -# GNU Autoconf as AC_PROG_SED. When it is available in # -# a released version of Autoconf we should remove this # -# macro and use it instead. # -############################################################ -# LT_AC_PROG_SED -# -------------- -# Check for a fully-functional sed program, that truncates -# as few characters as possible. Prefer GNU sed if found. -AC_DEFUN([LT_AC_PROG_SED], -[AC_MSG_CHECKING([for a sed that does not truncate output]) -AC_CACHE_VAL(lt_cv_path_SED, -[# Loop through the user's path and test for sed and gsed. -# Then use that list of sed's as ones to test for truncation. -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for lt_ac_prog in sed gsed; do - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then - lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext" - fi - done - done -done -lt_ac_max=0 -lt_ac_count=0 -# Add /usr/xpg4/bin/sed as it is typically found on Solaris -# along with /bin/sed that truncates output. -for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do - test ! -f $lt_ac_sed && break - cat /dev/null > conftest.in - lt_ac_count=0 - echo $ECHO_N "0123456789$ECHO_C" >conftest.in - # Check for GNU sed and select it if it is found. - if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then - lt_cv_path_SED=$lt_ac_sed - break - fi - while true; do - cat conftest.in conftest.in >conftest.tmp - mv conftest.tmp conftest.in - cp conftest.in conftest.nl - echo >>conftest.nl - $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break - cmp -s conftest.out conftest.nl || break - # 10000 chars as input seems more than enough - test $lt_ac_count -gt 10 && break - lt_ac_count=`expr $lt_ac_count + 1` - if test $lt_ac_count -gt $lt_ac_max; then - lt_ac_max=$lt_ac_count - lt_cv_path_SED=$lt_ac_sed - fi - done -done -]) -SED=$lt_cv_path_SED -AC_MSG_RESULT([$SED]) -]) diff --git a/portland/dapi/kde/admin/ltmain.sh b/portland/dapi/kde/admin/ltmain.sh deleted file mode 100644 index 27ee8c4..0000000 --- a/portland/dapi/kde/admin/ltmain.sh +++ /dev/null @@ -1,6389 +0,0 @@ -# ltmain.sh - Provide generalized library-building support services. -# NOTE: Changing this file will not affect anything until you rerun configure. -# -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003 -# Free Software Foundation, Inc. -# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996 -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# Check that we have a working $echo. -if test "X$1" = X--no-reexec; then - # Discard the --no-reexec flag, and continue. - shift -elif test "X$1" = X--fallback-echo; then - # Avoid inline document here, it may be left over - : -elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then - # Yippee, $echo works! - : -else - # Restart under the correct shell, and then maybe $echo will work. - exec $SHELL "$0" --no-reexec ${1+"$@"} -fi - -if test "X$1" = X--fallback-echo; then - # used as fallback echo - shift - cat <<EOF -$* -EOF - exit 0 -fi - -# The name of this program. -progname=`$echo "$0" | ${SED} 's%^.*/%%'` -modename="$progname" - -# Constants. -PROGRAM=ltmain.sh -PACKAGE=libtool -VERSION=1.5a -TIMESTAMP=" (1.1240 2003/06/26 06:55:19)" - -default_mode= -help="Try \`$progname --help' for more information." -magic="%%%MAGIC variable%%%" -mkdir="mkdir" -mv="mv -f" -rm="rm -f" - -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -Xsed="${SED}"' -e 1s/^X//' -sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g' -# test EBCDIC or ASCII -case `echo A|tr A '\301'` in - A) # EBCDIC based system - SP2NL="tr '\100' '\n'" - NL2SP="tr '\r\n' '\100\100'" - ;; - *) # Assume ASCII based system - SP2NL="tr '\040' '\012'" - NL2SP="tr '\015\012' '\040\040'" - ;; -esac - -# NLS nuisances. -# Only set LANG and LC_ALL to C if already set. -# These must not be set unconditionally because not all systems understand -# e.g. LANG=C (notably SCO). -# We save the old values to restore during execute mode. -if test "${LC_ALL+set}" = set; then - save_LC_ALL="$LC_ALL"; LC_ALL=C; export LC_ALL -fi -if test "${LANG+set}" = set; then - save_LANG="$LANG"; LANG=C; export LANG -fi - -# Make sure IFS has a sensible default -: ${IFS=" "} - -if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then - $echo "$modename: not configured to build any kind of library" 1>&2 - $echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 - exit 1 -fi - -# Global variables. -mode=$default_mode -nonopt= -prev= -prevopt= -run= -show="$echo" -show_help= -execute_dlfiles= -lo2o="s/\\.lo\$/.${objext}/" -o2lo="s/\\.${objext}\$/.lo/" - -##################################### -# Shell function definitions: -# This seems to be the best place for them - -# 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. -win32_libid () { - win32_libid_type="unknown" - win32_fileres=`file -L $1 2>/dev/null` - case $win32_fileres in - *ar\ archive\ import\ library*) # definitely import - win32_libid_type="x86 archive import" - ;; - *ar\ archive*) # could be an import, or static - if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | \ - grep -E 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then - win32_nmres=`eval $NM -f posix -A $1 | \ - sed -n -e '1,100{/ I /{x;/import/!{s/^/import/;h;p;};x;};}'` - if test "X$win32_nmres" = "Ximport" ; then - win32_libid_type="x86 archive import" - else - win32_libid_type="x86 archive static" - fi - fi - ;; - *DLL*) - win32_libid_type="x86 DLL" - ;; - *executable*) # but shell scripts are "executable" too... - case $win32_fileres in - *MS\ Windows\ PE\ Intel*) - win32_libid_type="x86 DLL" - ;; - esac - ;; - esac - $echo $win32_libid_type -} - -# End of Shell function definitions -##################################### - -# Parse our command line options once, thoroughly. -while test "$#" -gt 0 -do - arg="$1" - shift - - case $arg in - -*=*) optarg=`$echo "X$arg" | $Xsed -e 's/[-_a-zA-Z0-9]*=//'` ;; - *) optarg= ;; - esac - - # If the previous option needs an argument, assign it. - if test -n "$prev"; then - case $prev in - execute_dlfiles) - execute_dlfiles="$execute_dlfiles $arg" - ;; - tag) - tagname="$arg" - - # Check whether tagname contains only valid characters - case $tagname in - *[!-_A-Za-z0-9,/]*) - $echo "$progname: invalid tag name: $tagname" 1>&2 - exit 1 - ;; - esac - - case $tagname in - CC) - # Don't test for the "default" C tag, as we know, it's there, but - # not specially marked. - ;; - *) - if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "$0" > /dev/null; then - taglist="$taglist $tagname" - # Evaluate the configuration. - eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$tagname'$/,/^# ### END LIBTOOL TAG CONFIG: '$tagname'$/p' < $0`" - else - $echo "$progname: ignoring unknown tag $tagname" 1>&2 - fi - ;; - esac - ;; - *) - eval "$prev=\$arg" - ;; - esac - - prev= - prevopt= - continue - fi - - # Have we seen a non-optional argument yet? - case $arg in - --help) - show_help=yes - ;; - - --version) - $echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP" - $echo - $echo "Copyright (C) 2003 Free Software Foundation, Inc." - $echo "This is free software; see the source for copying conditions. There is NO" - $echo "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." - exit 0 - ;; - - --config) - ${SED} -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $0 - # Now print the configurations for the tags. - for tagname in $taglist; do - ${SED} -n -e "/^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$/,/^# ### END LIBTOOL TAG CONFIG: $tagname$/p" < "$0" - done - exit 0 - ;; - - --debug) - $echo "$progname: enabling shell trace mode" - set -x - ;; - - --dry-run | -n) - run=: - ;; - - --features) - $echo "host: $host" - if test "$build_libtool_libs" = yes; then - $echo "enable shared libraries" - else - $echo "disable shared libraries" - fi - if test "$build_old_libs" = yes; then - $echo "enable static libraries" - else - $echo "disable static libraries" - fi - exit 0 - ;; - - --finish) mode="finish" ;; - - --mode) prevopt="--mode" prev=mode ;; - --mode=*) mode="$optarg" ;; - - --preserve-dup-deps) duplicate_deps="yes" ;; - - --quiet | --silent) - show=: - ;; - - --tag) prevopt="--tag" prev=tag ;; - --tag=*) - set tag "$optarg" ${1+"$@"} - shift - prev=tag - ;; - - -dlopen) - prevopt="-dlopen" - prev=execute_dlfiles - ;; - - -*) - $echo "$modename: unrecognized option \`$arg'" 1>&2 - $echo "$help" 1>&2 - exit 1 - ;; - - *) - nonopt="$arg" - break - ;; - esac -done - -if test -n "$prevopt"; then - $echo "$modename: option \`$prevopt' requires an argument" 1>&2 - $echo "$help" 1>&2 - exit 1 -fi - -# If this variable is set in any of the actions, the command in it -# will be execed at the end. This prevents here-documents from being -# left over by shells. -exec_cmd= - -if test -z "$show_help"; then - - # Infer the operation mode. - if test -z "$mode"; then - $echo "*** Warning: inferring the mode of operation is deprecated." 1>&2 - $echo "*** Future versions of Libtool will require -mode=MODE be specified." 1>&2 - case $nonopt in - *cc | cc* | *++ | gcc* | *-gcc* | g++* | xlc*) - mode=link - for arg - do - case $arg in - -c) - mode=compile - break - ;; - esac - done - ;; - *db | *dbx | *strace | *truss) - mode=execute - ;; - *install*|cp|mv) - mode=install - ;; - *rm) - mode=uninstall - ;; - *) - # If we have no mode, but dlfiles were specified, then do execute mode. - test -n "$execute_dlfiles" && mode=execute - - # Just use the default operation mode. - if test -z "$mode"; then - if test -n "$nonopt"; then - $echo "$modename: warning: cannot infer operation mode from \`$nonopt'" 1>&2 - else - $echo "$modename: warning: cannot infer operation mode without MODE-ARGS" 1>&2 - fi - fi - ;; - esac - fi - - # Only execute mode is allowed to have -dlopen flags. - if test -n "$execute_dlfiles" && test "$mode" != execute; then - $echo "$modename: unrecognized option \`-dlopen'" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - # Change the help message to a mode-specific one. - generic_help="$help" - help="Try \`$modename --help --mode=$mode' for more information." - - # These modes are in order of execution frequency so that they run quickly. - case $mode in - # libtool compile mode - compile) - modename="$modename: compile" - # Get the compilation command and the source file. - base_compile= - srcfile="$nonopt" # always keep a non-empty value in "srcfile" - suppress_output= - arg_mode=normal - libobj= - - for arg - do - case "$arg_mode" in - arg ) - # do not "continue". Instead, add this to base_compile - lastarg="$arg" - arg_mode=normal - ;; - - target ) - libobj="$arg" - arg_mode=normal - continue - ;; - - normal ) - # Accept any command-line options. - case $arg in - -o) - if test -n "$libobj" ; then - $echo "$modename: you cannot specify \`-o' more than once" 1>&2 - exit 1 - fi - arg_mode=target - continue - ;; - - -static) - build_old_libs=yes - continue - ;; - - -prefer-pic) - pic_mode=yes - continue - ;; - - -prefer-non-pic) - pic_mode=no - continue - ;; - - -Xcompiler) - arg_mode=arg # the next one goes into the "base_compile" arg list - continue # The current "srcfile" will either be retained or - ;; # replaced later. I would guess that would be a bug. - - -Wc,*) - args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"` - lastarg= - save_ifs="$IFS"; IFS=',' - for arg in $args; do - IFS="$save_ifs" - - # Double-quote args containing other shell metacharacters. - # Many Bourne shells cannot handle close brackets correctly - # in scan sets, so we specify it separately. - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - arg="\"$arg\"" - ;; - esac - lastarg="$lastarg $arg" - done - IFS="$save_ifs" - lastarg=`$echo "X$lastarg" | $Xsed -e "s/^ //"` - - # Add the arguments to base_compile. - base_compile="$base_compile $lastarg" - continue - ;; - - * ) - # Accept the current argument as the source file. - # The previous "srcfile" becomes the current argument. - # - lastarg="$srcfile" - srcfile="$arg" - ;; - esac # case $arg - ;; - esac # case $arg_mode - - # Aesthetically quote the previous argument. - lastarg=`$echo "X$lastarg" | $Xsed -e "$sed_quote_subst"` - - case $lastarg in - # Double-quote args containing other shell metacharacters. - # Many Bourne shells cannot handle close brackets correctly - # in scan sets, so we specify it separately. - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - lastarg="\"$lastarg\"" - ;; - esac - - base_compile="$base_compile $lastarg" - done # for arg - - case $arg_mode in - arg) - $echo "$modename: you must specify an argument for -Xcompile" - exit 1 - ;; - target) - $echo "$modename: you must specify a target with \`-o'" 1>&2 - exit 1 - ;; - *) - # Get the name of the library object. - [ -z "$libobj" ] && libobj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%'` - ;; - esac - - # Recognize several different file suffixes. - # If the user specifies -o file.o, it is replaced with file.lo - xform='[cCFSifmso]' - case $libobj in - *.ada) xform=ada ;; - *.adb) xform=adb ;; - *.ads) xform=ads ;; - *.asm) xform=asm ;; - *.c++) xform=c++ ;; - *.cc) xform=cc ;; - *.ii) xform=ii ;; - *.class) xform=class ;; - *.cpp) xform=cpp ;; - *.cxx) xform=cxx ;; - *.f90) xform=f90 ;; - *.for) xform=for ;; - *.java) xform=java ;; - esac - - libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"` - - case $libobj in - *.lo) obj=`$echo "X$libobj" | $Xsed -e "$lo2o"` ;; - *) - $echo "$modename: cannot determine name of library object from \`$libobj'" 1>&2 - exit 1 - ;; - esac - - # Infer tagged configuration to use if any are available and - # if one wasn't chosen via the "--tag" command line option. - # Only attempt this if the compiler in the base compile - # command doesn't match the default compiler. - if test -n "$available_tags" && test -z "$tagname"; then - case $base_compile in - # Blanks in the command may have been stripped by the calling shell, - # but not from the CC environment variable when configure was run. - " $CC "* | "$CC "* | " `$echo $CC` "* | "`$echo $CC` "*) ;; - # Blanks at the start of $base_compile will cause this to fail - # if we don't check for them as well. - *) - for z in $available_tags; do - if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$0" > /dev/null; then - # Evaluate the configuration. - eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $0`" - case "$base_compile " in - "$CC "* | " $CC "* | "`$echo $CC` "* | " `$echo $CC` "*) - # The compiler in the base compile command matches - # the one in the tagged configuration. - # Assume this is the tagged configuration we want. - tagname=$z - break - ;; - esac - fi - done - # If $tagname still isn't set, then no tagged configuration - # was found and let the user know that the "--tag" command - # line option must be used. - if test -z "$tagname"; then - $echo "$modename: unable to infer tagged configuration" - $echo "$modename: specify a tag with \`--tag'" 1>&2 - exit 1 -# else -# $echo "$modename: using $tagname tagged configuration" - fi - ;; - esac - fi - - objname=`$echo "X$obj" | $Xsed -e 's%^.*/%%'` - xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'` - if test "X$xdir" = "X$obj"; then - xdir= - else - xdir=$xdir/ - fi - lobj=${xdir}$objdir/$objname - - if test -z "$base_compile"; then - $echo "$modename: you must specify a compilation command" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - # Delete any leftover library objects. - if test "$build_old_libs" = yes; then - removelist="$obj $lobj $libobj ${libobj}T" - else - removelist="$lobj $libobj ${libobj}T" - fi - - $run $rm $removelist - trap "$run $rm $removelist; exit 1" 1 2 15 - - # On Cygwin there's no "real" PIC flag so we must build both object types - case $host_os in - cygwin* | mingw* | pw32* | os2*) - pic_mode=default - ;; - esac - if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then - # non-PIC code in shared libraries is not supported - pic_mode=default - fi - - # Calculate the filename of the output object if compiler does - # not support -o with -c - if test "$compiler_c_o" = no; then - output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext} - lockfile="$output_obj.lock" - removelist="$removelist $output_obj $lockfile" - trap "$run $rm $removelist; exit 1" 1 2 15 - else - output_obj= - need_locks=no - lockfile= - fi - - # Lock this critical section if it is needed - # We use this script file to make the link, it avoids creating a new file - if test "$need_locks" = yes; then - until $run ln "$0" "$lockfile" 2>/dev/null; do - $show "Waiting for $lockfile to be removed" - sleep 2 - done - elif test "$need_locks" = warn; then - if test -f "$lockfile"; then - $echo "\ -*** ERROR, $lockfile exists and contains: -`cat $lockfile 2>/dev/null` - -This indicates that another process is trying to use the same -temporary object file, and libtool could not work around it because -your compiler does not support \`-c' and \`-o' together. If you -repeat this compilation, it may succeed, by chance, but you had better -avoid parallel builds (make -j) in this platform, or get a better -compiler." - - $run $rm $removelist - exit 1 - fi - $echo $srcfile > "$lockfile" - fi - - if test -n "$fix_srcfile_path"; then - eval srcfile=\"$fix_srcfile_path\" - fi - - $run $rm "$libobj" "${libobj}T" - - # Create a libtool object file (analogous to a ".la" file), - # but don't create it if we're doing a dry run. - test -z "$run" && cat > ${libobj}T <<EOF -# $libobj - a libtool object file -# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP -# -# Please DO NOT delete this file! -# It is necessary for linking the library. - -# Name of the PIC object. -EOF - - # Only build a PIC object if we are building libtool libraries. - if test "$build_libtool_libs" = yes; then - # Without this assignment, base_compile gets emptied. - fbsd_hideous_sh_bug=$base_compile - - if test "$pic_mode" != no; then - command="$base_compile $srcfile $pic_flag" - else - # Don't build PIC code - command="$base_compile $srcfile" - fi - - if test ! -d "${xdir}$objdir"; then - $show "$mkdir ${xdir}$objdir" - $run $mkdir ${xdir}$objdir - status=$? - if test "$status" -ne 0 && test ! -d "${xdir}$objdir"; then - exit $status - fi - fi - - if test -z "$output_obj"; then - # Place PIC objects in $objdir - command="$command -o $lobj" - fi - - $run $rm "$lobj" "$output_obj" - - $show "$command" - if $run eval "$command"; then : - else - test -n "$output_obj" && $run $rm $removelist - exit 1 - fi - - if test "$need_locks" = warn && - test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then - $echo "\ -*** ERROR, $lockfile contains: -`cat $lockfile 2>/dev/null` - -but it should contain: -$srcfile - -This indicates that another process is trying to use the same -temporary object file, and libtool could not work around it because -your compiler does not support \`-c' and \`-o' together. If you -repeat this compilation, it may succeed, by chance, but you had better -avoid parallel builds (make -j) in this platform, or get a better -compiler." - - $run $rm $removelist - exit 1 - fi - - # Just move the object if needed, then go on to compile the next one - if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then - $show "$mv $output_obj $lobj" - if $run $mv $output_obj $lobj; then : - else - error=$? - $run $rm $removelist - exit $error - fi - fi - - # Append the name of the PIC object to the libtool object file. - test -z "$run" && cat >> ${libobj}T <<EOF -pic_object='$objdir/$objname' - -EOF - - # Allow error messages only from the first compilation. - suppress_output=' >/dev/null 2>&1' - else - # No PIC object so indicate it doesn't exist in the libtool - # object file. - test -z "$run" && cat >> ${libobj}T <<EOF -pic_object=none - -EOF - fi - - # Only build a position-dependent object if we build old libraries. - if test "$build_old_libs" = yes; then - if test "$pic_mode" != yes; then - # Don't build PIC code - command="$base_compile $srcfile" - else - command="$base_compile $srcfile $pic_flag" - fi - if test "$compiler_c_o" = yes; then - command="$command -o $obj" - fi - - # Suppress compiler output if we already did a PIC compilation. - command="$command$suppress_output" - $run $rm "$obj" "$output_obj" - $show "$command" - if $run eval "$command"; then : - else - $run $rm $removelist - exit 1 - fi - - if test "$need_locks" = warn && - test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then - $echo "\ -*** ERROR, $lockfile contains: -`cat $lockfile 2>/dev/null` - -but it should contain: -$srcfile - -This indicates that another process is trying to use the same -temporary object file, and libtool could not work around it because -your compiler does not support \`-c' and \`-o' together. If you -repeat this compilation, it may succeed, by chance, but you had better -avoid parallel builds (make -j) in this platform, or get a better -compiler." - - $run $rm $removelist - exit 1 - fi - - # Just move the object if needed - if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then - $show "$mv $output_obj $obj" - if $run $mv $output_obj $obj; then : - else - error=$? - $run $rm $removelist - exit $error - fi - fi - - # Append the name of the non-PIC object the libtool object file. - # Only append if the libtool object file exists. - test -z "$run" && cat >> ${libobj}T <<EOF -# Name of the non-PIC object. -non_pic_object='$objname' - -EOF - else - # Append the name of the non-PIC object the libtool object file. - # Only append if the libtool object file exists. - test -z "$run" && cat >> ${libobj}T <<EOF -# Name of the non-PIC object. -non_pic_object=none - -EOF - fi - - $run $mv "${libobj}T" "${libobj}" - - # Unlock the critical section if it was locked - if test "$need_locks" != no; then - $run $rm "$lockfile" - fi - - exit 0 - ;; - - # libtool link mode - link | relink) - modename="$modename: link" - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) - # It is impossible to link a dll without this setting, and - # we shouldn't force the makefile maintainer to figure out - # which system we are compiling for in order to pass an extra - # flag for every libtool invocation. - # allow_undefined=no - - # FIXME: Unfortunately, there are problems with the above when trying - # to make a dll which has undefined symbols, in which case not - # even a static library is built. For now, we need to specify - # -no-undefined on the libtool link line when we can be certain - # that all symbols are satisfied, otherwise we get a static library. - allow_undefined=yes - ;; - *) - allow_undefined=yes - ;; - esac - libtool_args="$nonopt" - base_compile="$nonopt" - compile_command="$nonopt" - finalize_command="$nonopt" - - compile_rpath= - finalize_rpath= - compile_shlibpath= - finalize_shlibpath= - convenience= - old_convenience= - deplibs= - old_deplibs= - add_flags= - compiler_flags= - linker_flags= - dllsearchpath= - lib_search_path=`pwd` - inst_prefix_dir= - - avoid_version=no - dlfiles= - dlprefiles= - dlself=no - export_dynamic=no - export_symbols= - export_symbols_regex= - generated= - libobjs= - ltlibs= - module=no - no_install=no - objs= - non_pic_objects= - prefer_static_libs=no - preload=no - prev= - prevarg= - release= - rpath= - xrpath= - perm_rpath= - temp_rpath= - thread_safe=no - vinfo= - vinfo_number=no - - # We need to know -static, to get the right output filenames. - for arg - do - case $arg in - -all-static | -static) - if test "X$arg" = "X-all-static"; then - if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then - $echo "$modename: warning: complete static linking is impossible in this configuration" 1>&2 - fi - if test -n "$link_static_flag"; then - dlopen_self=$dlopen_self_static - fi - else - if test -z "$pic_flag" && test -n "$link_static_flag"; then - dlopen_self=$dlopen_self_static - fi - fi - build_libtool_libs=no - build_old_libs=yes - prefer_static_libs=yes - break - ;; - esac - done - - # See if our shared archives depend on static archives. - test -n "$old_archive_from_new_cmds" && build_old_libs=yes - - # Go through the arguments, transforming them on the way. - while test "$#" -gt 0; do - arg="$1" - base_compile="$base_compile $arg" - shift - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - qarg=\"`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`\" ### testsuite: skip nested quoting test - ;; - *) qarg=$arg ;; - esac - libtool_args="$libtool_args $qarg" - - # If the previous option needs an argument, assign it. - if test -n "$prev"; then - case $prev in - output) - compile_command="$compile_command @OUTPUT@" - finalize_command="$finalize_command @OUTPUT@" - ;; - esac - - case $prev in - dlfiles|dlprefiles) - if test "$preload" = no; then - # Add the symbol object into the linking commands. - compile_command="$compile_command @SYMFILE@" - finalize_command="$finalize_command @SYMFILE@" - preload=yes - fi - case $arg in - *.la | *.lo) ;; # We handle these cases below. - force) - if test "$dlself" = no; then - dlself=needless - export_dynamic=yes - fi - prev= - continue - ;; - self) - if test "$prev" = dlprefiles; then - dlself=yes - elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then - dlself=yes - else - dlself=needless - export_dynamic=yes - fi - prev= - continue - ;; - *) - if test "$prev" = dlfiles; then - dlfiles="$dlfiles $arg" - else - dlprefiles="$dlprefiles $arg" - fi - prev= - continue - ;; - esac - ;; - expsyms) - export_symbols="$arg" - if test ! -f "$arg"; then - $echo "$modename: symbol file \`$arg' does not exist" - exit 1 - fi - prev= - continue - ;; - expsyms_regex) - export_symbols_regex="$arg" - prev= - continue - ;; - inst_prefix) - inst_prefix_dir="$arg" - prev= - continue - ;; - release) - release="-$arg" - prev= - continue - ;; - objectlist) - if test -f "$arg"; then - save_arg=$arg - moreargs= - for fil in `cat $save_arg` - do -# moreargs="$moreargs $fil" - arg=$fil - # A libtool-controlled object. - - # Check to see that this really is a libtool object. - if (${SED} -e '2q' $arg | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - pic_object= - non_pic_object= - - # Read the .lo file - # If there is no directory component, then add one. - case $arg in - */* | *\\*) . $arg ;; - *) . ./$arg ;; - esac - - if test -z "$pic_object" || \ - test -z "$non_pic_object" || - test "$pic_object" = none && \ - test "$non_pic_object" = none; then - $echo "$modename: cannot find name of object for \`$arg'" 1>&2 - exit 1 - fi - - # Extract subdirectory from the argument. - xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` - if test "X$xdir" = "X$arg"; then - xdir= - else - xdir="$xdir/" - fi - - if test "$pic_object" != none; then - # Prepend the subdirectory the object is found in. - pic_object="$xdir$pic_object" - - if test "$prev" = dlfiles; then - if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then - dlfiles="$dlfiles $pic_object" - prev= - continue - else - # If libtool objects are unsupported, then we need to preload. - prev=dlprefiles - fi - fi - - # CHECK ME: I think I busted this. -Ossama - if test "$prev" = dlprefiles; then - # Preload the old-style object. - dlprefiles="$dlprefiles $pic_object" - prev= - fi - - # A PIC object. - libobjs="$libobjs $pic_object" - arg="$pic_object" - fi - - # Non-PIC object. - if test "$non_pic_object" != none; then - # Prepend the subdirectory the object is found in. - non_pic_object="$xdir$non_pic_object" - - # A standard non-PIC object - non_pic_objects="$non_pic_objects $non_pic_object" - if test -z "$pic_object" || test "$pic_object" = none ; then - arg="$non_pic_object" - fi - fi - else - # Only an error if not doing a dry-run. - if test -z "$run"; then - $echo "$modename: \`$arg' is not a valid libtool object" 1>&2 - exit 1 - else - # Dry-run case. - - # Extract subdirectory from the argument. - xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` - if test "X$xdir" = "X$arg"; then - xdir= - else - xdir="$xdir/" - fi - - pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"` - non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"` - libobjs="$libobjs $pic_object" - non_pic_objects="$non_pic_objects $non_pic_object" - fi - fi - done - else - $echo "$modename: link input file \`$save_arg' does not exist" - exit 1 - fi - arg=$save_arg - prev= - continue - ;; - rpath | xrpath) - # We need an absolute path. - case $arg in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - $echo "$modename: only absolute run-paths are allowed" 1>&2 - exit 1 - ;; - esac - if test "$prev" = rpath; then - case "$rpath " in - *" $arg "*) ;; - *) rpath="$rpath $arg" ;; - esac - else - case "$xrpath " in - *" $arg "*) ;; - *) xrpath="$xrpath $arg" ;; - esac - fi - prev= - continue - ;; - xcompiler) - compiler_flags="$compiler_flags $qarg" - prev= - compile_command="$compile_command $qarg" - finalize_command="$finalize_command $qarg" - continue - ;; - xlinker) - linker_flags="$linker_flags $qarg" - compiler_flags="$compiler_flags $wl$qarg" - prev= - compile_command="$compile_command $wl$qarg" - finalize_command="$finalize_command $wl$qarg" - continue - ;; - xcclinker) - linker_flags="$linker_flags $qarg" - compiler_flags="$compiler_flags $qarg" - prev= - compile_command="$compile_command $qarg" - finalize_command="$finalize_command $qarg" - continue - ;; - framework) - case $host in - *-*-darwin*) - case "$deplibs " in - *" $qarg.ltframework "*) ;; - *) deplibs="$deplibs $qarg.ltframework" # this is fixed later - ;; - esac - ;; - esac - prev= - continue - ;; - *) - eval "$prev=\"\$arg\"" - prev= - continue - ;; - esac - fi # test -n "$prev" - - prevarg="$arg" - - case $arg in - -all-static) - if test -n "$link_static_flag"; then - compile_command="$compile_command $link_static_flag" - finalize_command="$finalize_command $link_static_flag" - fi - continue - ;; - - -allow-undefined) - # FIXME: remove this flag sometime in the future. - $echo "$modename: \`-allow-undefined' is deprecated because it is the default" 1>&2 - continue - ;; - - -avoid-version) - avoid_version=yes - continue - ;; - - -dlopen) - prev=dlfiles - continue - ;; - - -dlpreopen) - prev=dlprefiles - continue - ;; - - -export-dynamic) - export_dynamic=yes - continue - ;; - - -export-symbols | -export-symbols-regex) - if test -n "$export_symbols" || test -n "$export_symbols_regex"; then - $echo "$modename: more than one -exported-symbols argument is not allowed" - exit 1 - fi - if test "X$arg" = "X-export-symbols"; then - prev=expsyms - else - prev=expsyms_regex - fi - continue - ;; - - -inst-prefix-dir) - prev=inst_prefix - continue - ;; - - # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:* - # so, if we see these flags be careful not to treat them like -L - -L[A-Z][A-Z]*:*) - case $with_gcc/$host in - no/*-*-irix* | /*-*-irix*) - compile_command="$compile_command $arg" - finalize_command="$finalize_command $arg" - ;; - esac - continue - ;; - - -L*) - dir=`$echo "X$arg" | $Xsed -e 's/^-L//'` - # We need an absolute path. - case $dir in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - absdir=`cd "$dir" && pwd` - if test -z "$absdir"; then - $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2 - exit 1 - fi - dir="$absdir" - ;; - esac - case "$deplibs " in - *" -L$dir "*) ;; - *) - deplibs="$deplibs -L$dir" - lib_search_path="$lib_search_path $dir" - ;; - esac - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) - case :$dllsearchpath: in - *":$dir:"*) ;; - *) dllsearchpath="$dllsearchpath:$dir";; - esac - ;; - esac - continue - ;; - - -l*) - if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then - case $host in - *-*-cygwin* | *-*-pw32* | *-*-beos*) - # These systems don't actually have a C or math library (as such) - continue - ;; - *-*-mingw* | *-*-os2*) - # These systems don't actually have a C library (as such) - test "X$arg" = "X-lc" && continue - ;; - *-*-openbsd* | *-*-freebsd*) - # Do not include libc due to us having libc/libc_r. - test "X$arg" = "X-lc" && continue - ;; - *-*-rhapsody* | *-*-darwin1.[012]) - # Rhapsody C and math libraries are in the System framework - deplibs="$deplibs System.ltframework" - continue - esac - elif test "X$arg" = "X-lc_r"; then - case $host in - *-*-openbsd*) - # Do not include libc_r directly, use -pthread flag. - continue - ;; - esac - fi - deplibs="$deplibs $arg" - continue - ;; - - -module) - module=yes - continue - ;; - - # gcc -m* arguments should be passed to the linker via $compiler_flags - # in order to pass architecture information to the linker - # (e.g. 32 vs 64-bit). This may also be accomplished via -Wl,-mfoo - # but this is not reliable with gcc because gcc may use -mfoo to - # select a different linker, different libraries, etc, while - # -Wl,-mfoo simply passes -mfoo to the linker. - -m*) - # Unknown arguments in both finalize_command and compile_command need - # to be aesthetically quoted because they are evaled later. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - arg="\"$arg\"" - ;; - esac - compile_command="$compile_command $arg" - finalize_command="$finalize_command $arg" - if test "$with_gcc" = "yes" ; then - compiler_flags="$compiler_flags $arg" - fi - continue - ;; - - -shrext) - prev=shrext - continue - ;; - - -no-fast-install) - fast_install=no - continue - ;; - - -no-install) - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) - # The PATH hackery in wrapper scripts is required on Windows - # in order for the loader to find any dlls it needs. - $echo "$modename: warning: \`-no-install' is ignored for $host" 1>&2 - $echo "$modename: warning: assuming \`-no-fast-install' instead" 1>&2 - fast_install=no - ;; - *) no_install=yes ;; - esac - continue - ;; - - -no-undefined) - allow_undefined=no - continue - ;; - - -objectlist) - prev=objectlist - continue - ;; - - -o) prev=output ;; - - -release) - prev=release - continue - ;; - - -rpath) - prev=rpath - continue - ;; - - -R) - prev=xrpath - continue - ;; - - -R*) - dir=`$echo "X$arg" | $Xsed -e 's/^-R//'` - # We need an absolute path. - case $dir in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - $echo "$modename: only absolute run-paths are allowed" 1>&2 - exit 1 - ;; - esac - case "$xrpath " in - *" $dir "*) ;; - *) xrpath="$xrpath $dir" ;; - esac - continue - ;; - - -static) - # The effects of -static are defined in a previous loop. - # We used to do the same as -all-static on platforms that - # didn't have a PIC flag, but the assumption that the effects - # would be equivalent was wrong. It would break on at least - # Digital Unix and AIX. - continue - ;; - - -thread-safe) - thread_safe=yes - continue - ;; - - -version-info) - prev=vinfo - continue - ;; - -version-number) - prev=vinfo - vinfo_number=yes - continue - ;; - - -Wc,*) - args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wc,//'` - arg= - save_ifs="$IFS"; IFS=',' - for flag in $args; do - IFS="$save_ifs" - case $flag in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - flag="\"$flag\"" - ;; - esac - arg="$arg $wl$flag" - compiler_flags="$compiler_flags $flag" - done - IFS="$save_ifs" - arg=`$echo "X$arg" | $Xsed -e "s/^ //"` - ;; - - -Wl,*) - args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'` - arg= - save_ifs="$IFS"; IFS=',' - for flag in $args; do - IFS="$save_ifs" - case $flag in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - flag="\"$flag\"" - ;; - esac - arg="$arg $wl$flag" - compiler_flags="$compiler_flags $wl$flag" - linker_flags="$linker_flags $flag" - done - IFS="$save_ifs" - arg=`$echo "X$arg" | $Xsed -e "s/^ //"` - ;; - - -Xcompiler) - prev=xcompiler - continue - ;; - - -Xlinker) - prev=xlinker - continue - ;; - - -XCClinker) - prev=xcclinker - continue - ;; - - -framework) - prev=framework - continue - ;; - - # Some other compiler flag. - -* | +*) - # Unknown arguments in both finalize_command and compile_command need - # to be aesthetically quoted because they are evaled later. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - arg="\"$arg\"" - ;; - esac - add_flags="$add_flags $arg" - ;; - - *.$objext) - # A standard object. - objs="$objs $arg" - ;; - - *.lo) - # A libtool-controlled object. - - # Check to see that this really is a libtool object. - if (${SED} -e '2q' $arg | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - pic_object= - non_pic_object= - - # Read the .lo file - # If there is no directory component, then add one. - case $arg in - */* | *\\*) . $arg ;; - *) . ./$arg ;; - esac - - if test -z "$pic_object" || \ - test -z "$non_pic_object" || - test "$pic_object" = none && \ - test "$non_pic_object" = none; then - $echo "$modename: cannot find name of object for \`$arg'" 1>&2 - exit 1 - fi - - # Extract subdirectory from the argument. - xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` - if test "X$xdir" = "X$arg"; then - xdir= - else - xdir="$xdir/" - fi - - if test "$pic_object" != none; then - # Prepend the subdirectory the object is found in. - pic_object="$xdir$pic_object" - - if test "$prev" = dlfiles; then - if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then - dlfiles="$dlfiles $pic_object" - prev= - continue - else - # If libtool objects are unsupported, then we need to preload. - prev=dlprefiles - fi - fi - - # CHECK ME: I think I busted this. -Ossama - if test "$prev" = dlprefiles; then - # Preload the old-style object. - dlprefiles="$dlprefiles $pic_object" - prev= - fi - - # A PIC object. - libobjs="$libobjs $pic_object" - arg="$pic_object" - fi - - # Non-PIC object. - if test "$non_pic_object" != none; then - # Prepend the subdirectory the object is found in. - non_pic_object="$xdir$non_pic_object" - - # A standard non-PIC object - non_pic_objects="$non_pic_objects $non_pic_object" - if test -z "$pic_object" || test "$pic_object" = none ; then - arg="$non_pic_object" - fi - fi - else - # Only an error if not doing a dry-run. - if test -z "$run"; then - $echo "$modename: \`$arg' is not a valid libtool object" 1>&2 - exit 1 - else - # Dry-run case. - - # Extract subdirectory from the argument. - xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` - if test "X$xdir" = "X$arg"; then - xdir= - else - xdir="$xdir/" - fi - - pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"` - non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"` - libobjs="$libobjs $pic_object" - non_pic_objects="$non_pic_objects $non_pic_object" - fi - fi - ;; - - *.$libext) - # An archive. - deplibs="$deplibs $arg" - old_deplibs="$old_deplibs $arg" - continue - ;; - - *.la) - # A libtool-controlled library. - - if test "$prev" = dlfiles; then - # This library was specified with -dlopen. - dlfiles="$dlfiles $arg" - prev= - elif test "$prev" = dlprefiles; then - # The library was specified with -dlpreopen. - dlprefiles="$dlprefiles $arg" - prev= - else - deplibs="$deplibs $arg" - fi - continue - ;; - - # Some other compiler argument. - *) - # Unknown arguments in both finalize_command and compile_command need - # to be aesthetically quoted because they are evaled later. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - arg="\"$arg\"" - ;; - esac - add_flags="$add_flags $arg" - ;; - esac # arg - - # Now actually substitute the argument into the commands. - if test -n "$arg"; then - compile_command="$compile_command $arg" - finalize_command="$finalize_command $arg" - fi - done # argument parsing loop - - if test -n "$prev"; then - $echo "$modename: the \`$prevarg' option requires an argument" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - # Infer tagged configuration to use if any are available and - # if one wasn't chosen via the "--tag" command line option. - # Only attempt this if the compiler in the base link - # command doesn't match the default compiler. - if test -n "$available_tags" && test -z "$tagname"; then - case $base_compile in - # Blanks in the command may have been stripped by the calling shell, - # but not from the CC environment variable when configure was run. - "$CC "* | " $CC "* | "`$echo $CC` "* | " `$echo $CC` "*) ;; - # Blanks at the start of $base_compile will cause this to fail - # if we don't check for them as well. - *) - for z in $available_tags; do - if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$0" > /dev/null; then - # Evaluate the configuration. - eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $0`" - case $base_compile in - "$CC "* | " $CC "* | "`$echo $CC` "* | " `$echo $CC` "*) - # The compiler in $compile_command matches - # the one in the tagged configuration. - # Assume this is the tagged configuration we want. - tagname=$z - break - ;; - esac - fi - done - # If $tagname still isn't set, then no tagged configuration - # was found and let the user know that the "--tag" command - # line option must be used. - if test -z "$tagname"; then - $echo "$modename: unable to infer tagged configuration" - $echo "$modename: specify a tag with \`--tag'" 1>&2 - exit 1 -# else -# $echo "$modename: using $tagname tagged configuration" - fi - ;; - esac - fi - - if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then - eval arg=\"$export_dynamic_flag_spec\" - compile_command="$compile_command $arg" - finalize_command="$finalize_command $arg" - fi - - oldlibs= - # calculate the name of the file, without its directory - outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'` - libobjs_save="$libobjs" - - if test -n "$shlibpath_var"; then - # get the directories listed in $shlibpath_var - eval shlib_search_path=\`\$echo \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\` - else - shlib_search_path= - fi - eval sys_lib_search_path=\"$sys_lib_search_path_spec\" - eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" - - output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'` - if test "X$output_objdir" = "X$output"; then - output_objdir="$objdir" - else - output_objdir="$output_objdir/$objdir" - fi - # Create the object directory. - if test ! -d "$output_objdir"; then - $show "$mkdir $output_objdir" - $run $mkdir $output_objdir - status=$? - if test "$status" -ne 0 && test ! -d "$output_objdir"; then - exit $status - fi - fi - - # Determine the type of output - case $output in - "") - $echo "$modename: you must specify an output file" 1>&2 - $echo "$help" 1>&2 - exit 1 - ;; - *.$libext) linkmode=oldlib ;; - *.lo | *.$objext) linkmode=obj ;; - *.la) linkmode=lib ;; - *) linkmode=prog ;; # Anything else should be a program. - esac - - case $host in - *cygwin* | *mingw* | *pw32*) - # don't eliminate duplcations in $postdeps and $predeps - duplicate_compiler_generated_deps=yes - ;; - *) - duplicate_compiler_generated_deps=$duplicate_deps - ;; - esac - specialdeplibs= - - libs= - # Find all interdependent deplibs by searching for libraries - # that are linked more than once (e.g. -la -lb -la) - for deplib in $deplibs; do - if test "X$duplicate_deps" = "Xyes" ; then - case "$libs " in - *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; - esac - fi - libs="$libs $deplib" - done - - if test "$linkmode" = lib; then - libs="$predeps $libs $compiler_lib_search_path $postdeps" - - # Compute libraries that are listed more than once in $predeps - # $postdeps and mark them as special (i.e., whose duplicates are - # not to be eliminated). - pre_post_deps= - if test "X$duplicate_compiler_generated_deps" = "Xyes" ; then - for pre_post_dep in $predeps $postdeps; do - case "$pre_post_deps " in - *" $pre_post_dep "*) specialdeplibs="$specialdeplibs $pre_post_deps" ;; - esac - pre_post_deps="$pre_post_deps $pre_post_dep" - done - fi - pre_post_deps= - fi - - deplibs= - newdependency_libs= - newlib_search_path= - need_relink=no # whether we're linking any uninstalled libtool libraries - notinst_deplibs= # not-installed libtool libraries - notinst_path= # paths that contain not-installed libtool libraries - case $linkmode in - lib) - passes="conv link" - for file in $dlfiles $dlprefiles; do - case $file in - *.la) ;; - *) - $echo "$modename: libraries can \`-dlopen' only libtool libraries: $file" 1>&2 - exit 1 - ;; - esac - done - ;; - prog) - compile_deplibs= - finalize_deplibs= - alldeplibs=no - newdlfiles= - newdlprefiles= - passes="conv scan dlopen dlpreopen link" - ;; - *) passes="conv" - ;; - esac - for pass in $passes; do - if test "$linkmode,$pass" = "lib,link" || - test "$linkmode,$pass" = "prog,scan"; then - libs="$deplibs" - deplibs= - fi - if test "$linkmode" = prog; then - case $pass in - dlopen) libs="$dlfiles" ;; - dlpreopen) libs="$dlprefiles" ;; - link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; - esac - fi - if test "$pass" = dlopen; then - # Collect dlpreopened libraries - save_deplibs="$deplibs" - deplibs= - fi - for deplib in $libs; do - lib= - found=no - case $deplib in - -l*) - if test "$linkmode" != lib && test "$linkmode" != prog; then - $echo "$modename: warning: \`-l' is ignored for archives/objects" 1>&2 - continue - fi - if test "$pass" = conv && test "$allow_undefined" = yes; then - deplibs="$deplib $deplibs" - continue - fi - name=`$echo "X$deplib" | $Xsed -e 's/^-l//'` - for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do - for search_ext in .la $shrext .so .a; do - # Search the libtool library - lib="$searchdir/lib${name}${search_ext}" - if test -f "$lib"; then - if test "$search_ext" = ".la"; then - found=yes - else - found=no - fi - break 2 - fi - done - done - if test "$found" != yes; then - # deplib doesn't seem to be a libtool library - if test "$linkmode,$pass" = "prog,link"; then - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - else - deplibs="$deplib $deplibs" - test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" - fi - continue - else # deplib is a libtool library - # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib, - # We need to do some special things here, and not later. - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then - case " $predeps $postdeps " in - *" $deplib "*) - if (${SED} -e '2q' $lib | - grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - library_names= - old_library= - case $lib in - */* | *\\*) . $lib ;; - *) . ./$lib ;; - esac - for l in $old_library $library_names; do - ll="$l" - done - if test "X$ll" = "X$old_library" ; then # only static version available - found=no - ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'` - test "X$ladir" = "X$lib" && ladir="." - lib=$ladir/$old_library - if test "$linkmode,$pass" = "prog,link"; then - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - else - deplibs="$deplib $deplibs" - test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" - fi - continue - fi - fi - ;; - *) ;; - esac - fi - fi - ;; # -l - *.ltframework) - if test "$linkmode,$pass" = "prog,link"; then - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - else - deplibs="$deplib $deplibs" - if test "$linkmode" = lib ; then - newdependency_libs="$deplib $newdependency_libs" - fi - fi - continue - ;; - -L*) - case $linkmode in - lib) - deplibs="$deplib $deplibs" - test "$pass" = conv && continue - newdependency_libs="$deplib $newdependency_libs" - newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` - ;; - prog) - if test "$pass" = conv; then - deplibs="$deplib $deplibs" - continue - fi - if test "$pass" = scan; then - deplibs="$deplib $deplibs" - newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` - else - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - fi - ;; - *) - $echo "$modename: warning: \`-L' is ignored for archives/objects" 1>&2 - ;; - esac # linkmode - continue - ;; # -L - -R*) - if test "$pass" = link; then - dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'` - # Make sure the xrpath contains only unique directories. - case "$xrpath " in - *" $dir "*) ;; - *) xrpath="$xrpath $dir" ;; - esac - fi - deplibs="$deplib $deplibs" - continue - ;; - *.la) lib="$deplib" ;; - *.$libext) - if test "$pass" = conv; then - deplibs="$deplib $deplibs" - continue - fi - case $linkmode in - lib) - if test "$deplibs_check_method" != pass_all; then - $echo - $echo "*** Warning: Trying to link with static lib archive $deplib." - $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" - $echo "*** because the file extensions .$libext of this argument makes me believe" - $echo "*** that it is just a static archive that I should not used here." - else - $echo - $echo "*** Warning: Linking the shared library $output against the" - $echo "*** static library $deplib is not portable!" - deplibs="$deplib $deplibs" - fi - continue - ;; - prog) - if test "$pass" != link; then - deplibs="$deplib $deplibs" - else - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - fi - continue - ;; - esac # linkmode - ;; # *.$libext - *.lo | *.$objext) - if test "$pass" = conv; then - deplibs="$deplib $deplibs" - elif test "$linkmode" = prog; then - if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then - # If there is no dlopen support or we're linking statically, - # we need to preload. - newdlprefiles="$newdlprefiles $deplib" - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - else - newdlfiles="$newdlfiles $deplib" - fi - fi - continue - ;; - %DEPLIBS%) - alldeplibs=yes - continue - ;; - esac # case $deplib - if test "$found" = yes || test -f "$lib"; then : - else - $echo "$modename: cannot find the library \`$lib'" 1>&2 - exit 1 - fi - - # Check to see that this really is a libtool archive. - if (${SED} -e '2q' $lib | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : - else - $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 - exit 1 - fi - - ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'` - test "X$ladir" = "X$lib" && ladir="." - - dlname= - dlopen= - dlpreopen= - libdir= - library_names= - old_library= - # If the library was installed with an old release of libtool, - # it will not redefine variables installed, or shouldnotlink - installed=yes - shouldnotlink=no - - # Read the .la file - case $lib in - */* | *\\*) . $lib ;; - *) . ./$lib ;; - esac - - case $host in - *-*-darwin*) - # Convert "-framework foo" to "foo.ltframework" in dependency_libs - test -n "$dependency_libs" && dependency_libs=`$echo "X$dependency_libs" | $Xsed -e 's/-framework \([^ $]*\)/\1.ltframework/g'` - ;; - esac - - if test "$linkmode,$pass" = "lib,link" || - test "$linkmode,$pass" = "prog,scan" || - { test "$linkmode" != prog && test "$linkmode" != lib; }; then - test -n "$dlopen" && dlfiles="$dlfiles $dlopen" - test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen" - fi - - if test "$pass" = conv; then - # Only check for convenience libraries - deplibs="$lib $deplibs" - tmp_libs= - for deplib in $dependency_libs; do - #echo "Adding $deplib to \$deplibs" - deplibs="$deplib $deplibs" - if test "X$duplicate_deps" = "Xyes" ; then - case "$tmp_libs " in - *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; - esac - fi - tmp_libs="$tmp_libs $deplib" - done - if test -z "$libdir"; then - if test -z "$old_library"; then - $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 - exit 1 - fi - # It is a libtool convenience library, so add in its objects. - convenience="$convenience $ladir/$objdir/$old_library" - old_convenience="$old_convenience $ladir/$objdir/$old_library" - elif test "$linkmode" != prog && test "$linkmode" != lib; then - $echo "$modename: \`$lib' is not a convenience library" 1>&2 - exit 1 - fi - continue - fi # $pass = conv - - - # Get the name of the library we link against. - linklib= - for l in $old_library $library_names; do - linklib="$l" - done - if test -z "$linklib"; then - $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 - exit 1 - fi - - # This library was specified with -dlopen. - if test "$pass" = dlopen; then - if test -z "$libdir"; then - $echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2 - exit 1 - fi - if test -z "$dlname" || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then - # If there is no dlname, no dlopen support or we're linking - # statically, we need to preload. We also need to preload any - # dependent libraries so libltdl's deplib preloader doesn't - # bomb out in the load deplibs phase. - dlprefiles="$dlprefiles $lib $dependency_libs" - else - newdlfiles="$newdlfiles $lib" - fi - continue - fi # $pass = dlopen - - # We need an absolute path. - case $ladir in - [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;; - *) - abs_ladir=`cd "$ladir" && pwd` - if test -z "$abs_ladir"; then - $echo "$modename: warning: cannot determine absolute directory name of \`$ladir'" 1>&2 - $echo "$modename: passing it literally to the linker, although it might fail" 1>&2 - abs_ladir="$ladir" - fi - ;; - esac - laname=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` - - # Find the relevant object directory and library name. - if test "X$installed" = Xyes; then - if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then - $echo "$modename: warning: library \`$lib' was moved." 1>&2 - dir="$ladir" - absdir="$abs_ladir" - libdir="$abs_ladir" - else - dir="$libdir" - absdir="$libdir" - fi - else - dir="$ladir/$objdir" - absdir="$abs_ladir/$objdir" - # Remove this search path later - notinst_path="$notinst_path $abs_ladir" - fi # $installed = yes - name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'` - - # This library was specified with -dlpreopen. - if test "$pass" = dlpreopen; then - if test -z "$libdir"; then - $echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2 - exit 1 - fi - # Prefer using a static library (so that no silly _DYNAMIC symbols - # are required to link). - if test -n "$old_library"; then - newdlprefiles="$newdlprefiles $dir/$old_library" - # Otherwise, use the dlname, so that lt_dlopen finds it. - elif test -n "$dlname"; then - newdlprefiles="$newdlprefiles $dir/$dlname" - else - newdlprefiles="$newdlprefiles $dir/$linklib" - fi - fi # $pass = dlpreopen - - if test -z "$libdir"; then - # Link the convenience library - if test "$linkmode" = lib; then - deplibs="$dir/$old_library $deplibs" - elif test "$linkmode,$pass" = "prog,link"; then - compile_deplibs="$dir/$old_library $compile_deplibs" - finalize_deplibs="$dir/$old_library $finalize_deplibs" - else - deplibs="$lib $deplibs" # used for prog,scan pass - fi - continue - fi - - - if test "$linkmode" = prog && test "$pass" != link; then - newlib_search_path="$newlib_search_path $ladir" - deplibs="$lib $deplibs" - - linkalldeplibs=no - if test "$link_all_deplibs" != no || test -z "$library_names" || - test "$build_libtool_libs" = no; then - linkalldeplibs=yes - fi - - tmp_libs= - for deplib in $dependency_libs; do - case $deplib in - -L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test - esac - # Need to link against all dependency_libs? - if test "$linkalldeplibs" = yes; then - deplibs="$deplib $deplibs" - else - # Need to hardcode shared library paths - # or/and link against static libraries - newdependency_libs="$deplib $newdependency_libs" - fi - if test "X$duplicate_deps" = "Xyes" ; then - case "$tmp_libs " in - *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; - esac - fi - tmp_libs="$tmp_libs $deplib" - done # for deplib - continue - fi # $linkmode = prog... - - if test "$linkmode,$pass" = "prog,link"; then - if test -n "$library_names" && - { test "$prefer_static_libs" = no || test -z "$old_library"; }; then - # We need to hardcode the library path - if test -n "$shlibpath_var"; then - # Make sure the rpath contains only unique directories. - case "$temp_rpath " in - *" $dir "*) ;; - *" $absdir "*) ;; - *) temp_rpath="$temp_rpath $dir" ;; - esac - fi - - # Hardcode the library path. - # Skip directories that are in the system default run-time - # search path. - case " $sys_lib_dlsearch_path " in - *" $absdir "*) ;; - *) - case "$compile_rpath " in - *" $absdir "*) ;; - *) compile_rpath="$compile_rpath $absdir" - esac - ;; - esac - case " $sys_lib_dlsearch_path " in - *" $libdir "*) ;; - *) - case "$finalize_rpath " in - *" $libdir "*) ;; - *) finalize_rpath="$finalize_rpath $libdir" - esac - ;; - esac - fi # $linkmode,$pass = prog,link... - - if test "$alldeplibs" = yes && - { test "$deplibs_check_method" = pass_all || - { test "$build_libtool_libs" = yes && - test -n "$library_names"; }; }; then - # We only need to search for static libraries - continue - fi - fi - - link_static=no # Whether the deplib will be linked statically - if test -n "$library_names" && - { test "$prefer_static_libs" = no || test -z "$old_library"; }; then - if test "$installed" = no; then - notinst_deplibs="$notinst_deplibs $lib" - need_relink=yes - fi - # This is a shared library - - # Warn about portability, can't link against -module's on some systems (darwin) - if test "$shouldnotlink" = yes && test "$pass" = link ; then - $echo - if test "$linkmode" = prog; then - $echo "*** Warning: Linking the executable $output against the loadable module" - else - $echo "*** Warning: Linking the shared library $output against the loadable module" - fi - $echo "*** $linklib is not portable!" - fi - if test "$linkmode" = lib && - test "$hardcode_into_libs" = yes; then - # Hardcode the library path. - # Skip directories that are in the system default run-time - # search path. - case " $sys_lib_dlsearch_path " in - *" $absdir "*) ;; - *) - case "$compile_rpath " in - *" $absdir "*) ;; - *) compile_rpath="$compile_rpath $absdir" - esac - ;; - esac - case " $sys_lib_dlsearch_path " in - *" $libdir "*) ;; - *) - case "$finalize_rpath " in - *" $libdir "*) ;; - *) finalize_rpath="$finalize_rpath $libdir" - esac - ;; - esac - fi - - if test -n "$old_archive_from_expsyms_cmds"; then - # figure out the soname - set dummy $library_names - realname="$2" - shift; shift - libname=`eval \\$echo \"$libname_spec\"` - # use dlname if we got it. it's perfectly good, no? - if test -n "$dlname"; then - soname="$dlname" - elif test -n "$soname_spec"; then - # bleh windows - case $host in - *cygwin* | mingw*) - major=`expr $current - $age` - versuffix="-$major" - ;; - esac - eval soname=\"$soname_spec\" - else - soname="$realname" - fi - - # Make a new name for the extract_expsyms_cmds to use - soroot="$soname" - soname=`$echo $soroot | ${SED} -e 's/^.*\///'` - newlib="libimp-`$echo $soname | ${SED} 's/^lib//;s/\.dll$//'`.a" - - # If the library has no export list, then create one now - if test -f "$output_objdir/$soname-def"; then : - else - $show "extracting exported symbol list from \`$soname'" - save_ifs="$IFS"; IFS='~' - eval cmds=\"$extract_expsyms_cmds\" - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - fi - - # Create $newlib - if test -f "$output_objdir/$newlib"; then :; else - $show "generating import library for \`$soname'" - save_ifs="$IFS"; IFS='~' - eval cmds=\"$old_archive_from_expsyms_cmds\" - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - fi - # make sure the library variables are pointing to the new library - dir=$output_objdir - linklib=$newlib - fi # test -n "$old_archive_from_expsyms_cmds" - - if test "$linkmode" = prog || test "$mode" != relink; then - add_shlibpath= - add_dir= - add= - lib_linked=yes - case $hardcode_action in - immediate | unsupported) - if test "$hardcode_direct" = no; then - add="$dir/$linklib" - case $host in - *-*-sco3.2v5* ) add_dir="-L$dir" ;; - *-*-darwin* ) - # if the lib is a module then we can not link against it, someone - # is ignoring the new warnings I added - if /usr/bin/file -L $add 2> /dev/null | grep "bundle" >/dev/null ; then - $echo "** Warning, lib $linklib is a module, not a shared library" - if test -z "$old_library" ; then - $echo - $echo "** And there doesn't seem to be a static archive available" - $echo "** The link will probably fail, sorry" - else - add="$dir/$old_library" - fi - fi - esac - elif test "$hardcode_minus_L" = no; then - case $host in - *-*-sunos*) add_shlibpath="$dir" ;; - esac - add_dir="-L$dir" - add="-l$name" - elif test "$hardcode_shlibpath_var" = no; then - add_shlibpath="$dir" - add="-l$name" - else - lib_linked=no - fi - ;; - relink) - if test "$hardcode_direct" = yes; then - add="$dir/$linklib" - elif test "$hardcode_minus_L" = yes; then - add_dir="-L$dir" - # Try looking first in the location we're being installed to. - if test -n "$inst_prefix_dir"; then - case "$libdir" in - [\\/]*) - add_dir="-L$inst_prefix_dir$libdir $add_dir" - ;; - esac - fi - add="-l$name" - elif test "$hardcode_shlibpath_var" = yes; then - add_shlibpath="$dir" - add="-l$name" - else - lib_linked=no - fi - ;; - *) lib_linked=no ;; - esac - - if test "$lib_linked" != yes; then - $echo "$modename: configuration error: unsupported hardcode properties" - exit 1 - fi - - if test -n "$add_shlibpath"; then - case :$compile_shlibpath: in - *":$add_shlibpath:"*) ;; - *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;; - esac - fi - if test "$linkmode" = prog; then - test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" - test -n "$add" && compile_deplibs="$add $compile_deplibs" - else - test -n "$add_dir" && deplibs="$add_dir $deplibs" - test -n "$add" && deplibs="$add $deplibs" - if test "$hardcode_direct" != yes && \ - test "$hardcode_minus_L" != yes && \ - test "$hardcode_shlibpath_var" = yes; then - case :$finalize_shlibpath: in - *":$libdir:"*) ;; - *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; - esac - fi - fi - fi - - if test "$linkmode" = prog || test "$mode" = relink; then - add_shlibpath= - add_dir= - add= - # Finalize command for both is simple: just hardcode it. - if test "$hardcode_direct" = yes; then - add="$libdir/$linklib" - elif test "$hardcode_minus_L" = yes; then - add_dir="-L$libdir" - add="-l$name" - elif test "$hardcode_shlibpath_var" = yes; then - case :$finalize_shlibpath: in - *":$libdir:"*) ;; - *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; - esac - add="-l$name" - elif test "$hardcode_automatic" = yes; then - if test -n "$inst_prefix_dir" && test -f "$inst_prefix_dir$libdir/$linklib" ; then - add="$inst_prefix_dir$libdir/$linklib" - else - add="$libdir/$linklib" - fi - else - # We cannot seem to hardcode it, guess we'll fake it. - add_dir="-L$libdir" - # Try looking first in the location we're being installed to. - if test -n "$inst_prefix_dir"; then - case "$libdir" in - [\\/]*) - add_dir="-L$inst_prefix_dir$libdir $add_dir" - ;; - esac - fi - add="-l$name" - fi - - if test "$linkmode" = prog; then - test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" - test -n "$add" && finalize_deplibs="$add $finalize_deplibs" - else - test -n "$add_dir" && deplibs="$add_dir $deplibs" - test -n "$add" && deplibs="$add $deplibs" - fi - fi - elif test "$linkmode" = prog; then - # Here we assume that one of hardcode_direct or hardcode_minus_L - # is not unsupported. This is valid on all known static and - # shared platforms. - if test "$hardcode_direct" != unsupported; then - test -n "$old_library" && linklib="$old_library" - compile_deplibs="$dir/$linklib $compile_deplibs" - finalize_deplibs="$dir/$linklib $finalize_deplibs" - else - compile_deplibs="-l$name -L$dir $compile_deplibs" - finalize_deplibs="-l$name -L$dir $finalize_deplibs" - fi - elif test "$build_libtool_libs" = yes; then - # Not a shared library - if test "$deplibs_check_method" != pass_all; then - # We're trying link a shared library against a static one - # but the system doesn't support it. - - # Just print a warning and add the library to dependency_libs so - # that the program can be linked against the static library. - $echo - $echo "*** Warning: This system can not 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 "$module" = yes; 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 "$build_old_libs" = no; then - build_libtool_libs=module - build_old_libs=yes - else - build_libtool_libs=no - fi - fi - else - convenience="$convenience $dir/$old_library" - old_convenience="$old_convenience $dir/$old_library" - deplibs="$dir/$old_library $deplibs" - link_static=yes - fi - fi # link shared/static library? - - if test "$linkmode" = lib; then - #if test -n "$dependency_libs" && - # { test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes || - # test "$link_static" = yes; }; then - # Extract -R from dependency_libs - temp_deplibs= - for libdir in $dependency_libs; do - case $libdir in - -R*) temp_xrpath=`$echo "X$libdir" | $Xsed -e 's/^-R//'` - case " $xrpath " in - *" $temp_xrpath "*) ;; - *) xrpath="$xrpath $temp_xrpath";; - esac;; - *) temp_deplibs="$temp_deplibs $libdir";; - esac - done - dependency_libs="$temp_deplibs" - #fi - - newlib_search_path="$newlib_search_path $absdir" - # Link against this library - test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs" - # ... and its dependency_libs - tmp_libs= - for deplib in $dependency_libs; do - newdependency_libs="$deplib $newdependency_libs" - if test "X$duplicate_deps" = "Xyes" ; then - case "$tmp_libs " in - *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; - esac - fi - tmp_libs="$tmp_libs $deplib" - done - - if test "$link_all_deplibs" != no; then - # Add the search paths of all dependency libraries - for deplib in $dependency_libs; do - case $deplib in - -L*) path="$deplib" ;; - *.la) - dir=`$echo "X$deplib" | $Xsed -e 's%/[^/]*$%%'` - test "X$dir" = "X$deplib" && dir="." - # We need an absolute path. - case $dir in - [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;; - *) - absdir=`cd "$dir" && pwd` - if test -z "$absdir"; then - $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2 - absdir="$dir" - fi - ;; - esac - if grep "^installed=no" $deplib > /dev/null; then - path="$absdir/$objdir" - else - eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` - if test -z "$libdir"; then - $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2 - exit 1 - fi - if test "$absdir" != "$libdir"; then - # Sure, some shells/systems don't implement the -ef. - # Those will have to live with the warning. - test "$absdir" -ef "$libdir" > /dev/null 2>&1 || - $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2 - fi - path="$absdir" - fi - depdepl= - case $host in - *-*-darwin*) - # we do not want to link against static libs, but need to link against shared - eval deplibrary_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib` - if test -n "$deplibrary_names" ; then - for tmp in $deplibrary_names ; do - depdepl=$tmp - done - if test -f "$path/$depdepl" ; then - depdepl="$path/$depdepl" - fi - # do not add paths which are already there - case " $newlib_search_path " in - *" $path "*) ;; - *) newlib_search_path="$newlib_search_path $path";; - esac - path="" - fi - ;; - *) - path="-L$path" - ;; - esac - - ;; - -l*) - case $host in - *-*-darwin*) - # Again, we only want to link against shared libraries - eval tmp_libs=`$echo "X$deplib" | $Xsed -e "s,^\-l,,"` - for tmp in $newlib_search_path ; do - if test -f "$tmp/lib$tmp_libs.dylib" ; then - eval depdepl="$tmp/lib$tmp_libs.dylib" - break - fi - done - path="" - ;; - *) continue ;; - esac - ;; - - *.ltframework) - case $host in - *-*-darwin*) - depdepl="$deplib" - ;; - esac - ;; - - *) continue ;; - esac - case " $deplibs " in - *" $depdepl "*) ;; - *) deplibs="$deplibs $depdepl" ;; - esac - case " $deplibs " in - *" $path "*) ;; - *) deplibs="$deplibs $path" ;; - esac - done - fi # link_all_deplibs != no - fi # linkmode = lib - done # for deplib in $libs - dependency_libs="$newdependency_libs" - if test "$pass" = dlpreopen; then - # Link the dlpreopened libraries before other libraries - for deplib in $save_deplibs; do - deplibs="$deplib $deplibs" - done - fi - if test "$pass" != dlopen; then - if test "$pass" != conv; then - # Make sure lib_search_path contains only unique directories. - lib_search_path= - for dir in $newlib_search_path; do - case "$lib_search_path " in - *" $dir "*) ;; - *) lib_search_path="$lib_search_path $dir" ;; - esac - done - newlib_search_path= - fi - - if test "$linkmode,$pass" != "prog,link"; then - vars="deplibs" - else - vars="compile_deplibs finalize_deplibs" - fi - for var in $vars dependency_libs; do - # Add libraries to $var in reverse order - eval tmp_libs=\"\$$var\" - new_libs= - for deplib in $tmp_libs; do - # FIXME: Pedantically, this is the right thing to do, so - # that some nasty dependency loop isn't accidentally - # broken: - #new_libs="$deplib $new_libs" - # Pragmatically, this seems to cause very few problems in - # practice: - case $deplib in - -L*) new_libs="$deplib $new_libs" ;; - -R*) ;; - *) - # And here is the reason: when a library appears more - # than once as an explicit dependence of a library, or - # is implicitly linked in more than once by the - # compiler, it is considered special, and multiple - # occurrences thereof are not removed. Compare this - # with having the same library being listed as a - # dependency of multiple other libraries: in this case, - # we know (pedantically, we assume) the library does not - # need to be listed more than once, so we keep only the - # last copy. This is not always right, but it is rare - # enough that we require users that really mean to play - # such unportable linking tricks to link the library - # using -Wl,-lname, so that libtool does not consider it - # for duplicate removal. - case " $specialdeplibs " in - *" $deplib "*) new_libs="$deplib $new_libs" ;; - *) - case " $new_libs " in - *" $deplib "*) ;; - *) new_libs="$deplib $new_libs" ;; - esac - ;; - esac - ;; - esac - done - tmp_libs= - for deplib in $new_libs; do - case $deplib in - -L*) - case " $tmp_libs " in - *" $deplib "*) ;; - *) tmp_libs="$tmp_libs $deplib" ;; - esac - ;; - *) tmp_libs="$tmp_libs $deplib" ;; - esac - done - eval $var=\"$tmp_libs\" - done # for var - fi - # Last step: remove runtime libs from dependency_libs (they stay in deplibs) - tmp_libs= - for i in $dependency_libs ; do - case " $predeps $postdeps $compiler_lib_search_path " in - *" $i "*) - i="" - ;; - esac - if test -n "$i" ; then - tmp_libs="$tmp_libs $i" - fi - done - dependency_libs=$tmp_libs - done # for pass - if test "$linkmode" = prog; then - dlfiles="$newdlfiles" - dlprefiles="$newdlprefiles" - fi - - case $linkmode in - oldlib) - if test -n "$deplibs"; then - $echo "$modename: warning: \`-l' and \`-L' are ignored for archives" 1>&2 - fi - - if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then - $echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2 - fi - - if test -n "$rpath"; then - $echo "$modename: warning: \`-rpath' is ignored for archives" 1>&2 - fi - - if test -n "$xrpath"; then - $echo "$modename: warning: \`-R' is ignored for archives" 1>&2 - fi - - if test -n "$vinfo"; then - $echo "$modename: warning: \`-version-info/-version-number' is ignored for archives" 1>&2 - fi - - if test -n "$release"; then - $echo "$modename: warning: \`-release' is ignored for archives" 1>&2 - fi - - if test -n "$export_symbols" || test -n "$export_symbols_regex"; then - $echo "$modename: warning: \`-export-symbols' is ignored for archives" 1>&2 - fi - - # Now set the variables for building old libraries. - build_libtool_libs=no - oldlibs="$output" - objs="$objs$old_deplibs" - ;; - - lib) - # Make sure we only generate libraries of the form `libNAME.la'. - case $outputname in - lib*) - name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'` - eval shared_ext=\"$shrext\" - eval libname=\"$libname_spec\" - ;; - *) - if test "$module" = no; then - $echo "$modename: libtool library \`$output' must begin with \`lib'" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - if test "$need_lib_prefix" != no; then - # Add the "lib" prefix for modules if required - name=`$echo "X$outputname" | $Xsed -e 's/\.la$//'` - eval shared_ext=\"$shrext\" - eval libname=\"$libname_spec\" - else - libname=`$echo "X$outputname" | $Xsed -e 's/\.la$//'` - fi - ;; - esac - - if test -n "$objs"; then - if test "$deplibs_check_method" != pass_all; then - $echo "$modename: cannot build libtool library \`$output' from non-libtool objects on this host:$objs" 2>&1 - exit 1 - else - $echo - $echo "*** Warning: Linking the shared library $output against the non-libtool" - $echo "*** objects $objs is not portable!" - libobjs="$libobjs $objs" - fi - fi - - if test "$dlself" != no; then - $echo "$modename: warning: \`-dlopen self' is ignored for libtool libraries" 1>&2 - fi - - set dummy $rpath - if test "$#" -gt 2; then - $echo "$modename: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2 - fi - install_libdir="$2" - - oldlibs= - if test -z "$rpath"; then - if test "$build_libtool_libs" = yes; then - # Building a libtool convenience library. - # Some compilers have problems with a `.al' extension so - # convenience libraries should have the same extension an - # archive normally would. - oldlibs="$output_objdir/$libname.$libext $oldlibs" - build_libtool_libs=convenience - build_old_libs=yes - fi - - if test -n "$vinfo"; then - $echo "$modename: warning: \`-version-info/-version-number' is ignored for convenience libraries" 1>&2 - fi - - if test -n "$release"; then - $echo "$modename: warning: \`-release' is ignored for convenience libraries" 1>&2 - fi - else - - # Parse the version information argument. - save_ifs="$IFS"; IFS=':' - set dummy $vinfo 0 0 0 - IFS="$save_ifs" - - if test -n "$8"; then - $echo "$modename: too many parameters to \`-version-info'" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - # convert absolute version numbers to libtool ages - # this retains compatibility with .la files and attempts - # to make the code below a bit more comprehensible - - case $vinfo_number in - yes) - number_major="$2" - number_minor="$3" - number_revision="$4" - # - # There are really only two kinds -- those that - # use the current revision as the major version - # and those that subtract age and use age as - # a minor version. But, then there is irix - # which has an extra 1 added just for fun - # - case $version_type in - darwin|linux|osf|windows) - current=`expr $number_major + $number_minor` - age="$number_minor" - revision="$number_revision" - ;; - freebsd-aout|freebsd-elf|sunos) - current="$number_major" - revision="$number_minor" - age="0" - ;; - irix|nonstopux) - current=`expr $number_major + $number_minor - 1` - age="$number_minor" - revision="$number_minor" - ;; - esac - ;; - no) - current="$2" - revision="$3" - age="$4" - ;; - esac - - # Check that each of the things are valid numbers. - case $current in - 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;; - *) - $echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2 - $echo "$modename: \`$vinfo' is not valid version information" 1>&2 - exit 1 - ;; - esac - - case $revision in - 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;; - *) - $echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2 - $echo "$modename: \`$vinfo' is not valid version information" 1>&2 - exit 1 - ;; - esac - - case $age in - 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;; - *) - $echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2 - $echo "$modename: \`$vinfo' is not valid version information" 1>&2 - exit 1 - ;; - esac - - if test "$age" -gt "$current"; then - $echo "$modename: AGE \`$age' is greater than the current interface number \`$current'" 1>&2 - $echo "$modename: \`$vinfo' is not valid version information" 1>&2 - exit 1 - fi - - # Calculate the version variables. - major= - versuffix= - verstring= - case $version_type in - none) ;; - - darwin) - # Like Linux, but with the current version available in - # verstring for coding it into the library header - major=.`expr $current - $age` - versuffix="$major.$age.$revision" - # Darwin ld doesn't like 0 for these options... - minor_current=`expr $current + 1` - verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" - ;; - - freebsd-aout) - major=".$current" - versuffix=".$current.$revision"; - ;; - - freebsd-elf) - major=".$current" - versuffix=".$current"; - ;; - - irix | nonstopux) - major=`expr $current - $age + 1` - - case $version_type in - nonstopux) verstring_prefix=nonstopux ;; - *) verstring_prefix=sgi ;; - esac - verstring="$verstring_prefix$major.$revision" - - # Add in all the interfaces that we are compatible with. - loop=$revision - while test "$loop" -ne 0; do - iface=`expr $revision - $loop` - loop=`expr $loop - 1` - verstring="$verstring_prefix$major.$iface:$verstring" - done - - # Before this point, $major must not contain `.'. - major=.$major - versuffix="$major.$revision" - ;; - - linux) - major=.`expr $current - $age` - versuffix="$major.$age.$revision" - ;; - - osf) - major=.`expr $current - $age` - versuffix=".$current.$age.$revision" - verstring="$current.$age.$revision" - - # Add in all the interfaces that we are compatible with. - loop=$age - while test "$loop" -ne 0; do - iface=`expr $current - $loop` - loop=`expr $loop - 1` - verstring="$verstring:${iface}.0" - done - - # Make executables depend on our current version. - verstring="$verstring:${current}.0" - ;; - - sunos) - major=".$current" - versuffix=".$current.$revision" - ;; - - windows) - # Use '-' rather than '.', since we only want one - # extension on DOS 8.3 filesystems. - major=`expr $current - $age` - versuffix="-$major" - ;; - - *) - $echo "$modename: unknown library version type \`$version_type'" 1>&2 - $echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 - exit 1 - ;; - esac - - # Clear the version info if we defaulted, and they specified a release. - if test -z "$vinfo" && test -n "$release"; then - major= - case $version_type in - darwin) - # we can't check for "0.0" in archive_cmds due to quoting - # problems, so we reset it completely - verstring= - ;; - *) - verstring="0.0" - ;; - esac - if test "$need_version" = no; then - versuffix= - else - versuffix=".0.0" - fi - fi - - # Remove version info from name if versioning should be avoided - if test "$avoid_version" = yes && test "$need_version" = no; then - major= - versuffix= - verstring="" - fi - - # Check to see if the archive will have undefined symbols. - if test "$allow_undefined" = yes; then - if test "$allow_undefined_flag" = unsupported; then - $echo "$modename: warning: undefined symbols not allowed in $host shared libraries" 1>&2 - build_libtool_libs=no - build_old_libs=yes - fi - else - # Don't allow undefined symbols. - allow_undefined_flag="$no_undefined_flag" - fi - fi - - if test "$mode" != relink; then - # Remove our outputs, but don't remove object files since they - # may have been created when compiling PIC objects. - removelist= - tempremovelist=`$echo "$output_objdir/*"` - for p in $tempremovelist; do - case $p in - *.$objext | *$exeext) - ;; - $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*) - removelist="$removelist $p" - ;; - *) ;; - esac - done - if test -n "$removelist"; then - $show "${rm}r $removelist" - $run ${rm}r $removelist - fi - fi - - # Now set the variables for building old libraries. - if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then - oldlibs="$oldlibs $output_objdir/$libname.$libext" - - # Transform .lo files to .o files. - oldobjs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP` - fi - - # Eliminate all temporary directories. - for path in $notinst_path; do - lib_search_path=`$echo "$lib_search_path " | ${SED} -e 's% $path % %g'` - deplibs=`$echo "$deplibs " | ${SED} -e 's% -L$path % %g'` - dependency_libs=`$echo "$dependency_libs " | ${SED} -e 's% -L$path % %g'` - done - - if test -n "$xrpath"; then - # If the user specified any rpath flags, then add them. - temp_xrpath= - for libdir in $xrpath; do - temp_xrpath="$temp_xrpath -R$libdir" - case "$finalize_rpath " in - *" $libdir "*) ;; - *) finalize_rpath="$finalize_rpath $libdir" ;; - esac - done - if true || test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; then - dependency_libs="$temp_xrpath $dependency_libs" - fi - fi - - # Make sure dlfiles contains only unique files that won't be dlpreopened - old_dlfiles="$dlfiles" - dlfiles= - for lib in $old_dlfiles; do - case " $dlprefiles $dlfiles " in - *" $lib "*) ;; - *) dlfiles="$dlfiles $lib" ;; - esac - done - - # Make sure dlprefiles contains only unique files - old_dlprefiles="$dlprefiles" - dlprefiles= - for lib in $old_dlprefiles; do - case "$dlprefiles " in - *" $lib "*) ;; - *) dlprefiles="$dlprefiles $lib" ;; - esac - done - - if test "$build_libtool_libs" = yes; then - if test -n "$rpath"; then - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*) - # these systems don't actually have a c library (as such)! - ;; - *-*-rhapsody* | *-*-darwin1.[012]) - # Rhapsody C library is in the System framework - deplibs="$deplibs System.ltframework" - ;; - *-*-netbsd*) - # Don't link with libc until the a.out ld.so is fixed. - ;; - *-*-openbsd* | *-*-freebsd*) - # Do not include libc due to us having libc/libc_r. - test "X$arg" = "X-lc" && continue - ;; - *) - # Add libc to deplibs on all other systems if necessary. - if test "$build_libtool_need_lc" = "yes"; then - deplibs="$deplibs -lc" - fi - ;; - esac - fi - - # Transform deplibs into only deplibs that can be linked in shared. - name_save=$name - libname_save=$libname - release_save=$release - versuffix_save=$versuffix - major_save=$major - # I'm not sure if I'm treating the release correctly. I think - # release should show up in the -l (ie -lgmp5) so we don't want to - # add it in twice. Is that correct? - release="" - versuffix="" - major="" - newdeplibs= - droppeddeps=no - case $deplibs_check_method in - pass_all) - # Don't check for shared/static. Everything works. - # This might be a little naive. We might want to check - # whether the library exists or not. But this is on - # osf3 & osf4 and I'm not really sure... Just - # implementing what was already the behavior. - newdeplibs=$deplibs - ;; - test_compile) - # This code stresses the "libraries are programs" paradigm to its - # limits. Maybe even breaks it. We compile a program, linking it - # against the deplibs as a proxy for the library. Then we can check - # whether they linked in statically or dynamically with ldd. - $rm conftest.c - cat > conftest.c <<EOF - int main() { return 0; } -EOF - $rm conftest - $LTCC -o conftest conftest.c $deplibs - if test "$?" -eq 0 ; then - ldd_output=`ldd conftest` - for i in $deplibs; do - name="`expr $i : '-l\(.*\)'`" - # If $name is empty we are operating on a -L argument. - if test "$name" != "" && test "$name" -ne "0"; then - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then - case " $predeps $postdeps " in - *" $i "*) - newdeplibs="$newdeplibs $i" - i="" - ;; - esac - fi - if test -n "$i" ; then - libname=`eval \\$echo \"$libname_spec\"` - deplib_matches=`eval \\$echo \"$library_names_spec\"` - set dummy $deplib_matches - deplib_match=$2 - if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then - newdeplibs="$newdeplibs $i" - else - droppeddeps=yes - $echo - $echo "*** Warning: dynamic linker does not accept needed library $i." - $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 I believe you do not have" - $echo "*** because a test_compile did reveal that the linker did not use it for" - $echo "*** its dynamic dependency list that programs get resolved with at runtime." - fi - fi - else - newdeplibs="$newdeplibs $i" - fi - done - else - # Error occurred in the first compile. Let's try to salvage - # the situation: Compile a separate program for each library. - for i in $deplibs; do - name="`expr $i : '-l\(.*\)'`" - # If $name is empty we are operating on a -L argument. - if test "$name" != "" && test "$name" != "0"; then - $rm conftest - $LTCC -o conftest conftest.c $i - # Did it work? - if test "$?" -eq 0 ; then - ldd_output=`ldd conftest` - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then - case " $predeps $postdeps " in - *" $i "*) - newdeplibs="$newdeplibs $i" - i="" - ;; - esac - fi - if test -n "$i" ; then - libname=`eval \\$echo \"$libname_spec\"` - deplib_matches=`eval \\$echo \"$library_names_spec\"` - set dummy $deplib_matches - deplib_match=$2 - if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then - newdeplibs="$newdeplibs $i" - else - droppeddeps=yes - $echo - $echo "*** Warning: dynamic linker does not accept needed library $i." - $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" - $echo "*** because a test_compile did reveal that the linker did not use this one" - $echo "*** as a dynamic dependency that programs can get resolved with at runtime." - fi - fi - else - droppeddeps=yes - $echo - $echo "*** Warning! Library $i is needed by this library but I was not able to" - $echo "*** make it link in! You will probably need to install it or some" - $echo "*** library that it depends on before this library will be fully" - $echo "*** functional. Installing it before continuing would be even better." - fi - else - newdeplibs="$newdeplibs $i" - fi - done - fi - ;; - file_magic*) - set dummy $deplibs_check_method - file_magic_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"` - for a_deplib in $deplibs; do - name="`expr $a_deplib : '-l\(.*\)'`" - # If $name is empty we are operating on a -L argument. - if test "$name" != "" && test "$name" != "0"; then - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then - case " $predeps $postdeps " in - *" $a_deplib "*) - newdeplibs="$newdeplibs $a_deplib" - a_deplib="" - ;; - esac - fi - if test -n "$a_deplib" ; then - libname=`eval \\$echo \"$libname_spec\"` - for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do - potential_libs=`ls $i/$libname[.-]* 2>/dev/null` - 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 - # loop can be closed while we follow links, - # but so what? - potlib="$potent_lib" - while test -h "$potlib" 2>/dev/null; do - potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'` - case $potliblink in - [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";; - *) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";; - esac - done - if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \ - | ${SED} 10q \ - | $EGREP "$file_magic_regex" > /dev/null; then - newdeplibs="$newdeplibs $a_deplib" - a_deplib="" - break 2 - fi - done - done - fi - if test -n "$a_deplib" ; then - droppeddeps=yes - $echo - $echo "*** Warning: linker path does not have real file for library $a_deplib." - $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" - $echo "*** because I did check the linker path looking for a file starting" - if test -z "$potlib" ; then - $echo "*** with $libname but no candidates were found. (...for file magic test)" - else - $echo "*** with $libname and none of the candidates passed a file format test" - $echo "*** using a file magic. Last file checked: $potlib" - fi - fi - else - # Add a -L argument. - newdeplibs="$newdeplibs $a_deplib" - fi - done # Gone through all deplibs. - ;; - match_pattern*) - set dummy $deplibs_check_method - match_pattern_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"` - for a_deplib in $deplibs; do - name="`expr $a_deplib : '-l\(.*\)'`" - # If $name is empty we are operating on a -L argument. - if test -n "$name" && test "$name" != "0"; then - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then - case " $predeps $postdeps " in - *" $a_deplib "*) - newdeplibs="$newdeplibs $a_deplib" - a_deplib="" - ;; - esac - fi - if test -n "$a_deplib" ; then - libname=`eval \\$echo \"$libname_spec\"` - for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do - potential_libs=`ls $i/$libname[.-]* 2>/dev/null` - for potent_lib in $potential_libs; do - potlib="$potent_lib" # see symlink-check above in file_magic test - if eval $echo \"$potent_lib\" 2>/dev/null \ - | ${SED} 10q \ - | $EGREP "$match_pattern_regex" > /dev/null; then - newdeplibs="$newdeplibs $a_deplib" - a_deplib="" - break 2 - fi - done - done - fi - if test -n "$a_deplib" ; then - droppeddeps=yes - $echo - $echo "*** Warning: linker path does not have real file for library $a_deplib." - $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" - $echo "*** because I did check the linker path looking for a file starting" - if test -z "$potlib" ; then - $echo "*** with $libname but no candidates were found. (...for regex pattern test)" - else - $echo "*** with $libname and none of the candidates passed a file format test" - $echo "*** using a regex pattern. Last file checked: $potlib" - fi - fi - else - # Add a -L argument. - newdeplibs="$newdeplibs $a_deplib" - fi - done # Gone through all deplibs. - ;; - none | unknown | *) - newdeplibs="" - tmp_deplibs=`$echo "X $deplibs" | $Xsed -e 's/ -lc$//' \ - -e 's/ -[LR][^ ]*//g'` - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then - for i in $predeps $postdeps ; do - # can't use Xsed below, because $i might contain '/' - tmp_deplibs=`$echo "X $tmp_deplibs" | ${SED} -e "1s,^X,," -e "s,$i,,"` - done - fi - if $echo "X $tmp_deplibs" | $Xsed -e 's/[ ]//g' \ - | grep . >/dev/null; then - $echo - if test "X$deplibs_check_method" = "Xnone"; then - $echo "*** Warning: inter-library dependencies are not supported in this platform." - else - $echo "*** Warning: inter-library dependencies are not known to be supported." - fi - $echo "*** All declared inter-library dependencies are being dropped." - droppeddeps=yes - fi - ;; - esac - versuffix=$versuffix_save - major=$major_save - release=$release_save - libname=$libname_save - name=$name_save - - case $host in - *-*-rhapsody* | *-*-darwin1.[012]) - # On Rhapsody replace the C library is the System framework - newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's/ -lc / System.ltframework /'` - ;; - esac - - if test "$droppeddeps" = yes; then - if test "$module" = yes; 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 "$build_old_libs" = no; then - oldlibs="$output_objdir/$libname.$libext" - build_libtool_libs=module - build_old_libs=yes - else - build_libtool_libs=no - fi - else - $echo "*** The inter-library dependencies that have been dropped here will be" - $echo "*** automatically added whenever a program is linked with this library" - $echo "*** or is declared to -dlopen it." - - if test "$allow_undefined" = no; then - $echo - $echo "*** Since this library must not contain undefined symbols," - $echo "*** because either the platform does not support them or" - $echo "*** it was explicitly requested with -no-undefined," - $echo "*** libtool will only create a static version of it." - if test "$build_old_libs" = no; then - oldlibs="$output_objdir/$libname.$libext" - build_libtool_libs=module - build_old_libs=yes - else - build_libtool_libs=no - fi - fi - fi - fi - # Time to change all our "foo.ltframework" stuff back to "-framework foo" - case $host in - *-*-darwin*) - newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'` - dependency_libs=`$echo "X $dependency_libs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'` - ;; - esac - # Done checking deplibs! - deplibs=$newdeplibs - fi - - # All the library-specific variables (install_libdir is set above). - library_names= - old_library= - dlname= - - # Test again, we may have decided not to build it any more - if test "$build_libtool_libs" = yes; then - if test "$hardcode_into_libs" = yes; then - # Hardcode the library paths - hardcode_libdirs= - dep_rpath= - rpath="$finalize_rpath" - test "$mode" != relink && test "$fast_install" = no && rpath="$compile_rpath$rpath" - for libdir in $rpath; do - if test -n "$hardcode_libdir_flag_spec"; then - if test -n "$hardcode_libdir_separator"; then - if test -z "$hardcode_libdirs"; then - hardcode_libdirs="$libdir" - else - # Just accumulate the unique libdirs. - case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in - *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) - ;; - *) - hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" - ;; - esac - fi - else - eval flag=\"$hardcode_libdir_flag_spec\" - dep_rpath="$dep_rpath $flag" - fi - elif test -n "$runpath_var"; then - case "$perm_rpath " in - *" $libdir "*) ;; - *) perm_rpath="$perm_rpath $libdir" ;; - esac - fi - done - # Substitute the hardcoded libdirs into the rpath. - if test -n "$hardcode_libdir_separator" && - test -n "$hardcode_libdirs"; then - libdir="$hardcode_libdirs" - if test -n "$hardcode_libdir_flag_spec_ld"; then - eval dep_rpath=\"$hardcode_libdir_flag_spec_ld\" - else - eval dep_rpath=\"$hardcode_libdir_flag_spec\" - fi - fi - if test -n "$runpath_var" && test -n "$perm_rpath"; then - # We should set the runpath_var. - rpath= - for dir in $perm_rpath; do - rpath="$rpath$dir:" - done - eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var" - fi - test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" - fi - - shlibpath="$finalize_shlibpath" - test "$mode" != relink && shlibpath="$compile_shlibpath$shlibpath" - if test -n "$shlibpath"; then - eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var" - fi - - # Get the real and link names of the library. - eval shared_ext=\"$shrext\" - eval library_names=\"$library_names_spec\" - set dummy $library_names - realname="$2" - shift; shift - - if test -n "$soname_spec"; then - eval soname=\"$soname_spec\" - else - soname="$realname" - fi - if test -z "$dlname"; then - dlname=$soname - fi - - lib="$output_objdir/$realname" - for link - do - linknames="$linknames $link" - done - - # Use standard objects if they are pic - test -z "$pic_flag" && libobjs=`$echo "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` - - # Prepare the list of exported symbols - if test -z "$export_symbols"; then - if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then - $show "generating symbol list for \`$libname.la'" - export_symbols="$output_objdir/$libname.exp" - $run $rm $export_symbols - eval cmds=\"$export_symbols_cmds\" - save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - if len=`expr "X$cmd" : ".*"` && - test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then - $show "$cmd" - $run eval "$cmd" || exit $? - skipped_export=false - else - # The command line is too long to execute in one step. - $show "using reloadable object file for export list..." - skipped_export=: - fi - done - IFS="$save_ifs" - if test -n "$export_symbols_regex"; then - $show "$EGREP -e \"$export_symbols_regex\" \"$export_symbols\" > \"${export_symbols}T\"" - $run eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' - $show "$mv \"${export_symbols}T\" \"$export_symbols\"" - $run eval '$mv "${export_symbols}T" "$export_symbols"' - fi - fi - fi - - if test -n "$export_symbols" && test -n "$include_expsyms"; then - $run eval '$echo "X$include_expsyms" | $SP2NL >> "$export_symbols"' - fi - - tmp_deplibs= - for test_deplib in $deplibs; do - case " $convenience " in - *" $test_deplib "*) ;; - *) - tmp_deplibs="$tmp_deplibs $test_deplib" - ;; - esac - done - deplibs="$tmp_deplibs" - - if test -n "$convenience"; then - if test -n "$whole_archive_flag_spec"; then - save_libobjs=$libobjs - eval libobjs=\"\$libobjs $whole_archive_flag_spec\" - else - gentop="$output_objdir/${outputname}x" - $show "${rm}r $gentop" - $run ${rm}r "$gentop" - $show "$mkdir $gentop" - $run $mkdir "$gentop" - status=$? - if test "$status" -ne 0 && test ! -d "$gentop"; then - exit $status - fi - generated="$generated $gentop" - - for xlib in $convenience; do - # Extract the objects. - case $xlib in - [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; - *) xabs=`pwd`"/$xlib" ;; - esac - xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` - xdir="$gentop/$xlib" - - $show "${rm}r $xdir" - $run ${rm}r "$xdir" - $show "$mkdir $xdir" - $run $mkdir "$xdir" - status=$? - if test "$status" -ne 0 && test ! -d "$xdir"; then - exit $status - fi - # We will extract separately just the conflicting names and we will no - # longer touch any unique names. It is faster to leave these extract - # automatically by $AR in one run. - $show "(cd $xdir && $AR x $xabs)" - $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? - if ($AR t "$xabs" | sort | sort -uc >/dev/null 2>&1); then - : - else - $echo "$modename: warning: object name conflicts; renaming object files" 1>&2 - $echo "$modename: warning: to ensure that they will not overwrite" 1>&2 - $AR t "$xabs" | sort | uniq -cd | while read -r count name - do - i=1 - while test "$i" -le "$count" - do - # Put our $i before any first dot (extension) - # Never overwrite any file - name_to="$name" - while test "X$name_to" = "X$name" || test -f "$xdir/$name_to" - do - name_to=`$echo "X$name_to" | $Xsed -e "s/\([^.]*\)/\1-$i/"` - done - $show "(cd $xdir && $AR xN $i $xabs '$name' && $mv '$name' '$name_to')" - $run eval "(cd \$xdir && $AR xN $i \$xabs '$name' && $mv '$name' '$name_to')" || exit $? - i=`expr $i + 1` - done - done - fi - - libobjs="$libobjs "`find $xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP` - done - fi - fi - - if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then - eval flag=\"$thread_safe_flag_spec\" - linker_flags="$linker_flags $flag" - fi - - # Make a backup of the uninstalled library when relinking - if test "$mode" = relink; then - $run eval '(cd $output_objdir && $rm ${realname}U && $mv $realname ${realname}U)' || exit $? - fi - - # Add all flags from the command line. We here create a library, - # but those flags were only added to compile_command and - # finalize_command, which are only used when creating executables. - # So do it by hand here. - compiler_flags="$compiler_flags $add_flags" - # Only add it to commands which use CC, instead of LD, i.e. - # only to $compiler_flags - #linker_flags="$linker_flags $add_flags" - - # Do each of the archive commands. - if test "$module" = yes && test -n "$module_cmds" ; then - if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then - eval cmds=\"$module_expsym_cmds\" - else - eval cmds=\"$module_cmds\" - fi - else - if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then - eval cmds=\"$archive_expsym_cmds\" - else - eval cmds=\"$archive_cmds\" - fi - fi - - if test "X$skipped_export" != "X:" && len=`expr "X$cmds" : ".*"` && - test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then - : - else - # The command line is too long to link in one step, link piecewise. - $echo "creating reloadable object files..." - - # Save the value of $output and $libobjs because we want to - # use them later. If we have whole_archive_flag_spec, we - # want to use save_libobjs as it was before - # whole_archive_flag_spec was expanded, because we can't - # assume the linker understands whole_archive_flag_spec. - # This may have to be revisited, in case too many - # convenience libraries get linked in and end up exceeding - # the spec. - if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then - save_libobjs=$libobjs - fi - save_output=$output - - # Clear the reloadable object creation command queue and - # initialize k to one. - test_cmds= - concat_cmds= - objlist= - delfiles= - last_robj= - k=1 - output=$output_objdir/$save_output-${k}.$objext - # Loop over the list of objects to be linked. - for obj in $save_libobjs - do - eval test_cmds=\"$reload_cmds $objlist $last_robj\" - if test "X$objlist" = X || - { len=`expr "X$test_cmds" : ".*"` && - test "$len" -le "$max_cmd_len"; }; then - objlist="$objlist $obj" - else - # The command $test_cmds is almost too long, add a - # command to the queue. - if test "$k" -eq 1 ; then - # The first file doesn't have a previous command to add. - eval concat_cmds=\"$reload_cmds $objlist $last_robj\" - else - # All subsequent reloadable object files will link in - # the last one created. - eval concat_cmds=\"\$concat_cmds~$reload_cmds $objlist $last_robj\" - fi - last_robj=$output_objdir/$save_output-${k}.$objext - k=`expr $k + 1` - output=$output_objdir/$save_output-${k}.$objext - objlist=$obj - len=1 - fi - done - # Handle the remaining objects by creating one last - # reloadable object file. All subsequent reloadable object - # files will link in the last one created. - test -z "$concat_cmds" || concat_cmds=$concat_cmds~ - eval concat_cmds=\"\${concat_cmds}$reload_cmds $objlist $last_robj\" - - if ${skipped_export-false}; then - $show "generating symbol list for \`$libname.la'" - export_symbols="$output_objdir/$libname.exp" - $run $rm $export_symbols - libobjs=$output - # Append the command to create the export file. - eval concat_cmds=\"\$concat_cmds~$export_symbols_cmds\" - fi - - # Set up a command to remove the reloadale object files - # after they are used. - i=0 - while test "$i" -lt "$k" - do - i=`expr $i + 1` - delfiles="$delfiles $output_objdir/$save_output-${i}.$objext" - done - - $echo "creating a temporary reloadable object file: $output" - - # Loop through the commands generated above and execute them. - save_ifs="$IFS"; IFS='~' - for cmd in $concat_cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - - libobjs=$output - # Restore the value of output. - output=$save_output - - if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then - eval libobjs=\"\$libobjs $whole_archive_flag_spec\" - fi - # Expand the library linking commands again to reset the - # value of $libobjs for piecewise linking. - - # Do each of the archive commands. - if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then - eval cmds=\"$archive_expsym_cmds\" - else - eval cmds=\"$archive_cmds\" - fi - - # Append the command to remove the reloadable object files - # to the just-reset $cmds. - eval cmds=\"\$cmds~$rm $delfiles\" - fi - save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - - # Restore the uninstalled library and exit - if test "$mode" = relink; then - $run eval '(cd $output_objdir && $rm ${realname}T && $mv $realname ${realname}T && $mv "$realname"U $realname)' || exit $? - exit 0 - fi - - # Create links to the real library. - for linkname in $linknames; do - if test "$realname" != "$linkname"; then - $show "(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)" - $run eval '(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)' || exit $? - fi - done - - # If -module or -export-dynamic was specified, set the dlname. - if test "$module" = yes || test "$export_dynamic" = yes; then - # On all known operating systems, these are identical. - dlname="$soname" - fi - fi - ;; - - obj) - if test -n "$deplibs"; then - $echo "$modename: warning: \`-l' and \`-L' are ignored for objects" 1>&2 - fi - - if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then - $echo "$modename: warning: \`-dlopen' is ignored for objects" 1>&2 - fi - - if test -n "$rpath"; then - $echo "$modename: warning: \`-rpath' is ignored for objects" 1>&2 - fi - - if test -n "$xrpath"; then - $echo "$modename: warning: \`-R' is ignored for objects" 1>&2 - fi - - if test -n "$vinfo"; then - $echo "$modename: warning: \`-version-info' is ignored for objects" 1>&2 - fi - - if test -n "$release"; then - $echo "$modename: warning: \`-release' is ignored for objects" 1>&2 - fi - - case $output in - *.lo) - if test -n "$objs$old_deplibs"; then - $echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2 - exit 1 - fi - libobj="$output" - obj=`$echo "X$output" | $Xsed -e "$lo2o"` - ;; - *) - libobj= - obj="$output" - ;; - esac - - # Delete the old objects. - $run $rm $obj $libobj - - # Objects from convenience libraries. This assumes - # single-version convenience libraries. Whenever we create - # different ones for PIC/non-PIC, this we'll have to duplicate - # the extraction. - reload_conv_objs= - gentop= - # reload_cmds runs $LD directly, so let us get rid of - # -Wl from whole_archive_flag_spec - wl= - - if test -n "$convenience"; then - if test -n "$whole_archive_flag_spec"; then - eval reload_conv_objs=\"\$reload_objs $whole_archive_flag_spec\" - else - gentop="$output_objdir/${obj}x" - $show "${rm}r $gentop" - $run ${rm}r "$gentop" - $show "$mkdir $gentop" - $run $mkdir "$gentop" - status=$? - if test "$status" -ne 0 && test ! -d "$gentop"; then - exit $status - fi - generated="$generated $gentop" - - for xlib in $convenience; do - # Extract the objects. - case $xlib in - [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; - *) xabs=`pwd`"/$xlib" ;; - esac - xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` - xdir="$gentop/$xlib" - - $show "${rm}r $xdir" - $run ${rm}r "$xdir" - $show "$mkdir $xdir" - $run $mkdir "$xdir" - status=$? - if test "$status" -ne 0 && test ! -d "$xdir"; then - exit $status - fi - # We will extract separately just the conflicting names and we will no - # longer touch any unique names. It is faster to leave these extract - # automatically by $AR in one run. - $show "(cd $xdir && $AR x $xabs)" - $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? - if ($AR t "$xabs" | sort | sort -uc >/dev/null 2>&1); then - : - else - $echo "$modename: warning: object name conflicts; renaming object files" 1>&2 - $echo "$modename: warning: to ensure that they will not overwrite" 1>&2 - $AR t "$xabs" | sort | uniq -cd | while read -r count name - do - i=1 - while test "$i" -le "$count" - do - # Put our $i before any first dot (extension) - # Never overwrite any file - name_to="$name" - while test "X$name_to" = "X$name" || test -f "$xdir/$name_to" - do - name_to=`$echo "X$name_to" | $Xsed -e "s/\([^.]*\)/\1-$i/"` - done - $show "(cd $xdir && $AR xN $i $xabs '$name' && $mv '$name' '$name_to')" - $run eval "(cd \$xdir && $AR xN $i \$xabs '$name' && $mv '$name' '$name_to')" || exit $? - i=`expr $i + 1` - done - done - fi - - reload_conv_objs="$reload_objs "`find $xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP` - done - fi - fi - - # Create the old-style object. - reload_objs="$objs$old_deplibs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test - - output="$obj" - eval cmds=\"$reload_cmds\" - save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - - # Exit if we aren't doing a library object file. - if test -z "$libobj"; then - if test -n "$gentop"; then - $show "${rm}r $gentop" - $run ${rm}r $gentop - fi - - exit 0 - fi - - if test "$build_libtool_libs" != yes; then - if test -n "$gentop"; then - $show "${rm}r $gentop" - $run ${rm}r $gentop - fi - - # Create an invalid libtool object if no PIC, so that we don't - # accidentally link it into a program. - # $show "echo timestamp > $libobj" - # $run eval "echo timestamp > $libobj" || exit $? - exit 0 - fi - - if test -n "$pic_flag" || test "$pic_mode" != default; then - # Only do commands if we really have different PIC objects. - reload_objs="$libobjs $reload_conv_objs" - output="$libobj" - eval cmds=\"$reload_cmds\" - save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - fi - - if test -n "$gentop"; then - $show "${rm}r $gentop" - $run ${rm}r $gentop - fi - - exit 0 - ;; - - prog) - case $host in - *cygwin*) output=`$echo $output | ${SED} -e 's,.exe$,,;s,$,.exe,'` ;; - esac - if test -n "$vinfo"; then - $echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2 - fi - - if test -n "$release"; then - $echo "$modename: warning: \`-release' is ignored for programs" 1>&2 - fi - - if test "$preload" = yes; then - if test "$dlopen_support" = unknown && test "$dlopen_self" = unknown && - test "$dlopen_self_static" = unknown; then - $echo "$modename: warning: \`AC_LIBTOOL_DLOPEN' not used. Assuming no dlopen support." - fi - fi - - case $host in - *-*-rhapsody* | *-*-darwin1.[012]) - # On Rhapsody replace the C library is the System framework - compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's/ -lc / System.ltframework /'` - finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / System.ltframework /'` - ;; - esac - - case $host in - *-*-darwin*) - # Don't allow lazy linking, it breaks C++ global constructors - if test "$tagname" = CXX ; then - compile_command="$compile_command ${wl}-bind_at_load" - finalize_command="$finalize_command ${wl}-bind_at_load" - fi - # Time to change all our "foo.ltframework" stuff back to "-framework foo" - compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'` - finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'` - ;; - esac - - compile_command="$compile_command $compile_deplibs" - finalize_command="$finalize_command $finalize_deplibs" - - if test -n "$rpath$xrpath"; then - # If the user specified any rpath flags, then add them. - for libdir in $rpath $xrpath; do - # This is the magic to use -rpath. - case "$finalize_rpath " in - *" $libdir "*) ;; - *) finalize_rpath="$finalize_rpath $libdir" ;; - esac - done - fi - - # Now hardcode the library paths - rpath= - hardcode_libdirs= - for libdir in $compile_rpath $finalize_rpath; do - if test -n "$hardcode_libdir_flag_spec"; then - if test -n "$hardcode_libdir_separator"; then - if test -z "$hardcode_libdirs"; then - hardcode_libdirs="$libdir" - else - # Just accumulate the unique libdirs. - case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in - *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) - ;; - *) - hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" - ;; - esac - fi - else - eval flag=\"$hardcode_libdir_flag_spec\" - rpath="$rpath $flag" - fi - elif test -n "$runpath_var"; then - case "$perm_rpath " in - *" $libdir "*) ;; - *) perm_rpath="$perm_rpath $libdir" ;; - esac - fi - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) - case :$dllsearchpath: in - *":$libdir:"*) ;; - *) dllsearchpath="$dllsearchpath:$libdir";; - esac - ;; - esac - done - # Substitute the hardcoded libdirs into the rpath. - if test -n "$hardcode_libdir_separator" && - test -n "$hardcode_libdirs"; then - libdir="$hardcode_libdirs" - eval rpath=\" $hardcode_libdir_flag_spec\" - fi - compile_rpath="$rpath" - - rpath= - hardcode_libdirs= - for libdir in $finalize_rpath; do - if test -n "$hardcode_libdir_flag_spec"; then - if test -n "$hardcode_libdir_separator"; then - if test -z "$hardcode_libdirs"; then - hardcode_libdirs="$libdir" - else - # Just accumulate the unique libdirs. - case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in - *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) - ;; - *) - hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" - ;; - esac - fi - else - eval flag=\"$hardcode_libdir_flag_spec\" - rpath="$rpath $flag" - fi - elif test -n "$runpath_var"; then - case "$finalize_perm_rpath " in - *" $libdir "*) ;; - *) finalize_perm_rpath="$finalize_perm_rpath $libdir" ;; - esac - fi - done - # Substitute the hardcoded libdirs into the rpath. - if test -n "$hardcode_libdir_separator" && - test -n "$hardcode_libdirs"; then - libdir="$hardcode_libdirs" - eval rpath=\" $hardcode_libdir_flag_spec\" - fi - finalize_rpath="$rpath" - - if test -n "$libobjs" && test "$build_old_libs" = yes; then - # Transform all the library objects into standard objects. - compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` - finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` - fi - - dlsyms= - if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then - if test -n "$NM" && test -n "$global_symbol_pipe"; then - dlsyms="${outputname}S.c" - else - $echo "$modename: not configured to extract global symbols from dlpreopened files" 1>&2 - fi - fi - - if test -n "$dlsyms"; then - case $dlsyms in - "") ;; - *.c) - # Discover the nlist of each of the dlfiles. - nlist="$output_objdir/${outputname}.nm" - - $show "$rm $nlist ${nlist}S ${nlist}T" - $run $rm "$nlist" "${nlist}S" "${nlist}T" - - # Parse the name list into a source file. - $show "creating $output_objdir/$dlsyms" - - test -z "$run" && $echo > "$output_objdir/$dlsyms" "\ -/* $dlsyms - symbol resolution table for \`$outputname' dlsym emulation. */ -/* Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP */ - -#ifdef __cplusplus -extern \"C\" { -#endif - -/* Prevent the only kind of declaration conflicts we can make. */ -#define lt_preloaded_symbols some_other_symbol - -/* External symbol declarations for the compiler. */\ -" - - if test "$dlself" = yes; then - $show "generating symbol list for \`$output'" - - test -z "$run" && $echo ': @PROGRAM@ ' > "$nlist" - - # Add our own program objects to the symbol list. - progfiles=`$echo "X$objs$old_deplibs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` - for arg in $progfiles; do - $show "extracting global C symbols from \`$arg'" - $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'" - done - - if test -n "$exclude_expsyms"; then - $run eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' - $run eval '$mv "$nlist"T "$nlist"' - fi - - if test -n "$export_symbols_regex"; then - $run eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T' - $run eval '$mv "$nlist"T "$nlist"' - fi - - # Prepare the list of exported symbols - if test -z "$export_symbols"; then - export_symbols="$output_objdir/$output.exp" - $run $rm $export_symbols - $run eval "${SED} -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' - else - $run eval "${SED} -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"' - $run eval 'grep -f "$output_objdir/$output.exp" < "$nlist" > "$nlist"T' - $run eval 'mv "$nlist"T "$nlist"' - fi - fi - - for arg in $dlprefiles; do - $show "extracting global C symbols from \`$arg'" - name=`$echo "$arg" | ${SED} -e 's%^.*/%%'` - $run eval '$echo ": $name " >> "$nlist"' - $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'" - done - - if test -z "$run"; then - # Make sure we have at least an empty file. - test -f "$nlist" || : > "$nlist" - - if test -n "$exclude_expsyms"; then - $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T - $mv "$nlist"T "$nlist" - fi - - # Try sorting and uniquifying the output. - if grep -v "^: " < "$nlist" | - if sort -k 3 </dev/null >/dev/null 2>&1; then - sort -k 3 - 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/$dlsyms"' - else - $echo '/* NONE */' >> "$output_objdir/$dlsyms" - fi - - $echo >> "$output_objdir/$dlsyms" "\ - -#undef lt_preloaded_symbols - -#if defined (__STDC__) && __STDC__ -# define lt_ptr void * -#else -# define lt_ptr char * -# define const -#endif - -/* The mapping between symbol names and symbols. */ -const struct { - const char *name; - lt_ptr address; -} -lt_preloaded_symbols[] = -{\ -" - - eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$dlsyms" - - $echo >> "$output_objdir/$dlsyms" "\ - {0, (lt_ptr) 0} -}; - -/* This works around a problem in FreeBSD linker */ -#ifdef FREEBSD_WORKAROUND -static const void *lt_preloaded_setup() { - return lt_preloaded_symbols; -} -#endif - -#ifdef __cplusplus -} -#endif\ -" - fi - - pic_flag_for_symtable= - case $host in - # compiling the symbol table file with pic_flag works around - # a FreeBSD bug that causes programs to crash when -lm is - # linked before any other PIC object. But we must not use - # pic_flag when linking with -static. The problem exists in - # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. - *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) - case "$compile_command " in - *" -static "*) ;; - *) pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND";; - esac;; - *-*-hpux*) - case "$compile_command " in - *" -static "*) ;; - *) pic_flag_for_symtable=" $pic_flag";; - esac - esac - - # Now compile the dynamic symbol file. - $show "(cd $output_objdir && $LTCC -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")" - $run eval '(cd $output_objdir && $LTCC -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $? - - # Clean up the generated files. - $show "$rm $output_objdir/$dlsyms $nlist ${nlist}S ${nlist}T" - $run $rm "$output_objdir/$dlsyms" "$nlist" "${nlist}S" "${nlist}T" - - # Transform the symbol file into the correct name. - compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"` - finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"` - ;; - *) - $echo "$modename: unknown suffix for \`$dlsyms'" 1>&2 - exit 1 - ;; - 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 "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"` - finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"` - fi - - # AIX runtime linking requires linking programs with -Wl,-brtl and libs with -Wl,-G - # Also add -bnolibpath to the beginning of the link line, to clear the hardcoded runpath. - # Otherwise, things like the -L path to libgcc.a are accidentally hardcoded by ld. - # This does not apply on AIX for ia64, which uses a SysV linker. - case "$host" in - ia64-*-aix5*) ;; - *-*-aix4* | *-*-aix5*) - compile_command=`$echo "X$compile_command $wl-brtl" | $Xsed -e "s/\$CC/\$CC $wl-bnolibpath/1"` - finalize_command=`$echo "X$finalize_command $wl-brtl" | $Xsed -e "s/\$CC/\$CC $wl-bnolibpath/1"` ;; - esac - - if test "$need_relink" = no || test "$build_libtool_libs" != yes; then - # Replace the output file specification. - compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'` - link_command="$compile_command$compile_rpath" - - # We have no uninstalled library dependencies, so finalize right now. - $show "$link_command" - $run eval "$link_command" - status=$? - - # Delete the generated files. - if test -n "$dlsyms"; then - $show "$rm $output_objdir/${outputname}S.${objext}" - $run $rm "$output_objdir/${outputname}S.${objext}" - fi - - exit $status - fi - - if test -n "$shlibpath_var"; then - # We should set the shlibpath_var - rpath= - for dir in $temp_rpath; do - case $dir in - [\\/]* | [A-Za-z]:[\\/]*) - # Absolute path. - rpath="$rpath$dir:" - ;; - *) - # Relative path: add a thisdir entry. - rpath="$rpath\$thisdir/$dir:" - ;; - esac - done - temp_rpath="$rpath" - fi - - if test -n "$compile_shlibpath$finalize_shlibpath"; then - compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command" - fi - if test -n "$finalize_shlibpath"; then - finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command" - fi - - compile_var= - finalize_var= - if test -n "$runpath_var"; then - if test -n "$perm_rpath"; then - # We should set the runpath_var. - rpath= - for dir in $perm_rpath; do - rpath="$rpath$dir:" - done - compile_var="$runpath_var=\"$rpath\$$runpath_var\" " - fi - if test -n "$finalize_perm_rpath"; then - # We should set the runpath_var. - rpath= - for dir in $finalize_perm_rpath; do - rpath="$rpath$dir:" - done - finalize_var="$runpath_var=\"$rpath\$$runpath_var\" " - fi - fi - - if test "$no_install" = yes; then - # We don't need to create a wrapper script. - link_command="$compile_var$compile_command$compile_rpath" - # Replace the output file specification. - link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'` - # Delete the old output file. - $run $rm $output - # Link the executable and exit - $show "$link_command" - $run eval "$link_command" || exit $? - exit 0 - fi - - if test "$hardcode_action" = relink; then - # Fast installation is not supported - link_command="$compile_var$compile_command$compile_rpath" - relink_command="$finalize_var$finalize_command$finalize_rpath" - - $echo "$modename: warning: this platform does not like uninstalled shared libraries" 1>&2 - $echo "$modename: \`$output' will be relinked during installation" 1>&2 - else - if test "$fast_install" != no; then - link_command="$finalize_var$compile_command$finalize_rpath" - if test "$fast_install" = yes; then - relink_command=`$echo "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'` - else - # fast_install is set to needless - relink_command= - fi - else - link_command="$compile_var$compile_command$compile_rpath" - relink_command="$finalize_var$finalize_command$finalize_rpath" - fi - fi - - # Replace the output file specification. - link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` - - # Delete the old output files. - $run $rm $output $output_objdir/$outputname $output_objdir/lt-$outputname - - $show "$link_command" - $run eval "$link_command" || exit $? - - # Now create the wrapper script. - $show "creating $output" - - # Quote the relink command for shipping. - if test -n "$relink_command"; then - # Preserve any variables that may affect compiler behavior - for var in $variables_saved_for_relink; do - if eval test -z \"\${$var+set}\"; then - relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command" - elif eval var_value=\$$var; test -z "$var_value"; then - relink_command="$var=; export $var; $relink_command" - else - var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"` - relink_command="$var=\"$var_value\"; export $var; $relink_command" - fi - done - relink_command="(cd `pwd`; $relink_command)" - relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` - fi - - # Quote $echo for shipping. - if test "X$echo" = "X$SHELL $0 --fallback-echo"; then - case $0 in - [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $0 --fallback-echo";; - *) qecho="$SHELL `pwd`/$0 --fallback-echo";; - esac - qecho=`$echo "X$qecho" | $Xsed -e "$sed_quote_subst"` - else - qecho=`$echo "X$echo" | $Xsed -e "$sed_quote_subst"` - fi - - # Only actually do things if our run command is non-null. - if test -z "$run"; then - # win32 will think the script is a binary if it has - # a .exe suffix, so we strip it off here. - case $output in - *.exe) output=`$echo $output|${SED} 's,.exe$,,'` ;; - esac - # test for cygwin because mv fails w/o .exe extensions - case $host in - *cygwin*) - exeext=.exe - outputname=`$echo $outputname|${SED} 's,.exe$,,'` ;; - *) exeext= ;; - esac - case $host in - *mingw* ) - cwrappersource=`$echo ${output_objdir}/lt-${outputname}.c` - cwrapper=`$echo ${output}.exe` - $rm $cwrappersource $cwrapper - trap "$rm $cwrappersource $cwrapper; exit 1" 1 2 15 - - cat > $cwrappersource <<EOF - -/* $cwrappersource - temporary wrapper executable for $objdir/$outputname - Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP - - The $output program cannot be directly executed until all the libtool - libraries that it depends on are installed. - - This wrapper executable should never be moved out of the build directory. - If it is, it will not operate correctly. - - Currently, it simply execs the wrapper *script* "/bin/sh $output", - but could eventually absorb all of the scripts functionality and - exec $objdir/$outputname directly. -*/ -EOF - cat >> $cwrappersource<<"EOF" -#include <stdio.h> -#include <stdlib.h> -#include <unistd.h> -#include <malloc.h> -#include <stdarg.h> -#include <assert.h> - -#if defined(PATH_MAX) -# define LT_PATHMAX PATH_MAX -#elif defined(MAXPATHLEN) -# define LT_PATHMAX MAXPATHLEN -#else -# define LT_PATHMAX 1024 -#endif - -#ifndef DIR_SEPARATOR -#define DIR_SEPARATOR '/' -#endif - -#if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \ - defined (__OS2__) -#define HAVE_DOS_BASED_FILE_SYSTEM -#ifndef DIR_SEPARATOR_2 -#define DIR_SEPARATOR_2 '\\' -#endif -#endif - -#ifndef DIR_SEPARATOR_2 -# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR) -#else /* DIR_SEPARATOR_2 */ -# define IS_DIR_SEPARATOR(ch) \ - (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2)) -#endif /* DIR_SEPARATOR_2 */ - -#define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type))) -#define XFREE(stale) do { \ - if (stale) { free ((void *) stale); stale = 0; } \ -} while (0) - -const char *program_name = NULL; - -void * xmalloc (size_t num); -char * xstrdup (const char *string); -char * basename (const char *name); -char * fnqualify(const char *path); -char * strendzap(char *str, const char *pat); -void lt_fatal (const char *message, ...); - -int -main (int argc, char *argv[]) -{ - char **newargz; - int i; - - program_name = (char *) xstrdup ((char *) basename (argv[0])); - newargz = XMALLOC(char *, argc+2); -EOF - - cat >> $cwrappersource <<EOF - newargz[0] = "$SHELL"; -EOF - - cat >> $cwrappersource <<"EOF" - newargz[1] = fnqualify(argv[0]); - /* we know the script has the same name, without the .exe */ - /* so make sure newargz[1] doesn't end in .exe */ - strendzap(newargz[1],".exe"); - for (i = 1; i < argc; i++) - newargz[i+1] = xstrdup(argv[i]); - newargz[argc+1] = NULL; -EOF - - cat >> $cwrappersource <<EOF - execv("$SHELL",newargz); -EOF - - cat >> $cwrappersource <<"EOF" -} - -void * -xmalloc (size_t num) -{ - void * p = (void *) malloc (num); - if (!p) - lt_fatal ("Memory exhausted"); - - return p; -} - -char * -xstrdup (const char *string) -{ - return string ? strcpy ((char *) xmalloc (strlen (string) + 1), string) : NULL -; -} - -char * -basename (const char *name) -{ - const char *base; - -#if defined (HAVE_DOS_BASED_FILE_SYSTEM) - /* Skip over the disk name in MSDOS pathnames. */ - if (isalpha (name[0]) && name[1] == ':') - name += 2; -#endif - - for (base = name; *name; name++) - if (IS_DIR_SEPARATOR (*name)) - base = name + 1; - return (char *) base; -} - -char * -fnqualify(const char *path) -{ - size_t size; - char *p; - char tmp[LT_PATHMAX + 1]; - - assert(path != NULL); - - /* Is it qualified already? */ -#if defined (HAVE_DOS_BASED_FILE_SYSTEM) - if (isalpha (path[0]) && path[1] == ':') - return xstrdup (path); -#endif - if (IS_DIR_SEPARATOR (path[0])) - return xstrdup (path); - - /* prepend the current directory */ - /* doesn't handle '~' */ - if (getcwd (tmp, LT_PATHMAX) == NULL) - lt_fatal ("getcwd failed"); - size = strlen(tmp) + 1 + strlen(path) + 1; /* +2 for '/' and '\0' */ - p = XMALLOC(char, size); - sprintf(p, "%s%c%s", tmp, DIR_SEPARATOR, path); - return p; -} - -char * -strendzap(char *str, const char *pat) -{ - size_t len, patlen; - - assert(str != NULL); - assert(pat != NULL); - - len = strlen(str); - patlen = strlen(pat); - - if (patlen <= len) - { - str += len - patlen; - if (strcmp(str, pat) == 0) - *str = '\0'; - } - return str; -} - -static void -lt_error_core (int exit_status, const char * mode, - const char * message, va_list ap) -{ - fprintf (stderr, "%s: %s: ", program_name, mode); - vfprintf (stderr, message, ap); - fprintf (stderr, ".\n"); - - if (exit_status >= 0) - exit (exit_status); -} - -void -lt_fatal (const char *message, ...) -{ - va_list ap; - va_start (ap, message); - lt_error_core (EXIT_FAILURE, "FATAL", message, ap); - va_end (ap); -} -EOF - # we should really use a build-platform specific compiler - # here, but OTOH, the wrappers (shell script and this C one) - # are only useful if you want to execute the "real" binary. - # Since the "real" binary is built for $host, then this - # wrapper might as well be built for $host, too. - $run $LTCC -s -o $cwrapper $cwrappersource - ;; - esac - $rm $output - trap "$rm $output; exit 1" 1 2 15 - - $echo > $output "\ -#! $SHELL - -# $output - temporary wrapper script for $objdir/$outputname -# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP -# -# The $output program cannot be directly executed until all the libtool -# libraries that it depends on are installed. -# -# This wrapper script should never be moved out of the build directory. -# If it is, it will not operate correctly. - -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -Xsed='${SED} -e 1s/^X//' -sed_quote_subst='$sed_quote_subst' - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -if test \"\${CDPATH+set}\" = set; then CDPATH=:; export CDPATH; fi - -relink_command=\"$relink_command\" - -# This environment variable determines our operation mode. -if test \"\$libtool_install_magic\" = \"$magic\"; then - # install mode needs the following variable: - notinst_deplibs='$notinst_deplibs' -else - # When we are sourced in execute mode, \$file and \$echo are already set. - if test \"\$libtool_execute_magic\" != \"$magic\"; then - echo=\"$qecho\" - file=\"\$0\" - # Make sure echo works. - if test \"X\$1\" = X--no-reexec; then - # Discard the --no-reexec flag, and continue. - shift - elif test \"X\`(\$echo '\t') 2>/dev/null\`\" = 'X\t'; then - # Yippee, \$echo works! - : - else - # Restart under the correct shell, and then maybe \$echo will work. - exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"} - fi - fi\ -" - $echo >> $output "\ - - # Find the directory that this script lives in. - thisdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*$%%'\` - test \"x\$thisdir\" = \"x\$file\" && thisdir=. - - # Follow symbolic links until we get to the real thisdir. - file=\`ls -ld \"\$file\" | ${SED} -n 's/.*-> //p'\` - while test -n \"\$file\"; do - destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\` - - # If there was a directory component, then change thisdir. - if test \"x\$destdir\" != \"x\$file\"; then - case \"\$destdir\" in - [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;; - *) thisdir=\"\$thisdir/\$destdir\" ;; - esac - fi - - file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\` - file=\`ls -ld \"\$thisdir/\$file\" | ${SED} -n 's/.*-> //p'\` - done - - # Try to get the absolute directory name. - absdir=\`cd \"\$thisdir\" && pwd\` - test -n \"\$absdir\" && thisdir=\"\$absdir\" -" - - if test "$fast_install" = yes; then - $echo >> $output "\ - program=lt-'$outputname'$exeext - progdir=\"\$thisdir/$objdir\" - - if test ! -f \"\$progdir/\$program\" || \\ - { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\ - test \"X\$file\" != \"X\$progdir/\$program\"; }; then - - file=\"\$\$-\$program\" - - if test ! -d \"\$progdir\"; then - $mkdir \"\$progdir\" - else - $rm \"\$progdir/\$file\" - fi" - - $echo >> $output "\ - - # relink executable if necessary - if test -n \"\$relink_command\"; then - if relink_command_output=\`eval \$relink_command 2>&1\`; then : - else - $echo \"\$relink_command_output\" >&2 - $rm \"\$progdir/\$file\" - exit 1 - fi - fi - - $mv \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null || - { $rm \"\$progdir/\$program\"; - $mv \"\$progdir/\$file\" \"\$progdir/\$program\"; } - $rm \"\$progdir/\$file\" - fi" - else - $echo >> $output "\ - program='$outputname' - progdir=\"\$thisdir/$objdir\" -" - fi - - $echo >> $output "\ - - if test -f \"\$progdir/\$program\"; then" - - # Export our shlibpath_var if we have one. - if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then - $echo >> $output "\ - # Add our own library path to $shlibpath_var - $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" - - # Some systems cannot cope with colon-terminated $shlibpath_var - # The second colon is a workaround for a bug in BeOS R4 sed - $shlibpath_var=\`\$echo \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\` - - export $shlibpath_var -" - fi - - # fixup the dll searchpath if we need to. - if test -n "$dllsearchpath"; then - $echo >> $output "\ - # Add the dll search path components to the executable PATH - PATH=$dllsearchpath:\$PATH -" - fi - - $echo >> $output "\ - if test \"\$libtool_execute_magic\" != \"$magic\"; then - # Run the actual program with our arguments. -" - case $host in - # Backslashes separate directories on plain windows - *-*-mingw | *-*-os2*) - $echo >> $output "\ - exec \$progdir\\\\\$program \${1+\"\$@\"} -" - ;; - - *) - # Need to set LD_LIBRARY_PATH, to the value already - # computed within libtool. - $echo >> $output "\ - LD_LIBRARY_PATH=\"$rpath\" exec \$progdir/\$program \${1+\"\$@\"} -" - ;; - esac - $echo >> $output "\ - \$echo \"\$0: cannot exec \$program \${1+\"\$@\"}\" - exit 1 - fi - else - # The program doesn't exist. - \$echo \"\$0: error: \$progdir/\$program does not exist\" 1>&2 - \$echo \"This script is just a wrapper for \$program.\" 1>&2 - $echo \"See the $PACKAGE documentation for more information.\" 1>&2 - exit 1 - fi -fi\ -" - chmod +x $output - fi - exit 0 - ;; - esac - - # See if we need to build an old-fashioned archive. - for oldlib in $oldlibs; do - - if test "$build_libtool_libs" = convenience; then - oldobjs="$libobjs_save" - addlibs="$convenience" - build_libtool_libs=no - else - if test "$build_libtool_libs" = module; then - oldobjs="$libobjs_save" - build_libtool_libs=no - else - oldobjs="$old_deplibs $non_pic_objects" - fi - addlibs="$old_convenience" - fi - - if test -n "$addlibs"; then - gentop="$output_objdir/${outputname}x" - $show "${rm}r $gentop" - $run ${rm}r "$gentop" - $show "$mkdir $gentop" - $run $mkdir "$gentop" - status=$? - if test "$status" -ne 0 && test ! -d "$gentop"; then - exit $status - fi - generated="$generated $gentop" - - # Add in members from convenience archives. - for xlib in $addlibs; do - # Extract the objects. - case $xlib in - [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; - *) xabs=`pwd`"/$xlib" ;; - esac - xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` - xdir="$gentop/$xlib" - - $show "${rm}r $xdir" - $run ${rm}r "$xdir" - $show "$mkdir $xdir" - $run $mkdir "$xdir" - status=$? - if test "$status" -ne 0 && test ! -d "$xdir"; then - exit $status - fi - # We will extract separately just the conflicting names and we will no - # longer touch any unique names. It is faster to leave these extract - # automatically by $AR in one run. - $show "(cd $xdir && $AR x $xabs)" - $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? - if ($AR t "$xabs" | sort | sort -uc >/dev/null 2>&1); then - : - else - $echo "$modename: warning: object name conflicts; renaming object files" 1>&2 - $echo "$modename: warning: to ensure that they will not overwrite" 1>&2 - $AR t "$xabs" | sort | uniq -cd | while read -r count name - do - i=1 - while test "$i" -le "$count" - do - # Put our $i before any first dot (extension) - # Never overwrite any file - name_to="$name" - while test "X$name_to" = "X$name" || test -f "$xdir/$name_to" - do - name_to=`$echo "X$name_to" | $Xsed -e "s/\([^.]*\)/\1-$i/"` - done - $show "(cd $xdir && $AR xN $i $xabs '$name' && $mv '$name' '$name_to')" - $run eval "(cd \$xdir && $AR xN $i \$xabs '$name' && $mv '$name' '$name_to')" || exit $? - i=`expr $i + 1` - done - done - fi - - oldobjs="$oldobjs "`find $xdir -name \*.${objext} -print -o -name \*.lo -print | $NL2SP` - done - fi - - compiler_flags="$compiler_flags $add_flags" - - # Do each command in the archive commands. - if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then - eval cmds=\"$old_archive_from_new_cmds\" - else - eval cmds=\"$old_archive_cmds\" - - if len=`expr "X$cmds" : ".*"` && - test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then - : - else - # the command line is too long to link in one step, link in parts - $echo "using piecewise archive linking..." - save_RANLIB=$RANLIB - RANLIB=: - objlist= - concat_cmds= - save_oldobjs=$oldobjs - # GNU ar 2.10+ was changed to match POSIX; thus no paths are - # encoded into archives. This makes 'ar r' malfunction in - # this piecewise linking case whenever conflicting object - # names appear in distinct ar calls; check, warn and compensate. - if (for obj in $save_oldobjs - do - $echo "X$obj" | $Xsed -e 's%^.*/%%' - done | sort | sort -uc >/dev/null 2>&1); then - : - else - $echo "$modename: warning: object name conflicts; overriding AR_FLAGS to 'cq'" 1>&2 - $echo "$modename: warning: to ensure that POSIX-compatible ar will work" 1>&2 - AR_FLAGS=cq - fi - # Is there a better way of finding the last object in the list? - for obj in $save_oldobjs - do - last_oldobj=$obj - done - for obj in $save_oldobjs - do - oldobjs="$objlist $obj" - objlist="$objlist $obj" - eval test_cmds=\"$old_archive_cmds\" - if len=`expr "X$test_cmds" : ".*"` && - test "$len" -le "$max_cmd_len"; then - : - else - # the above command should be used before it gets too long - oldobjs=$objlist - if test "$obj" = "$last_oldobj" ; then - RANLIB=$save_RANLIB - fi - test -z "$concat_cmds" || concat_cmds=$concat_cmds~ - eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\" - objlist= - fi - done - RANLIB=$save_RANLIB - oldobjs=$objlist - if test "X$oldobjs" = "X" ; then - eval cmds=\"\$concat_cmds\" - else - eval cmds=\"\$concat_cmds~$old_archive_cmds\" - fi - fi - fi - save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - done - - if test -n "$generated"; then - $show "${rm}r$generated" - $run ${rm}r$generated - fi - - # Now create the libtool archive. - case $output in - *.la) - old_library= - test "$build_old_libs" = yes && old_library="$libname.$libext" - $show "creating $output" - - # Preserve any variables that may affect compiler behavior - for var in $variables_saved_for_relink; do - if eval test -z \"\${$var+set}\"; then - relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command" - elif eval var_value=\$$var; test -z "$var_value"; then - relink_command="$var=; export $var; $relink_command" - else - var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"` - relink_command="$var=\"$var_value\"; export $var; $relink_command" - fi - done - # Quote the link command for shipping. - relink_command="(cd `pwd`; $SHELL $0 --mode=relink $libtool_args @inst_prefix_dir@)" - relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` - if test "$hardcode_automatic" = yes ; then - relink_command= - fi - # Only create the output if not a dry run. - if test -z "$run"; then - for installed in no yes; do - if test "$installed" = yes; then - if test -z "$install_libdir"; then - break - fi - output="$output_objdir/$outputname"i - # Replace all uninstalled libtool libraries with the installed ones - newdependency_libs= - for deplib in $dependency_libs; do - case $deplib in - *.la) - name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'` - eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` - if test -z "$libdir"; then - $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2 - exit 1 - fi - newdependency_libs="$newdependency_libs $libdir/$name" - ;; - *) newdependency_libs="$newdependency_libs $deplib" ;; - esac - done - dependency_libs="$newdependency_libs" - newdlfiles= - for lib in $dlfiles; do - name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` - eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` - if test -z "$libdir"; then - $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 - exit 1 - fi - newdlfiles="$newdlfiles $libdir/$name" - done - dlfiles="$newdlfiles" - newdlprefiles= - for lib in $dlprefiles; do - name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` - eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` - if test -z "$libdir"; then - $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 - exit 1 - fi - newdlprefiles="$newdlprefiles $libdir/$name" - done - dlprefiles="$newdlprefiles" - fi - $rm $output - # place dlname in correct position for cygwin - tdlname=$dlname - case $host,$output,$installed,$module,$dlname in - *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;; - esac - $echo > $output "\ -# $outputname - a libtool library file -# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP -# -# Please DO NOT delete this file! -# It is necessary for linking the library. - -# The name that we can dlopen(3). -dlname='$tdlname' - -# Names of this library. -library_names='$library_names' - -# The name of the static archive. -old_library='$old_library' - -# Libraries that this one depends upon. -dependency_libs='$dependency_libs' - -# Version information for $libname. -current=$current -age=$age -revision=$revision - -# Is this an already installed library? -installed=$installed - -# Should we warn about portability when linking against -modules? -shouldnotlink=$module - -# Files to dlopen/dlpreopen -dlopen='$dlfiles' -dlpreopen='$dlprefiles' - -# Directory that this library needs to be installed in: -libdir='$install_libdir'" - if test "$installed" = no && test "$need_relink" = yes && test "$fast_install" = no; then - $echo >> $output "\ -relink_command=\"$relink_command\"" - fi - done - fi - - # Do a symbolic link so that the libtool archive can be found in - # LD_LIBRARY_PATH before the program is installed. - $show "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)" - $run eval '(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)' || exit $? - ;; - esac - exit 0 - ;; - - # libtool install mode - install) - modename="$modename: install" - - # There may be an optional sh(1) argument at the beginning of - # install_prog (especially on Windows NT). - if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh || - # Allow the use of GNU shtool's install command. - $echo "X$nonopt" | $Xsed | grep shtool > /dev/null; then - # Aesthetically quote it. - arg=`$echo "X$nonopt" | $Xsed -e "$sed_quote_subst"` - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) - arg="\"$arg\"" - ;; - esac - install_prog="$arg " - arg="$1" - shift - else - install_prog= - arg="$nonopt" - fi - - # The real first argument should be the name of the installation program. - # Aesthetically quote it. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) - arg="\"$arg\"" - ;; - esac - install_prog="$install_prog$arg" - - # We need to accept at least all the BSD install flags. - dest= - files= - opts= - prev= - install_type= - isdir=no - stripme= - for arg - do - if test -n "$dest"; then - files="$files $dest" - dest="$arg" - continue - fi - - case $arg in - -d) isdir=yes ;; - -f) prev="-f" ;; - -g) prev="-g" ;; - -m) prev="-m" ;; - -o) prev="-o" ;; - -s) - stripme=" -s" - continue - ;; - -*) ;; - - *) - # If the previous option needed an argument, then skip it. - if test -n "$prev"; then - prev= - else - dest="$arg" - continue - fi - ;; - esac - - # Aesthetically quote the argument. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) - arg="\"$arg\"" - ;; - esac - install_prog="$install_prog $arg" - done - - if test -z "$install_prog"; then - $echo "$modename: you must specify an install program" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - if test -n "$prev"; then - $echo "$modename: the \`$prev' option requires an argument" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - if test -z "$files"; then - if test -z "$dest"; then - $echo "$modename: no file or destination specified" 1>&2 - else - $echo "$modename: you must specify a destination" 1>&2 - fi - $echo "$help" 1>&2 - exit 1 - fi - - # Strip any trailing slash from the destination. - dest=`$echo "X$dest" | $Xsed -e 's%/$%%'` - - # Check to see that the destination is a directory. - test -d "$dest" && isdir=yes - if test "$isdir" = yes; then - destdir="$dest" - destname= - else - destdir=`$echo "X$dest" | $Xsed -e 's%/[^/]*$%%'` - test "X$destdir" = "X$dest" && destdir=. - destname=`$echo "X$dest" | $Xsed -e 's%^.*/%%'` - - # Not a directory, so check to see that there is only one file specified. - set dummy $files - if test "$#" -gt 2; then - $echo "$modename: \`$dest' is not a directory" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - fi - case $destdir in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - for file in $files; do - case $file in - *.lo) ;; - *) - $echo "$modename: \`$destdir' must be an absolute directory name" 1>&2 - $echo "$help" 1>&2 - exit 1 - ;; - esac - done - ;; - esac - - # This variable tells wrapper scripts just to set variables rather - # than running their programs. - libtool_install_magic="$magic" - - staticlibs= - future_libdirs= - current_libdirs= - for file in $files; do - - # Do each installation. - case $file in - *.$libext) - # Do the static libraries later. - staticlibs="$staticlibs $file" - ;; - - *.la) - # Check to see that this really is a libtool archive. - if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : - else - $echo "$modename: \`$file' is not a valid libtool archive" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - library_names= - old_library= - relink_command= - # If there is no directory component, then add one. - case $file in - */* | *\\*) . $file ;; - *) . ./$file ;; - esac - - # Add the libdir to current_libdirs if it is the destination. - if test "X$destdir" = "X$libdir"; then - case "$current_libdirs " in - *" $libdir "*) ;; - *) current_libdirs="$current_libdirs $libdir" ;; - esac - else - # Note the libdir as a future libdir. - case "$future_libdirs " in - *" $libdir "*) ;; - *) future_libdirs="$future_libdirs $libdir" ;; - esac - fi - - dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`/ - test "X$dir" = "X$file/" && dir= - dir="$dir$objdir" - - if test -n "$relink_command"; then - # Determine the prefix the user has applied to our future dir. - inst_prefix_dir=`$echo "$destdir" | $SED "s%$libdir\$%%"` - - # Don't allow the user to place us outside of our expected - # location b/c this prevents finding dependent libraries that - # are installed to the same prefix. - # At present, this check doesn't affect windows .dll's that - # are installed into $libdir/../bin (currently, that works fine) - # but it's something to keep an eye on. - if test "$inst_prefix_dir" = "$destdir"; then - $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2 - exit 1 - fi - - if test -n "$inst_prefix_dir"; then - # Stick the inst_prefix_dir data into the link command. - relink_command=`$echo "$relink_command" | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"` - else - relink_command=`$echo "$relink_command" | $SED "s%@inst_prefix_dir@%%"` - fi - - $echo "$modename: warning: relinking \`$file'" 1>&2 - $show "$relink_command" - if $run eval "$relink_command"; then : - else - $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2 - exit 1 - fi - fi - - # See the names of the shared library. - set dummy $library_names - if test -n "$2"; then - realname="$2" - shift - shift - - srcname="$realname" - test -n "$relink_command" && srcname="$realname"T - - # Install the shared library and build the symlinks. - $show "$install_prog $dir/$srcname $destdir/$realname" - $run eval "$install_prog $dir/$srcname $destdir/$realname" || exit $? - if test -n "$stripme" && test -n "$striplib"; then - $show "$striplib $destdir/$realname" - $run eval "$striplib $destdir/$realname" || exit $? - fi - - if test "$#" -gt 0; then - # Delete the old symlinks, and create new ones. - for linkname - do - if test "$linkname" != "$realname"; then - $show "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)" - $run eval "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)" - fi - done - fi - - # Do each command in the postinstall commands. - lib="$destdir/$realname" - eval cmds=\"$postinstall_cmds\" - save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - fi - - # Install the pseudo-library for information purposes. - name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - instname="$dir/$name"i - $show "$install_prog $instname $destdir/$name" - $run eval "$install_prog $instname $destdir/$name" || exit $? - - # Maybe install the static library, too. - test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library" - ;; - - *.lo) - # Install (i.e. copy) a libtool object. - - # Figure out destination file name, if it wasn't already specified. - if test -n "$destname"; then - destfile="$destdir/$destname" - else - destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - destfile="$destdir/$destfile" - fi - - # Deduce the name of the destination old-style object file. - case $destfile in - *.lo) - staticdest=`$echo "X$destfile" | $Xsed -e "$lo2o"` - ;; - *.$objext) - staticdest="$destfile" - destfile= - ;; - *) - $echo "$modename: cannot copy a libtool object to \`$destfile'" 1>&2 - $echo "$help" 1>&2 - exit 1 - ;; - esac - - # Install the libtool object if requested. - if test -n "$destfile"; then - $show "$install_prog $file $destfile" - $run eval "$install_prog $file $destfile" || exit $? - fi - - # Install the old object if enabled. - if test "$build_old_libs" = yes; then - # Deduce the name of the old-style object file. - staticobj=`$echo "X$file" | $Xsed -e "$lo2o"` - - $show "$install_prog $staticobj $staticdest" - $run eval "$install_prog \$staticobj \$staticdest" || exit $? - fi - exit 0 - ;; - - *) - # Figure out destination file name, if it wasn't already specified. - if test -n "$destname"; then - destfile="$destdir/$destname" - else - destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - destfile="$destdir/$destfile" - fi - - # If the file is missing, and there is a .exe on the end, strip it - # because it is most likely a libtool script we actually want to - # install - stripped_ext="" - case $file in - *.exe) - if test ! -f "$file"; then - file=`$echo $file|${SED} 's,.exe$,,'` - stripped_ext=".exe" - fi - ;; - esac - - # Do a test to see if this is really a libtool program. - case $host in - *cygwin*|*mingw*) - wrapper=`$echo $file | ${SED} -e 's,.exe$,,'` - ;; - *) - wrapper=$file - ;; - esac - if (${SED} -e '4q' $wrapper | grep "^# Generated by .*$PACKAGE")>/dev/null 2>&1; then - notinst_deplibs= - relink_command= - - # To insure that "foo" is sourced, and not "foo.exe", - # finese the cygwin/MSYS system by explicitly sourcing "foo." - # which disallows the automatic-append-.exe behavior. - case $build in - *cygwin* | *mingw*) wrapperdot=${wrapper}. ;; - *) wrapperdot=${wrapper} ;; - esac - # If there is no directory component, then add one. - case $file in - */* | *\\*) . ${wrapperdot} ;; - *) . ./${wrapperdot} ;; - esac - - # Check the variables that should have been set. - if test -z "$notinst_deplibs"; then - $echo "$modename: invalid libtool wrapper script \`$wrapper'" 1>&2 - exit 1 - fi - - finalize=yes - for lib in $notinst_deplibs; do - # Check to see that each library is installed. - libdir= - if test -f "$lib"; then - # If there is no directory component, then add one. - case $lib in - */* | *\\*) . $lib ;; - *) . ./$lib ;; - esac - fi - libfile="$libdir/"`$echo "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test - if test -n "$libdir" && test ! -f "$libfile"; then - $echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2 - finalize=no - fi - done - - relink_command= - # To insure that "foo" is sourced, and not "foo.exe", - # finese the cygwin/MSYS system by explicitly sourcing "foo." - # which disallows the automatic-append-.exe behavior. - case $build in - *cygwin* | *mingw*) wrapperdot=${wrapper}. ;; - *) wrapperdot=${wrapper} ;; - esac - # If there is no directory component, then add one. - case $file in - */* | *\\*) . ${wrapperdot} ;; - *) . ./${wrapperdot} ;; - esac - - outputname= - if test "$fast_install" = no && test -n "$relink_command"; then - if test "$finalize" = yes && test -z "$run"; then - tmpdir="/tmp" - test -n "$TMPDIR" && tmpdir="$TMPDIR" - tmpdir="$tmpdir/libtool-$$" - if $mkdir "$tmpdir" && chmod 700 "$tmpdir"; then : - else - $echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2 - continue - fi - file=`$echo "X$file$stripped_ext" | $Xsed -e 's%^.*/%%'` - outputname="$tmpdir/$file" - # Replace the output file specification. - relink_command=`$echo "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'` - - $show "$relink_command" - if $run eval "$relink_command"; then : - else - $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2 - ${rm}r "$tmpdir" - continue - fi - file="$outputname" - else - $echo "$modename: warning: cannot relink \`$file'" 1>&2 - fi - else - # Install the binary that we compiled earlier. - file=`$echo "X$file$stripped_ext" | $Xsed -e "s%\([^/]*\)$%$objdir/\1%"` - fi - fi - - # remove .exe since cygwin /usr/bin/install will append another - # one anyways - case $install_prog,$host in - */usr/bin/install*,*cygwin*) - case $file:$destfile in - *.exe:*.exe) - # this is ok - ;; - *.exe:*) - destfile=$destfile.exe - ;; - *:*.exe) - destfile=`$echo $destfile | ${SED} -e 's,.exe$,,'` - ;; - esac - ;; - esac - $show "$install_prog$stripme $file $destfile" - $run eval "$install_prog\$stripme \$file \$destfile" || exit $? - test -n "$outputname" && ${rm}r "$tmpdir" - ;; - esac - done - - for file in $staticlibs; do - name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - - # Set up the ranlib parameters. - oldlib="$destdir/$name" - - $show "$install_prog $file $oldlib" - $run eval "$install_prog \$file \$oldlib" || exit $? - - if test -n "$stripme" && test -n "$striplib"; then - $show "$old_striplib $oldlib" - $run eval "$old_striplib $oldlib" || exit $? - fi - - # Do each command in the postinstall commands. - eval cmds=\"$old_postinstall_cmds\" - save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - done - - if test -n "$future_libdirs"; then - $echo "$modename: warning: remember to run \`$progname --finish$future_libdirs'" 1>&2 - fi - - if test -n "$current_libdirs"; then - # Maybe just do a dry run. - test -n "$run" && current_libdirs=" -n$current_libdirs" - exec_cmd='$SHELL $0 --finish$current_libdirs' - else - exit 0 - fi - ;; - - # libtool finish mode - finish) - modename="$modename: finish" - libdirs="$nonopt" - admincmds= - - if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then - for dir - do - libdirs="$libdirs $dir" - done - - for libdir in $libdirs; do - if test -n "$finish_cmds"; then - # Do each command in the finish commands. - eval cmds=\"$finish_cmds\" - save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || admincmds="$admincmds - $cmd" - done - IFS="$save_ifs" - fi - if test -n "$finish_eval"; then - # Do the single finish_eval. - eval cmds=\"$finish_eval\" - $run eval "$cmds" || admincmds="$admincmds - $cmds" - fi - done - fi - - # Exit here if they wanted silent mode. - exit 0 - - $echo "----------------------------------------------------------------------" - $echo "Libraries have been installed in:" - for libdir in $libdirs; do - $echo " $libdir" - done - $echo - $echo "If you ever happen to want to link against installed libraries" - $echo "in a given directory, LIBDIR, you must either use libtool, and" - $echo "specify the full pathname of the library, or use the \`-LLIBDIR'" - $echo "flag during linking and do at least one of the following:" - if test -n "$shlibpath_var"; then - $echo " - add LIBDIR to the \`$shlibpath_var' environment variable" - $echo " during execution" - fi - if test -n "$runpath_var"; then - $echo " - add LIBDIR to the \`$runpath_var' environment variable" - $echo " during linking" - fi - if test -n "$hardcode_libdir_flag_spec"; then - libdir=LIBDIR - eval flag=\"$hardcode_libdir_flag_spec\" - - $echo " - use the \`$flag' linker flag" - fi - if test -n "$admincmds"; then - $echo " - have your system administrator run these commands:$admincmds" - fi - if test -f /etc/ld.so.conf; then - $echo " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'" - fi - $echo - $echo "See any operating system documentation about shared libraries for" - $echo "more information, such as the ld(1) and ld.so(8) manual pages." - $echo "----------------------------------------------------------------------" - exit 0 - ;; - - # libtool execute mode - execute) - modename="$modename: execute" - - # The first argument is the command name. - cmd="$nonopt" - if test -z "$cmd"; then - $echo "$modename: you must specify a COMMAND" 1>&2 - $echo "$help" - exit 1 - fi - - # Handle -dlopen flags immediately. - for file in $execute_dlfiles; do - if test ! -f "$file"; then - $echo "$modename: \`$file' is not a file" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - dir= - case $file in - *.la) - # Check to see that this really is a libtool archive. - if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : - else - $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - # Read the libtool library. - dlname= - library_names= - - # If there is no directory component, then add one. - case $file in - */* | *\\*) . $file ;; - *) . ./$file ;; - esac - - # Skip this library if it cannot be dlopened. - if test -z "$dlname"; then - # Warn if it was a shared library. - test -n "$library_names" && $echo "$modename: warning: \`$file' was not linked with \`-export-dynamic'" - continue - fi - - dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` - test "X$dir" = "X$file" && dir=. - - if test -f "$dir/$objdir/$dlname"; then - dir="$dir/$objdir" - else - $echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2 - exit 1 - fi - ;; - - *.lo) - # Just add the directory containing the .lo file. - dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` - test "X$dir" = "X$file" && dir=. - ;; - - *) - $echo "$modename: warning \`-dlopen' is ignored for non-libtool libraries and objects" 1>&2 - continue - ;; - esac - - # Get the absolute pathname. - absdir=`cd "$dir" && pwd` - test -n "$absdir" && dir="$absdir" - - # Now add the directory to shlibpath_var. - if eval "test -z \"\$$shlibpath_var\""; then - eval "$shlibpath_var=\"\$dir\"" - else - eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\"" - fi - done - - # This variable tells wrapper scripts just to set shlibpath_var - # rather than running their programs. - libtool_execute_magic="$magic" - - # Check if any of the arguments is a wrapper script. - args= - for file - do - case $file in - -*) ;; - *) - # Do a test to see if this is really a libtool program. - if (${SED} -e '4q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - # If there is no directory component, then add one. - case $file in - */* | *\\*) . $file ;; - *) . ./$file ;; - esac - - # Transform arg to wrapped name. - file="$progdir/$program" - fi - ;; - esac - # Quote arguments (to preserve shell metacharacters). - file=`$echo "X$file" | $Xsed -e "$sed_quote_subst"` - args="$args \"$file\"" - done - - if test -z "$run"; then - if test -n "$shlibpath_var"; then - # Export the shlibpath_var. - eval "export $shlibpath_var" - fi - - # Restore saved environment variables - if test "${save_LC_ALL+set}" = set; then - LC_ALL="$save_LC_ALL"; export LC_ALL - fi - if test "${save_LANG+set}" = set; then - LANG="$save_LANG"; export LANG - fi - - # Now prepare to actually exec the command. - exec_cmd="\$cmd$args" - else - # Display what would be done. - if test -n "$shlibpath_var"; then - eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\"" - $echo "export $shlibpath_var" - fi - $echo "$cmd$args" - exit 0 - fi - ;; - - # libtool clean and uninstall mode - clean | uninstall) - modename="$modename: $mode" - rm="$nonopt" - files= - rmforce= - exit_status=0 - - # This variable tells wrapper scripts just to set variables rather - # than running their programs. - libtool_install_magic="$magic" - - for arg - do - case $arg in - -f) rm="$rm $arg"; rmforce=yes ;; - -*) rm="$rm $arg" ;; - *) files="$files $arg" ;; - esac - done - - if test -z "$rm"; then - $echo "$modename: you must specify an RM program" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - rmdirs= - - origobjdir="$objdir" - for file in $files; do - dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` - if test "X$dir" = "X$file"; then - dir=. - objdir="$origobjdir" - else - objdir="$dir/$origobjdir" - fi - name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - test "$mode" = uninstall && objdir="$dir" - - # Remember objdir for removal later, being careful to avoid duplicates - if test "$mode" = clean; then - case " $rmdirs " in - *" $objdir "*) ;; - *) rmdirs="$rmdirs $objdir" ;; - esac - fi - - # Don't error if the file doesn't exist and rm -f was used. - if (test -L "$file") >/dev/null 2>&1 \ - || (test -h "$file") >/dev/null 2>&1 \ - || test -f "$file"; then - : - elif test -d "$file"; then - exit_status=1 - continue - elif test "$rmforce" = yes; then - continue - fi - - rmfiles="$file" - - case $name in - *.la) - # Possibly a libtool archive, so verify it. - if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - . $dir/$name - - # Delete the libtool libraries and symlinks. - for n in $library_names; do - rmfiles="$rmfiles $objdir/$n" - done - test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library" - test "$mode" = clean && rmfiles="$rmfiles $objdir/$name $objdir/${name}i" - - if test "$mode" = uninstall; then - if test -n "$library_names"; then - # Do each command in the postuninstall commands. - eval cmds=\"$postuninstall_cmds\" - save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" - if test "$?" -ne 0 && test "$rmforce" != yes; then - exit_status=1 - fi - done - IFS="$save_ifs" - fi - - if test -n "$old_library"; then - # Do each command in the old_postuninstall commands. - eval cmds=\"$old_postuninstall_cmds\" - save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" - if test "$?" -ne 0 && test "$rmforce" != yes; then - exit_status=1 - fi - done - IFS="$save_ifs" - fi - # FIXME: should reinstall the best remaining shared library. - fi - fi - ;; - - *.lo) - # Possibly a libtool object, so verify it. - if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - - # Read the .lo file - . $dir/$name - - # Add PIC object to the list of files to remove. - if test -n "$pic_object" \ - && test "$pic_object" != none; then - rmfiles="$rmfiles $dir/$pic_object" - fi - - # Add non-PIC object to the list of files to remove. - if test -n "$non_pic_object" \ - && test "$non_pic_object" != none; then - rmfiles="$rmfiles $dir/$non_pic_object" - fi - fi - ;; - - *) - if test "$mode" = clean ; then - noexename=$name - case $file in - *.exe) - file=`$echo $file|${SED} 's,.exe$,,'` - noexename=`$echo $name|${SED} 's,.exe$,,'` - # $file with .exe has already been added to rmfiles, - # add $file without .exe - rmfiles="$rmfiles $file" - ;; - esac - # Do a test to see if this is a libtool program. - if (${SED} -e '4q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - relink_command= - . $dir/$noexename - - # note $name still contains .exe if it was in $file originally - # as does the version of $file that was added into $rmfiles - rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}" - if test "$fast_install" = yes && test -n "$relink_command"; then - rmfiles="$rmfiles $objdir/lt-$name" - fi - if test "X$noexename" != "X$name" ; then - rmfiles="$rmfiles $objdir/lt-${noexename}.c" - fi - fi - fi - ;; - esac - $show "$rm $rmfiles" - $run $rm $rmfiles || exit_status=1 - done - objdir="$origobjdir" - - # Try to remove the ${objdir}s in the directories where we deleted files - for dir in $rmdirs; do - if test -d "$dir"; then - $show "rmdir $dir" - $run rmdir $dir >/dev/null 2>&1 - fi - done - - exit $exit_status - ;; - - "") - $echo "$modename: you must specify a MODE" 1>&2 - $echo "$generic_help" 1>&2 - exit 1 - ;; - esac - - if test -z "$exec_cmd"; then - $echo "$modename: invalid operation mode \`$mode'" 1>&2 - $echo "$generic_help" 1>&2 - exit 1 - fi -fi # test -z "$show_help" - -if test -n "$exec_cmd"; then - eval exec $exec_cmd - exit 1 -fi - -# We need to display help for each of the modes. -case $mode in -"") $echo \ -"Usage: $modename [OPTION]... [MODE-ARG]... - -Provide generalized library-building support services. - - --config show all configuration variables - --debug enable verbose shell tracing --n, --dry-run display commands without modifying any files - --features display basic configuration information and exit - --finish same as \`--mode=finish' - --help display this help message and exit - --mode=MODE use operation mode MODE [default=inferred from MODE-ARGS] - --quiet same as \`--silent' - --silent don't print informational messages - --tag=TAG use configuration variables from tag TAG - --version print version information - -MODE must be one of the following: - - clean remove files from the build directory - compile compile a source file into a libtool object - execute automatically set library path, then run a program - finish complete the installation of libtool libraries - install install libraries or executables - link create a library or an executable - uninstall remove libraries from an installed directory - -MODE-ARGS vary depending on the MODE. Try \`$modename --help --mode=MODE' for -a more detailed description of MODE. - -Report bugs to <bug-libtool@gnu.org>." - exit 0 - ;; - -clean) - $echo \ -"Usage: $modename [OPTION]... --mode=clean RM [RM-OPTION]... FILE... - -Remove files from the build directory. - -RM is the name of the program to use to delete files associated with each FILE -(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed -to RM. - -If FILE is a libtool library, object or program, all the files associated -with it are deleted. Otherwise, only FILE itself is deleted using RM." - ;; - -compile) - $echo \ -"Usage: $modename [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE - -Compile a source file into a libtool library object. - -This mode accepts the following additional options: - - -o OUTPUT-FILE set the output file name to OUTPUT-FILE - -prefer-pic try to building PIC objects only - -prefer-non-pic try to building non-PIC objects only - -static always build a \`.o' file suitable for static linking - -COMPILE-COMMAND is a command to be used in creating a \`standard' object file -from the given SOURCEFILE. - -The output file name is determined by removing the directory component from -SOURCEFILE, then substituting the C source code suffix \`.c' with the -library object suffix, \`.lo'." - ;; - -execute) - $echo \ -"Usage: $modename [OPTION]... --mode=execute COMMAND [ARGS]... - -Automatically set library path, then run a program. - -This mode accepts the following additional options: - - -dlopen FILE add the directory containing FILE to the library path - -This mode sets the library path environment variable according to \`-dlopen' -flags. - -If any of the ARGS are libtool executable wrappers, then they are translated -into their corresponding uninstalled binary, and any of their required library -directories are added to the library path. - -Then, COMMAND is executed, with ARGS as arguments." - ;; - -finish) - $echo \ -"Usage: $modename [OPTION]... --mode=finish [LIBDIR]... - -Complete the installation of libtool libraries. - -Each LIBDIR is a directory that contains libtool libraries. - -The commands that this mode executes may require superuser privileges. Use -the \`--dry-run' option if you just want to see what would be executed." - ;; - -install) - $echo \ -"Usage: $modename [OPTION]... --mode=install INSTALL-COMMAND... - -Install executables or libraries. - -INSTALL-COMMAND is the installation command. The first component should be -either the \`install' or \`cp' program. - -The rest of the components are interpreted as arguments to that command (only -BSD-compatible install options are recognized)." - ;; - -link) - $echo \ -"Usage: $modename [OPTION]... --mode=link LINK-COMMAND... - -Link object files or libraries together to form another library, or to -create an executable program. - -LINK-COMMAND is a command using the C compiler that you would use to create -a program from several object files. - -The following components of LINK-COMMAND are treated specially: - - -all-static do not do any dynamic linking at all - -avoid-version do not add a version suffix if possible - -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime - -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols - -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) - -export-symbols SYMFILE - try to export only the symbols listed in SYMFILE - -export-symbols-regex REGEX - try to export only the symbols matching REGEX - -LLIBDIR search LIBDIR for required installed libraries - -lNAME OUTPUT-FILE requires the installed library libNAME - -module build a library that can dlopened - -no-fast-install disable the fast-install mode - -no-install link a not-installable executable - -no-undefined declare that a library does not refer to external symbols - -o OUTPUT-FILE create OUTPUT-FILE from the specified objects - -objectlist FILE Use a list of object files found in FILE to specify objects - -release RELEASE specify package release information - -rpath LIBDIR the created library will eventually be installed in LIBDIR - -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries - -static do not do any dynamic linking of libtool libraries - -version-info CURRENT[:REVISION[:AGE]] - specify library version info [each variable defaults to 0] - -All other options (arguments beginning with \`-') are ignored. - -Every other argument is treated as a filename. Files ending in \`.la' are -treated as uninstalled libtool libraries, other files are standard or library -object files. - -If the OUTPUT-FILE ends in \`.la', then a libtool library is created, -only library objects (\`.lo' files) may be specified, and \`-rpath' is -required, except when creating a convenience library. - -If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created -using \`ar' and \`ranlib', or on Windows using \`lib'. - -If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file -is created, otherwise an executable program is created." - ;; - -uninstall) - $echo \ -"Usage: $modename [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... - -Remove libraries from an installation directory. - -RM is the name of the program to use to delete files associated with each FILE -(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed -to RM. - -If FILE is a libtool library, all the files associated with it are deleted. -Otherwise, only FILE itself is deleted using RM." - ;; - -*) - $echo "$modename: invalid operation mode \`$mode'" 1>&2 - $echo "$help" 1>&2 - exit 1 - ;; -esac - -$echo -$echo "Try \`$modename --help' for more information about other modes." - -exit 0 - -# The TAGs below are defined such that we never get into a situation -# in which we disable both kinds of libraries. Given conflicting -# choices, we go for a static library, that is the most portable, -# since we can't tell whether shared libraries were disabled because -# the user asked for that or because the platform doesn't support -# them. This is particularly important on AIX, because we don't -# support having both static and shared libraries enabled at the same -# time on that platform, so we default to a shared-only configuration. -# If a disable-shared tag is given, we'll fallback to a static-only -# configuration. But we'll never go from static-only to shared-only. - -# ### BEGIN LIBTOOL TAG CONFIG: disable-shared -build_libtool_libs=no -build_old_libs=yes -# ### END LIBTOOL TAG CONFIG: disable-shared - -# ### BEGIN LIBTOOL TAG CONFIG: disable-static -build_old_libs=`case $build_libtool_libs in yes) $echo no;; *) $echo yes;; esac` -# ### END LIBTOOL TAG CONFIG: disable-static - -# Local Variables: -# mode:shell-script -# sh-indentation:2 -# End: diff --git a/portland/dapi/kde/admin/missing b/portland/dapi/kde/admin/missing deleted file mode 100755 index 894e786..0000000 --- a/portland/dapi/kde/admin/missing +++ /dev/null @@ -1,360 +0,0 @@ -#! /bin/sh -# Common stub for a few missing GNU programs while installing. - -scriptversion=2005-06-08.21 - -# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005 -# Free Software Foundation, Inc. -# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -# 02110-1301, USA. - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -if test $# -eq 0; then - echo 1>&2 "Try \`$0 --help' for more information" - exit 1 -fi - -run=: - -# In the cases where this matters, `missing' is being run in the -# srcdir already. -if test -f configure.ac; then - configure_ac=configure.ac -else - configure_ac=configure.in -fi - -msg="missing on your system" - -case "$1" in ---run) - # Try to run requested program, and just exit if it succeeds. - run= - shift - "$@" && exit 0 - # Exit code 63 means version mismatch. This often happens - # when the user try to use an ancient version of a tool on - # a file that requires a minimum version. In this case we - # we should proceed has if the program had been absent, or - # if --run hadn't been passed. - if test $? = 63; then - run=: - msg="probably too old" - fi - ;; - - -h|--h|--he|--hel|--help) - echo "\ -$0 [OPTION]... PROGRAM [ARGUMENT]... - -Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an -error status if there is no known handling for PROGRAM. - -Options: - -h, --help display this help and exit - -v, --version output version information and exit - --run try to run the given command, and emulate it if it fails - -Supported PROGRAM values: - aclocal touch file \`aclocal.m4' - autoconf touch file \`configure' - autoheader touch file \`config.h.in' - automake touch all \`Makefile.in' files - bison create \`y.tab.[ch]', if possible, from existing .[ch] - flex create \`lex.yy.c', if possible, from existing .c - help2man touch the output file - lex create \`lex.yy.c', if possible, from existing .c - makeinfo touch the output file - tar try tar, gnutar, gtar, then tar without non-portable flags - yacc create \`y.tab.[ch]', if possible, from existing .[ch] - -Send bug reports to <bug-automake@gnu.org>." - exit $? - ;; - - -v|--v|--ve|--ver|--vers|--versi|--versio|--version) - echo "missing $scriptversion (GNU Automake)" - exit $? - ;; - - -*) - echo 1>&2 "$0: Unknown \`$1' option" - echo 1>&2 "Try \`$0 --help' for more information" - exit 1 - ;; - -esac - -# Now exit if we have it, but it failed. Also exit now if we -# don't have it and --version was passed (most likely to detect -# the program). -case "$1" in - lex|yacc) - # Not GNU programs, they don't have --version. - ;; - - tar) - if test -n "$run"; then - echo 1>&2 "ERROR: \`tar' requires --run" - exit 1 - elif test "x$2" = "x--version" || test "x$2" = "x--help"; then - exit 1 - fi - ;; - - *) - if test -z "$run" && ($1 --version) > /dev/null 2>&1; then - # We have it, but it failed. - exit 1 - elif test "x$2" = "x--version" || test "x$2" = "x--help"; then - # Could not run --version or --help. This is probably someone - # running `$TOOL --version' or `$TOOL --help' to check whether - # $TOOL exists and not knowing $TOOL uses missing. - exit 1 - fi - ;; -esac - -# If it does not exist, or fails to run (possibly an outdated version), -# try to emulate it. -case "$1" in - aclocal*) - echo 1>&2 "\ -WARNING: \`$1' is $msg. You should only need it if - you modified \`acinclude.m4' or \`${configure_ac}'. You might want - to install the \`Automake' and \`Perl' packages. Grab them from - any GNU archive site." - touch aclocal.m4 - ;; - - autoconf) - echo 1>&2 "\ -WARNING: \`$1' is $msg. You should only need it if - you modified \`${configure_ac}'. You might want to install the - \`Autoconf' and \`GNU m4' packages. Grab them from any GNU - archive site." - touch configure - ;; - - autoheader) - echo 1>&2 "\ -WARNING: \`$1' is $msg. You should only need it if - you modified \`acconfig.h' or \`${configure_ac}'. You might want - to install the \`Autoconf' and \`GNU m4' packages. Grab them - from any GNU archive site." - files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}` - test -z "$files" && files="config.h" - touch_files= - for f in $files; do - case "$f" in - *:*) touch_files="$touch_files "`echo "$f" | - sed -e 's/^[^:]*://' -e 's/:.*//'`;; - *) touch_files="$touch_files $f.in";; - esac - done - touch $touch_files - ;; - - automake*) - echo 1>&2 "\ -WARNING: \`$1' is $msg. You should only need it if - you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'. - You might want to install the \`Automake' and \`Perl' packages. - Grab them from any GNU archive site." - find . -type f -name Makefile.am -print | - sed 's/\.am$/.in/' | - while read f; do touch "$f"; done - ;; - - autom4te) - echo 1>&2 "\ -WARNING: \`$1' is needed, but is $msg. - You might have modified some files without having the - proper tools for further handling them. - You can get \`$1' as part of \`Autoconf' from any GNU - archive site." - - file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'` - test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'` - if test -f "$file"; then - touch $file - else - test -z "$file" || exec >$file - echo "#! /bin/sh" - echo "# Created by GNU Automake missing as a replacement of" - echo "# $ $@" - echo "exit 0" - chmod +x $file - exit 1 - fi - ;; - - bison|yacc) - echo 1>&2 "\ -WARNING: \`$1' $msg. You should only need it if - you modified a \`.y' file. You may need the \`Bison' package - in order for those modifications to take effect. You can get - \`Bison' from any GNU archive site." - rm -f y.tab.c y.tab.h - if [ $# -ne 1 ]; then - eval LASTARG="\${$#}" - case "$LASTARG" in - *.y) - SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'` - if [ -f "$SRCFILE" ]; then - cp "$SRCFILE" y.tab.c - fi - SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'` - if [ -f "$SRCFILE" ]; then - cp "$SRCFILE" y.tab.h - fi - ;; - esac - fi - if [ ! -f y.tab.h ]; then - echo >y.tab.h - fi - if [ ! -f y.tab.c ]; then - echo 'main() { return 0; }' >y.tab.c - fi - ;; - - lex|flex) - echo 1>&2 "\ -WARNING: \`$1' is $msg. You should only need it if - you modified a \`.l' file. You may need the \`Flex' package - in order for those modifications to take effect. You can get - \`Flex' from any GNU archive site." - rm -f lex.yy.c - if [ $# -ne 1 ]; then - eval LASTARG="\${$#}" - case "$LASTARG" in - *.l) - SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'` - if [ -f "$SRCFILE" ]; then - cp "$SRCFILE" lex.yy.c - fi - ;; - esac - fi - if [ ! -f lex.yy.c ]; then - echo 'main() { return 0; }' >lex.yy.c - fi - ;; - - help2man) - echo 1>&2 "\ -WARNING: \`$1' is $msg. You should only need it if - you modified a dependency of a manual page. You may need the - \`Help2man' package in order for those modifications to take - effect. You can get \`Help2man' from any GNU archive site." - - file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'` - if test -z "$file"; then - file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'` - fi - if [ -f "$file" ]; then - touch $file - else - test -z "$file" || exec >$file - echo ".ab help2man is required to generate this page" - exit 1 - fi - ;; - - makeinfo) - echo 1>&2 "\ -WARNING: \`$1' is $msg. You should only need it if - you modified a \`.texi' or \`.texinfo' file, or any other file - indirectly affecting the aspect of the manual. The spurious - call might also be the consequence of using a buggy \`make' (AIX, - DU, IRIX). You might want to install the \`Texinfo' package or - the \`GNU make' package. Grab either from any GNU archive site." - # The file to touch is that specified with -o ... - file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'` - if test -z "$file"; then - # ... or it is the one specified with @setfilename ... - infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'` - file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $infile` - # ... or it is derived from the source name (dir/f.texi becomes f.info) - test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info - fi - # If the file does not exist, the user really needs makeinfo; - # let's fail without touching anything. - test -f $file || exit 1 - touch $file - ;; - - tar) - shift - - # We have already tried tar in the generic part. - # Look for gnutar/gtar before invocation to avoid ugly error - # messages. - if (gnutar --version > /dev/null 2>&1); then - gnutar "$@" && exit 0 - fi - if (gtar --version > /dev/null 2>&1); then - gtar "$@" && exit 0 - fi - firstarg="$1" - if shift; then - case "$firstarg" in - *o*) - firstarg=`echo "$firstarg" | sed s/o//` - tar "$firstarg" "$@" && exit 0 - ;; - esac - case "$firstarg" in - *h*) - firstarg=`echo "$firstarg" | sed s/h//` - tar "$firstarg" "$@" && exit 0 - ;; - esac - fi - - echo 1>&2 "\ -WARNING: I can't seem to be able to run \`tar' with the given arguments. - You may want to install GNU tar or Free paxutils, or check the - command line arguments." - exit 1 - ;; - - *) - echo 1>&2 "\ -WARNING: \`$1' is needed, and is $msg. - You might have modified some files without having the - proper tools for further handling them. Check the \`README' file, - it often tells you about the needed prerequisites for installing - this package. You may also peek at any GNU archive site, in case - some other package would contain this missing \`$1' program." - exit 1 - ;; -esac - -exit 0 - -# Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" -# End: diff --git a/portland/dapi/kde/admin/mkinstalldirs b/portland/dapi/kde/admin/mkinstalldirs deleted file mode 100755 index 259dbfc..0000000 --- a/portland/dapi/kde/admin/mkinstalldirs +++ /dev/null @@ -1,158 +0,0 @@ -#! /bin/sh -# mkinstalldirs --- make directory hierarchy - -scriptversion=2005-06-29.22 - -# Original author: Noah Friedman <friedman@prep.ai.mit.edu> -# Created: 1993-05-16 -# Public domain. -# -# This file is maintained in Automake, please report -# bugs to <bug-automake@gnu.org> or send patches to -# <automake-patches@gnu.org>. - -errstatus=0 -dirmode= - -usage="\ -Usage: mkinstalldirs [-h] [--help] [--version] [-m MODE] DIR ... - -Create each directory DIR (with mode MODE, if specified), including all -leading file name components. - -Report bugs to <bug-automake@gnu.org>." - -# process command line arguments -while test $# -gt 0 ; do - case $1 in - -h | --help | --h*) # -h for help - echo "$usage" - exit $? - ;; - -m) # -m PERM arg - shift - test $# -eq 0 && { echo "$usage" 1>&2; exit 1; } - dirmode=$1 - shift - ;; - --version) - echo "$0 $scriptversion" - exit $? - ;; - --) # stop option processing - shift - break - ;; - -*) # unknown option - echo "$usage" 1>&2 - exit 1 - ;; - *) # first non-opt arg - break - ;; - esac -done - -for file -do - if test -d "$file"; then - shift - else - break - fi -done - -case $# in - 0) exit 0 ;; -esac - -# Solaris 8's mkdir -p isn't thread-safe. If you mkdir -p a/b and -# mkdir -p a/c at the same time, both will detect that a is missing, -# one will create a, then the other will try to create a and die with -# a "File exists" error. This is a problem when calling mkinstalldirs -# from a parallel make. We use --version in the probe to restrict -# ourselves to GNU mkdir, which is thread-safe. -case $dirmode in - '') - if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then - echo "mkdir -p -- $*" - exec mkdir -p -- "$@" - else - # On NextStep and OpenStep, the `mkdir' command does not - # recognize any option. It will interpret all options as - # directories to create, and then abort because `.' already - # exists. - test -d ./-p && rmdir ./-p - test -d ./--version && rmdir ./--version - fi - ;; - *) - if mkdir -m "$dirmode" -p --version . >/dev/null 2>&1 && - test ! -d ./--version; then - echo "mkdir -m $dirmode -p -- $*" - exec mkdir -m "$dirmode" -p -- "$@" - else - # Clean up after NextStep and OpenStep mkdir. - for d in ./-m ./-p ./--version "./$dirmode"; - do - test -d $d && rmdir $d - done - fi - ;; -esac - -for file -do - case $file in - /*) pathcomp=/ ;; - *) pathcomp= ;; - esac - oIFS=$IFS - IFS=/ - set fnord $file - shift - IFS=$oIFS - - for d - do - test "x$d" = x && continue - - pathcomp=$pathcomp$d - case $pathcomp in - -*) pathcomp=./$pathcomp ;; - esac - - if test ! -d "$pathcomp"; then - echo "mkdir $pathcomp" - - mkdir "$pathcomp" || lasterr=$? - - if test ! -d "$pathcomp"; then - errstatus=$lasterr - else - if test ! -z "$dirmode"; then - echo "chmod $dirmode $pathcomp" - lasterr= - chmod "$dirmode" "$pathcomp" || lasterr=$? - - if test ! -z "$lasterr"; then - errstatus=$lasterr - fi - fi - fi - fi - - pathcomp=$pathcomp/ - done -done - -exit $errstatus - -# Local Variables: -# mode: shell-script -# sh-indentation: 2 -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" -# End: diff --git a/portland/dapi/kde/admin/nmcheck b/portland/dapi/kde/admin/nmcheck deleted file mode 100755 index 1544713..0000000 --- a/portland/dapi/kde/admin/nmcheck +++ /dev/null @@ -1,371 +0,0 @@ -#!/usr/bin/perl -w - -# Check namespace cleanness of a library. -# Allowed symbols are passed as arguments. -# They may have trailing * = wildcard. -# Wildcards may be also specified as *::* (e.g. K*::* for all KDE classes) -# Symbols are listed as full function unmangled names without arguments, -# e.g. 'foo bar* nspace::*' allows foo(), foo(int), bar(), barbar() -# and all symbols in namespace/class nspace. -# If an argument has comma in it, it's a filename of a file containing -# allowed symbols, one per line. - - -$thisProg = "$0"; # This programs name - -$library = ""; -$allowed_symbols = ""; -$debug = 0; -$allowed_weak = ""; -$weak_specified = 0; - -while( defined( $ARGV[ 0 ] )) -{ - $_ = shift; - if( /^--verbose$|^-v$/ ) - { - $debug = 1; - } - elsif( /^--help$|^-h$/ ) - { - print STDOUT "Usage $thisProg [OPTION] ... library [allowed symbols] ...\n", - "\n", - "Check if the given library has only allowed public symbols.\n", - "\n", - " --allowweak=[symbol] allow only these weak symbols\n", - " -v, --verbose verbosely list files processed\n", - " -h, --help print this help, then exit\n"; - exit 0; - } - elsif( /^--allowweak=(.*)$/ ) - { - $allowed_weak .= " " . $1; - $weak_specified = 1; - } - elsif( /^--allowweak$/ ) # simply list all weak - { - $allowed_weak .= " "; - $weak_specified = 1; - } - elsif( /^--*/ ) - { - die "Invalid argument!\n"; - } - else - { - if( ! $library ) - { - $library = $_; - } - else - { - $allowed_symbols .= " " . $_; - } - } -} - -if( ! $weak_specified ) -{ - $allowed_weak = "*"; - # allow all weak symbols by default - # instances of templates and similar stuff - unfortunately includes also things from other libraries, - # so it cannot be on by default -} - -print STDERR "library:" . $library . "\n" if $debug; -print STDERR "allowed_symbols:" . $allowed_symbols . "\n" if $debug; -print STDERR "allowed_weak:" . $allowed_weak . "\n" if $debug; - -$default_symbols = "_fini _init"; # system symbols -# on my system, every .so has : -# A _DYNAMIC -# A _GLOBAL_OFFSET_TABLE_ -# A __bss_start -# A _edata -# A _end -# T _fini -# T _init -# no need to list A symbols in $default_symbols - -print STDERR "default_symbols: " . $default_symbols . "\n" if $debug; - -print STDOUT "Namespace cleanness check for " . $library . " :\n"; - -$lib_file = ""; -if( $library =~ /\.la$/ ) -{ - # get the real library file from .la - open( FILEIN, $library ) || die "Couldn't open $! !\n"; - while( $line = <FILEIN> ) - { - if( $line =~ /library_names=\'([^ ]*).*/o ) - { - $lib_file = $1; - } - } - close( FILEIN ); - if( ! $lib_file ) - { - print STDERR "Library file not found in .la file!\n"; - exit 1; - } - my $libpath = $library; - $libpath =~ s%[^/]*$%%; - if( -e $libpath . ".libs/" . $lib_file ) - { - $lib_file = $libpath . ".libs/" . $lib_file; - } - else - { - $lib_file = $libpath . $lib_file; - } -} -else -{ - $lib_file = $library; -} - -print STDERR "libfile: ". $lib_file . "\n" if $debug; - -$allowed_symbols .= " " . $default_symbols; - -sub process_symbols($\@\%\@); - -@wildcards = (); -%exacts = (); -@regwildcards = (); -process_symbols( $allowed_symbols, @wildcards, %exacts, @regwildcards ); -@weak_wildcards = (); -%weak_exacts = (); -@weak_regwildcards = (); -process_symbols( $allowed_weak, @weak_wildcards, %weak_exacts, @weak_regwildcards ); - -# grep is for stripping not exported symbols, which don't have address (=first column) -$nm_command = "nm -BDCg " . $lib_file . " | grep -v '^ ' |"; - -# TODO how portable is this nmcheck stuff? - -print STDERR "nm command:" . $nm_command . "\n" if $debug; - -open( FILEIN, $nm_command ) || die "nm command failed\n"; - -my $exit_code = 0; - -while( $line = <FILEIN> ) -{ - my $type; - my $symbol; - if( $line =~ /^[^ ]* (.) (.*)$/o ) - { - $type = $1; - $symbol = $2; - } - else - { - die "Invalid line: " . $line . "\n"; - } - - print STDERR "Type: " . $type . " , symbol: " . $symbol . "\n" if $debug; - if( $type eq "A" ) - { # these should be system symbols, so ignore them - next; - } - - my $orig_symbol = $symbol; - - if( $symbol =~ /\(anonymous namespace\)/o ) - { # TODO tell to prefer named namespaces? (shorter symbols) - next; - } - - # strip prefixes - # the :: appending is to make "CLASS::*" work also for "vtable for CLASS" - $symbol =~ s/^typeinfo for (.*)$/$1::/o; - $symbol =~ s/^typeinfo fn for (.*)$/$1::/o; - $symbol =~ s/^typeinfo name for (.*)$/$1::/o; - $symbol =~ s/^vtable for (.*)$/$1::/o; - $symbol =~ s/^guard variable for (.*)$/$1::/o; - $symbol =~ s/^reference temporary for (.*)$/$1::/o; - $symbol =~ s/^VTT for (.*)$/$1::/o; - $symbol =~ s/^virtual thunk \[[^\]]*\] to (.*)$/$1::/o; - $symbol =~ s/^non-virtual thunk \[[^\]]*\] to (.*)$/$1::/o; - $symbol =~ s/^covariant return thunk \[[^\]]*\] to (.*)$/$1::/o; - $symbol =~ s/^construction vtable thunk for (.*)$/$1::/o; - $symbol =~ s/^construction vtable for .*-in-(.*) [0-9]*$/$1::/o; - - # templates seem to have also return types mangled in their name, and nm prints it too - # they have also template arguments in the symbol - # get rid of both of those - while( $symbol =~ /<.*>/o ) - { - $symbol =~ s/<[^<>]*>//o; # strip innermost <> - } - if( $symbol !~ /operator\(\)/o ) - { - $symbol =~ s/ ?\(.*\).*$//o; # strip () and all after it - } - else - { - $symbol =~ s/(^|:| )operator\(\) ?\(.*\).*$//o; # strip () and all after it - } - $symbol =~ s/\[.*\] *$//o; # strip [in-charge] etc. - if( $symbol =~ /(^|:| )operator /o ) - { - $symbol =~ s/.* ([^\s]*)operator /$1/o; # strip everything before 'X::operator blah' - } - else - { - $symbol =~ s/.* ([^\s]+) *$/$1/o; # get last word (strip return type) - } - - # print STDERR "Processed symbol: " . $symbol . "\n" if $debug; - - my $found = 0; - if( $exacts{ $symbol } ) - { - $found = 1; - } - if( ! $found ) - { - for my $wild ( @wildcards ) - { - if( index( $symbol, $wild ) == 0 ) - { - $found = 1; - last; - } - } - } - if( ! $found ) - { - for my $wild ( @regwildcards ) - { - if( $symbol =~ /^$wild$/ ) - { - $found = 1; - last; - } - } - } - if( ( ! $found ) && ( $type eq "W" || $type eq "V" )) - { - if( $weak_exacts{ $symbol } ) - { - $found = 1; - } - if( ! $found ) - { - for my $wild ( @weak_wildcards ) - { - if( index( $symbol, $wild ) == 0 ) - { - $found = 1; - last; - } - } - } - if( ! $found ) - { - for my $wild ( @weak_regwildcards ) - { - if( $symbol =~ /^$wild$/ ) - { - $found = 1; - last; - } - } - } - } - - if( ! $found ) - { - print STDERR "Public symbol " . $orig_symbol . " is not allowed!\n"; - $exit_code = 1; - } -} - -close( FILEIN ); - -print STDOUT $exit_code == 0 ? "OK\n" : "FAILED\n"; - -exit $exit_code; - -sub process_symbols($\@\%\@) -{ - my $allowed_symbols = $_[ 0 ]; - my $wildcards_ref = $_[ 1 ]; - my $exacts_ref = $_[ 2 ]; - my $regwildcards_ref = $_[ 3 ]; - - $allowed_symbols =~ s/^ *//o; # strip whitespace - $allowed_symbols =~ s/ *$//o; - - if( $allowed_symbols eq "NONE" ) - { - $allowed_symbols = ""; - } - - my @symbols1 = split( ' ', $allowed_symbols ); - my $i = 0; - my @symbols2 = (); - while( defined( $symbols1[ $i ] )) - { - my $symbol = $symbols1[ $i ]; - if( $symbol =~ /\./ ) # dot in name -> file - { - open( SYMIN, $symbol ) || die ( "Cannot open file " . $symbol . "!" ); - while( $line = <SYMIN> ) - { - $line =~ s/^\s*//o; # strip whitespace - $line =~ s/\s*$//o; - if( $line !~ /^$/o # empty line - && $line !~ /^\s*#/ ) # comment line starting with # - { - $symbols2[ $#symbols2 + 1 ] = $line; - } - } - close( SYMIN ); - } - else - { - $symbols2[ $#symbols2 + 1 ] = $symbol; - } - $i++; - } - $i = 0; - while( defined( $symbols2[ $i ] )) - { - my $symbol = $symbols2[ $i ]; - if( $symbol =~ /__/ - || $symbol =~ /^_[A-Z]/ ) - { # ISO C++ 2.10.2 - die "Symbols containing a double underscore or beginning with an underscore and an upper-case letter are reserved!\n"; - } - elsif( $symbol eq "main" - || $symbol eq "main*" ) - { - die "Symbol main is not allowed!\n"; - } - if( $symbol =~ /^([^\*]*)\*$/o # trailing * without any * before it - && $symbol !~ /operator\*$/o ) - { - print STDERR "wildcard:" . $symbol . "\n" if $debug; - $wildcards_ref->[ $#{$wildcards_ref} + 1 ] = $1; - } - elsif( $symbol =~ /\*$/o - && ( $symbol =~ /\*::/o || $symbol =~ /::\*/o ) - && $symbol !~ /^\*/o - && $symbol !~ /operator\*$/o ) - { - print STDERR "regwildcard:" . $symbol . "\n" if $debug; - $symbol =~ s/\*/\.\*/go; # change * to .* (regexp) - $regwildcards_ref->[ $#{$regwildcards_ref} + 1 ] = $symbol; - } - else - { - print STDERR "exact:" . $symbol . "\n" if $debug; - $exacts_ref->{ $symbol } = 1; - } - $i++; - } -} diff --git a/portland/dapi/kde/admin/oldinclude.m4.in b/portland/dapi/kde/admin/oldinclude.m4.in deleted file mode 100644 index 0ed7bcf..0000000 --- a/portland/dapi/kde/admin/oldinclude.m4.in +++ /dev/null @@ -1,192 +0,0 @@ -### -*- autoconf -*- - -dnl This file is part of the KDE libraries/packages -dnl Copyright (C) 1997 Janos Farkas (chexum@shadow.banki.hu) -dnl (C) 1997,98,99 Stephan Kulow (coolo@kde.org) - -dnl This file is free software; you can redistribute it and/or -dnl modify it under the terms of the GNU Library General Public -dnl License as published by the Free Software Foundation; either -dnl version 2 of the License, or (at your option) any later version. - -dnl This library is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -dnl Library General Public License for more details. - -dnl You should have received a copy of the GNU Library General Public License -dnl along with this library; see the file COPYING.LIB. If not, write to -dnl the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -dnl Boston, MA 02110-1301, USA. - -AC_DEFUN([KDE_CHECK_MICO], -[ -AC_REQUIRE([KDE_CHECK_LIBDL]) -AC_REQUIRE([KDE_MISC_TESTS]) -AC_MSG_CHECKING(for MICO) - -if test -z "$MICODIR"; then - kde_micodir=/usr/local - else - kde_micodir="$MICODIR" -fi - -AC_ARG_WITH(micodir, - [ --with-micodir=micodir where mico is installed ], - kde_micodir=$withval, - kde_micodir=$kde_micodir -) - -AC_CACHE_VAL(kde_cv_mico_incdir, -[ - mico_incdirs="$kde_micodir/include /usr/include /usr/local/include /usr/local/include /opt/local/include $kde_extra_includes" -AC_FIND_FILE(CORBA.h, $mico_incdirs, kde_cv_mico_incdir) - -]) -kde_micodir=`echo $kde_cv_mico_incdir | sed -e 's#/include##'` - -if test ! -r $kde_micodir/include/CORBA.h; then - AC_MSG_ERROR([No CORBA.h found, specify another micodir]) -fi - -AC_MSG_RESULT($kde_micodir) - -MICO_INCLUDES=-I$kde_micodir/include -AC_SUBST(MICO_INCLUDES) -MICO_LDFLAGS=-L$kde_micodir/lib -AC_SUBST(MICO_LDFLAGS) -micodir=$kde_micodir -AC_SUBST(micodir) - -AC_MSG_CHECKING([for MICO version]) -AC_CACHE_VAL(kde_cv_mico_version, -[ -AC_LANG_C -cat >conftest.$ac_ext <<EOF -#include <stdio.h> -#include <mico/version.h> -int main() { - - printf("MICO_VERSION=%s\n",MICO_VERSION); - return (0); -} -EOF -ac_compile='${CC-gcc} $CFLAGS $MICO_INCLUDES conftest.$ac_ext -o conftest' -if AC_TRY_EVAL(ac_compile); then - if eval `./conftest 2>&5`; then - kde_cv_mico_version=$MICO_VERSION - else - AC_MSG_ERROR([your system is not able to execute a small application to - find MICO version! Check $kde_micodir/include/mico/version.h]) - fi -else - AC_MSG_ERROR([your system is not able to compile a small application to - find MICO version! Check $kde_micodir/include/mico/version.h]) -fi -]) - -dnl installed MICO version -mico_v_maj=`echo $kde_cv_mico_version | sed -e 's/^\(.*\)\..*\..*$/\1/'` -mico_v_mid=`echo $kde_cv_mico_version | sed -e 's/^.*\.\(.*\)\..*$/\1/'` -mico_v_min=`echo $kde_cv_mico_version | sed -e 's/^.*\..*\.\(.*\)$/\1/'` - -if test "x$1" = "x"; then - req_version="2.3.0" -else - req_version=$1 -fi - -dnl required MICO version -req_v_maj=`echo $req_version | sed -e 's/^\(.*\)\..*\..*$/\1/'` -req_v_mid=`echo $req_version | sed -e 's/^.*\.\(.*\)\..*$/\1/'` -req_v_min=`echo $req_version | sed -e 's/^.*\..*\.\(.*\)$/\1/'` - -if test "$mico_v_maj" -lt "$req_v_maj" || \ - ( test "$mico_v_maj" -eq "$req_v_maj" && \ - test "$mico_v_mid" -lt "$req_v_mid" ) || \ - ( test "$mico_v_mid" -eq "$req_v_mid" && \ - test "$mico_v_min" -lt "$req_v_min" ) - -then - AC_MSG_ERROR([found MICO version $kde_cv_mico_version but version $req_version \ -at least is required. You should upgrade MICO.]) -else - AC_MSG_RESULT([$kde_cv_mico_version (minimum version $req_version, ok)]) -fi - -LIBMICO="-lmico$kde_cv_mico_version $LIBCRYPT $LIBSOCKET $LIBDL" -AC_SUBST(LIBMICO) -if test -z "$IDL"; then - IDL='$(kde_bindir)/cuteidl' -fi -AC_SUBST(IDL) -IDL_DEPENDENCIES='$(kde_includes)/CUTE.h' -AC_SUBST(IDL_DEPENDENCIES) - -idldir="\$(includedir)/idl" -AC_SUBST(idldir) - -]) - -AC_DEFUN([KDE_CHECK_MINI_STL], -[ -AC_REQUIRE([KDE_CHECK_MICO]) - -AC_MSG_CHECKING(if we use mico's mini-STL) -AC_CACHE_VAL(kde_cv_have_mini_stl, -[ -AC_LANG_SAVE -AC_LANG_CPLUSPLUS -kde_save_cxxflags="$CXXFLAGS" -CXXFLAGS="$CXXFLAGS $MICO_INCLUDES" -AC_TRY_COMPILE( -[ -#include <mico/config.h> -], -[ -#ifdef HAVE_MINI_STL -#error "nothing" -#endif -], -kde_cv_have_mini_stl=no, -kde_cv_have_mini_stl=yes) -CXXFLAGS="$kde_save_cxxflags" -AC_LANG_RESTORE -]) - -if test "x$kde_cv_have_mini_stl" = "xyes"; then - AC_MSG_RESULT(yes) - $1 -else - AC_MSG_RESULT(no) - $2 -fi -]) - -]) - -AC_DEFUN([KDE_CHECK_ANSI], -[ -]) - -AC_DEFUN([KDE_CHECK_INSURE], -[ - AC_ARG_ENABLE(insure, [ --enable-insure use insure++ for debugging [default=no]], - [ - if test $enableval = "no"; dnl - then ac_use_insure="no" - else ac_use_insure="yes" - fi - ], [ac_use_insure="no"]) - - AC_MSG_CHECKING(if we will use Insure++ to debug) - AC_MSG_RESULT($ac_use_insure) - if test "$ac_use_insure" = "yes"; dnl - then CC="insure"; CXX="insure"; dnl CFLAGS="$CLAGS -fno-rtti -fno-exceptions "???? - fi -]) - -AC_DEFUN([KDE_CHECK_NEWLIBS], -[ - -]) diff --git a/portland/dapi/kde/admin/pkg.m4.in b/portland/dapi/kde/admin/pkg.m4.in deleted file mode 100644 index f2bfc2d..0000000 --- a/portland/dapi/kde/admin/pkg.m4.in +++ /dev/null @@ -1,57 +0,0 @@ - -dnl PKG_CHECK_MODULES(GSTUFF, gtk+-2.0 >= 1.3 glib = 1.3.4, action-if, action-not) -dnl defines GSTUFF_LIBS, GSTUFF_CFLAGS, see pkg-config man page -dnl also defines GSTUFF_PKG_ERRORS on error -AC_DEFUN([PKG_CHECK_MODULES], [ - succeeded=no - - if test -z "$PKG_CONFIG"; then - AC_PATH_PROG(PKG_CONFIG, pkg-config, no) - fi - - if test "$PKG_CONFIG" = "no" ; then - echo "*** The pkg-config script could not be found. Make sure it is" - echo "*** in your path, or set the PKG_CONFIG environment variable" - echo "*** to the full path to pkg-config." - echo "*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config." - else - PKG_CONFIG_MIN_VERSION=0.9.0 - if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then - AC_MSG_CHECKING(for $2) - - if $PKG_CONFIG --exists "$2" ; then - AC_MSG_RESULT(yes) - succeeded=yes - - AC_MSG_CHECKING($1_CFLAGS) - $1_CFLAGS=`$PKG_CONFIG --cflags "$2"` - AC_MSG_RESULT($$1_CFLAGS) - - AC_MSG_CHECKING($1_LIBS) - $1_LIBS=`$PKG_CONFIG --libs "$2"` - AC_MSG_RESULT($$1_LIBS) - else - $1_CFLAGS="" - $1_LIBS="" - ## If we have a custom action on failure, don't print errors, but - ## do set a variable so people can do so. - $1_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"` - ifelse([$4], ,echo $$1_PKG_ERRORS,) - fi - - AC_SUBST($1_CFLAGS) - AC_SUBST($1_LIBS) - else - echo "*** Your version of pkg-config is too old. You need version $PKG_CONFIG_MIN_VERSION or newer." - echo "*** See http://www.freedesktop.org/software/pkgconfig" - fi - fi - - if test $succeeded = yes; then - ifelse([$3], , :, [$3]) - else - ifelse([$4], , AC_MSG_ERROR([Library requirements ($2) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them.]), [$4]) - fi -]) - - diff --git a/portland/dapi/kde/admin/ylwrap b/portland/dapi/kde/admin/ylwrap deleted file mode 100755 index 102bd89..0000000 --- a/portland/dapi/kde/admin/ylwrap +++ /dev/null @@ -1,223 +0,0 @@ -#! /bin/sh -# ylwrap - wrapper for lex/yacc invocations. - -scriptversion=2005-05-14.22 - -# Copyright (C) 1996, 1997, 1998, 1999, 2001, 2002, 2003, 2004, 2005 -# Free Software Foundation, Inc. -# -# Written by Tom Tromey <tromey@cygnus.com>. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -# 02110-1301, USA. - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# This file is maintained in Automake, please report -# bugs to <bug-automake@gnu.org> or send patches to -# <automake-patches@gnu.org>. - -case "$1" in - '') - echo "$0: No files given. Try \`$0 --help' for more information." 1>&2 - exit 1 - ;; - --basedir) - basedir=$2 - shift 2 - ;; - -h|--h*) - cat <<\EOF -Usage: ylwrap [--help|--version] INPUT [OUTPUT DESIRED]... -- PROGRAM [ARGS]... - -Wrapper for lex/yacc invocations, renaming files as desired. - - INPUT is the input file - OUTPUT is one file PROG generates - DESIRED is the file we actually want instead of OUTPUT - PROGRAM is program to run - ARGS are passed to PROG - -Any number of OUTPUT,DESIRED pairs may be used. - -Report bugs to <bug-automake@gnu.org>. -EOF - exit $? - ;; - -v|--v*) - echo "ylwrap $scriptversion" - exit $? - ;; -esac - - -# The input. -input="$1" -shift -case "$input" in - [\\/]* | ?:[\\/]*) - # Absolute path; do nothing. - ;; - *) - # Relative path. Make it absolute. - input="`pwd`/$input" - ;; -esac - -pairlist= -while test "$#" -ne 0; do - if test "$1" = "--"; then - shift - break - fi - pairlist="$pairlist $1" - shift -done - -# The program to run. -prog="$1" -shift -# Make any relative path in $prog absolute. -case "$prog" in - [\\/]* | ?:[\\/]*) ;; - *[\\/]*) prog="`pwd`/$prog" ;; -esac - -# FIXME: add hostname here for parallel makes that run commands on -# other machines. But that might take us over the 14-char limit. -dirname=ylwrap$$ -trap "cd `pwd`; rm -rf $dirname > /dev/null 2>&1" 1 2 3 15 -mkdir $dirname || exit 1 - -cd $dirname - -case $# in - 0) $prog "$input" ;; - *) $prog "$@" "$input" ;; -esac -ret=$? - -if test $ret -eq 0; then - set X $pairlist - shift - first=yes - # Since DOS filename conventions don't allow two dots, - # the DOS version of Bison writes out y_tab.c instead of y.tab.c - # and y_tab.h instead of y.tab.h. Test to see if this is the case. - y_tab_nodot="no" - if test -f y_tab.c || test -f y_tab.h; then - y_tab_nodot="yes" - fi - - # The directory holding the input. - input_dir=`echo "$input" | sed -e 's,\([\\/]\)[^\\/]*$,\1,'` - # Quote $INPUT_DIR so we can use it in a regexp. - # FIXME: really we should care about more than `.' and `\'. - input_rx=`echo "$input_dir" | sed 's,\\\\,\\\\\\\\,g;s,\\.,\\\\.,g'` - - while test "$#" -ne 0; do - from="$1" - # Handle y_tab.c and y_tab.h output by DOS - if test $y_tab_nodot = "yes"; then - if test $from = "y.tab.c"; then - from="y_tab.c" - else - if test $from = "y.tab.h"; then - from="y_tab.h" - fi - fi - fi - if test -f "$from"; then - # If $2 is an absolute path name, then just use that, - # otherwise prepend `../'. - case "$2" in - [\\/]* | ?:[\\/]*) target="$2";; - *) target="../$2";; - esac - - # We do not want to overwrite a header file if it hasn't - # changed. This avoid useless recompilations. However the - # parser itself (the first file) should always be updated, - # because it is the destination of the .y.c rule in the - # Makefile. Divert the output of all other files to a temporary - # file so we can compare them to existing versions. - if test $first = no; then - realtarget="$target" - target="tmp-`echo $target | sed s/.*[\\/]//g`" - fi - # Edit out `#line' or `#' directives. - # - # We don't want the resulting debug information to point at - # an absolute srcdir; it is better for it to just mention the - # .y file with no path. - # - # We want to use the real output file name, not yy.lex.c for - # instance. - # - # We want the include guards to be adjusted too. - FROM=`echo "$from" | sed \ - -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'\ - -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g'` - TARGET=`echo "$2" | sed \ - -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'\ - -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g'` - - sed -e "/^#/!b" -e "s,$input_rx,," -e "s,$from,$2," \ - -e "s,$FROM,$TARGET," "$from" >"$target" || ret=$? - - # Check whether header files must be updated. - if test $first = no; then - if test -f "$realtarget" && cmp -s "$realtarget" "$target"; then - echo "$2" is unchanged - rm -f "$target" - else - echo updating "$2" - mv -f "$target" "$realtarget" - fi - fi - else - # A missing file is only an error for the first file. This - # is a blatant hack to let us support using "yacc -d". If -d - # is not specified, we don't want an error when the header - # file is "missing". - if test $first = yes; then - ret=1 - fi - fi - shift - shift - first=no - done -else - ret=$? -fi - -# Remove the directory. -cd .. -rm -rf $dirname - -exit $ret - -# Local Variables: -# mode: shell-script -# sh-indentation: 2 -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" -# End: diff --git a/portland/dapi/kde/configure.in.in b/portland/dapi/kde/configure.in.in deleted file mode 100644 index d341737..0000000 --- a/portland/dapi/kde/configure.in.in +++ /dev/null @@ -1,13 +0,0 @@ -#MIN_CONFIG - -KDE_CHECK_HEADERS(X11/extensions/dpms.h, - AC_DEFINE(HAVE_DPMS, 1, [Set if DPMS is available]),, - [#include <X11/Xlib.h>]) - -LIB_DAPI='$(top_builddir)/../lib/libdapi.la' -AC_SUBST(LIB_DAPI) -dapi_includes='-I$(top_builddir)/../include' -all_includes="$dapi_includes $all_includes" - -CFLAGS="$CFLAGS -Werror" -CXXFLAGS="$CXXFLAGS $KDE_DEFAULT_CXXFLAGS -DQT_CLEAN_NAMESPACE -Werror" diff --git a/portland/dapi/kde/daemon/.cvsignore b/portland/dapi/kde/daemon/.cvsignore deleted file mode 100644 index f8b3a51..0000000 --- a/portland/dapi/kde/daemon/.cvsignore +++ /dev/null @@ -1,7 +0,0 @@ -.deps -.libs -Makefile -Makefile.in -dapi_kde -*.moc - diff --git a/portland/dapi/kde/daemon/Makefile.am b/portland/dapi/kde/daemon/Makefile.am deleted file mode 100644 index bbdc52c..0000000 --- a/portland/dapi/kde/daemon/Makefile.am +++ /dev/null @@ -1,9 +0,0 @@ -bin_PROGRAMS = dapi_kde - -dapi_kde_SOURCES = main.cpp handler.cpp kabchandler.cpp -dapi_kde_LDADD = $(LIB_KABC) $(LIB_KIO) $(LIB_DAPI) -dapi_kde_LDFLAGS = $(all_libraries) - -METASOURCES = AUTO - -INCLUDES = $(all_includes) diff --git a/portland/dapi/kde/daemon/handler.cpp b/portland/dapi/kde/daemon/handler.cpp deleted file mode 100644 index cd8c564..0000000 --- a/portland/dapi/kde/daemon/handler.cpp +++ /dev/null @@ -1,633 +0,0 @@ -#include <config.h> - -#include "handler.h" -#include "handler.moc" - -#include "kabchandler.h" - -#include <dcopref.h> -#include <qsocketnotifier.h> -#include <kapplication.h> -#include <kdebug.h> -#include <kglobalsettings.h> -#include <kio/netaccess.h> -#include <kprocess.h> -#include <krun.h> -#include <stdlib.h> -#include <ktempfile.h> - -#include <X11/Xlib.h> -#ifdef HAVE_DPMS -#include <X11/extensions/dpms.h> -#endif - -KDapiHandler::KDapiHandler() - { - setupSocket(); - kabchandler = new KABCHandler(this); - } - -KDapiHandler::~KDapiHandler() - { - while( !connections.isEmpty()) - closeSocket( *connections.begin()); - } - -void KDapiHandler::setupSocket() - { - mainsocket = dapi_bindSocket(); - if( mainsocket < 0 ) - return; - QSocketNotifier* notif = new QSocketNotifier( mainsocket, QSocketNotifier::Read, this ); - connect( notif, SIGNAL( activated( int )), SLOT( processMainSocketData())); - } - -void KDapiHandler::processMainSocketData() - { - DapiConnection* conn = dapi_acceptSocket( mainsocket ); - if( conn == NULL ) - return; - ConnectionData data; - data.conn = conn; - data.notifier = new QSocketNotifier( dapi_socket( data.conn ), QSocketNotifier::Read, this ); - connect( data.notifier, SIGNAL( activated( int )), SLOT( processSocketData( int ))); - data.screensaver_suspend = false; - connections.append( data ); - } - -void KDapiHandler::processSocketData( int sock ) - { - for( ConnectionList::Iterator it = connections.begin(); - it != connections.end(); - ++it ) - if( dapi_socket((*it).conn ) == sock ) - { - processCommand( *it ); - break; - } - } - -void KDapiHandler::processCommand( ConnectionData& conn ) - { - int command; - int seq; - if( !dapi_readCommand( conn.conn, &command, &seq )) - { - closeSocket( conn ); - return; - } - switch( command ) - { - case DAPI_COMMAND_INIT: - processCommandInit( conn, seq ); - return; - case DAPI_COMMAND_CAPABILITIES: - processCommandCapabilities( conn, seq ); - return; - case DAPI_COMMAND_OPENURL: - processCommandOpenUrl( conn, seq ); - return; - case DAPI_COMMAND_EXECUTEURL: - processCommandExecuteUrl( conn, seq ); - return; - case DAPI_COMMAND_BUTTONORDER: - processCommandButtonOrder( conn, seq ); - return; - case DAPI_COMMAND_RUNASUSER: - processCommandRunAsUser( conn, seq ); - return; - case DAPI_COMMAND_SUSPENDSCREENSAVING: - processCommandSuspendScreensaving( conn, seq ); - return; - case DAPI_COMMAND_MAILTO: - processCommandMailTo( conn, seq ); - return; - case DAPI_COMMAND_LOCALFILE: - processCommandLocalFile( conn, seq ); - return; - case DAPI_COMMAND_UPLOADFILE: - processCommandUploadFile( conn, seq ); - return; - case DAPI_COMMAND_REMOVETEMPORARYLOCALFILE: - processCommandRemoveTemporaryLocalFile( conn, seq ); - return; - case DAPI_COMMAND_ADDRESSBOOKLIST: - processCommandAddressBookList( conn, seq ); - return; - case DAPI_COMMAND_ADDRESSBOOKGETNAME: - processCommandAddressBookGetName( conn, seq ); - return; - case DAPI_COMMAND_ADDRESSBOOKGETEMAILS: - processCommandAddressBookGetEmails( conn, seq ); - return; - case DAPI_COMMAND_ADDRESSBOOKFINDBYNAME: - processCommandAddressBookFindByName( conn, seq ); - return; - case DAPI_COMMAND_ADDRESSBOOKOWNER: - processCommandAddressBookOwner( conn, seq ); - return; - case DAPI_COMMAND_ADDRESSBOOKGETVCARD30: - processCommandAddressBookGetVCard30( conn, seq ); - return; - } - } - -void KDapiHandler::closeSocket( ConnectionData& conn ) - { - dapi_close( conn.conn ); - delete conn.notifier; - for( ConnectionList::Iterator it = connections.begin(); - it != connections.end(); - ++it ) - if( (*it).conn == conn.conn ) - { - connections.remove( it ); - break; - } - updateScreensaving(); - } - -void KDapiHandler::processCommandInit( ConnectionData& conn, int seq ) - { - if( !dapi_readCommandInit( conn.conn )) - { - closeSocket( conn ); - return; - } - dapi_writeReplyInit( conn.conn, seq, 1 ); - } - -/* TODO */ -static int caps[] = - { - DAPI_COMMAND_INIT, - DAPI_COMMAND_CAPABILITIES, - DAPI_COMMAND_OPENURL, - DAPI_COMMAND_EXECUTEURL, - DAPI_COMMAND_BUTTONORDER, - DAPI_COMMAND_RUNASUSER, - DAPI_COMMAND_SUSPENDSCREENSAVING, - DAPI_COMMAND_MAILTO, - DAPI_COMMAND_LOCALFILE, - DAPI_COMMAND_UPLOADFILE, - DAPI_COMMAND_REMOVETEMPORARYLOCALFILE - }; - -void KDapiHandler::processCommandCapabilities( ConnectionData& conn, int seq ) - { - intarr capabilities; - if( !dapi_readCommandInit( conn.conn )) - { - closeSocket( conn ); - return; - } - capabilities.count = sizeof( caps ) / sizeof( caps[ 0 ] ); - capabilities.data = caps; - dapi_writeReplyCapabilities( conn.conn, seq, capabilities, 1 ); - } - -void KDapiHandler::processCommandOpenUrl( ConnectionData& conn, int seq ) - { - char* url; - DapiWindowInfo winfo; - if( !dapi_readCommandOpenUrl( conn.conn, &url, &winfo )) - { - closeSocket( conn ); - return; - } - kapp->invokeBrowser( url, makeStartupInfo( winfo )); - dapi_writeReplyOpenUrl( conn.conn, seq, 1 ); - free( url ); - dapi_freeWindowInfo( winfo ); - } - -void KDapiHandler::processCommandExecuteUrl( ConnectionData& conn, int seq ) - { - char* url; - DapiWindowInfo winfo; - if( !dapi_readCommandExecuteUrl( conn.conn, &url, &winfo )) - { - closeSocket( conn ); - return; - } - new KRun( url ); // TODO startup info - dapi_writeReplyExecuteUrl( conn.conn, seq, 1 ); - free( url ); - dapi_freeWindowInfo( winfo ); - } - -void KDapiHandler::processCommandButtonOrder( ConnectionData& conn, int seq ) - { - if( !dapi_readCommandButtonOrder( conn.conn )) - { - closeSocket( conn ); - return; - } - int order = KGlobalSettings::buttonLayout(); - // TODO KDE has actually more layouts, but I have no idea what they're supposed to mean - dapi_writeReplyButtonOrder( conn.conn, seq, order == 1 ? 2 : 1 ); - } - -void KDapiHandler::processCommandRunAsUser( ConnectionData& conn, int seq ) - { - char* user; - char* command; - DapiWindowInfo winfo; - if( !dapi_readCommandRunAsUser( conn.conn, &user, &command, &winfo )) - { - closeSocket( conn ); - return; - } - KProcess proc; // TODO startup info - proc.setUseShell( true ); // TODO quoting - proc << "kdesu"; - if( user[ 0 ] != '\0' ) - proc << "-u" << user; - proc << "--" << command; - bool ret = proc.start( KProcess::DontCare ); - dapi_writeReplyRunAsUser( conn.conn, seq, ret ? 1 : 0 ); - free( user ); - free( command ); - dapi_freeWindowInfo( winfo ); - } - -void KDapiHandler::processCommandSuspendScreensaving( ConnectionData& conn, int seq ) - { - int suspend; - if( !dapi_readCommandSuspendScreensaving( conn.conn, &suspend )) - { - closeSocket( conn ); - return; - } - conn.screensaver_suspend = suspend; - updateScreensaving(); - dapi_writeReplySuspendScreensaving( conn.conn, seq, 1 ); - } - -void KDapiHandler::updateScreensaving() - { - bool suspend = false; - for( ConnectionList::ConstIterator it = connections.begin(); - it != connections.end(); - ++it ) - { - if( (*it).screensaver_suspend ) - { - suspend = true; - break; - } - } -#ifdef HAVE_DPMS - if( suspend ) - DPMSDisable( qt_xdisplay()); - else - DPMSEnable( qt_xdisplay()); -#endif - DCOPRef ref( "kdesktop", "KScreensaverIface" ); - ref.call( "enable", !suspend ); - } - -void KDapiHandler::processCommandMailTo( ConnectionData& conn, int seq ) - { - char* subject; - char* body; - char* to; - char* cc; - char* bcc; - stringarr attachments; - DapiWindowInfo winfo; - if( !dapi_readCommandMailTo( conn.conn, &subject, &body, &to, &cc, &bcc, &attachments, &winfo )) - { - closeSocket( conn ); - return; - } - QStringList attachurls; - for( int i = 0; - i < attachments.count; - ++i ) - attachurls.append( QString::fromUtf8( attachments.data[ i ] )); - kapp->invokeMailer( QString::fromUtf8( to ), QString::fromUtf8( cc ), QString::fromUtf8( bcc ), - QString::fromUtf8( subject ), QString::fromUtf8( body ), QString(), attachurls, makeStartupInfo( winfo )); - dapi_writeReplyMailTo( conn.conn, seq, 1 ); - free( subject ); - free( body ); - free( to ); - free( cc ); - free( bcc ); - dapi_freestringarr( attachments ); - dapi_freeWindowInfo( winfo ); - } - -static QValueList< KTempFile* > tempfiles; - -static void removeTempFile( const QString file ) - { - for( QValueList< KTempFile* >::Iterator it = tempfiles.begin(); - it != tempfiles.end(); - ++it ) - if( (*it)->name() == file ) - { - delete *it; - tempfiles.remove( it ); - return; - } - } - -void KDapiHandler::processCommandLocalFile( ConnectionData& conn, int seq ) - { - char* file; - char* local; - int allow_download; - DapiWindowInfo winfo; - if( !dapi_readCommandLocalFile( conn.conn, &file, &local, &allow_download, &winfo )) - { - closeSocket( conn ); - return; - } - KURL url = KURL::fromPathOrURL( QString::fromUtf8( file )); - free( file ); - QString result; - if( !url.isValid()) - ; // result is empty - else if( url.isLocalFile()) - result = url.path(); - else if( allow_download ) - { - QString target = QString::fromUtf8( local ); - KTempFile* tmp = NULL; - KURL dest; - if( !target.isEmpty()) - dest.setPath( target ); - else - { - tmp = new KTempFile; - dest.setPath( tmp->name()); - tempfiles.append( tmp ); - } - KIO::FileCopyJob* job = KIO::file_copy( url, dest, -1, true, false ); - KDapiFakeWidget* widget = winfo.window != 0 ? new KDapiFakeWidget( winfo.window ) : NULL; - job->setWindow( widget ); - KDapiDownloadJob* upload = new KDapiDownloadJob( job, conn.conn, seq, widget ); - connect( job, SIGNAL( result( KIO::Job* )), upload, SLOT( done())); - dapi_freeWindowInfo( winfo ); - // will write reply asynchronously - return; - } - dapi_writeReplyLocalFile( conn.conn, seq, result.utf8()); - dapi_freeWindowInfo( winfo ); - } - -void KDapiDownloadJob::done() - { - if( job->error() == 0 ) - dapi_writeReplyLocalFile( conn, seq, job->destURL().path().utf8()); - else - dapi_writeReplyLocalFile( conn, seq, NULL ); - delete widget; - deleteLater(); - } - -void KDapiHandler::processCommandUploadFile( ConnectionData& conn, int seq ) - { - char* local; - char* file; - int remove_local; - DapiWindowInfo winfo; - if( !dapi_readCommandUploadFile( conn.conn, &local, &file, &remove_local, &winfo )) - { - closeSocket( conn ); - return; - } - KURL url = KURL::fromPathOrURL( QString::fromUtf8( file )); - QString localfile = QString::fromUtf8( local ); - free( local ); - free( file ); - int ok = 0; - if( !url.isValid()) - ok = 0; - else if( url.isLocalFile() && url.path() == localfile ) - ok = 1; // no-op - else - { - KURL src; - src.setPath( localfile ); - KIO::FileCopyJob* job = KIO::file_copy( src, url, -1, true, false ); - KDapiFakeWidget* widget = winfo.window != 0 ? new KDapiFakeWidget( winfo.window ) : NULL; - job->setWindow( widget ); - KDapiUploadJob* upload = new KDapiUploadJob( job, conn.conn, seq, remove_local, widget ); - connect( job, SIGNAL( result( KIO::Job* )), upload, SLOT( done())); - dapi_freeWindowInfo( winfo ); - // will write reply asynchronously - return; - } - dapi_writeReplyUploadFile( conn.conn, seq, ok ); - dapi_freeWindowInfo( winfo ); - } - -void KDapiUploadJob::done() - { - // TODO this apparently returns success even with e.g. http - check somehow - dapi_writeReplyUploadFile( conn, seq, job->error() == 0 ); - if( job->error() == 0 && remove_local ) - removeTempFile( job->srcURL().path()); - delete widget; - } - -void KDapiHandler::processCommandRemoveTemporaryLocalFile( ConnectionData& conn, int seq ) - { - char* file; - if( !dapi_readCommandRemoveTemporaryLocalFile( conn.conn, &file )) - { - closeSocket( conn ); - return; - } - removeTempFile( QString::fromUtf8( file )); - dapi_writeReplyRemoveTemporaryLocalFile( conn.conn, seq, 1 ); - free( file ); - } - -void KDapiHandler::processCommandAddressBookList( ConnectionData& conn, int seq ) - { - if( !dapi_readCommandAddressBookList( conn.conn ) ) - { - closeSocket( conn ); - return; - } - - QStringList kabcUIDs = kabchandler->listUIDs(); - - stringarr idList; - idList.data = 0; - idList.count = 0; - if (kabcUIDs.count() > 0) - { - idList.data = (char**) malloc( sizeof( char* ) * (kabcUIDs.count() + 1 ) ); - QStringList::const_iterator it = kabcUIDs.begin(); - QStringList::const_iterator endIt = kabcUIDs.end(); - for ( uint i = 0; it != endIt; ++it, ++i ) - { - QCString string = (*it).utf8(); - idList.data[i] = strndup( string.data(), string.count() ); - } - idList.data[kabcUIDs.count()] = NULL; - idList.count = kabcUIDs.count(); - } - - dapi_writeReplyAddressBookList( conn.conn, seq, idList, kabcUIDs.count() ); - - dapi_freestringarr( idList ); - } - -void KDapiHandler::processCommandAddressBookGetName( ConnectionData& conn, int seq ) - { - char* id; - if( !dapi_readCommandAddressBookGetName( conn.conn, &id ) ) - { - closeSocket( conn ); - return; - } - - QCString firstname; - QCString lastname; - QCString fullname; - - bool ok = kabchandler->getNames( QString::fromUtf8( id ), - firstname, lastname, fullname ); - free( id ); - - dapi_writeReplyAddressBookGetName( conn.conn, seq, firstname.data(), lastname.data(), - fullname.data(), ok ); - - } - -void KDapiHandler::processCommandAddressBookGetEmails( ConnectionData& conn, int seq ) - { - char* id; - if( !dapi_readCommandAddressBookGetEmails( conn.conn, &id ) ) - { - closeSocket( conn ); - return; - } - - QStringList emails; - bool ok = kabchandler->getEmails( QString::fromUtf8( id ), emails ); - - free( id ); - - stringarr emailList; - emailList.data = 0; - emailList.count = 0; - if (emails.count() > 0) - { - emailList.data = (char**) malloc( sizeof( char* ) * ( emails.count() + 1 ) ); - QStringList::const_iterator it = emails.begin(); - QStringList::const_iterator endIt = emails.end(); - for ( uint i = 0; it != endIt; ++it, ++i ) - { - QCString string = (*it).utf8(); - emailList.data[i] = strdup( string.data() ); - } - emailList.data[emails.count()] = NULL; - emailList.count = emails.count(); - } - - dapi_writeReplyAddressBookGetEmails( conn.conn, seq, emailList, ok ); - - dapi_freestringarr( emailList ); - } - -void KDapiHandler::processCommandAddressBookFindByName( ConnectionData& conn, int seq ) - { - char* id; - if( !dapi_readCommandAddressBookFindByName( conn.conn, &id ) ) - { - closeSocket( conn ); - return; - } - - QStringList kabcUIDs = kabchandler->findByName( QString::fromUtf8( id ) ); - - free( id ); - - stringarr idList; - idList.data = 0; - idList.count = 0; - if (kabcUIDs.count() > 0) - { - idList.data = (char**) malloc( sizeof( char* ) * (kabcUIDs.count() + 1 ) ); - QStringList::const_iterator it = kabcUIDs.begin(); - QStringList::const_iterator endIt = kabcUIDs.end(); - for ( uint i = 0; it != endIt; ++it, ++i ) - { - QCString string = (*it).utf8(); - idList.data[i] = strndup( string.data(), string.count() ); - } - idList.data[kabcUIDs.count()] = NULL; - idList.count = kabcUIDs.count(); - } - - dapi_writeReplyAddressBookFindByName( conn.conn, seq, idList, kabcUIDs.count() ); - - dapi_freestringarr( idList ); - } - -void KDapiHandler::processCommandAddressBookOwner( ConnectionData& conn, int seq ) - { - if( !dapi_readCommandAddressBookOwner( conn.conn ) ) - { - closeSocket( conn ); - return; - } - - QString ownerUID = kabchandler->owner(); - - bool ok = !ownerUID.isEmpty(); - - dapi_writeReplyAddressBookOwner( conn.conn, seq, (ok ? ownerUID.utf8().data() : 0), ok ); - } - -void KDapiHandler::processCommandAddressBookGetVCard30( ConnectionData& conn, int seq ) - { - char* id; - if( !dapi_readCommandAddressBookGetVCard30( conn.conn, &id ) ) - { - closeSocket( conn ); - return; - } - - QString vcard = kabchandler->vcard30( QString::fromUtf8( id ) ); - - free( id ); - - bool ok = !vcard.isEmpty(); - - dapi_writeReplyAddressBookGetVCard30( conn.conn, seq, (ok ? vcard.utf8().data() : 0), ok ); - - } - -QCString KDapiHandler::makeStartupInfo( const DapiWindowInfo& winfo ) - { - WId window = winfo.window; - if( window != 0 ) - { - // TODO for the window !=0 case KStartupInfo API needs to be extended to accept - // external timestamp for creating new startup info - kapp->updateUserTimestamp(); - } - else - { - kapp->updateUserTimestamp(); - } - return KStartupInfo::createNewStartupId(); - } - -// some KDE APIs accept only QWidget* instead of WId -KDapiFakeWidget::KDapiFakeWidget( WId window ) - { - create( window, false ); // don't init - } - -KDapiFakeWidget::~KDapiFakeWidget() - { - destroy( false ); // no cleanup - } diff --git a/portland/dapi/kde/daemon/handler.h b/portland/dapi/kde/daemon/handler.h deleted file mode 100644 index 516b517..0000000 --- a/portland/dapi/kde/daemon/handler.h +++ /dev/null @@ -1,111 +0,0 @@ -#ifndef HANDLER_H -#define HANDLER_H - -#include <qobject.h> -#include <qmap.h> -#include <kio/job.h> -#include <qwidget.h> - -#include <dapi/comm.h> - -class KABCHandler; -class QSocketNotifier; - -class KDapiHandler - : public QObject - { - Q_OBJECT - public: - KDapiHandler(); - virtual ~KDapiHandler(); - private slots: - void processMainSocketData(); - void processSocketData( int sock ); - private: - struct ConnectionData - { - DapiConnection* conn; - QSocketNotifier* notifier; - bool screensaver_suspend; - }; - void setupSocket(); - void closeSocket( ConnectionData& conn ); - void processCommand( ConnectionData& conn ); - void processCommandInit( ConnectionData& conn, int seq ); - void processCommandCapabilities( ConnectionData& conn, int seq ); - void processCommandOpenUrl( ConnectionData& conn, int seq ); - void processCommandExecuteUrl( ConnectionData& conn, int seq ); - void processCommandButtonOrder( ConnectionData& conn, int seq ); - void processCommandRunAsUser( ConnectionData& conn, int seq ); - void processCommandSuspendScreensaving( ConnectionData& conn, int seq ); - void processCommandMailTo( ConnectionData& conn, int seq ); - void processCommandLocalFile( ConnectionData& conn, int seq ); - void processCommandUploadFile( ConnectionData& conn, int seq ); - void processCommandRemoveTemporaryLocalFile( ConnectionData& conn, int seq ); - void processCommandAddressBookList( ConnectionData& conn, int seq ); - void processCommandAddressBookGetName( ConnectionData& conn, int seq ); - void processCommandAddressBookGetEmails( ConnectionData& conn, int seq ); - void processCommandAddressBookFindByName( ConnectionData& conn, int seq ); - void processCommandAddressBookOwner( ConnectionData& conn, int seq ); - void processCommandAddressBookGetVCard30( ConnectionData& conn, int seq ); - void updateScreensaving(); - static QCString makeStartupInfo( const DapiWindowInfo& winfo ); - int mainsocket; - typedef QValueList< ConnectionData > ConnectionList; - ConnectionList connections; - KABCHandler* kabchandler; - }; - -class KDapiFakeWidget - : public QWidget - { - Q_OBJECT - public: - KDapiFakeWidget( WId window ); - virtual ~KDapiFakeWidget(); - }; - -class KDapiDownloadJob - : public QObject - { - Q_OBJECT - public: - KDapiDownloadJob( KIO::FileCopyJob* j, DapiConnection* c, int s, QWidget* w ); - private slots: - void done(); - private: - KIO::FileCopyJob* job; - DapiConnection* conn; - int seq; - QWidget* widget; - }; - -class KDapiUploadJob - : public QObject - { - Q_OBJECT - public: - KDapiUploadJob( KIO::FileCopyJob* j, DapiConnection* c, int s, bool r, QWidget* w ); - private slots: - void done(); - private: - KIO::FileCopyJob* job; - DapiConnection* conn; - int seq; - bool remove_local; - QWidget* widget; - }; - -inline -KDapiDownloadJob::KDapiDownloadJob( KIO::FileCopyJob* j, DapiConnection* c, int s, QWidget* w ) - : job( j ), conn( c ), seq( s ), widget( w ) - { - } - -inline -KDapiUploadJob::KDapiUploadJob( KIO::FileCopyJob* j, DapiConnection* c, int s, bool r, QWidget* w ) - : job( j ), conn( c ), seq( s ), remove_local( r ), widget( w ) - { - } - -#endif diff --git a/portland/dapi/kde/daemon/kabchandler.cpp b/portland/dapi/kde/daemon/kabchandler.cpp deleted file mode 100644 index 2016c53..0000000 --- a/portland/dapi/kde/daemon/kabchandler.cpp +++ /dev/null @@ -1,159 +0,0 @@ -/****************************************************************************** - Copyright 2006, Kevin Krammer <kevin.krammer@gmx.at> - All Rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions - are met: - - 1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - 2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR - IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, - INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*/ - -// local includes -#include "kabchandler.h" - -// KABC includes -#include <kabc/addressee.h> -#include <kabc/addresseelist.h> -#include <kabc/stdaddressbook.h> -#include <kabc/vcardconverter.h> - -using namespace KABC; - -/////////////////////////////////////////////////////////////////////////////// - -KABCHandler::KABCHandler(QObject* parent, const char* name) - : QObject(parent, name), - m_addressBook(0), - m_vcardConverter(0) -{ - m_addressBook = StdAddressBook::self(true); - QObject::connect(m_addressBook, SIGNAL(addressBookChanged(AddressBook*)), - this, SLOT(slotAddressBookChanged())); - - m_vcardConverter = new VCardConverter(); -} - -/////////////////////////////////////////////////////////////////////////////// - -KABCHandler::~KABCHandler() -{ - delete m_vcardConverter; -} - -/////////////////////////////////////////////////////////////////////////////// - -QStringList KABCHandler::listUIDs() const -{ - AddressBook::ConstIterator it = m_addressBook->begin(); - AddressBook::ConstIterator endIt = m_addressBook->end(); - - QStringList uids; - for (; it != endIt; ++it) - { - uids << (*it).uid(); - } - - return uids; -} - -/////////////////////////////////////////////////////////////////////////////// - -bool KABCHandler::getNames(const QString& uid, QCString& givenName, - QCString& familyName, QCString& fullName) const -{ - Addressee contact = m_addressBook->findByUid(uid); - - if (contact.isEmpty()) return false; - - givenName = contact.givenName().utf8(); - familyName = contact.familyName().utf8(); - fullName = contact.assembledName().utf8(); - - return true; -} - -/////////////////////////////////////////////////////////////////////////////// - -bool KABCHandler::getEmails(const QString& uid, QStringList& emails) const -{ - Addressee contact = m_addressBook->findByUid(uid); - - if (contact.isEmpty()) return false; - - emails = contact.emails(); - - return true; -} - -/////////////////////////////////////////////////////////////////////////////// - -QStringList KABCHandler::findByName(const QString& name) const -{ - AddressBook::ConstIterator it = m_addressBook->begin(); - AddressBook::ConstIterator endIt = m_addressBook->end(); - - QStringList uids; - for (; it != endIt; ++it) - { - if (hasNameMatch(*it, name.lower())) - uids << (*it).uid(); - } - - return uids; -} - -/////////////////////////////////////////////////////////////////////////////// - -QString KABCHandler::owner() const -{ - return m_addressBook->whoAmI().uid(); -} - -/////////////////////////////////////////////////////////////////////////////// - -QString KABCHandler::vcard30(const QString& uid) const -{ - Addressee contact = m_addressBook->findByUid(uid); - - if (contact.isEmpty()) return QString::null; - - return m_vcardConverter->createVCard(contact, VCardConverter::v3_0); -} - -/////////////////////////////////////////////////////////////////////////////// - -bool KABCHandler::hasNameMatch(const KABC::Addressee& contact, const QString& name) -{ - if (contact.assembledName().lower().find(name) != -1) return true; - - if (contact.formattedName().lower().find(name) != -1) return true; - - return false; -} - -/////////////////////////////////////////////////////////////////////////////// - -void KABCHandler::slotAddressBookChanged() -{ - qDebug("AddressBook changed"); -} - -#include "kabchandler.moc" - -// End of File diff --git a/portland/dapi/kde/daemon/kabchandler.h b/portland/dapi/kde/daemon/kabchandler.h deleted file mode 100644 index edd9f68..0000000 --- a/portland/dapi/kde/daemon/kabchandler.h +++ /dev/null @@ -1,77 +0,0 @@ -/****************************************************************************** - Copyright 2006, Kevin Krammer <kevin.krammer@gmx.at> - All Rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions - are met: - - 1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - 2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR - IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, - INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*/ - -#ifndef KABCHANDLER_H -#define KABCHANDLER_H - -// Qt includes -#include <qobject.h> - -// forward declarations -namespace KABC -{ - class Addressee; - class StdAddressBook; - class VCardConverter; -}; -class QStringList; - -class KABCHandler : public QObject -{ - Q_OBJECT - -public: - KABCHandler(QObject* parent = 0, const char* name = 0); - virtual ~KABCHandler(); - - QStringList listUIDs() const; - - bool getNames(const QString& uid, QCString& givenName, QCString& familyName, - QCString& fullName) const; - - bool getEmails(const QString& uid, QStringList& emails) const; - - QStringList findByName(const QString& uid) const; - - QString owner() const; - - QString vcard30(const QString& uid) const; - -private: - KABC::StdAddressBook* m_addressBook; - - KABC::VCardConverter* m_vcardConverter; - -private: - static bool hasNameMatch(const KABC::Addressee& contact, const QString& name); - -private slots: - void slotAddressBookChanged(); -}; - -#endif - -// End of File diff --git a/portland/dapi/kde/daemon/main.cpp b/portland/dapi/kde/daemon/main.cpp deleted file mode 100644 index 89e8c4a..0000000 --- a/portland/dapi/kde/daemon/main.cpp +++ /dev/null @@ -1,14 +0,0 @@ -#include <kapplication.h> -#include <kcmdlineargs.h> -#include <kdebug.h> -#include <klocale.h> - -#include "handler.h" - -int main( int argc, char* argv[] ) - { - KCmdLineArgs::init( argc, argv, "dapi_kde", I18N_NOOP( "dapi_kde" ), I18N_NOOP( "dapi_kde" ), "0.1" ); - KApplication app; - KDapiHandler handler; - return app.exec(); - } diff --git a/portland/dapi/kde/gen/.cvsignore b/portland/dapi/kde/gen/.cvsignore deleted file mode 100644 index 3635391..0000000 --- a/portland/dapi/kde/gen/.cvsignore +++ /dev/null @@ -1,5 +0,0 @@ -.deps -.libs -Makefile -Makefile.in -gen diff --git a/portland/dapi/kde/gen/Makefile.am b/portland/dapi/kde/gen/Makefile.am deleted file mode 100644 index c5a06c0..0000000 --- a/portland/dapi/kde/gen/Makefile.am +++ /dev/null @@ -1,18 +0,0 @@ -noinst_PROGRAMS = gen -gen_SOURCES = gen.cpp -gen_LDADD = $(LIB_QT) -gen_LDFLAGS = $(all_libraries) -INCLUDES = $(all_includes) -CLEANFILES = qtkde_functions.cpp module_functions.cpp module_functions.h generated - -generate: generated - -generated: gen gen.txt - ./gen || exit 1 - cat qt/in/qtkdeintegration_x11_0.cpp qt/in/qtkdeintegration_x11_1.cpp qtkdeintegration_x11.cpp.gen qt/in/qtkdeintegration_x11_2.cpp >qt/qtkdeintegration_x11.cpp - cat qt/in/qtkdeintegration_x11_p_1.h qtkdeintegration_x11_p.h.gen qt/in/qtkdeintegration_x11_p_2.h >qt/qtkdeintegration_x11_p.h - rm -f qtkdeintegration_x11.cpp.gen qtkdeintegration_x11_p.h.gen - cp -f qt/in/qt.patch qt/ - touch generated - -qtkde_functions.cpp module_functions.cpp module_functions.h : generated diff --git a/portland/dapi/kde/gen/callbacks_generated.c b/portland/dapi/kde/gen/callbacks_generated.c deleted file mode 100644 index 6152566..0000000 --- a/portland/dapi/kde/gen/callbacks_generated.c +++ /dev/null @@ -1,509 +0,0 @@ -int dapi_callbackInit( DapiConnection* conn, dapi_Init_callback callback ) - { - int seq; - DapiCallbackData* call; - seq = dapi_writeCommandInit( conn ); - if( seq == 0 ) - return 0; - call = malloc( sizeof( *call )); - if( call == NULL ) - return 0; - call->seq = seq; - call->callback = callback; - call->command = DAPI_COMMAND_INIT; - call->next = conn->callbacks; - conn->callbacks = call; - return seq; - } - -int dapi_callbackCapabilities( DapiConnection* conn, dapi_Capabilities_callback callback ) - { - int seq; - DapiCallbackData* call; - seq = dapi_writeCommandCapabilities( conn ); - if( seq == 0 ) - return 0; - call = malloc( sizeof( *call )); - if( call == NULL ) - return 0; - call->seq = seq; - call->callback = callback; - call->command = DAPI_COMMAND_CAPABILITIES; - call->next = conn->callbacks; - conn->callbacks = call; - return seq; - } - -int dapi_callbackOpenUrl( DapiConnection* conn, const char* url, DapiWindowInfo winfo, - dapi_OpenUrl_callback callback ) - { - int seq; - DapiCallbackData* call; - seq = dapi_writeCommandOpenUrl( conn, url, winfo ); - if( seq == 0 ) - return 0; - call = malloc( sizeof( *call )); - if( call == NULL ) - return 0; - call->seq = seq; - call->callback = callback; - call->command = DAPI_COMMAND_OPENURL; - call->next = conn->callbacks; - conn->callbacks = call; - return seq; - } - -int dapi_callbackExecuteUrl( DapiConnection* conn, const char* url, DapiWindowInfo winfo, - dapi_ExecuteUrl_callback callback ) - { - int seq; - DapiCallbackData* call; - seq = dapi_writeCommandExecuteUrl( conn, url, winfo ); - if( seq == 0 ) - return 0; - call = malloc( sizeof( *call )); - if( call == NULL ) - return 0; - call->seq = seq; - call->callback = callback; - call->command = DAPI_COMMAND_EXECUTEURL; - call->next = conn->callbacks; - conn->callbacks = call; - return seq; - } - -int dapi_callbackButtonOrder( DapiConnection* conn, dapi_ButtonOrder_callback callback ) - { - int seq; - DapiCallbackData* call; - seq = dapi_writeCommandButtonOrder( conn ); - if( seq == 0 ) - return 0; - call = malloc( sizeof( *call )); - if( call == NULL ) - return 0; - call->seq = seq; - call->callback = callback; - call->command = DAPI_COMMAND_BUTTONORDER; - call->next = conn->callbacks; - conn->callbacks = call; - return seq; - } - -int dapi_callbackRunAsUser( DapiConnection* conn, const char* user, const char* command, - DapiWindowInfo winfo, dapi_RunAsUser_callback callback ) - { - int seq; - DapiCallbackData* call; - seq = dapi_writeCommandRunAsUser( conn, user, command, winfo ); - if( seq == 0 ) - return 0; - call = malloc( sizeof( *call )); - if( call == NULL ) - return 0; - call->seq = seq; - call->callback = callback; - call->command = DAPI_COMMAND_RUNASUSER; - call->next = conn->callbacks; - conn->callbacks = call; - return seq; - } - -int dapi_callbackSuspendScreensaving( DapiConnection* conn, int suspend, dapi_SuspendScreensaving_callback callback ) - { - int seq; - DapiCallbackData* call; - seq = dapi_writeCommandSuspendScreensaving( conn, suspend ); - if( seq == 0 ) - return 0; - call = malloc( sizeof( *call )); - if( call == NULL ) - return 0; - call->seq = seq; - call->callback = callback; - call->command = DAPI_COMMAND_SUSPENDSCREENSAVING; - call->next = conn->callbacks; - conn->callbacks = call; - return seq; - } - -int dapi_callbackMailTo( DapiConnection* conn, const char* subject, const char* body, - const char* to, const char* cc, const char* bcc, stringarr attachments, DapiWindowInfo winfo, - dapi_MailTo_callback callback ) - { - int seq; - DapiCallbackData* call; - seq = dapi_writeCommandMailTo( conn, subject, body, to, cc, bcc, attachments, winfo ); - if( seq == 0 ) - return 0; - call = malloc( sizeof( *call )); - if( call == NULL ) - return 0; - call->seq = seq; - call->callback = callback; - call->command = DAPI_COMMAND_MAILTO; - call->next = conn->callbacks; - conn->callbacks = call; - return seq; - } - -int dapi_callbackLocalFile( DapiConnection* conn, const char* remote, const char* local, - int allow_download, DapiWindowInfo winfo, dapi_LocalFile_callback callback ) - { - int seq; - DapiCallbackData* call; - seq = dapi_writeCommandLocalFile( conn, remote, local, allow_download, winfo ); - if( seq == 0 ) - return 0; - call = malloc( sizeof( *call )); - if( call == NULL ) - return 0; - call->seq = seq; - call->callback = callback; - call->command = DAPI_COMMAND_LOCALFILE; - call->next = conn->callbacks; - conn->callbacks = call; - return seq; - } - -int dapi_callbackUploadFile( DapiConnection* conn, const char* local, const char* file, - int remove_local, DapiWindowInfo winfo, dapi_UploadFile_callback callback ) - { - int seq; - DapiCallbackData* call; - seq = dapi_writeCommandUploadFile( conn, local, file, remove_local, winfo ); - if( seq == 0 ) - return 0; - call = malloc( sizeof( *call )); - if( call == NULL ) - return 0; - call->seq = seq; - call->callback = callback; - call->command = DAPI_COMMAND_UPLOADFILE; - call->next = conn->callbacks; - conn->callbacks = call; - return seq; - } - -int dapi_callbackRemoveTemporaryLocalFile( DapiConnection* conn, const char* local, - dapi_RemoveTemporaryLocalFile_callback callback ) - { - int seq; - DapiCallbackData* call; - seq = dapi_writeCommandRemoveTemporaryLocalFile( conn, local ); - if( seq == 0 ) - return 0; - call = malloc( sizeof( *call )); - if( call == NULL ) - return 0; - call->seq = seq; - call->callback = callback; - call->command = DAPI_COMMAND_REMOVETEMPORARYLOCALFILE; - call->next = conn->callbacks; - conn->callbacks = call; - return seq; - } - -int dapi_callbackAddressBookList( DapiConnection* conn, dapi_AddressBookList_callback callback ) - { - int seq; - DapiCallbackData* call; - seq = dapi_writeCommandAddressBookList( conn ); - if( seq == 0 ) - return 0; - call = malloc( sizeof( *call )); - if( call == NULL ) - return 0; - call->seq = seq; - call->callback = callback; - call->command = DAPI_COMMAND_ADDRESSBOOKLIST; - call->next = conn->callbacks; - conn->callbacks = call; - return seq; - } - -int dapi_callbackAddressBookGetName( DapiConnection* conn, const char* id, dapi_AddressBookGetName_callback callback ) - { - int seq; - DapiCallbackData* call; - seq = dapi_writeCommandAddressBookGetName( conn, id ); - if( seq == 0 ) - return 0; - call = malloc( sizeof( *call )); - if( call == NULL ) - return 0; - call->seq = seq; - call->callback = callback; - call->command = DAPI_COMMAND_ADDRESSBOOKGETNAME; - call->next = conn->callbacks; - conn->callbacks = call; - return seq; - } - -int dapi_callbackAddressBookGetEmails( DapiConnection* conn, const char* id, dapi_AddressBookGetEmails_callback callback ) - { - int seq; - DapiCallbackData* call; - seq = dapi_writeCommandAddressBookGetEmails( conn, id ); - if( seq == 0 ) - return 0; - call = malloc( sizeof( *call )); - if( call == NULL ) - return 0; - call->seq = seq; - call->callback = callback; - call->command = DAPI_COMMAND_ADDRESSBOOKGETEMAILS; - call->next = conn->callbacks; - conn->callbacks = call; - return seq; - } - -int dapi_callbackAddressBookFindByName( DapiConnection* conn, const char* name, dapi_AddressBookFindByName_callback callback ) - { - int seq; - DapiCallbackData* call; - seq = dapi_writeCommandAddressBookFindByName( conn, name ); - if( seq == 0 ) - return 0; - call = malloc( sizeof( *call )); - if( call == NULL ) - return 0; - call->seq = seq; - call->callback = callback; - call->command = DAPI_COMMAND_ADDRESSBOOKFINDBYNAME; - call->next = conn->callbacks; - conn->callbacks = call; - return seq; - } - -int dapi_callbackAddressBookOwner( DapiConnection* conn, dapi_AddressBookOwner_callback callback ) - { - int seq; - DapiCallbackData* call; - seq = dapi_writeCommandAddressBookOwner( conn ); - if( seq == 0 ) - return 0; - call = malloc( sizeof( *call )); - if( call == NULL ) - return 0; - call->seq = seq; - call->callback = callback; - call->command = DAPI_COMMAND_ADDRESSBOOKOWNER; - call->next = conn->callbacks; - conn->callbacks = call; - return seq; - } - -int dapi_callbackAddressBookGetVCard30( DapiConnection* conn, const char* id, dapi_AddressBookGetVCard30_callback callback ) - { - int seq; - DapiCallbackData* call; - seq = dapi_writeCommandAddressBookGetVCard30( conn, id ); - if( seq == 0 ) - return 0; - call = malloc( sizeof( *call )); - if( call == NULL ) - return 0; - call->seq = seq; - call->callback = callback; - call->command = DAPI_COMMAND_ADDRESSBOOKGETVCARD30; - call->next = conn->callbacks; - conn->callbacks = call; - return seq; - } - -static void genericCallbackDispatch( DapiConnection* conn, DapiCallbackData* data, int command, int seq ) - { - switch( command ) - { - case DAPI_REPLY_INIT: - { - int ok; - dapi_readReplyInit( conn, &ok ); - (( dapi_Init_callback ) data->callback )( conn, data->seq, ok ); - break; - } - case DAPI_REPLY_CAPABILITIES: - { - intarr capabitilies; - int ok; - dapi_readReplyCapabilities( conn, &capabitilies, &ok ); - (( dapi_Capabilities_callback ) data->callback )( conn, data->seq, capabitilies, ok ); - break; - } - case DAPI_REPLY_OPENURL: - { - int ok; - dapi_readReplyOpenUrl( conn, &ok ); - (( dapi_OpenUrl_callback ) data->callback )( conn, data->seq, ok ); - break; - } - case DAPI_REPLY_EXECUTEURL: - { - int ok; - dapi_readReplyExecuteUrl( conn, &ok ); - (( dapi_ExecuteUrl_callback ) data->callback )( conn, data->seq, ok ); - break; - } - case DAPI_REPLY_BUTTONORDER: - { - int order; - dapi_readReplyButtonOrder( conn, &order ); - (( dapi_ButtonOrder_callback ) data->callback )( conn, data->seq, order ); - break; - } - case DAPI_REPLY_RUNASUSER: - { - int ok; - dapi_readReplyRunAsUser( conn, &ok ); - (( dapi_RunAsUser_callback ) data->callback )( conn, data->seq, ok ); - break; - } - case DAPI_REPLY_SUSPENDSCREENSAVING: - { - int ok; - dapi_readReplySuspendScreensaving( conn, &ok ); - (( dapi_SuspendScreensaving_callback ) data->callback )( conn, data->seq, ok ); - break; - } - case DAPI_REPLY_MAILTO: - { - int ok; - dapi_readReplyMailTo( conn, &ok ); - (( dapi_MailTo_callback ) data->callback )( conn, data->seq, ok ); - break; - } - case DAPI_REPLY_LOCALFILE: - { - char* result; - dapi_readReplyLocalFile( conn, &result ); - (( dapi_LocalFile_callback ) data->callback )( conn, data->seq, result ); - break; - } - case DAPI_REPLY_UPLOADFILE: - { - int ok; - dapi_readReplyUploadFile( conn, &ok ); - (( dapi_UploadFile_callback ) data->callback )( conn, data->seq, ok ); - break; - } - case DAPI_REPLY_REMOVETEMPORARYLOCALFILE: - { - int ok; - dapi_readReplyRemoveTemporaryLocalFile( conn, &ok ); - (( dapi_RemoveTemporaryLocalFile_callback ) data->callback )( conn, data->seq, ok ); - break; - } - case DAPI_REPLY_ADDRESSBOOKLIST: - { - stringarr idlist; - int ok; - dapi_readReplyAddressBookList( conn, &idlist, &ok ); - (( dapi_AddressBookList_callback ) data->callback )( conn, data->seq, idlist, ok ); - break; - } - case DAPI_REPLY_ADDRESSBOOKGETNAME: - { - char* givenname; - char* familyname; - char* fullname; - int ok; - dapi_readReplyAddressBookGetName( conn, &givenname, &familyname, &fullname, &ok ); - (( dapi_AddressBookGetName_callback ) data->callback )( conn, data->seq, givenname, familyname, fullname, ok ); - break; - } - case DAPI_REPLY_ADDRESSBOOKGETEMAILS: - { - stringarr emaillist; - int ok; - dapi_readReplyAddressBookGetEmails( conn, &emaillist, &ok ); - (( dapi_AddressBookGetEmails_callback ) data->callback )( conn, data->seq, emaillist, ok ); - break; - } - case DAPI_REPLY_ADDRESSBOOKFINDBYNAME: - { - stringarr idlist; - int ok; - dapi_readReplyAddressBookFindByName( conn, &idlist, &ok ); - (( dapi_AddressBookFindByName_callback ) data->callback )( conn, data->seq, idlist, ok ); - break; - } - case DAPI_REPLY_ADDRESSBOOKOWNER: - { - char* id; - int ok; - dapi_readReplyAddressBookOwner( conn, &id, &ok ); - (( dapi_AddressBookOwner_callback ) data->callback )( conn, data->seq, id, ok ); - break; - } - case DAPI_REPLY_ADDRESSBOOKGETVCARD30: - { - char* vcard; - int ok; - dapi_readReplyAddressBookGetVCard30( conn, &vcard, &ok ); - (( dapi_AddressBookGetVCard30_callback ) data->callback )( conn, data->seq, vcard, ok ); - break; - } - } - } -int dapi_callbackOpenUrl_Window( DapiConnection* conn, const char* url, long winfo, - dapi_OpenUrl_callback callback ) - { - DapiWindowInfo winfo_; - dapi_windowInfoInitWindow( &winfo_, winfo ); - int seq = dapi_callbackOpenUrl( conn, url, winfo_, callback ); - dapi_freeWindowInfo( winfo_ ); - return seq; - } - -int dapi_callbackExecuteUrl_Window( DapiConnection* conn, const char* url, long winfo, - dapi_ExecuteUrl_callback callback ) - { - DapiWindowInfo winfo_; - dapi_windowInfoInitWindow( &winfo_, winfo ); - int seq = dapi_callbackExecuteUrl( conn, url, winfo_, callback ); - dapi_freeWindowInfo( winfo_ ); - return seq; - } - -int dapi_callbackRunAsUser_Window( DapiConnection* conn, const char* user, const char* command, - long winfo, dapi_RunAsUser_callback callback ) - { - DapiWindowInfo winfo_; - dapi_windowInfoInitWindow( &winfo_, winfo ); - int seq = dapi_callbackRunAsUser( conn, user, command, winfo_, callback ); - dapi_freeWindowInfo( winfo_ ); - return seq; - } - -int dapi_callbackMailTo_Window( DapiConnection* conn, const char* subject, const char* body, - const char* to, const char* cc, const char* bcc, stringarr attachments, long winfo, - dapi_MailTo_callback callback ) - { - DapiWindowInfo winfo_; - dapi_windowInfoInitWindow( &winfo_, winfo ); - int seq = dapi_callbackMailTo( conn, subject, body, to, cc, bcc, attachments, winfo_, callback ); - dapi_freeWindowInfo( winfo_ ); - return seq; - } - -int dapi_callbackLocalFile_Window( DapiConnection* conn, const char* remote, const char* local, - int allow_download, long winfo, dapi_LocalFile_callback callback ) - { - DapiWindowInfo winfo_; - dapi_windowInfoInitWindow( &winfo_, winfo ); - int seq = dapi_callbackLocalFile( conn, remote, local, allow_download, winfo_, callback ); - dapi_freeWindowInfo( winfo_ ); - return seq; - } - -int dapi_callbackUploadFile_Window( DapiConnection* conn, const char* local, const char* file, - int remove_local, long winfo, dapi_UploadFile_callback callback ) - { - DapiWindowInfo winfo_; - dapi_windowInfoInitWindow( &winfo_, winfo ); - int seq = dapi_callbackUploadFile( conn, local, file, remove_local, winfo_, callback ); - dapi_freeWindowInfo( winfo_ ); - return seq; - } - diff --git a/portland/dapi/kde/gen/callbacks_generated.h b/portland/dapi/kde/gen/callbacks_generated.h deleted file mode 100644 index 2421f23..0000000 --- a/portland/dapi/kde/gen/callbacks_generated.h +++ /dev/null @@ -1,64 +0,0 @@ -typedef void( * dapi_Init_callback )( DapiConnection* conn, int seq, int ok ); -int dapi_callbackInit( DapiConnection* conn, dapi_Init_callback callback ); -typedef void( * dapi_Capabilities_callback )( DapiConnection* conn, int seq, intarr capabitilies, - int ok ); -int dapi_callbackCapabilities( DapiConnection* conn, dapi_Capabilities_callback callback ); -typedef void( * dapi_OpenUrl_callback )( DapiConnection* conn, int seq, int ok ); -int dapi_callbackOpenUrl( DapiConnection* conn, const char* url, DapiWindowInfo winfo, - dapi_OpenUrl_callback callback ); -int dapi_callbackOpenUrl_Window( DapiConnection* conn, const char* url, long winfo, - dapi_OpenUrl_callback callback ); -typedef void( * dapi_ExecuteUrl_callback )( DapiConnection* conn, int seq, int ok ); -int dapi_callbackExecuteUrl( DapiConnection* conn, const char* url, DapiWindowInfo winfo, - dapi_ExecuteUrl_callback callback ); -int dapi_callbackExecuteUrl_Window( DapiConnection* conn, const char* url, long winfo, - dapi_ExecuteUrl_callback callback ); -typedef void( * dapi_ButtonOrder_callback )( DapiConnection* conn, int seq, int order ); -int dapi_callbackButtonOrder( DapiConnection* conn, dapi_ButtonOrder_callback callback ); -typedef void( * dapi_RunAsUser_callback )( DapiConnection* conn, int seq, int ok ); -int dapi_callbackRunAsUser( DapiConnection* conn, const char* user, const char* command, - DapiWindowInfo winfo, dapi_RunAsUser_callback callback ); -int dapi_callbackRunAsUser_Window( DapiConnection* conn, const char* user, const char* command, - long winfo, dapi_RunAsUser_callback callback ); -typedef void( * dapi_SuspendScreensaving_callback )( DapiConnection* conn, int seq, - int ok ); -int dapi_callbackSuspendScreensaving( DapiConnection* conn, int suspend, dapi_SuspendScreensaving_callback callback ); -typedef void( * dapi_MailTo_callback )( DapiConnection* conn, int seq, int ok ); -int dapi_callbackMailTo( DapiConnection* conn, const char* subject, const char* body, - const char* to, const char* cc, const char* bcc, stringarr attachments, DapiWindowInfo winfo, - dapi_MailTo_callback callback ); -int dapi_callbackMailTo_Window( DapiConnection* conn, const char* subject, const char* body, - const char* to, const char* cc, const char* bcc, stringarr attachments, long winfo, - dapi_MailTo_callback callback ); -typedef void( * dapi_LocalFile_callback )( DapiConnection* conn, int seq, const char* result ); -int dapi_callbackLocalFile( DapiConnection* conn, const char* remote, const char* local, - int allow_download, DapiWindowInfo winfo, dapi_LocalFile_callback callback ); -int dapi_callbackLocalFile_Window( DapiConnection* conn, const char* remote, const char* local, - int allow_download, long winfo, dapi_LocalFile_callback callback ); -typedef void( * dapi_UploadFile_callback )( DapiConnection* conn, int seq, int ok ); -int dapi_callbackUploadFile( DapiConnection* conn, const char* local, const char* file, - int remove_local, DapiWindowInfo winfo, dapi_UploadFile_callback callback ); -int dapi_callbackUploadFile_Window( DapiConnection* conn, const char* local, const char* file, - int remove_local, long winfo, dapi_UploadFile_callback callback ); -typedef void( * dapi_RemoveTemporaryLocalFile_callback )( DapiConnection* conn, int seq, - int ok ); -int dapi_callbackRemoveTemporaryLocalFile( DapiConnection* conn, const char* local, - dapi_RemoveTemporaryLocalFile_callback callback ); -typedef void( * dapi_AddressBookList_callback )( DapiConnection* conn, int seq, stringarr idlist, - int ok ); -int dapi_callbackAddressBookList( DapiConnection* conn, dapi_AddressBookList_callback callback ); -typedef void( * dapi_AddressBookGetName_callback )( DapiConnection* conn, int seq, - const char* givenname, const char* familyname, const char* fullname, int ok ); -int dapi_callbackAddressBookGetName( DapiConnection* conn, const char* id, dapi_AddressBookGetName_callback callback ); -typedef void( * dapi_AddressBookGetEmails_callback )( DapiConnection* conn, int seq, - stringarr emaillist, int ok ); -int dapi_callbackAddressBookGetEmails( DapiConnection* conn, const char* id, dapi_AddressBookGetEmails_callback callback ); -typedef void( * dapi_AddressBookFindByName_callback )( DapiConnection* conn, int seq, - stringarr idlist, int ok ); -int dapi_callbackAddressBookFindByName( DapiConnection* conn, const char* name, dapi_AddressBookFindByName_callback callback ); -typedef void( * dapi_AddressBookOwner_callback )( DapiConnection* conn, int seq, const char* id, - int ok ); -int dapi_callbackAddressBookOwner( DapiConnection* conn, dapi_AddressBookOwner_callback callback ); -typedef void( * dapi_AddressBookGetVCard30_callback )( DapiConnection* conn, int seq, - const char* vcard, int ok ); -int dapi_callbackAddressBookGetVCard30( DapiConnection* conn, const char* id, dapi_AddressBookGetVCard30_callback callback ); diff --git a/portland/dapi/kde/gen/calls_generated.c b/portland/dapi/kde/gen/calls_generated.c deleted file mode 100644 index 0b86660..0000000 --- a/portland/dapi/kde/gen/calls_generated.c +++ /dev/null @@ -1,424 +0,0 @@ -int dapi_Init( DapiConnection* conn ) - { - int seq; - int ret; - seq = dapi_writeCommandInit( conn ); - if( seq == 0 ) - return 0; - for(;;) - { - int comm, seq2; - if( !dapi_readCommand( conn, &comm, &seq2 )) - return 0; - if( seq2 == seq && comm == DAPI_REPLY_INIT ) - break; /* --> */ - conn->generic_callback( conn, comm, seq2 ); - } - if( !dapi_readReplyInit( conn, &ret )) - return 0; - return ret; - } - -int dapi_Capabilities( DapiConnection* conn, intarr* capabitilies ) - { - int seq; - int ret; - seq = dapi_writeCommandCapabilities( conn ); - if( seq == 0 ) - return 0; - for(;;) - { - int comm, seq2; - if( !dapi_readCommand( conn, &comm, &seq2 )) - return 0; - if( seq2 == seq && comm == DAPI_REPLY_CAPABILITIES ) - break; /* --> */ - conn->generic_callback( conn, comm, seq2 ); - } - if( !dapi_readReplyCapabilities( conn, capabitilies, &ret )) - return 0; - return ret; - } - -int dapi_OpenUrl( DapiConnection* conn, const char* url, DapiWindowInfo winfo ) - { - int seq; - int ret; - seq = dapi_writeCommandOpenUrl( conn, url, winfo ); - if( seq == 0 ) - return 0; - for(;;) - { - int comm, seq2; - if( !dapi_readCommand( conn, &comm, &seq2 )) - return 0; - if( seq2 == seq && comm == DAPI_REPLY_OPENURL ) - break; /* --> */ - conn->generic_callback( conn, comm, seq2 ); - } - if( !dapi_readReplyOpenUrl( conn, &ret )) - return 0; - return ret; - } - -int dapi_ExecuteUrl( DapiConnection* conn, const char* url, DapiWindowInfo winfo ) - { - int seq; - int ret; - seq = dapi_writeCommandExecuteUrl( conn, url, winfo ); - if( seq == 0 ) - return 0; - for(;;) - { - int comm, seq2; - if( !dapi_readCommand( conn, &comm, &seq2 )) - return 0; - if( seq2 == seq && comm == DAPI_REPLY_EXECUTEURL ) - break; /* --> */ - conn->generic_callback( conn, comm, seq2 ); - } - if( !dapi_readReplyExecuteUrl( conn, &ret )) - return 0; - return ret; - } - -int dapi_ButtonOrder( DapiConnection* conn ) - { - int seq; - int ret; - seq = dapi_writeCommandButtonOrder( conn ); - if( seq == 0 ) - return 0; - for(;;) - { - int comm, seq2; - if( !dapi_readCommand( conn, &comm, &seq2 )) - return 0; - if( seq2 == seq && comm == DAPI_REPLY_BUTTONORDER ) - break; /* --> */ - conn->generic_callback( conn, comm, seq2 ); - } - if( !dapi_readReplyButtonOrder( conn, &ret )) - return 0; - return ret; - } - -int dapi_RunAsUser( DapiConnection* conn, const char* user, const char* command, DapiWindowInfo winfo ) - { - int seq; - int ret; - seq = dapi_writeCommandRunAsUser( conn, user, command, winfo ); - if( seq == 0 ) - return 0; - for(;;) - { - int comm, seq2; - if( !dapi_readCommand( conn, &comm, &seq2 )) - return 0; - if( seq2 == seq && comm == DAPI_REPLY_RUNASUSER ) - break; /* --> */ - conn->generic_callback( conn, comm, seq2 ); - } - if( !dapi_readReplyRunAsUser( conn, &ret )) - return 0; - return ret; - } - -int dapi_SuspendScreensaving( DapiConnection* conn, int suspend ) - { - int seq; - int ret; - seq = dapi_writeCommandSuspendScreensaving( conn, suspend ); - if( seq == 0 ) - return 0; - for(;;) - { - int comm, seq2; - if( !dapi_readCommand( conn, &comm, &seq2 )) - return 0; - if( seq2 == seq && comm == DAPI_REPLY_SUSPENDSCREENSAVING ) - break; /* --> */ - conn->generic_callback( conn, comm, seq2 ); - } - if( !dapi_readReplySuspendScreensaving( conn, &ret )) - return 0; - return ret; - } - -int dapi_MailTo( DapiConnection* conn, const char* subject, const char* body, const char* to, - const char* cc, const char* bcc, stringarr attachments, DapiWindowInfo winfo ) - { - int seq; - int ret; - seq = dapi_writeCommandMailTo( conn, subject, body, to, cc, bcc, attachments, winfo ); - if( seq == 0 ) - return 0; - for(;;) - { - int comm, seq2; - if( !dapi_readCommand( conn, &comm, &seq2 )) - return 0; - if( seq2 == seq && comm == DAPI_REPLY_MAILTO ) - break; /* --> */ - conn->generic_callback( conn, comm, seq2 ); - } - if( !dapi_readReplyMailTo( conn, &ret )) - return 0; - return ret; - } - -char* dapi_LocalFile( DapiConnection* conn, const char* remote, const char* local, - int allow_download, DapiWindowInfo winfo ) - { - int seq; - char* ret; - seq = dapi_writeCommandLocalFile( conn, remote, local, allow_download, winfo ); - if( seq == 0 ) - return 0; - for(;;) - { - int comm, seq2; - if( !dapi_readCommand( conn, &comm, &seq2 )) - return 0; - if( seq2 == seq && comm == DAPI_REPLY_LOCALFILE ) - break; /* --> */ - conn->generic_callback( conn, comm, seq2 ); - } - if( !dapi_readReplyLocalFile( conn, &ret )) - return 0; - if( ret[ 0 ] == '\0' ) - { - free( ret ); - ret = NULL; - } - return ret; - } - -int dapi_UploadFile( DapiConnection* conn, const char* local, const char* file, int remove_local, - DapiWindowInfo winfo ) - { - int seq; - int ret; - seq = dapi_writeCommandUploadFile( conn, local, file, remove_local, winfo ); - if( seq == 0 ) - return 0; - for(;;) - { - int comm, seq2; - if( !dapi_readCommand( conn, &comm, &seq2 )) - return 0; - if( seq2 == seq && comm == DAPI_REPLY_UPLOADFILE ) - break; /* --> */ - conn->generic_callback( conn, comm, seq2 ); - } - if( !dapi_readReplyUploadFile( conn, &ret )) - return 0; - return ret; - } - -int dapi_RemoveTemporaryLocalFile( DapiConnection* conn, const char* local ) - { - int seq; - int ret; - seq = dapi_writeCommandRemoveTemporaryLocalFile( conn, local ); - if( seq == 0 ) - return 0; - for(;;) - { - int comm, seq2; - if( !dapi_readCommand( conn, &comm, &seq2 )) - return 0; - if( seq2 == seq && comm == DAPI_REPLY_REMOVETEMPORARYLOCALFILE ) - break; /* --> */ - conn->generic_callback( conn, comm, seq2 ); - } - if( !dapi_readReplyRemoveTemporaryLocalFile( conn, &ret )) - return 0; - return ret; - } - -int dapi_AddressBookList( DapiConnection* conn, stringarr* idlist ) - { - int seq; - int ret; - seq = dapi_writeCommandAddressBookList( conn ); - if( seq == 0 ) - return 0; - for(;;) - { - int comm, seq2; - if( !dapi_readCommand( conn, &comm, &seq2 )) - return 0; - if( seq2 == seq && comm == DAPI_REPLY_ADDRESSBOOKLIST ) - break; /* --> */ - conn->generic_callback( conn, comm, seq2 ); - } - if( !dapi_readReplyAddressBookList( conn, idlist, &ret )) - return 0; - return ret; - } - -int dapi_AddressBookGetName( DapiConnection* conn, const char* id, char** givenname, - char** familyname, char** fullname ) - { - int seq; - int ret; - seq = dapi_writeCommandAddressBookGetName( conn, id ); - if( seq == 0 ) - return 0; - for(;;) - { - int comm, seq2; - if( !dapi_readCommand( conn, &comm, &seq2 )) - return 0; - if( seq2 == seq && comm == DAPI_REPLY_ADDRESSBOOKGETNAME ) - break; /* --> */ - conn->generic_callback( conn, comm, seq2 ); - } - if( !dapi_readReplyAddressBookGetName( conn, givenname, familyname, fullname, &ret )) - return 0; - return ret; - } - -int dapi_AddressBookGetEmails( DapiConnection* conn, const char* id, stringarr* emaillist ) - { - int seq; - int ret; - seq = dapi_writeCommandAddressBookGetEmails( conn, id ); - if( seq == 0 ) - return 0; - for(;;) - { - int comm, seq2; - if( !dapi_readCommand( conn, &comm, &seq2 )) - return 0; - if( seq2 == seq && comm == DAPI_REPLY_ADDRESSBOOKGETEMAILS ) - break; /* --> */ - conn->generic_callback( conn, comm, seq2 ); - } - if( !dapi_readReplyAddressBookGetEmails( conn, emaillist, &ret )) - return 0; - return ret; - } - -int dapi_AddressBookFindByName( DapiConnection* conn, const char* name, stringarr* idlist ) - { - int seq; - int ret; - seq = dapi_writeCommandAddressBookFindByName( conn, name ); - if( seq == 0 ) - return 0; - for(;;) - { - int comm, seq2; - if( !dapi_readCommand( conn, &comm, &seq2 )) - return 0; - if( seq2 == seq && comm == DAPI_REPLY_ADDRESSBOOKFINDBYNAME ) - break; /* --> */ - conn->generic_callback( conn, comm, seq2 ); - } - if( !dapi_readReplyAddressBookFindByName( conn, idlist, &ret )) - return 0; - return ret; - } - -int dapi_AddressBookOwner( DapiConnection* conn, char** id ) - { - int seq; - int ret; - seq = dapi_writeCommandAddressBookOwner( conn ); - if( seq == 0 ) - return 0; - for(;;) - { - int comm, seq2; - if( !dapi_readCommand( conn, &comm, &seq2 )) - return 0; - if( seq2 == seq && comm == DAPI_REPLY_ADDRESSBOOKOWNER ) - break; /* --> */ - conn->generic_callback( conn, comm, seq2 ); - } - if( !dapi_readReplyAddressBookOwner( conn, id, &ret )) - return 0; - return ret; - } - -int dapi_AddressBookGetVCard30( DapiConnection* conn, const char* id, char** vcard ) - { - int seq; - int ret; - seq = dapi_writeCommandAddressBookGetVCard30( conn, id ); - if( seq == 0 ) - return 0; - for(;;) - { - int comm, seq2; - if( !dapi_readCommand( conn, &comm, &seq2 )) - return 0; - if( seq2 == seq && comm == DAPI_REPLY_ADDRESSBOOKGETVCARD30 ) - break; /* --> */ - conn->generic_callback( conn, comm, seq2 ); - } - if( !dapi_readReplyAddressBookGetVCard30( conn, vcard, &ret )) - return 0; - return ret; - } - -int dapi_OpenUrl_Window( DapiConnection* conn, const char* url, long winfo ) - { - DapiWindowInfo winfo_; - dapi_windowInfoInitWindow( &winfo_, winfo ); - int ret = dapi_OpenUrl( conn, url, winfo_ ); - dapi_freeWindowInfo( winfo_ ); - return ret; - } - -int dapi_ExecuteUrl_Window( DapiConnection* conn, const char* url, long winfo ) - { - DapiWindowInfo winfo_; - dapi_windowInfoInitWindow( &winfo_, winfo ); - int ret = dapi_ExecuteUrl( conn, url, winfo_ ); - dapi_freeWindowInfo( winfo_ ); - return ret; - } - -int dapi_RunAsUser_Window( DapiConnection* conn, const char* user, const char* command, - long winfo ) - { - DapiWindowInfo winfo_; - dapi_windowInfoInitWindow( &winfo_, winfo ); - int ret = dapi_RunAsUser( conn, user, command, winfo_ ); - dapi_freeWindowInfo( winfo_ ); - return ret; - } - -int dapi_MailTo_Window( DapiConnection* conn, const char* subject, const char* body, - const char* to, const char* cc, const char* bcc, stringarr attachments, long winfo ) - { - DapiWindowInfo winfo_; - dapi_windowInfoInitWindow( &winfo_, winfo ); - int ret = dapi_MailTo( conn, subject, body, to, cc, bcc, attachments, winfo_ ); - dapi_freeWindowInfo( winfo_ ); - return ret; - } - -char* dapi_LocalFile_Window( DapiConnection* conn, const char* remote, const char* local, - int allow_download, long winfo ) - { - DapiWindowInfo winfo_; - dapi_windowInfoInitWindow( &winfo_, winfo ); - char* ret = dapi_LocalFile( conn, remote, local, allow_download, winfo_ ); - dapi_freeWindowInfo( winfo_ ); - return ret; - } - -int dapi_UploadFile_Window( DapiConnection* conn, const char* local, const char* file, - int remove_local, long winfo ) - { - DapiWindowInfo winfo_; - dapi_windowInfoInitWindow( &winfo_, winfo ); - int ret = dapi_UploadFile( conn, local, file, remove_local, winfo_ ); - dapi_freeWindowInfo( winfo_ ); - return ret; - } - diff --git a/portland/dapi/kde/gen/calls_generated.h b/portland/dapi/kde/gen/calls_generated.h deleted file mode 100644 index 8a86b5b..0000000 --- a/portland/dapi/kde/gen/calls_generated.h +++ /dev/null @@ -1,31 +0,0 @@ -int dapi_Init( DapiConnection* conn ); -int dapi_Capabilities( DapiConnection* conn, intarr* capabitilies ); -int dapi_OpenUrl( DapiConnection* conn, const char* url, DapiWindowInfo winfo ); -int dapi_OpenUrl_Window( DapiConnection* conn, const char* url, long winfo ); -int dapi_ExecuteUrl( DapiConnection* conn, const char* url, DapiWindowInfo winfo ); -int dapi_ExecuteUrl_Window( DapiConnection* conn, const char* url, long winfo ); -int dapi_ButtonOrder( DapiConnection* conn ); -int dapi_RunAsUser( DapiConnection* conn, const char* user, const char* command, DapiWindowInfo winfo ); -int dapi_RunAsUser_Window( DapiConnection* conn, const char* user, const char* command, - long winfo ); -int dapi_SuspendScreensaving( DapiConnection* conn, int suspend ); -int dapi_MailTo( DapiConnection* conn, const char* subject, const char* body, const char* to, - const char* cc, const char* bcc, stringarr attachments, DapiWindowInfo winfo ); -int dapi_MailTo_Window( DapiConnection* conn, const char* subject, const char* body, - const char* to, const char* cc, const char* bcc, stringarr attachments, long winfo ); -char* dapi_LocalFile( DapiConnection* conn, const char* remote, const char* local, - int allow_download, DapiWindowInfo winfo ); -char* dapi_LocalFile_Window( DapiConnection* conn, const char* remote, const char* local, - int allow_download, long winfo ); -int dapi_UploadFile( DapiConnection* conn, const char* local, const char* file, int remove_local, - DapiWindowInfo winfo ); -int dapi_UploadFile_Window( DapiConnection* conn, const char* local, const char* file, - int remove_local, long winfo ); -int dapi_RemoveTemporaryLocalFile( DapiConnection* conn, const char* local ); -int dapi_AddressBookList( DapiConnection* conn, stringarr* idlist ); -int dapi_AddressBookGetName( DapiConnection* conn, const char* id, char** givenname, - char** familyname, char** fullname ); -int dapi_AddressBookGetEmails( DapiConnection* conn, const char* id, stringarr* emaillist ); -int dapi_AddressBookFindByName( DapiConnection* conn, const char* name, stringarr* idlist ); -int dapi_AddressBookOwner( DapiConnection* conn, char** id ); -int dapi_AddressBookGetVCard30( DapiConnection* conn, const char* id, char** vcard ); diff --git a/portland/dapi/kde/gen/comm_generated.c b/portland/dapi/kde/gen/comm_generated.c deleted file mode 100644 index 32a8767..0000000 --- a/portland/dapi/kde/gen/comm_generated.c +++ /dev/null @@ -1,558 +0,0 @@ -int dapi_readCommandInit( DapiConnection* conn ) - { - return 1; - } - -int dapi_readCommandCapabilities( DapiConnection* conn ) - { - return 1; - } - -int dapi_readCommandOpenUrl( DapiConnection* conn, char** url, DapiWindowInfo* winfo ) - { - *url = readString( conn ); - *winfo = readWindowInfo( conn ); - return 1; - } - -int dapi_readCommandExecuteUrl( DapiConnection* conn, char** url, DapiWindowInfo* winfo ) - { - *url = readString( conn ); - *winfo = readWindowInfo( conn ); - return 1; - } - -int dapi_readCommandButtonOrder( DapiConnection* conn ) - { - return 1; - } - -int dapi_readCommandRunAsUser( DapiConnection* conn, char** user, char** command, - DapiWindowInfo* winfo ) - { - *user = readString( conn ); - *command = readString( conn ); - *winfo = readWindowInfo( conn ); - return 1; - } - -int dapi_readCommandSuspendScreensaving( DapiConnection* conn, int* suspend ) - { - readSocket( conn, suspend, sizeof( *suspend )); - return 1; - } - -int dapi_readCommandMailTo( DapiConnection* conn, char** subject, char** body, char** to, - char** cc, char** bcc, stringarr* attachments, DapiWindowInfo* winfo ) - { - *subject = readString( conn ); - *body = readString( conn ); - *to = readString( conn ); - *cc = readString( conn ); - *bcc = readString( conn ); - *attachments = readstringarr( conn ); - *winfo = readWindowInfo( conn ); - return 1; - } - -int dapi_readCommandLocalFile( DapiConnection* conn, char** remote, char** local, - int* allow_download, DapiWindowInfo* winfo ) - { - *remote = readString( conn ); - *local = readString( conn ); - readSocket( conn, allow_download, sizeof( *allow_download )); - *winfo = readWindowInfo( conn ); - return 1; - } - -int dapi_readCommandUploadFile( DapiConnection* conn, char** local, char** file, int* remove_local, - DapiWindowInfo* winfo ) - { - *local = readString( conn ); - *file = readString( conn ); - readSocket( conn, remove_local, sizeof( *remove_local )); - *winfo = readWindowInfo( conn ); - return 1; - } - -int dapi_readCommandRemoveTemporaryLocalFile( DapiConnection* conn, char** local ) - { - *local = readString( conn ); - return 1; - } - -int dapi_readCommandAddressBookList( DapiConnection* conn ) - { - return 1; - } - -int dapi_readCommandAddressBookGetName( DapiConnection* conn, char** id ) - { - *id = readString( conn ); - return 1; - } - -int dapi_readCommandAddressBookGetEmails( DapiConnection* conn, char** id ) - { - *id = readString( conn ); - return 1; - } - -int dapi_readCommandAddressBookFindByName( DapiConnection* conn, char** name ) - { - *name = readString( conn ); - return 1; - } - -int dapi_readCommandAddressBookOwner( DapiConnection* conn ) - { - return 1; - } - -int dapi_readCommandAddressBookGetVCard30( DapiConnection* conn, char** id ) - { - *id = readString( conn ); - return 1; - } - -int dapi_readReplyInit( DapiConnection* conn, int* ok ) - { - readSocket( conn, ok, sizeof( *ok )); - return 1; - } - -int dapi_readReplyCapabilities( DapiConnection* conn, intarr* capabitilies, int* ok ) - { - *capabitilies = readintarr( conn ); - readSocket( conn, ok, sizeof( *ok )); - return 1; - } - -int dapi_readReplyOpenUrl( DapiConnection* conn, int* ok ) - { - readSocket( conn, ok, sizeof( *ok )); - return 1; - } - -int dapi_readReplyExecuteUrl( DapiConnection* conn, int* ok ) - { - readSocket( conn, ok, sizeof( *ok )); - return 1; - } - -int dapi_readReplyButtonOrder( DapiConnection* conn, int* order ) - { - readSocket( conn, order, sizeof( *order )); - return 1; - } - -int dapi_readReplyRunAsUser( DapiConnection* conn, int* ok ) - { - readSocket( conn, ok, sizeof( *ok )); - return 1; - } - -int dapi_readReplySuspendScreensaving( DapiConnection* conn, int* ok ) - { - readSocket( conn, ok, sizeof( *ok )); - return 1; - } - -int dapi_readReplyMailTo( DapiConnection* conn, int* ok ) - { - readSocket( conn, ok, sizeof( *ok )); - return 1; - } - -int dapi_readReplyLocalFile( DapiConnection* conn, char** result ) - { - *result = readString( conn ); - return 1; - } - -int dapi_readReplyUploadFile( DapiConnection* conn, int* ok ) - { - readSocket( conn, ok, sizeof( *ok )); - return 1; - } - -int dapi_readReplyRemoveTemporaryLocalFile( DapiConnection* conn, int* ok ) - { - readSocket( conn, ok, sizeof( *ok )); - return 1; - } - -int dapi_readReplyAddressBookList( DapiConnection* conn, stringarr* idlist, int* ok ) - { - *idlist = readstringarr( conn ); - readSocket( conn, ok, sizeof( *ok )); - return 1; - } - -int dapi_readReplyAddressBookGetName( DapiConnection* conn, char** givenname, char** familyname, - char** fullname, int* ok ) - { - *givenname = readString( conn ); - *familyname = readString( conn ); - *fullname = readString( conn ); - readSocket( conn, ok, sizeof( *ok )); - return 1; - } - -int dapi_readReplyAddressBookGetEmails( DapiConnection* conn, stringarr* emaillist, - int* ok ) - { - *emaillist = readstringarr( conn ); - readSocket( conn, ok, sizeof( *ok )); - return 1; - } - -int dapi_readReplyAddressBookFindByName( DapiConnection* conn, stringarr* idlist, - int* ok ) - { - *idlist = readstringarr( conn ); - readSocket( conn, ok, sizeof( *ok )); - return 1; - } - -int dapi_readReplyAddressBookOwner( DapiConnection* conn, char** id, int* ok ) - { - *id = readString( conn ); - readSocket( conn, ok, sizeof( *ok )); - return 1; - } - -int dapi_readReplyAddressBookGetVCard30( DapiConnection* conn, char** vcard, int* ok ) - { - *vcard = readString( conn ); - readSocket( conn, ok, sizeof( *ok )); - return 1; - } - -int dapi_writeCommandInit( DapiConnection* conn ) - { - int seq = getNextSeq( conn ); - writeCommand( conn, DAPI_COMMAND_INIT, seq ); - return seq; - } - -int dapi_writeCommandCapabilities( DapiConnection* conn ) - { - int seq = getNextSeq( conn ); - writeCommand( conn, DAPI_COMMAND_CAPABILITIES, seq ); - return seq; - } - -int dapi_writeCommandOpenUrl( DapiConnection* conn, const char* url, DapiWindowInfo winfo ) - { - int seq = getNextSeq( conn ); - writeCommand( conn, DAPI_COMMAND_OPENURL, seq ); - writeString( conn, url ); - writeWindowInfo( conn, winfo ); - return seq; - } - -int dapi_writeCommandExecuteUrl( DapiConnection* conn, const char* url, DapiWindowInfo winfo ) - { - int seq = getNextSeq( conn ); - writeCommand( conn, DAPI_COMMAND_EXECUTEURL, seq ); - writeString( conn, url ); - writeWindowInfo( conn, winfo ); - return seq; - } - -int dapi_writeCommandButtonOrder( DapiConnection* conn ) - { - int seq = getNextSeq( conn ); - writeCommand( conn, DAPI_COMMAND_BUTTONORDER, seq ); - return seq; - } - -int dapi_writeCommandRunAsUser( DapiConnection* conn, const char* user, const char* command, - DapiWindowInfo winfo ) - { - int seq = getNextSeq( conn ); - writeCommand( conn, DAPI_COMMAND_RUNASUSER, seq ); - writeString( conn, user ); - writeString( conn, command ); - writeWindowInfo( conn, winfo ); - return seq; - } - -int dapi_writeCommandSuspendScreensaving( DapiConnection* conn, int suspend ) - { - int seq = getNextSeq( conn ); - writeCommand( conn, DAPI_COMMAND_SUSPENDSCREENSAVING, seq ); - writeSocket( conn, &suspend, sizeof( suspend )); - return seq; - } - -int dapi_writeCommandMailTo( DapiConnection* conn, const char* subject, const char* body, - const char* to, const char* cc, const char* bcc, stringarr attachments, DapiWindowInfo winfo ) - { - int seq = getNextSeq( conn ); - writeCommand( conn, DAPI_COMMAND_MAILTO, seq ); - writeString( conn, subject ); - writeString( conn, body ); - writeString( conn, to ); - writeString( conn, cc ); - writeString( conn, bcc ); - writestringarr( conn, attachments ); - writeWindowInfo( conn, winfo ); - return seq; - } - -int dapi_writeCommandLocalFile( DapiConnection* conn, const char* remote, const char* local, - int allow_download, DapiWindowInfo winfo ) - { - int seq = getNextSeq( conn ); - writeCommand( conn, DAPI_COMMAND_LOCALFILE, seq ); - writeString( conn, remote ); - writeString( conn, local ); - writeSocket( conn, &allow_download, sizeof( allow_download )); - writeWindowInfo( conn, winfo ); - return seq; - } - -int dapi_writeCommandUploadFile( DapiConnection* conn, const char* local, const char* file, - int remove_local, DapiWindowInfo winfo ) - { - int seq = getNextSeq( conn ); - writeCommand( conn, DAPI_COMMAND_UPLOADFILE, seq ); - writeString( conn, local ); - writeString( conn, file ); - writeSocket( conn, &remove_local, sizeof( remove_local )); - writeWindowInfo( conn, winfo ); - return seq; - } - -int dapi_writeCommandRemoveTemporaryLocalFile( DapiConnection* conn, const char* local ) - { - int seq = getNextSeq( conn ); - writeCommand( conn, DAPI_COMMAND_REMOVETEMPORARYLOCALFILE, seq ); - writeString( conn, local ); - return seq; - } - -int dapi_writeCommandAddressBookList( DapiConnection* conn ) - { - int seq = getNextSeq( conn ); - writeCommand( conn, DAPI_COMMAND_ADDRESSBOOKLIST, seq ); - return seq; - } - -int dapi_writeCommandAddressBookGetName( DapiConnection* conn, const char* id ) - { - int seq = getNextSeq( conn ); - writeCommand( conn, DAPI_COMMAND_ADDRESSBOOKGETNAME, seq ); - writeString( conn, id ); - return seq; - } - -int dapi_writeCommandAddressBookGetEmails( DapiConnection* conn, const char* id ) - { - int seq = getNextSeq( conn ); - writeCommand( conn, DAPI_COMMAND_ADDRESSBOOKGETEMAILS, seq ); - writeString( conn, id ); - return seq; - } - -int dapi_writeCommandAddressBookFindByName( DapiConnection* conn, const char* name ) - { - int seq = getNextSeq( conn ); - writeCommand( conn, DAPI_COMMAND_ADDRESSBOOKFINDBYNAME, seq ); - writeString( conn, name ); - return seq; - } - -int dapi_writeCommandAddressBookOwner( DapiConnection* conn ) - { - int seq = getNextSeq( conn ); - writeCommand( conn, DAPI_COMMAND_ADDRESSBOOKOWNER, seq ); - return seq; - } - -int dapi_writeCommandAddressBookGetVCard30( DapiConnection* conn, const char* id ) - { - int seq = getNextSeq( conn ); - writeCommand( conn, DAPI_COMMAND_ADDRESSBOOKGETVCARD30, seq ); - writeString( conn, id ); - return seq; - } - -void dapi_writeReplyInit( DapiConnection* conn, int seq, int ok ) - { - writeCommand( conn, DAPI_REPLY_INIT, seq ); - writeSocket( conn, &ok, sizeof( ok )); - } - -void dapi_writeReplyCapabilities( DapiConnection* conn, int seq, intarr capabitilies, - int ok ) - { - writeCommand( conn, DAPI_REPLY_CAPABILITIES, seq ); - writeintarr( conn, capabitilies ); - writeSocket( conn, &ok, sizeof( ok )); - } - -void dapi_writeReplyOpenUrl( DapiConnection* conn, int seq, int ok ) - { - writeCommand( conn, DAPI_REPLY_OPENURL, seq ); - writeSocket( conn, &ok, sizeof( ok )); - } - -void dapi_writeReplyExecuteUrl( DapiConnection* conn, int seq, int ok ) - { - writeCommand( conn, DAPI_REPLY_EXECUTEURL, seq ); - writeSocket( conn, &ok, sizeof( ok )); - } - -void dapi_writeReplyButtonOrder( DapiConnection* conn, int seq, int order ) - { - writeCommand( conn, DAPI_REPLY_BUTTONORDER, seq ); - writeSocket( conn, &order, sizeof( order )); - } - -void dapi_writeReplyRunAsUser( DapiConnection* conn, int seq, int ok ) - { - writeCommand( conn, DAPI_REPLY_RUNASUSER, seq ); - writeSocket( conn, &ok, sizeof( ok )); - } - -void dapi_writeReplySuspendScreensaving( DapiConnection* conn, int seq, int ok ) - { - writeCommand( conn, DAPI_REPLY_SUSPENDSCREENSAVING, seq ); - writeSocket( conn, &ok, sizeof( ok )); - } - -void dapi_writeReplyMailTo( DapiConnection* conn, int seq, int ok ) - { - writeCommand( conn, DAPI_REPLY_MAILTO, seq ); - writeSocket( conn, &ok, sizeof( ok )); - } - -void dapi_writeReplyLocalFile( DapiConnection* conn, int seq, const char* result ) - { - writeCommand( conn, DAPI_REPLY_LOCALFILE, seq ); - writeString( conn, result ); - } - -void dapi_writeReplyUploadFile( DapiConnection* conn, int seq, int ok ) - { - writeCommand( conn, DAPI_REPLY_UPLOADFILE, seq ); - writeSocket( conn, &ok, sizeof( ok )); - } - -void dapi_writeReplyRemoveTemporaryLocalFile( DapiConnection* conn, int seq, int ok ) - { - writeCommand( conn, DAPI_REPLY_REMOVETEMPORARYLOCALFILE, seq ); - writeSocket( conn, &ok, sizeof( ok )); - } - -void dapi_writeReplyAddressBookList( DapiConnection* conn, int seq, stringarr idlist, - int ok ) - { - writeCommand( conn, DAPI_REPLY_ADDRESSBOOKLIST, seq ); - writestringarr( conn, idlist ); - writeSocket( conn, &ok, sizeof( ok )); - } - -void dapi_writeReplyAddressBookGetName( DapiConnection* conn, int seq, const char* givenname, - const char* familyname, const char* fullname, int ok ) - { - writeCommand( conn, DAPI_REPLY_ADDRESSBOOKGETNAME, seq ); - writeString( conn, givenname ); - writeString( conn, familyname ); - writeString( conn, fullname ); - writeSocket( conn, &ok, sizeof( ok )); - } - -void dapi_writeReplyAddressBookGetEmails( DapiConnection* conn, int seq, stringarr emaillist, - int ok ) - { - writeCommand( conn, DAPI_REPLY_ADDRESSBOOKGETEMAILS, seq ); - writestringarr( conn, emaillist ); - writeSocket( conn, &ok, sizeof( ok )); - } - -void dapi_writeReplyAddressBookFindByName( DapiConnection* conn, int seq, stringarr idlist, - int ok ) - { - writeCommand( conn, DAPI_REPLY_ADDRESSBOOKFINDBYNAME, seq ); - writestringarr( conn, idlist ); - writeSocket( conn, &ok, sizeof( ok )); - } - -void dapi_writeReplyAddressBookOwner( DapiConnection* conn, int seq, const char* id, - int ok ) - { - writeCommand( conn, DAPI_REPLY_ADDRESSBOOKOWNER, seq ); - writeString( conn, id ); - writeSocket( conn, &ok, sizeof( ok )); - } - -void dapi_writeReplyAddressBookGetVCard30( DapiConnection* conn, int seq, const char* vcard, - int ok ) - { - writeCommand( conn, DAPI_REPLY_ADDRESSBOOKGETVCARD30, seq ); - writeString( conn, vcard ); - writeSocket( conn, &ok, sizeof( ok )); - } - -int dapi_writeCommandOpenUrl_Window( DapiConnection* conn, const char* url, long winfo ) - { - DapiWindowInfo winfo_; - dapi_windowInfoInitWindow( &winfo_, winfo ); - int seq = dapi_writeCommandOpenUrl( conn, url, winfo_ ); - dapi_freeWindowInfo( winfo_ ); - return seq; - } - -int dapi_writeCommandExecuteUrl_Window( DapiConnection* conn, const char* url, long winfo ) - { - DapiWindowInfo winfo_; - dapi_windowInfoInitWindow( &winfo_, winfo ); - int seq = dapi_writeCommandExecuteUrl( conn, url, winfo_ ); - dapi_freeWindowInfo( winfo_ ); - return seq; - } - -int dapi_writeCommandRunAsUser_Window( DapiConnection* conn, const char* user, const char* command, - long winfo ) - { - DapiWindowInfo winfo_; - dapi_windowInfoInitWindow( &winfo_, winfo ); - int seq = dapi_writeCommandRunAsUser( conn, user, command, winfo_ ); - dapi_freeWindowInfo( winfo_ ); - return seq; - } - -int dapi_writeCommandMailTo_Window( DapiConnection* conn, const char* subject, const char* body, - const char* to, const char* cc, const char* bcc, stringarr attachments, long winfo ) - { - DapiWindowInfo winfo_; - dapi_windowInfoInitWindow( &winfo_, winfo ); - int seq = dapi_writeCommandMailTo( conn, subject, body, to, cc, bcc, attachments, winfo_ ); - dapi_freeWindowInfo( winfo_ ); - return seq; - } - -int dapi_writeCommandLocalFile_Window( DapiConnection* conn, const char* remote, const char* local, - int allow_download, long winfo ) - { - DapiWindowInfo winfo_; - dapi_windowInfoInitWindow( &winfo_, winfo ); - int seq = dapi_writeCommandLocalFile( conn, remote, local, allow_download, winfo_ ); - dapi_freeWindowInfo( winfo_ ); - return seq; - } - -int dapi_writeCommandUploadFile_Window( DapiConnection* conn, const char* local, const char* file, - int remove_local, long winfo ) - { - DapiWindowInfo winfo_; - dapi_windowInfoInitWindow( &winfo_, winfo ); - int seq = dapi_writeCommandUploadFile( conn, local, file, remove_local, winfo_ ); - dapi_freeWindowInfo( winfo_ ); - return seq; - } - diff --git a/portland/dapi/kde/gen/comm_generated.h b/portland/dapi/kde/gen/comm_generated.h deleted file mode 100644 index ecd2920..0000000 --- a/portland/dapi/kde/gen/comm_generated.h +++ /dev/null @@ -1,134 +0,0 @@ -int dapi_readCommand( DapiConnection* conn, int* comm, int* seq ); -int dapi_readCommandInit( DapiConnection* conn ); -int dapi_writeCommandInit( DapiConnection* conn ); -int dapi_readReplyInit( DapiConnection* conn, int* ok ); -void dapi_writeReplyInit( DapiConnection* conn, int seq, int ok ); -int dapi_readCommandCapabilities( DapiConnection* conn ); -int dapi_writeCommandCapabilities( DapiConnection* conn ); -int dapi_readReplyCapabilities( DapiConnection* conn, intarr* capabitilies, int* ok ); -void dapi_writeReplyCapabilities( DapiConnection* conn, int seq, intarr capabitilies, - int ok ); -int dapi_readCommandOpenUrl( DapiConnection* conn, char** url, DapiWindowInfo* winfo ); -int dapi_writeCommandOpenUrl( DapiConnection* conn, const char* url, DapiWindowInfo winfo ); -int dapi_writeCommandOpenUrl_Window( DapiConnection* conn, const char* url, long winfo ); -int dapi_readReplyOpenUrl( DapiConnection* conn, int* ok ); -void dapi_writeReplyOpenUrl( DapiConnection* conn, int seq, int ok ); -int dapi_readCommandExecuteUrl( DapiConnection* conn, char** url, DapiWindowInfo* winfo ); -int dapi_writeCommandExecuteUrl( DapiConnection* conn, const char* url, DapiWindowInfo winfo ); -int dapi_writeCommandExecuteUrl_Window( DapiConnection* conn, const char* url, long winfo ); -int dapi_readReplyExecuteUrl( DapiConnection* conn, int* ok ); -void dapi_writeReplyExecuteUrl( DapiConnection* conn, int seq, int ok ); -int dapi_readCommandButtonOrder( DapiConnection* conn ); -int dapi_writeCommandButtonOrder( DapiConnection* conn ); -int dapi_readReplyButtonOrder( DapiConnection* conn, int* order ); -void dapi_writeReplyButtonOrder( DapiConnection* conn, int seq, int order ); -int dapi_readCommandRunAsUser( DapiConnection* conn, char** user, char** command, - DapiWindowInfo* winfo ); -int dapi_writeCommandRunAsUser( DapiConnection* conn, const char* user, const char* command, - DapiWindowInfo winfo ); -int dapi_writeCommandRunAsUser_Window( DapiConnection* conn, const char* user, const char* command, - long winfo ); -int dapi_readReplyRunAsUser( DapiConnection* conn, int* ok ); -void dapi_writeReplyRunAsUser( DapiConnection* conn, int seq, int ok ); -int dapi_readCommandSuspendScreensaving( DapiConnection* conn, int* suspend ); -int dapi_writeCommandSuspendScreensaving( DapiConnection* conn, int suspend ); -int dapi_readReplySuspendScreensaving( DapiConnection* conn, int* ok ); -void dapi_writeReplySuspendScreensaving( DapiConnection* conn, int seq, int ok ); -int dapi_readCommandMailTo( DapiConnection* conn, char** subject, char** body, char** to, - char** cc, char** bcc, stringarr* attachments, DapiWindowInfo* winfo ); -int dapi_writeCommandMailTo( DapiConnection* conn, const char* subject, const char* body, - const char* to, const char* cc, const char* bcc, stringarr attachments, DapiWindowInfo winfo ); -int dapi_writeCommandMailTo_Window( DapiConnection* conn, const char* subject, const char* body, - const char* to, const char* cc, const char* bcc, stringarr attachments, long winfo ); -int dapi_readReplyMailTo( DapiConnection* conn, int* ok ); -void dapi_writeReplyMailTo( DapiConnection* conn, int seq, int ok ); -int dapi_readCommandLocalFile( DapiConnection* conn, char** remote, char** local, - int* allow_download, DapiWindowInfo* winfo ); -int dapi_writeCommandLocalFile( DapiConnection* conn, const char* remote, const char* local, - int allow_download, DapiWindowInfo winfo ); -int dapi_writeCommandLocalFile_Window( DapiConnection* conn, const char* remote, const char* local, - int allow_download, long winfo ); -int dapi_readReplyLocalFile( DapiConnection* conn, char** result ); -void dapi_writeReplyLocalFile( DapiConnection* conn, int seq, const char* result ); -int dapi_readCommandUploadFile( DapiConnection* conn, char** local, char** file, int* remove_local, - DapiWindowInfo* winfo ); -int dapi_writeCommandUploadFile( DapiConnection* conn, const char* local, const char* file, - int remove_local, DapiWindowInfo winfo ); -int dapi_writeCommandUploadFile_Window( DapiConnection* conn, const char* local, const char* file, - int remove_local, long winfo ); -int dapi_readReplyUploadFile( DapiConnection* conn, int* ok ); -void dapi_writeReplyUploadFile( DapiConnection* conn, int seq, int ok ); -int dapi_readCommandRemoveTemporaryLocalFile( DapiConnection* conn, char** local ); -int dapi_writeCommandRemoveTemporaryLocalFile( DapiConnection* conn, const char* local ); -int dapi_readReplyRemoveTemporaryLocalFile( DapiConnection* conn, int* ok ); -void dapi_writeReplyRemoveTemporaryLocalFile( DapiConnection* conn, int seq, int ok ); -int dapi_readCommandAddressBookList( DapiConnection* conn ); -int dapi_writeCommandAddressBookList( DapiConnection* conn ); -int dapi_readReplyAddressBookList( DapiConnection* conn, stringarr* idlist, int* ok ); -void dapi_writeReplyAddressBookList( DapiConnection* conn, int seq, stringarr idlist, - int ok ); -int dapi_readCommandAddressBookGetName( DapiConnection* conn, char** id ); -int dapi_writeCommandAddressBookGetName( DapiConnection* conn, const char* id ); -int dapi_readReplyAddressBookGetName( DapiConnection* conn, char** givenname, char** familyname, - char** fullname, int* ok ); -void dapi_writeReplyAddressBookGetName( DapiConnection* conn, int seq, const char* givenname, - const char* familyname, const char* fullname, int ok ); -int dapi_readCommandAddressBookGetEmails( DapiConnection* conn, char** id ); -int dapi_writeCommandAddressBookGetEmails( DapiConnection* conn, const char* id ); -int dapi_readReplyAddressBookGetEmails( DapiConnection* conn, stringarr* emaillist, - int* ok ); -void dapi_writeReplyAddressBookGetEmails( DapiConnection* conn, int seq, stringarr emaillist, - int ok ); -int dapi_readCommandAddressBookFindByName( DapiConnection* conn, char** name ); -int dapi_writeCommandAddressBookFindByName( DapiConnection* conn, const char* name ); -int dapi_readReplyAddressBookFindByName( DapiConnection* conn, stringarr* idlist, - int* ok ); -void dapi_writeReplyAddressBookFindByName( DapiConnection* conn, int seq, stringarr idlist, - int ok ); -int dapi_readCommandAddressBookOwner( DapiConnection* conn ); -int dapi_writeCommandAddressBookOwner( DapiConnection* conn ); -int dapi_readReplyAddressBookOwner( DapiConnection* conn, char** id, int* ok ); -void dapi_writeReplyAddressBookOwner( DapiConnection* conn, int seq, const char* id, - int ok ); -int dapi_readCommandAddressBookGetVCard30( DapiConnection* conn, char** id ); -int dapi_writeCommandAddressBookGetVCard30( DapiConnection* conn, const char* id ); -int dapi_readReplyAddressBookGetVCard30( DapiConnection* conn, char** vcard, int* ok ); -void dapi_writeReplyAddressBookGetVCard30( DapiConnection* conn, int seq, const char* vcard, - int ok ); -enum - { - DAPI_COMMAND_INIT, - DAPI_REPLY_INIT, - DAPI_COMMAND_CAPABILITIES, - DAPI_REPLY_CAPABILITIES, - DAPI_COMMAND_OPENURL, - DAPI_REPLY_OPENURL, - DAPI_COMMAND_EXECUTEURL, - DAPI_REPLY_EXECUTEURL, - DAPI_COMMAND_BUTTONORDER, - DAPI_REPLY_BUTTONORDER, - DAPI_COMMAND_RUNASUSER, - DAPI_REPLY_RUNASUSER, - DAPI_COMMAND_SUSPENDSCREENSAVING, - DAPI_REPLY_SUSPENDSCREENSAVING, - DAPI_COMMAND_MAILTO, - DAPI_REPLY_MAILTO, - DAPI_COMMAND_LOCALFILE, - DAPI_REPLY_LOCALFILE, - DAPI_COMMAND_UPLOADFILE, - DAPI_REPLY_UPLOADFILE, - DAPI_COMMAND_REMOVETEMPORARYLOCALFILE, - DAPI_REPLY_REMOVETEMPORARYLOCALFILE, - DAPI_COMMAND_ADDRESSBOOKLIST, - DAPI_REPLY_ADDRESSBOOKLIST, - DAPI_COMMAND_ADDRESSBOOKGETNAME, - DAPI_REPLY_ADDRESSBOOKGETNAME, - DAPI_COMMAND_ADDRESSBOOKGETEMAILS, - DAPI_REPLY_ADDRESSBOOKGETEMAILS, - DAPI_COMMAND_ADDRESSBOOKFINDBYNAME, - DAPI_REPLY_ADDRESSBOOKFINDBYNAME, - DAPI_COMMAND_ADDRESSBOOKOWNER, - DAPI_REPLY_ADDRESSBOOKOWNER, - DAPI_COMMAND_ADDRESSBOOKGETVCARD30, - DAPI_REPLY_ADDRESSBOOKGETVCARD30 - }; diff --git a/portland/dapi/kde/gen/comm_internal_generated.h b/portland/dapi/kde/gen/comm_internal_generated.h deleted file mode 100644 index 95ab229..0000000 --- a/portland/dapi/kde/gen/comm_internal_generated.h +++ /dev/null @@ -1,96 +0,0 @@ -typedef struct command_header - { - int magic; - int seq; - int command; - } command_header; -typedef struct command_init - { - int dummy; - } command_init; -typedef struct command_openurl - { - int url_len; /* char* url */ - } command_openurl; -typedef struct command_executeurl - { - int url_len; /* char* url */ - } command_executeurl; -typedef struct command_buttonorder - { - int dummy; - } command_buttonorder; -typedef struct command_runasuser - { - int user_len; /* char* user */ - int command_len; /* char* command */ - } command_runasuser; -typedef struct command_suspendscreensaving - { - int suspend; - } command_suspendscreensaving; -typedef struct command_mailto - { - int subject_len; /* char* subject */ - int body_len; /* char* body */ - int to_len; /* char* to */ - int cc_len; /* char* cc */ - int bcc_len; /* char* bcc */ - int attachments_count; /* char** attachments */ - } command_mailto; -typedef struct command_localfile - { - int remote_len; /* char* remote */ - int local_len; /* char* local */ - int allow_download; - } command_localfile; -typedef struct command_uploadfile - { - int local_len; /* char* local */ - int file_len; /* char* file */ - int remove_local; - } command_uploadfile; -typedef struct command_removetemporarylocalfile - { - int local_len; /* char* local */ - } command_removetemporarylocalfile; -typedef struct reply_init - { - int ok; - } reply_init; -typedef struct reply_openurl - { - int ok; - } reply_openurl; -typedef struct reply_executeurl - { - int ok; - } reply_executeurl; -typedef struct reply_buttonorder - { - int order; - } reply_buttonorder; -typedef struct reply_runasuser - { - int ok; - } reply_runasuser; -typedef struct reply_suspendscreensaving - { - int ok; - } reply_suspendscreensaving; -typedef struct reply_mailto - { - int ok; - } reply_mailto; -typedef struct reply_localfile - { - int result_len; /* char* result */ - } reply_localfile; -typedef struct reply_uploadfile - { - int ok; - } reply_uploadfile; -typedef struct reply_removetemporarylocalfile - { - int ok; - } reply_removetemporarylocalfile; diff --git a/portland/dapi/kde/gen/gen.cpp b/portland/dapi/kde/gen/gen.cpp deleted file mode 100644 index 2352b49..0000000 --- a/portland/dapi/kde/gen/gen.cpp +++ /dev/null @@ -1,893 +0,0 @@ -#include <qfile.h> -#include <qstring.h> -#include <qvaluelist.h> -#include <stdlib.h> - -/* - -FUNCTION <name> - ARG <name> - TYPE <type> - string, string[], int, ... - OUT - is used in reply - RETURN - this OUT argument is return value of high-level call - ENDARG -ENDFUNCTION - -*/ - -struct Arg - { - Arg() : out( false ), ret( false ) {} - QString cType( bool out ) const; - static QString cType( const QString& type, bool out ); - void readCommand( QTextStream& stream ) const; - void writeCommand( QTextStream& stream ) const; - QString name; - QString type; - bool out; - bool ret; - static QValueList< Arg > stripOutArguments( const QValueList< Arg >& ); - static QValueList< Arg > stripNonOutArguments( const QValueList< Arg >& ); - static QValueList< Arg > stripSimpleArguments( const QValueList< Arg >& ); // leaves only string etc. - static QValueList< Arg > stripReturnArgument( const QValueList< Arg >& ); - }; - -typedef QValueList< Arg > ArgList; - -enum FunctionType - { - ReadCommand, WriteCommand, ReadReply, WriteReply, - HighLevel, HighLevelCallback, Callback - }; - -struct Function - { - Function() {} - QString returnType() const; - QString name; - ArgList args; - void generateC( QTextStream& stream, int indent, FunctionType type ) const; - bool hasWindowInfo() const; - Function convertWindowInfo( Arg& warg ) const; - }; - -QValueList< Function > functions; - -QFile* input_file = NULL; -QTextStream* input_stream = NULL; -static QString last_line; -int last_lineno = 0; - -#define check( arg ) my_check( __FILE__, __LINE__, arg ) -#define error() my_error( __FILE__, __LINE__ ) - -void my_error( const char* file, int line ) - { - fprintf( stderr, "Error: %s: %d\n", file, line ); - fprintf( stderr, "Line %d: %s\n", last_lineno, last_line.utf8().data()); - abort(); - } - -void my_check( const char* file, int line, bool arg ) - { - if( !arg ) - my_error( file, line ); - } - -QString Arg::cType( bool out ) const - { - return cType( type, out ); - } - -QString Arg::cType( const QString& type, bool out ) - { - if( type.contains( "[]" )) - return QString( type ).replace( "[]", "arr" ); - if( type == "bool" ) - return "int"; - else if( type == "string" ) - return out ? "char*" : "const char*"; - else if( type == "windowinfo" ) - return "DapiWindowInfo"; - else - return type; - } - -ArgList Arg::stripOutArguments( const ArgList& args ) - { - ArgList new_args; - for( ArgList::ConstIterator it = args.begin(); - it != args.end(); - ++it ) - { - const Arg& arg = (*it); - if( !arg.out ) - new_args.append( arg ); - } - return new_args; - } - -ArgList Arg::stripNonOutArguments( const ArgList& args ) - { - ArgList new_args; - for( ArgList::ConstIterator it = args.begin(); - it != args.end(); - ++it ) - { - const Arg& arg = (*it); - if( arg.out ) - new_args.append( arg ); - } - return new_args; - } - -ArgList Arg::stripSimpleArguments( const ArgList& args ) - { - ArgList new_args; - for( ArgList::ConstIterator it = args.begin(); - it != args.end(); - ++it ) - { - const Arg& arg = (*it); - if( arg.type == "string" - || arg.type == "windowinfo" - || arg.type.contains( "[]" )) - new_args.append( arg ); - } - return new_args; - } - -ArgList Arg::stripReturnArgument( const ArgList& args ) - { - ArgList new_args; - bool was = false; - for( ArgList::ConstIterator it = args.begin(); - it != args.end(); - ++it ) - { - const Arg& arg = (*it); - if( ! arg.ret ) - new_args.append( arg ); - else - { - if( was ) - error(); - was = true; - } - } - return new_args; - } - -void Arg::readCommand( QTextStream& stream ) const - { - if( type.endsWith( "[]" )) - stream << " *" << name << " = read" << cType( false ) << "( conn );\n"; - else if( type == "string" ) - stream << " *" << name << " = readString( conn );\n"; - else if( type == "windowinfo" ) - stream << " *" << name << " = readWindowInfo( conn );\n"; - else - stream << " readSocket( conn, " << name << ", sizeof( *" << name << " ));\n"; - } - -void Arg::writeCommand( QTextStream& stream ) const - { - if( type.endsWith( "[]" )) - stream << " write" << cType( false ) << "( conn, " << name << " );\n"; - else if( type == "string" ) - stream << " writeString( conn, " << name << " );\n"; - else if( type == "windowinfo" ) - stream << " writeWindowInfo( conn, " << name << " );\n"; - else - stream << " writeSocket( conn, &" << name << ", sizeof( " << name << " ));\n"; - } - -QString makeIndent( int indent ) - { - return indent > 0 ? QString().fill( ' ', indent ) : ""; - } - -void Function::generateC( QTextStream& stream, int indent, FunctionType type ) const - { - QString line; - line += makeIndent( indent ); - if( type == Callback ) - line += "typedef "; - if( type == HighLevel ) - { - QString rettype = returnType(); - line += Arg::cType( rettype, true ); - } - else - line += type != WriteReply && type != Callback ? "int" : "void"; - if( type == Callback ) - line += "( *"; - line += " dapi_"; - if( type == HighLevel || type == Callback ) - ; // nothing - else if( type == HighLevelCallback ) - line += "callback"; - else - { - line += type == ReadCommand || type == ReadReply ? "read" : "write"; - line += type == ReadCommand || type == WriteCommand ? "Command" : "Reply"; - } - line += name; - if( type == Callback ) - line += "_callback )"; - line += "( DapiConnection* conn"; - if( type == WriteReply || type == Callback ) - line += ", int seq"; - ArgList args2; - if( type == HighLevel ) - args2 = Arg::stripReturnArgument( args ); - else if( type == HighLevelCallback ) - args2 = Arg::stripOutArguments( args ); - else if( type == Callback ) - args2 = Arg::stripNonOutArguments( args ); - else if( type == ReadReply || type == WriteReply ) - args2 = Arg::stripNonOutArguments( args ); - else - args2 = Arg::stripOutArguments( args ); - for( ArgList::ConstIterator it = args2.begin(); - it != args2.end(); - ++it ) - { - const Arg& arg = (*it); - line += ","; - if( line.length() > 80 ) - { - stream << line << "\n"; - line = makeIndent( indent + 4 ); - } - else - line += " "; - line += arg.cType( type == ReadCommand || type == ReadReply - || ( type == HighLevel && arg.out )); - if( type == ReadCommand || type == ReadReply || ( type == HighLevel && arg.out )) - line += "*"; - line += " " + arg.name; - } - if( type == HighLevelCallback ) - { - if( line.length() > 80 ) - { - stream << line << ",\n"; - line = makeIndent( indent + 4 ); - } - else - line += ", "; - line += "dapi_" + QString( name ).remove( "_Window" ) + "_callback callback"; - } - line += " )"; - stream << line; - } - -QString Function::returnType() const - { - for( ArgList::ConstIterator it = args.begin(); - it != args.end(); - ++it ) - { - const Arg& arg = (*it); - if( arg.ret ) - return arg.type; - } - return "void"; - } - -bool Function::hasWindowInfo() const - { - for( ArgList::ConstIterator it = args.begin(); - it != args.end(); - ++it ) - { - const Arg& arg = (*it); - if( arg.type == "windowinfo" && !arg.out ) - return true; - } - return false; - } - -Function Function::convertWindowInfo( Arg& warg ) const - { - if( !hasWindowInfo()) - error(); - Function ret = *this; - ret.name += "_Window"; - for( ArgList::Iterator it = ret.args.begin(); - it != ret.args.end(); - ++it ) - { - Arg& arg = (*it); - if( arg.type == "windowinfo" && !arg.out ) - { - warg = arg; - arg.type = "long"; - } - } - return ret; - } - -void openInputFile( const QString& filename ) - { - check( input_file == NULL ); - input_file = new QFile( filename ); - if( !input_file->open( IO_ReadOnly )) - error(); - input_stream = new QTextStream( input_file ); - last_lineno = 0; - } - -QString getInputLine() - { - while( !input_stream->atEnd()) - { - QString line = input_stream->readLine().stripWhiteSpace(); - ++last_lineno; - last_line = line; - if( line.isEmpty() || line[ 0 ] == '#' ) - continue; - return line; - } - return QString::null; - } - -void closeInputFile() - { - delete input_stream; - delete input_file; - input_stream = NULL; - input_file = NULL; - } - -void parseArg( Function& function, const QString& details ) - { - Arg arg; - arg.name = details; - for(;;) - { - QString line = getInputLine(); - if( line.isEmpty()) - break; - if( line.startsWith( "ENDARG" )) - { - check( !arg.type.isEmpty()); - function.args.append( arg ); - return; - } - else if( line.startsWith( "TYPE" )) - { - check( arg.type.isEmpty()); - arg.type = line.mid( strlen( "TYPE" )).stripWhiteSpace(); - } - else if( line.startsWith( "OUT" )) - { - arg.out = true; - } - else if( line.startsWith( "RETURN" )) - { - arg.out = true; - arg.ret = true; - } - else - error(); - } - error(); - } - -void parseFunction( const QString& details ) - { - Function function; - function.name = details; - for(;;) - { - QString line = getInputLine(); - if( line.isEmpty()) - break; - if( line.startsWith( "ENDFUNCTION" )) - { - functions.append( function ); - return; - } - else if( line.startsWith( "ARG" )) - { - parseArg( function, line.mid( strlen( "ARG" )).stripWhiteSpace()); - } - else - error(); - } - error(); - } - -void parse() - { - openInputFile( "gen.txt" ); - for(;;) - { - QString line = getInputLine(); - if( line.isEmpty()) - break; - if( line.startsWith( "FUNCTION" )) - { - parseFunction( line.mid( strlen( "FUNCTION" )).stripWhiteSpace()); - } - else - error(); - } - closeInputFile(); - } - -void generateSharedCommH() - { - QFile file( "comm_generated.h" ); - if( !file.open( IO_WriteOnly )) - error(); - QTextStream stream( &file ); - stream << "int dapi_readCommand( DapiConnection* conn, int* comm, int* seq );\n"; - for( QValueList< Function >::ConstIterator it = functions.begin(); - it != functions.end(); - ++it ) - { - const Function& function = *it; - function.generateC( stream, 0, ReadCommand ); - stream << ";\n"; - function.generateC( stream, 0, WriteCommand ); - stream << ";\n"; - if( function.hasWindowInfo()) - { - Arg dummy; - Function f2 = function.convertWindowInfo( dummy ); - f2.generateC( stream, 0, WriteCommand ); - stream << ";\n"; - } - function.generateC( stream, 0, ReadReply ); - stream << ";\n"; - function.generateC( stream, 0, WriteReply ); - stream << ";\n"; - } - stream << "enum\n {"; - bool needs_comma = false; - for( QValueList< Function >::ConstIterator it = functions.begin(); - it != functions.end(); - ++it ) - { - const Function& function = *it; - if( needs_comma ) - stream << ","; - needs_comma = true; - stream << "\n DAPI_COMMAND_" << function.name.upper() - << ",\n DAPI_REPLY_" << function.name.upper(); - } - stream << "\n };\n"; - } - -void generateSharedCommCReadFunctions( QTextStream& stream, FunctionType type ) - { - for( QValueList< Function >::ConstIterator it = functions.begin(); - it != functions.end(); - ++it ) - { - const Function& function = *it; - function.generateC( stream, 0, type ); - stream << "\n {\n"; - ArgList args = type == ReadCommand ? Arg::stripOutArguments( function.args ) - : Arg::stripNonOutArguments( function.args ); - for( ArgList::ConstIterator it = args.begin(); - it != args.end(); - ++it ) - { - const Arg& arg = (*it); - arg.readCommand( stream ); - } - // TODO tady chybi kontrola, ze nebyla chyba pri cteni - // a udelat to nejak vic genericky -#if 0 - ArgList args_extra = Arg::stripSimpleArguments( args ); - if( !args_extra.isEmpty()) - { - stream << " if("; - bool need_op = false; - for( ArgList::ConstIterator it = args_extra.begin(); - it != args_extra.end(); - ++it ) - { - const Arg& arg = (*it); - if( need_op ) - stream << " ||"; - stream << " *" << arg.name << " == NULL"; - need_op = true; - } - stream << " )\n {\n"; - for( ArgList::ConstIterator it = args_extra.begin(); - it != args_extra.end(); - ++it ) - { - const Arg& arg = (*it); - stream << " free( *" << arg.name << " );\n"; - } - stream << " return 0;\n }\n"; - } -#endif - stream << " return 1;\n" - << " }\n\n"; - } - } - -void generateSharedCommCWriteFunctions( QTextStream& stream, FunctionType type ) - { - for( QValueList< Function >::ConstIterator it = functions.begin(); - it != functions.end(); - ++it ) - { - const Function& function = *it; - function.generateC( stream, 0, type ); - stream << "\n {\n"; - if( type == WriteCommand ) - { - stream << " int seq = getNextSeq( conn );\n" - << " writeCommand( conn, DAPI_COMMAND_" << function.name.upper() << ", seq );\n"; - } - else - { - stream << " writeCommand( conn, DAPI_REPLY_" << function.name.upper() << ", seq );\n"; - } - ArgList args2 = type == WriteCommand ? Arg::stripOutArguments( function.args ) : Arg::stripNonOutArguments( function.args ); - for( ArgList::ConstIterator it = args2.begin(); - it != args2.end(); - ++it ) - { - const Arg& arg = (*it); - arg.writeCommand( stream ); - } - // TODO kontrola, ze nebyla chyba pri zapisu? - if( type == WriteCommand ) - stream << " return seq;\n"; - stream << " }\n\n"; - } - } - -static void generateSharedCommCWindow( QTextStream& stream ) - { - for( QValueList< Function >::ConstIterator it = functions.begin(); - it != functions.end(); - ++it ) - { - const Function& function = *it; - if( !function.hasWindowInfo()) - continue; - Arg warg; - Function f2 = function.convertWindowInfo( warg ); - f2.generateC( stream, 0, WriteCommand ); - stream << "\n {\n" - << " DapiWindowInfo winfo_;\n" - << " dapi_windowInfoInitWindow( &winfo_, " << warg.name << " );\n" - << " int seq = dapi_writeCommand" << function.name << "( conn"; - ArgList args = Arg::stripOutArguments( function.args ); - for( ArgList::ConstIterator it = args.begin(); - it != args.end(); - ++it ) - { - const Arg& argument = *it; - if( argument.type == "windowinfo" ) - { - stream << ", winfo_"; - continue; - } - stream << ", " << argument.name; - } - stream << " );\n" - << " dapi_freeWindowInfo( winfo_ );\n" - << " return seq;\n" - << " }\n\n"; - } - } - -void generateSharedCommC() - { - QFile file( "comm_generated.c" ); - if( !file.open( IO_WriteOnly )) - error(); - QTextStream stream( &file ); - generateSharedCommCReadFunctions( stream, ReadCommand ); - generateSharedCommCReadFunctions( stream, ReadReply ); - generateSharedCommCWriteFunctions( stream, WriteCommand ); - generateSharedCommCWriteFunctions( stream, WriteReply ); - generateSharedCommCWindow( stream ); - } - -void generateSharedCallsH() - { - QFile file( "calls_generated.h" ); - if( !file.open( IO_WriteOnly )) - error(); - QTextStream stream( &file ); - for( QValueList< Function >::ConstIterator it = functions.begin(); - it != functions.end(); - ++it ) - { - const Function& function = *it; - function.generateC( stream, 0, HighLevel ); - stream << ";\n"; - if( function.hasWindowInfo()) - { - Arg dummy; - Function f2 = function.convertWindowInfo( dummy ); - f2.generateC( stream, 0, HighLevel ); - stream << ";\n"; - } - } - } - -static void generateSharedCallsCWindow( QTextStream& stream ) - { - for( QValueList< Function >::ConstIterator it = functions.begin(); - it != functions.end(); - ++it ) - { - const Function& function = *it; - if( !function.hasWindowInfo()) - continue; - Arg warg; - Function f2 = function.convertWindowInfo( warg ); - f2.generateC( stream, 0, HighLevel ); - stream << "\n {\n" - << " DapiWindowInfo winfo_;\n" - << " dapi_windowInfoInitWindow( &winfo_, " << warg.name << " );\n" - << " " << Arg::cType( function.returnType(), true ) << " ret = dapi_" << function.name << "( conn"; - ArgList args = Arg::stripReturnArgument( function.args ); - for( ArgList::ConstIterator it = args.begin(); - it != args.end(); - ++it ) - { - const Arg& argument = *it; - if( argument.type == "windowinfo" ) - { - stream << ", winfo_"; - continue; - } - stream << ", " << argument.name; - } - stream << " );\n" - << " dapi_freeWindowInfo( winfo_ );\n" - << " return ret;\n" - << " }\n\n"; - } - } - -void generateSharedCallsC() - { - QFile file( "calls_generated.c" ); - if( !file.open( IO_WriteOnly )) - error(); - QTextStream stream( &file ); - for( QValueList< Function >::ConstIterator it = functions.begin(); - it != functions.end(); - ++it ) - { - const Function& function = *it; - QString rettype = function.returnType(); - function.generateC( stream, 0, HighLevel ); - stream << "\n {\n" - << " int seq;\n"; - stream << " " << Arg::cType( rettype, true ) << " ret;\n"; - stream << " seq = dapi_writeCommand" << function.name << "( conn"; - ArgList args = Arg::stripReturnArgument( function.args ); - ArgList args1 = Arg::stripOutArguments( args ); - for( ArgList::ConstIterator it = args1.begin(); - it != args1.end(); - ++it ) - { - const Arg& arg = (*it); - stream << ", " << arg.name; - } - stream << " );\n" - << " if( seq == 0 )\n" - << " return 0;\n"; - stream << " for(;;)\n" - << " {\n" - << " int comm, seq2;\n" - << " if( !dapi_readCommand( conn, &comm, &seq2 ))\n" - << " return 0;\n" - << " if( seq2 == seq && comm == DAPI_REPLY_" << function.name.upper() << " )\n" - << " break; /* --> */\n" - << " conn->generic_callback( conn, comm, seq2 );\n" - << " }\n" - << " if( !dapi_readReply" << function.name << "( conn"; - ArgList args2 = Arg::stripNonOutArguments( function.args ); - for( ArgList::ConstIterator it = args2.begin(); - it != args2.end(); - ++it ) - { - const Arg& arg = (*it); - if( arg.ret ) - stream << ", &ret"; - else - stream << ", " << arg.name; - } - stream << " ))\n" - << " return 0;\n"; - if( rettype == "string" ) - { - // make sure empty return string is really seen as failure - stream << " if( ret[ 0 ] == \'\\0\' )\n" - << " {\n" - << " free( ret );\n" - << " ret = NULL;\n" - << " }\n"; - } - stream << " return ret;\n" - << " }\n\n"; - } - generateSharedCallsCWindow( stream ); - } - -void generateSharedCallbacksH() - { - QFile file( "callbacks_generated.h" ); - if( !file.open( IO_WriteOnly )) - error(); - QTextStream stream( &file ); - for( QValueList< Function >::ConstIterator it = functions.begin(); - it != functions.end(); - ++it ) - { - const Function& function = *it; - function.generateC( stream, 0, Callback ); - stream << ";\n"; - function.generateC( stream, 0, HighLevelCallback ); - stream << ";\n"; - if( function.hasWindowInfo()) - { - Arg dummy; - Function f2 = function.convertWindowInfo( dummy ); - f2.generateC( stream, 0, HighLevelCallback ); - stream << ";\n"; - } - } - } - -static void generateSharedCallbacksCWindow( QTextStream& stream ) - { - for( QValueList< Function >::ConstIterator it = functions.begin(); - it != functions.end(); - ++it ) - { - const Function& function = *it; - if( !function.hasWindowInfo()) - continue; - Arg warg; - Function f2 = function.convertWindowInfo( warg ); - f2.generateC( stream, 0, HighLevelCallback ); - stream << "\n {\n" - << " DapiWindowInfo winfo_;\n" - << " dapi_windowInfoInitWindow( &winfo_, " << warg.name << " );\n" - << " int seq = dapi_callback" << function.name << "( conn"; - ArgList args = Arg::stripOutArguments( function.args ); - for( ArgList::ConstIterator it = args.begin(); - it != args.end(); - ++it ) - { - const Arg& argument = *it; - if( argument.type == "windowinfo" ) - { - stream << ", winfo_"; - continue; - } - stream << ", " << argument.name; - } - stream << ", callback );\n" - << " dapi_freeWindowInfo( winfo_ );\n" - << " return seq;\n" - << " }\n\n"; - } - } - -void generateSharedCallbacksC() - { - QFile file( "callbacks_generated.c" ); - if( !file.open( IO_WriteOnly )) - error(); - QTextStream stream( &file ); - for( QValueList< Function >::ConstIterator it = functions.begin(); - it != functions.end(); - ++it ) - { - const Function& function = *it; - function.generateC( stream, 0, HighLevelCallback ); - stream << "\n" - << " {\n" - << " int seq;\n" - << " DapiCallbackData* call;\n" - << " seq = dapi_writeCommand" << function.name << "( conn"; - ArgList args2 = Arg::stripOutArguments( function.args ); - for( ArgList::ConstIterator it = args2.begin(); - it != args2.end(); - ++it ) - { - const Arg& arg = *it; - stream << ", " << arg.name; - } - stream << " );\n"; - stream << " if( seq == 0 )\n" - << " return 0;\n" - << " call = malloc( sizeof( *call ));\n" - << " if( call == NULL )\n" - << " return 0;\n" - << " call->seq = seq;\n" - << " call->callback = callback;\n" - << " call->command = DAPI_COMMAND_" << function.name.upper() << ";\n" - << " call->next = conn->callbacks;\n" - << " conn->callbacks = call;\n" - << " return seq;\n" - << " }\n\n"; - } - stream << "static void genericCallbackDispatch( DapiConnection* conn, DapiCallbackData* data, int command, int seq )\n" - << " {\n" - << " switch( command )\n" - << " {\n"; - for( QValueList< Function >::ConstIterator it = functions.begin(); - it != functions.end(); - ++it ) - { - const Function& function = *it; - stream << " case DAPI_REPLY_" << function.name.upper() << ":\n" - << " {\n"; - ArgList args = Arg::stripNonOutArguments( function.args ); - for( ArgList::ConstIterator it = args.begin(); - it != args.end(); - ++it ) - { - const Arg& arg = *it; - stream << makeIndent( 12 ) << arg.cType( true ) << " " << arg.name << ";\n"; - } - // TODO check that command "matches" data->command? i.e. that the reply matches the expected reply - // for the sent command - stream << makeIndent( 12 ) << "dapi_readReply" << function.name << "( conn"; - for( ArgList::ConstIterator it = args.begin(); - it != args.end(); - ++it ) - { - const Arg& arg = *it; - stream << ", &" << arg.name; - } - stream << " );\n" - << makeIndent( 12 ) << "(( dapi_" << function.name << "_callback ) data->callback )( conn, data->seq"; - for( ArgList::ConstIterator it = args.begin(); - it != args.end(); - ++it ) - { - const Arg& arg = *it; - stream << ", " << arg.name; - } - // TODO tady cleanup, stejne jako u calls.c - udelat nejak genericky - stream << " );\n" - << makeIndent( 12 ) << "break;\n" - << makeIndent( 12 ) << "}\n"; - } - stream << " }\n" - << " }\n"; - generateSharedCallbacksCWindow( stream ); - } - -void generateShared() - { - generateSharedCommH(); - generateSharedCommC(); - generateSharedCallsH(); - generateSharedCallsC(); - generateSharedCallbacksH(); - generateSharedCallbacksC(); - } - -void generate() - { - generateShared(); - } - -int main() - { - parse(); - generate(); - return 0; - } diff --git a/portland/dapi/kde/gen/gen.txt b/portland/dapi/kde/gen/gen.txt deleted file mode 100644 index 66bb5a6..0000000 --- a/portland/dapi/kde/gen/gen.txt +++ /dev/null @@ -1,239 +0,0 @@ -FUNCTION Init - ARG ok - TYPE bool - RETURN - ENDARG -ENDFUNCTION - -FUNCTION Capabilities - ARG capabitilies - TYPE int[] - OUT - ENDARG - ARG ok - TYPE bool - RETURN - ENDARG -ENDFUNCTION - -FUNCTION OpenUrl - ARG url - TYPE string - ENDARG - ARG winfo - TYPE windowinfo - ENDARG - ARG ok - TYPE bool - RETURN - ENDARG -ENDFUNCTION - -FUNCTION ExecuteUrl - ARG url - TYPE string - ENDARG - ARG winfo - TYPE windowinfo - ENDARG - ARG ok - TYPE bool - RETURN - ENDARG -ENDFUNCTION - -FUNCTION ButtonOrder - ARG order - TYPE int - RETURN - ENDARG -ENDFUNCTION - -FUNCTION RunAsUser - ARG user - TYPE string - ENDARG - ARG command - TYPE string - ENDARG - ARG winfo - TYPE windowinfo - ENDARG - ARG ok - TYPE bool - RETURN - ENDARG -ENDFUNCTION - -FUNCTION SuspendScreensaving - ARG suspend - TYPE bool - ENDARG - ARG ok - TYPE bool - RETURN - ENDARG -ENDFUNCTION - -FUNCTION MailTo - ARG subject - TYPE string - ENDARG - ARG body - TYPE string - ENDARG - ARG to - TYPE string - ENDARG - ARG cc - TYPE string - ENDARG - ARG bcc - TYPE string - ENDARG - ARG attachments - TYPE string[] - ENDARG - ARG winfo - TYPE windowinfo - ENDARG - ARG ok - TYPE bool - RETURN - ENDARG -ENDFUNCTION - -FUNCTION LocalFile - ARG remote - TYPE string - ENDARG - ARG local - TYPE string - ENDARG - ARG allow_download - TYPE bool - ENDARG - ARG winfo - TYPE windowinfo - ENDARG - ARG result - TYPE string - RETURN - ENDARG -ENDFUNCTION - -FUNCTION UploadFile - ARG local - TYPE string - ENDARG - ARG file - TYPE string - ENDARG - ARG remove_local - TYPE bool - ENDARG - ARG winfo - TYPE windowinfo - ENDARG - ARG ok - TYPE bool - RETURN - ENDARG -ENDFUNCTION - -FUNCTION RemoveTemporaryLocalFile - ARG local - TYPE string - ENDARG - ARG ok - TYPE bool - RETURN - ENDARG -ENDFUNCTION - -FUNCTION AddressBookList - ARG idlist - TYPE string[] - OUT - ENDARG - ARG ok - TYPE bool - RETURN - ENDARG -ENDFUNCTION - -FUNCTION AddressBookGetName - ARG id - TYPE string - ENDARG - ARG givenname - TYPE string - OUT - ENDARG - ARG familyname - TYPE string - OUT - ENDARG - ARG fullname - TYPE string - OUT - ENDARG - ARG ok - TYPE bool - RETURN - ENDARG -ENDFUNCTION - -FUNCTION AddressBookGetEmails - ARG id - TYPE string - ENDARG - ARG emaillist - TYPE string[] - OUT - ENDARG - ARG ok - TYPE bool - RETURN - ENDARG -ENDFUNCTION - -FUNCTION AddressBookFindByName - ARG name - TYPE string - ENDARG - ARG idlist - TYPE string[] - OUT - ENDARG - ARG ok - TYPE bool - RETURN - ENDARG -ENDFUNCTION - -FUNCTION AddressBookOwner - ARG id - TYPE string - OUT - ENDARG - ARG ok - TYPE bool - RETURN - ENDARG -ENDFUNCTION - -FUNCTION AddressBookGetVCard30 - ARG id - TYPE string - ENDARG - ARG vcard - TYPE string - OUT - ENDARG - ARG ok - TYPE bool - RETURN - ENDARG -ENDFUNCTION - diff --git a/portland/dapi/lib/.cvsignore b/portland/dapi/lib/.cvsignore deleted file mode 100644 index 09980ae..0000000 --- a/portland/dapi/lib/.cvsignore +++ /dev/null @@ -1,6 +0,0 @@ -.deps -.libs -Makefile -Makefile.in -*.lo -*.la diff --git a/portland/dapi/lib/Makefile.am b/portland/dapi/lib/Makefile.am deleted file mode 100644 index 3786177..0000000 --- a/portland/dapi/lib/Makefile.am +++ /dev/null @@ -1,7 +0,0 @@ -lib_LTLIBRARIES = libdapi.la - -libdapi_la_SOURCES = comm.c calls.c callbacks.c -libdapi_la_LIBADD = -libdapi_la_LDFLAGS = $(all_libraries) -no-undefined - -INCLUDES = -I$(top_builddir)/include $(all_includes) diff --git a/portland/dapi/lib/callbacks.c b/portland/dapi/lib/callbacks.c deleted file mode 100644 index 62f402d..0000000 --- a/portland/dapi/lib/callbacks.c +++ /dev/null @@ -1,50 +0,0 @@ -#include "callbacks.h" - -#include <stdio.h> -#include <stdlib.h> - -#include "comm_internal.h" - -#include <dapi/callbacks_generated.c> - -DapiGenericCallback dapi_setGenericCallback( DapiConnection* conn, DapiGenericCallback callback ) - { - DapiGenericCallback ret = conn->generic_callback; - conn->generic_callback = callback; - return ret; - } - -void dapi_processData( DapiConnection* conn ) - { - while( dapi_hasData( conn )) - { - int command; - int seq; - if( !dapi_readCommand( conn, &command, &seq )) - return; /* TODO error-handling? */ - conn->generic_callback( conn, command, seq ); - } - } - -void dapi_genericCallback( DapiConnection* conn, int command, int seq ) - { - DapiCallbackData* pos; - DapiCallbackData* prev = NULL; - for( pos = conn->callbacks; - pos != NULL; - prev = pos, pos = pos->next ) - { - if( pos->seq == seq ) - { - if( pos->callback != NULL ) - genericCallbackDispatch( conn, pos, command, seq ); - if( prev != NULL ) - prev = pos->next; - else - conn->callbacks = pos->next; - free( pos ); - return; - } - } -/* TODO handle unhandled */ - } diff --git a/portland/dapi/lib/callbacks.h b/portland/dapi/lib/callbacks.h deleted file mode 100644 index 333ee82..0000000 --- a/portland/dapi/lib/callbacks.h +++ /dev/null @@ -1,24 +0,0 @@ -#ifndef DAPI_CALLBACKS_H -#define DAPI_CALLBACKS_H - -#ifdef __cplusplus -extern "C" { -#endif - -#include <dapi/comm.h> - -#include <dapi/callbacks_generated.h> - -typedef void (*DapiGenericCallback)( DapiConnection* conn, int command, int seq ); - -DapiGenericCallback dapi_setGenericCallback( DapiConnection* conn, DapiGenericCallback callback ); - -void dapi_processData( DapiConnection* conn ); - -void dapi_genericCallback( DapiConnection* conn, int command, int seq ); - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/portland/dapi/lib/calls.c b/portland/dapi/lib/calls.c deleted file mode 100644 index f515269..0000000 --- a/portland/dapi/lib/calls.c +++ /dev/null @@ -1,9 +0,0 @@ -#include "calls.h" - -#include <stdio.h> -#include <stdlib.h> - -#include "comm.h" -#include "comm_internal.h" - -#include <dapi/calls_generated.c> diff --git a/portland/dapi/lib/calls.h b/portland/dapi/lib/calls.h deleted file mode 100644 index 7d26b3d..0000000 --- a/portland/dapi/lib/calls.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifndef DAPI_CALLS_H -#define DAPI_CALLS_H - -#include <dapi/comm.h> - -#ifdef __cplusplus -extern "C" { -#endif - -#include <dapi/calls_generated.h> - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/portland/dapi/lib/comm.c b/portland/dapi/lib/comm.c deleted file mode 100644 index f368b82..0000000 --- a/portland/dapi/lib/comm.c +++ /dev/null @@ -1,368 +0,0 @@ -#include "comm.h" - -#include <errno.h> -#include <fcntl.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <sys/socket.h> -#include <sys/stat.h> -#include <sys/types.h> -#include <sys/un.h> -#include <unistd.h> - -#include "comm_internal.h" -#include "callbacks.h" - -static void getDisplay( char* ret, int max ) - { - char hostname[ 256 ]; - const char* disp = getenv( "DISPLAY" ); - char* pos; - *ret = '\0'; - if( disp == NULL ) - disp = ":0"; - if( *disp == ':' ) - { - gethostname( ret, max ); - hostname[ max - 1 ] = '\0'; - } - strncat( ret, disp, max - 1 ); - pos = strrchr( ret, '.' ); /* strip head */ - if( pos != NULL && pos > strrchr( ret, ':' )) - *pos = '\0'; - } - -static void socketName( char* sock_file, int max ) - { - const char* home; - char display[ 256 ]; - home = getenv( "HOME" ); - getDisplay( display, 255 ); - snprintf( sock_file, max - 1, "%s/.dapi-%s", home, display ); - } - -DapiConnection* dapi_connect() - { - char sock_file[ 256 ]; - int sock; - struct sockaddr_un addr; - DapiConnection* ret; - socketName( sock_file, 255 ); - sock = socket( PF_UNIX, SOCK_STREAM, 0 ); - if( sock < 0 ) - { - perror( "socket" ); - return NULL; - } - addr.sun_family = AF_UNIX; - strcpy( addr.sun_path, sock_file ); - if( connect( sock, ( struct sockaddr* ) &addr, sizeof( addr )) < 0 ) - { - perror( "connect" ); - close( sock ); - return NULL; - } - ret = malloc( sizeof( DapiConnection )); - if( ret != NULL ) - { - ret->sock = sock; - ret->generic_callback = dapi_genericCallback; - ret->in_server = 0; - ret->last_seq = 0; - ret->callbacks = NULL; - } - return ret; - } - -int dapi_bindSocket() - { - char sock_file[ 256 ]; - int sock; - struct sockaddr_un addr; - socketName( sock_file, 255 ); - sock = socket( PF_UNIX, SOCK_STREAM, 0 ); - if( sock < 0 ) - { - perror( "socket" ); - return -1; - } - int opt = fcntl( sock, F_GETFL ); - if( opt < 0 ) - { - perror( "fcntl" ); - close( sock ); - return -1; - } - if( fcntl( sock, F_SETFL, opt | O_NONBLOCK ) < 0 ) - { - perror( "nonblock" ); - close( sock ); - return -1; - } - unlink( sock_file ); - addr.sun_family = AF_UNIX; - strcpy( addr.sun_path, sock_file ); - if( bind( sock, ( struct sockaddr* ) &addr, sizeof( addr )) < 0 ) - { - perror( "bind" ); - close( sock ); - return -1; - } - if( chmod( sock_file, 0600 ) != 0 ) - { - perror( "chmod" ); - close( sock ); - return -1; - } - if( listen( sock, SOMAXCONN ) < 0 ) - { - perror( "listen" ); - close( sock ); - return -1; - } - return sock; - } - -int dapi_socket( DapiConnection* conn ) - { - return conn->sock; - } - -static int writeSocket( DapiConnection* conn, const void* data, int size ) - { - int written = 0; - for(;;) - { - int len = write( conn->sock, ( const char* ) data + written, size - written ); - if( len < 0 && errno != EINTR && errno != EAGAIN ) - return -1; - if( len > 0 ) - written += len; - if( written == size ) - return 1; - } - } - -static int readSocket( DapiConnection* conn, void* data, int size ) - { - int rd = 0; - for(;;) - { - int len = read( conn->sock, ( char* ) data + rd, size - rd ); - if( len < 0 && errno != EINTR && errno != EAGAIN ) - return -1; - if( len == 0 ) - return 0; - if( len > 0 ) - rd += len; - if( rd == size ) - return 1; - } - } - -DapiConnection* dapi_acceptSocket( int sock ) - { - struct sockaddr_un addr; - DapiConnection* ret = NULL; - socklen_t addr_len = sizeof( addr ); - int sock2 = accept( sock, ( struct sockaddr* ) &addr, &addr_len ); - if( sock2 > 0 ) - { - ret = malloc( sizeof( DapiConnection )); - if( ret != NULL ) - { - ret->sock = sock2; - ret->generic_callback = dapi_genericCallback; - ret->in_server = 1; - ret->last_seq = 0; - ret->callbacks = NULL; - } - else - close( sock2 ); - } - return ret; - } - -void dapi_close( DapiConnection* conn ) - { - close( conn->sock ); - } - -int dapi_hasData( DapiConnection* conn ) - { - fd_set fd; - struct timeval tm = { 0, 0 }; - FD_ZERO( &fd ); - FD_SET( conn->sock, &fd ); - if( select( conn->sock + 1, &fd, NULL, NULL, &tm ) > 0 ) - return FD_ISSET( conn->sock, &fd ); - return 0; - } - -static int getNextSeq( DapiConnection* conn ) - { - if( ++conn->last_seq == 0 ) // 0 means invalid - ++conn->last_seq; - return conn->last_seq; - } - -static char* readString( DapiConnection* conn ) - { - int len; - if( readSocket( conn, &len, sizeof( len )) <= 0 ) - return NULL; - char* ret = malloc( len + 1 ); - if( ret == NULL ) - return NULL; - if( len > 0 ) - { - if( readSocket( conn, ret, len ) <= 0 ) - { - free( ret ); - return NULL; - } - } - ret[ len ] = '\0'; - return ret; - } - -static void writeString( DapiConnection* conn, const char* str ) - { - int len = ( str == NULL ? 0 : strlen( str )); - writeSocket( conn, &len, sizeof( len )); - if( len > 0 ) - writeSocket( conn, str, len ); - } - -int dapi_readCommand( DapiConnection* conn, int* comm, int* seq ) - { - int magic; - /* TODO kontrola failure */ - readSocket( conn, &magic, sizeof( magic )); - readSocket( conn, comm, sizeof( *comm )); - readSocket( conn, seq, sizeof( *seq )); - if( magic != MAGIC ) - return 0; - return 1; - } - -static void writeCommand( DapiConnection* conn, int comm, int seq ) - { - int magic = MAGIC; - writeSocket( conn, &magic, sizeof( magic )); - writeSocket( conn, &comm, sizeof( comm )); - writeSocket( conn, &seq, sizeof( seq )); - } - -/* TODO generovat? */ -static intarr readintarr( DapiConnection* conn ) - { - intarr ret; - int i; - readSocket( conn, &ret.count, sizeof( ret.count )); - if( ret.count == 0 ) - return ret; - ret.data = malloc( ret.count * sizeof( int )); - if( ret.data == NULL ) - return ret; /* TODO ? */ - for( i = 0; - i < ret.count; - ++i ) - readSocket( conn, &ret.data[ i ], sizeof( ret.data[ i ] )); - return ret; - } - -static stringarr readstringarr( DapiConnection* conn ) - { - stringarr ret; - int i; - readSocket( conn, &ret.count, sizeof( ret.count )); - if( ret.count == 0 ) - return ret; - ret.data = malloc( ret.count * sizeof( char* )); - if( ret.data == NULL ) - return ret; /* TODO ? */ - for( i = 0; - i < ret.count; - ++i ) - ret.data[ i ] = readString( conn ); - return ret; - } - -static DapiWindowInfo readWindowInfo( DapiConnection* conn ) - { - DapiWindowInfo ret; - readSocket( conn, &ret.flags, sizeof( ret.flags )); - if( ret.flags == 0 ) - return ret; - readSocket( conn, &ret.window, sizeof( ret.window )); - return ret; - } - -static void writeintarr( DapiConnection* conn, intarr arr ) - { - int i; - writeSocket( conn, &arr.count, sizeof( arr.count )); - for( i = 0; - i < arr.count; - ++i ) - writeSocket( conn, &arr.data[ i ], sizeof( arr.data[ i ] )); - } - -static void writestringarr( DapiConnection* conn, stringarr arr ) - { - int i; - writeSocket( conn, &arr.count, sizeof( arr.count )); - for( i = 0; - i < arr.count; - ++i ) - writeString( conn, arr.data[ i ] ); - } - -static void writeWindowInfo( DapiConnection* conn, DapiWindowInfo winfo ) - { - writeSocket( conn, &winfo.flags, sizeof( winfo.flags )); - writeSocket( conn, &winfo.window, sizeof( winfo.window )); - } - -void dapi_freeintarr( intarr arr ) - { - free( arr.data ); - } - -void dapi_freestringarr( stringarr arr ) - { - int i; - for( i = 0; - i < arr.count; - ++i ) - free( arr.data[ i ] ); - free( arr.data ); - } - -void dapi_freeWindowInfo( DapiWindowInfo winfo ) - { - ( void ) winfo; /* nothing for now */ - } - -void dapi_windowInfoInitWindow( DapiWindowInfo* winfo, long window ) - { - winfo->flags = 1; - winfo->window = window; - } - -DapiConnection* dapi_connectAndInit() - { - DapiConnection* conn = dapi_connect(); - if( conn == NULL ) - return NULL; - if( !dapi_Init( conn )) - { - dapi_close( conn ); - return NULL; - } - return conn; - } - -#include <dapi/comm_generated.c> diff --git a/portland/dapi/lib/comm.h b/portland/dapi/lib/comm.h deleted file mode 100644 index c1543e5..0000000 --- a/portland/dapi/lib/comm.h +++ /dev/null @@ -1,50 +0,0 @@ -#ifndef DAPI_COMM_H -#define DAPI_COMM_H - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct DapiConnection DapiConnection; - -DapiConnection* dapi_connect( void ); -void dapi_close( DapiConnection* conn ); -int dapi_socket( DapiConnection* conn ); - -DapiConnection* dapi_connectAndInit( void ); - -int dapi_bindSocket( void ); -DapiConnection* dapi_acceptSocket( int sock ); - -typedef struct DapiWindowInfo - { - int flags; - long window; - } DapiWindowInfo; - -/* TODO generovat? */ -typedef struct - { - int count; - int* data; - } intarr; - -typedef struct - { - int count; - char** data; - } stringarr; - -void dapi_windowInfoInitWindow( DapiWindowInfo* winfo, long window ); - -void dapi_freeWindowInfo( DapiWindowInfo winfo ); -void dapi_freestringarr( stringarr arr ); -void dapi_freeintarr( intarr arr ); - -#include <dapi/comm_generated.h> - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/portland/dapi/lib/comm_internal.h b/portland/dapi/lib/comm_internal.h deleted file mode 100644 index 7a141d0..0000000 --- a/portland/dapi/lib/comm_internal.h +++ /dev/null @@ -1,25 +0,0 @@ -enum { MAGIC = 0x152355 }; - -#include <dapi/comm_internal_generated.h> - -#include "calls.h" -#include "callbacks.h" - -typedef struct DapiCallbackData - { - struct DapiCallbackData* next; - int seq; - int command; - void* callback; - } DapiCallbackData; - -struct DapiConnection - { - int sock; - DapiGenericCallback generic_callback; - int in_server; - int last_seq; - DapiCallbackData* callbacks; - }; - -int dapi_hasData( DapiConnection* conn ); diff --git a/portland/dapi/tests/.cvsignore b/portland/dapi/tests/.cvsignore deleted file mode 100644 index f7b5724..0000000 --- a/portland/dapi/tests/.cvsignore +++ /dev/null @@ -1,14 +0,0 @@ -.deps -.libs -Makefile -Makefile.in -test_async -test_calls -test_comm -test_mailto -test_remotefile -test_runasuser -test_screensaving -test_capabilities -test_callbacks -test_fallback diff --git a/portland/dapi/tests/Makefile.am b/portland/dapi/tests/Makefile.am deleted file mode 100644 index f894e18..0000000 --- a/portland/dapi/tests/Makefile.am +++ /dev/null @@ -1,44 +0,0 @@ -noinst_PROGRAMS = test_comm test_calls test_runasuser test_screensaving test_mailto test_remotefile test_async \ - test_capabilities test_callbacks test_addressbook - -test_comm_SOURCES = test_comm.c -test_comm_LDADD = ../lib/libdapi.la -test_comm_LDFLAGS = $(all_libraries) - -test_calls_SOURCES = test_calls.c -test_calls_LDADD = ../lib/libdapi.la -test_calls_LDFLAGS = $(all_libraries) - -test_runasuser_SOURCES = test_runasuser.c -test_runasuser_LDADD = ../lib/libdapi.la -test_runasuser_LDFLAGS = $(all_libraries) - -test_screensaving_SOURCES = test_screensaving.c -test_screensaving_LDADD = ../lib/libdapi.la -test_screensaving_LDFLAGS = $(all_libraries) - -test_mailto_SOURCES = test_mailto.c -test_mailto_LDADD = ../lib/libdapi.la -test_mailto_LDFLAGS = $(all_libraries) - -test_remotefile_SOURCES = test_remotefile.c -test_remotefile_LDADD = ../lib/libdapi.la -test_remotefile_LDFLAGS = $(all_libraries) - -test_async_SOURCES = test_async.c -test_async_LDADD = ../lib/libdapi.la -test_async_LDFLAGS = $(all_libraries) - -test_capabilities_SOURCES = test_capabilities.c -test_capabilities_LDADD = ../lib/libdapi.la -test_capabilities_LDFLAGS = $(all_libraries) - -test_callbacks_SOURCES = test_callbacks.c -test_callbacks_LDADD = ../lib/libdapi.la -test_callbacks_LDFLAGS = $(all_libraries) - -test_addressbook_SOURCES = test_addressbook.c -test_addressbook_LDADD = ../lib/libdapi.la -test_addressbook_LDFLAGS = $(all_libraries) - -INCLUDES = -I$(top_builddir)/include $(all_includes) diff --git a/portland/dapi/tests/test_addressbook.c b/portland/dapi/tests/test_addressbook.c deleted file mode 100644 index 5b7f192..0000000 --- a/portland/dapi/tests/test_addressbook.c +++ /dev/null @@ -1,150 +0,0 @@ -/****************************************************************************** - Copyright 2006, Kevin Krammer <kevin.krammer@gmx.at> - All Rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions - are met: - - 1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - 2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR - IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, - INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*/ - -#include <stdio.h> -#include <stdlib.h> - -#include <dapi/comm.h> -#include <dapi/calls.h> - -void printContact( DapiConnection* conn, int num, char* id ); -void printVCard( DapiConnection* conn, char* id ); - -int main(int argc, char** argv) - { - DapiConnection* conn = dapi_connectAndInit(); - if( conn == NULL ) - { - fprintf( stderr, "Cannot connect!\n" ); - return 1; - } - - char* ownerID = NULL; - if( dapi_AddressBookOwner( conn, &ownerID ) ) - { - printf( "AddressBookOwner: contact for current user available:\n" ); - printContact( conn, 0, ownerID ); - free( ownerID ); - } - else - printf( "AddressBookOwner: no contact for the current user\n" ); - printf("\n"); - - stringarr idlist; - if( dapi_AddressBookList( conn, &idlist ) ) - printf( "AddressBookList: %d contact IDs\n", idlist.count ); - else - printf( "AddressBookList: call failed\n" ); - - int i; - for( i = 0; i < idlist.count; ++i ) - printContact( conn, i, idlist.data[i] ); - dapi_freestringarr( idlist ); - - if( argc <= 1 ) - printf( "\nNo commandline args, skipping FindByName\n" ); - else - { - for( i = 1; i < argc; ++i ) - { - printf( "\nSearching for '%s'\n", argv[i] ); - - stringarr foundlist; - if( dapi_AddressBookFindByName( conn, argv[i], &foundlist ) ) - { - if ( foundlist.count > 0 ) - { - printf( "Found %d matches\n", foundlist.count ); - - int j; - for ( j = 0; j < foundlist.count; ++j ) - { - printContact( conn, j, foundlist.data[j] ); - printVCard( conn, foundlist.data[j] ); - } - dapi_freestringarr( foundlist ); - } - else - printf( "No matches in addressbook\n" ); - } - else - printf( "AddressBoolFindByName: call failed\n" ); - } - } - - dapi_close( conn ); - - return 0; - } - -void printContact( DapiConnection* conn, int num, char* id ) - { - char* givenname; - char* familyname; - char* fullname; - - if( dapi_AddressBookGetName( conn, id, &givenname, &familyname, &fullname ) ) - { - printf( "Contact %d: '%s', %s', '%s'\n", - num, givenname, familyname, fullname ); - - free( givenname ); - free( familyname ); - free( fullname ); - } - else - printf( "AddressBookGetName: call failed\n" ); - - stringarr emaillist; - if( dapi_AddressBookGetEmails( conn, id, &emaillist ) ) - { - if( emaillist.count > 0 ) - { - int j; - for( j = 0; j < emaillist.count; ++j ) - { - printf( "\temail %d: '%s'\n", j, emaillist.data[j] ); - } - dapi_freestringarr( emaillist ); - } - else - printf( "\tNo emails\n" ); - } - else - printf( "AddressBookGetEmails: call failed\n" ); - } - -void printVCard( DapiConnection* conn, char* id ) - { - char* vcard; - if( dapi_AddressBookGetVCard30( conn, id, &vcard ) ) - { - printf("\n%s\n", vcard); - free( vcard ); - } - else - printf( "AddressBookGetVCard30: call failed" ); - } diff --git a/portland/dapi/tests/test_async.c b/portland/dapi/tests/test_async.c deleted file mode 100644 index 8828eb9..0000000 --- a/portland/dapi/tests/test_async.c +++ /dev/null @@ -1,53 +0,0 @@ -#include <stdio.h> - -#include <dapi/comm.h> -#include <dapi/calls.h> -#include <dapi/callbacks.h> - -static int seq1; - -static void callback( DapiConnection* conn, int comm, int seq ) - { - if( comm != DAPI_REPLY_BUTTONORDER - || seq != seq1 ) - { - fprintf( stderr, "Unexpected async reply, ignoring.\n" ); - } - else - { - int ord; - if( !dapi_readReplyButtonOrder( conn, &ord )) - { - fprintf( stderr, "Failed to read async reply!\n" ); - } - else - { - printf( "Order async: %d (%s)\n", ord, ord == 0 ? "Failed" : ord == 1 ? "Ok/Cancel" : "Cancel/Ok" ); - } - } - } - -int main() - { - int ord; - DapiConnection* conn = dapi_connect(); - if( conn == NULL ) - { - fprintf( stderr, "Cannot connect!\n" ); - return 1; - } - dapi_setGenericCallback( conn, callback ); - if( !dapi_Init( conn )) - { - fprintf( stderr, "Initialization failed!\n" ); - return 2; - } - /* first write a command request without waiting for a reply, this - means that the following blocking dapi_ButtonOrder() call will first need to process - an async answer */ - seq1 = dapi_writeCommandButtonOrder( conn ); - ord = dapi_ButtonOrder( conn ); - printf( "Order: %d (%s)\n", ord, ord == 0 ? "Failed" : ord == 1 ? "Ok/Cancel" : "Cancel/Ok" ); - dapi_close( conn ); - return 0; - } diff --git a/portland/dapi/tests/test_callbacks.c b/portland/dapi/tests/test_callbacks.c deleted file mode 100644 index 6f4cd40..0000000 --- a/portland/dapi/tests/test_callbacks.c +++ /dev/null @@ -1,30 +0,0 @@ -#include <stdio.h> -#include <unistd.h> - -#include <dapi/comm.h> -#include <dapi/calls.h> -#include <dapi/callbacks.h> - -static void callback( DapiConnection* conn, int seq, int ord ) - { - printf( "Order async: %d %d (%s)\n", seq, ord, ord == 0 ? "Failed" : ord == 1 ? "Ok/Cancel" : "Cancel/Ok" ); - } - -int main() - { - int seq; - DapiConnection* conn = dapi_connectAndInit(); - if( conn == NULL ) - { - fprintf( stderr, "Cannot connect!\n" ); - return 1; - } - seq = dapi_callbackButtonOrder( conn, callback ); - printf( "Order call1: %d\n", seq ); - seq = dapi_callbackButtonOrder( conn, callback ); - printf( "Order call2: %d\n", seq ); - sleep( 1 ); /* give time to process */ - dapi_processData( conn ); - dapi_close( conn ); - return 0; - } diff --git a/portland/dapi/tests/test_calls.c b/portland/dapi/tests/test_calls.c deleted file mode 100644 index b53fcd6..0000000 --- a/portland/dapi/tests/test_calls.c +++ /dev/null @@ -1,19 +0,0 @@ -#include <stdio.h> - -#include <dapi/comm.h> -#include <dapi/calls.h> - -int main() - { - int ord; - DapiConnection* conn = dapi_connectAndInit(); - if( conn == NULL ) - { - fprintf( stderr, "Cannot connect!\n" ); - return 1; - } - ord = dapi_ButtonOrder( conn ); - printf( "Order: %d (%s)\n", ord, ord == 0 ? "Failed" : ord == 1 ? "Ok/Cancel" : "Cancel/Ok" ); - dapi_close( conn ); - return 0; - } diff --git a/portland/dapi/tests/test_capabilities.c b/portland/dapi/tests/test_capabilities.c deleted file mode 100644 index 7d12955..0000000 --- a/portland/dapi/tests/test_capabilities.c +++ /dev/null @@ -1,35 +0,0 @@ -#include <stdio.h> -#include <stdlib.h> - -#include <dapi/comm.h> -#include <dapi/calls.h> - -int main() - { - intarr capabilities; - int i; - DapiConnection* conn = dapi_connectAndInit(); - if( conn == NULL ) - { - fprintf( stderr, "Cannot connect!\n" ); - return 1; - } - if( dapi_Capabilities( conn, &capabilities )) - { - int has_mailto = 0; - printf( "Capabilities:" ); - for( i = 0; - i < capabilities.count; - ++i ) - { - printf( " %d", capabilities.data[ i ] ); - if( capabilities.data[ i ] == DAPI_COMMAND_MAILTO ) - has_mailto = 1; - } - printf( "\nHas mailto: %d\n", has_mailto ); - } - else - fprintf( stderr, "Capabilities call failed!\n" ); - dapi_close( conn ); - return 0; - } diff --git a/portland/dapi/tests/test_comm.c b/portland/dapi/tests/test_comm.c deleted file mode 100644 index 15fcab0..0000000 --- a/portland/dapi/tests/test_comm.c +++ /dev/null @@ -1,48 +0,0 @@ -#include <stdio.h> - -#include <dapi/comm.h> - -int main( int argc, char* argv[] ) - { - int command, seq, seq2; - int ok; - DapiWindowInfo winfo; - DapiConnection* conn = dapi_connect(); - if( conn == NULL ) - { - fprintf( stderr, "Cannot connect!\n" ); - return 1; - } - seq = dapi_writeCommandInit( conn ); - if( !dapi_readCommand( conn, &command, &seq2 ) || seq != seq2 ) - { - fprintf( stderr, "Incorrect init reply!\n" ); - return 2; - } - if( !dapi_readReplyInit( conn, &ok )) - { - fprintf( stderr, "Incorrect init reply data!\n" ); - return 2; - } - if( !ok ) - { - fprintf( stderr, "Initialization failed!\n" ); - return 2; - } - dapi_windowInfoInitWindow( &winfo, 0 ); /* no mainwindow */ - seq = dapi_writeCommandOpenUrl( conn, "http://kde.org", winfo ); - if( !dapi_readCommand( conn, &command, &seq2 ) || seq != seq2 ) - { - fprintf( stderr, "Incorrect open url reply!\n" ); - return 2; - } - dapi_freeWindowInfo( winfo ); - if( !dapi_readReplyOpenUrl( conn, &ok )) - { - fprintf( stderr, "Incorrect open url reply data!\n" ); - return 2; - } - printf( "Result: %s\n", ok ? "Ok" : "failed" ); - dapi_close( conn ); - return 0; - } diff --git a/portland/dapi/tests/test_mailto.c b/portland/dapi/tests/test_mailto.c deleted file mode 100644 index 3c54e27..0000000 --- a/portland/dapi/tests/test_mailto.c +++ /dev/null @@ -1,28 +0,0 @@ -#include <stdio.h> -#include <stdlib.h> - -#include <dapi/comm.h> -#include <dapi/calls.h> - -int main() - { - int ok; - stringarr attachments; - char* attachments_data[] = { "/tmp/mailtotest.txt" }; - DapiConnection* conn = dapi_connectAndInit(); - if( conn == NULL ) - { - fprintf( stderr, "Cannot connect!\n" ); - return 1; - } - if(system( "touch /tmp/mailtotest.txt" )) - return perror("system()"), 1; - attachments.count = 1; - attachments.data = attachments_data; - ok = dapi_MailTo_Window( conn, "Test mail", "Hi,\n\nthis is a test mail.\n", - "l.lunak@suse.cz, l.lunak@kde.org", NULL, "portland@lists.freedesktop.org", attachments, - 0 ); /* no mainwindow */ - printf( "Result: %s\n", ok == 1 ? "Ok" : "Failed" ); - dapi_close( conn ); - return 0; - } diff --git a/portland/dapi/tests/test_remotefile.c b/portland/dapi/tests/test_remotefile.c deleted file mode 100644 index 303e32b..0000000 --- a/portland/dapi/tests/test_remotefile.c +++ /dev/null @@ -1,46 +0,0 @@ -#include <stdio.h> -#include <stdlib.h> -#include <unistd.h> - -#include <dapi/comm.h> -#include <dapi/calls.h> - -int main() - { - char* local; - int ok; - DapiConnection* conn = dapi_connectAndInit(); - if( conn == NULL ) - { - fprintf( stderr, "Cannot connect!\n" ); - return 1; - } - local = dapi_LocalFile_Window( conn, "http://kde.org", "", 0, 0 ); /* no download, should fail */ - printf( "Local file1: %s - %s\n", local ? local : "?", local ? "Failed" : "Ok" ); - if( local ) - free( local ); - local = dapi_LocalFile_Window( conn, "http://kde.org", "", 1, 0 ); - printf( "Local file2: %s\n", local != NULL ? local : "Failed" ); - if( local != NULL ) - { - ok = dapi_UploadFile_Window( conn, local, "http://kde.org", 0, 0 ); /* will fail */ - printf( "Upload2: %s\n", ok ? "Ok - ???" : "Failed - ok" ); - ok = dapi_RemoveTemporaryLocalFile( conn, local ); - printf( "Temporary2: %s\n", ok ? "Ok" : "Failed" ); - free( local ); - } - if(system( "touch /tmp/remotefiletest.txt" )) - return perror("system()"), 1; - /* local temporary will be ignored */ - local = dapi_LocalFile_Window( conn, "file:///tmp/remotefiletest.txt", "/tmp/remotefiletest2.txt", 1, 0 ); - printf( "Local file3: %s\n", local != NULL ? local : "Failed" ); - if( local != NULL ) - { - /* should be a no-op, as it's the same file */ - ok = dapi_UploadFile_Window( conn, local, "file:///tmp/remotefiletest.txt", 1, 0 ); - printf( "Upload3: %s\n", ok ? "Ok" : "Failed" ); - free( local ); - } - dapi_close( conn ); - return 0; - } diff --git a/portland/dapi/tests/test_runasuser.c b/portland/dapi/tests/test_runasuser.c deleted file mode 100644 index 5fe4f1a..0000000 --- a/portland/dapi/tests/test_runasuser.c +++ /dev/null @@ -1,19 +0,0 @@ -#include <stdio.h> - -#include <dapi/comm.h> -#include <dapi/calls.h> - -int main() - { - int ok; - DapiConnection* conn = dapi_connectAndInit(); - if( conn == NULL ) - { - fprintf( stderr, "Cannot connect!\n" ); - return 1; - } - ok = dapi_RunAsUser_Window( conn, "", "xterm -title test", 0 ); /* no mainwindow */ - printf( "Result: %s\n", ok == 1 ? "Ok" : "Failed" ); - dapi_close( conn ); - return 0; - } diff --git a/portland/dapi/tests/test_screensaving.c b/portland/dapi/tests/test_screensaving.c deleted file mode 100644 index 2224eeb..0000000 --- a/portland/dapi/tests/test_screensaving.c +++ /dev/null @@ -1,23 +0,0 @@ -#include <stdio.h> -#include <unistd.h> - -#include <dapi/comm.h> -#include <dapi/calls.h> - -int main() - { - int ok; - DapiConnection* conn = dapi_connectAndInit(); - if( conn == NULL ) - { - fprintf( stderr, "Cannot connect!\n" ); - return 1; - } - ok = dapi_SuspendScreensaving( conn, 1 ); - printf( "Result1: %s\n", ok == 1 ? "Ok" : "Failed" ); - sleep( 10 ); - ok = dapi_SuspendScreensaving( conn, 0 ); - printf( "Result2: %s\n", ok == 1 ? "Ok" : "Failed" ); - dapi_close( conn ); - return 0; - } diff --git a/portland/libxdg-vfs/libxdg-vfs-client/.cvsignore b/portland/libxdg-vfs/libxdg-vfs-client/.cvsignore deleted file mode 100644 index 6d3654f..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/.cvsignore +++ /dev/null @@ -1,27 +0,0 @@ -*.la -*.lo -*.o -ABOUT-NLS -Makefile -Makefile.in -aclocal.m4 -autom4te.cache -config.cache -config.h -config.h.in -config.log -config.status -configure -libtool -config.guess -config.sub -depcomp -install-sh -ltmain.sh -missing -stamp-h1 -.libs -.deps -.cdtproject -.project - diff --git a/portland/libxdg-vfs/libxdg-vfs-client/AUTHORS b/portland/libxdg-vfs/libxdg-vfs-client/AUTHORS deleted file mode 100644 index d76f6e9..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/AUTHORS +++ /dev/null @@ -1 +0,0 @@ -Norbert Frese (nf2@scheinwelt.at) 2006 diff --git a/portland/libxdg-vfs/libxdg-vfs-client/COPYING b/portland/libxdg-vfs/libxdg-vfs-client/COPYING deleted file mode 100644 index 1edf08c..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/COPYING +++ /dev/null @@ -1,18 +0,0 @@ -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. diff --git a/portland/libxdg-vfs/libxdg-vfs-client/ChangeLog b/portland/libxdg-vfs/libxdg-vfs-client/ChangeLog deleted file mode 100644 index ede0d5c..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/ChangeLog +++ /dev/null @@ -1,7 +0,0 @@ -2005-11-21 gettextize <bug-gnu-gettext@gnu.org> - - * Makefile.am (SUBDIRS): Add po. - (ACLOCAL_AMFLAGS): New variable. - (EXTRA_DIST): New variable. - * configure.ac (AC_OUTPUT): Add po/Makefile.in. - diff --git a/portland/libxdg-vfs/libxdg-vfs-client/INSTALL b/portland/libxdg-vfs/libxdg-vfs-client/INSTALL deleted file mode 100644 index 23e5f25..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/INSTALL +++ /dev/null @@ -1,236 +0,0 @@ -Installation Instructions -************************* - -Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free -Software Foundation, Inc. - -This file is free documentation; the Free Software Foundation gives -unlimited permission to copy, distribute and modify it. - -Basic Installation -================== - -These are generic installation instructions. - - The `configure' shell script attempts to guess correct values for -various system-dependent variables used during compilation. It uses -those values to create a `Makefile' in each directory of the package. -It may also create one or more `.h' files containing system-dependent -definitions. Finally, it creates a shell script `config.status' that -you can run in the future to recreate the current configuration, and a -file `config.log' containing compiler output (useful mainly for -debugging `configure'). - - It can also use an optional file (typically called `config.cache' -and enabled with `--cache-file=config.cache' or simply `-C') that saves -the results of its tests to speed up reconfiguring. (Caching is -disabled by default to prevent problems with accidental use of stale -cache files.) - - If you need to do unusual things to compile the package, please try -to figure out how `configure' could check whether to do them, and mail -diffs or instructions to the address given in the `README' so they can -be considered for the next release. If you are using the cache, and at -some point `config.cache' contains results you don't want to keep, you -may remove or edit it. - - The file `configure.ac' (or `configure.in') is used to create -`configure' by a program called `autoconf'. You only need -`configure.ac' if you want to change it or regenerate `configure' using -a newer version of `autoconf'. - -The simplest way to compile this package is: - - 1. `cd' to the directory containing the package's source code and type - `./configure' to configure the package for your system. If you're - using `csh' on an old version of System V, you might need to type - `sh ./configure' instead to prevent `csh' from trying to execute - `configure' itself. - - Running `configure' takes awhile. While running, it prints some - messages telling which features it is checking for. - - 2. Type `make' to compile the package. - - 3. Optionally, type `make check' to run any self-tests that come with - the package. - - 4. Type `make install' to install the programs and any data files and - documentation. - - 5. You can remove the program binaries and object files from the - source code directory by typing `make clean'. To also remove the - files that `configure' created (so you can compile the package for - a different kind of computer), type `make distclean'. There is - also a `make maintainer-clean' target, but that is intended mainly - for the package's developers. If you use it, you may have to get - all sorts of other programs in order to regenerate files that came - with the distribution. - -Compilers and Options -===================== - -Some systems require unusual options for compilation or linking that the -`configure' script does not know about. Run `./configure --help' for -details on some of the pertinent environment variables. - - You can give `configure' initial values for configuration parameters -by setting variables in the command line or in the environment. Here -is an example: - - ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix - - *Note Defining Variables::, for more details. - -Compiling For Multiple Architectures -==================================== - -You can compile the package for more than one kind of computer at the -same time, by placing the object files for each architecture in their -own directory. To do this, you must use a version of `make' that -supports the `VPATH' variable, such as GNU `make'. `cd' to the -directory where you want the object files and executables to go and run -the `configure' script. `configure' automatically checks for the -source code in the directory that `configure' is in and in `..'. - - If you have to use a `make' that does not support the `VPATH' -variable, you have to compile the package for one architecture at a -time in the source code directory. After you have installed the -package for one architecture, use `make distclean' before reconfiguring -for another architecture. - -Installation Names -================== - -By default, `make install' installs the package's commands under -`/usr/local/bin', include files under `/usr/local/include', etc. You -can specify an installation prefix other than `/usr/local' by giving -`configure' the option `--prefix=PREFIX'. - - You can specify separate installation prefixes for -architecture-specific files and architecture-independent files. If you -pass the option `--exec-prefix=PREFIX' to `configure', the package uses -PREFIX as the prefix for installing programs and libraries. -Documentation and other data files still use the regular prefix. - - In addition, if you use an unusual directory layout you can give -options like `--bindir=DIR' to specify different values for particular -kinds of files. Run `configure --help' for a list of the directories -you can set and what kinds of files go in them. - - If the package supports it, you can cause programs to be installed -with an extra prefix or suffix on their names by giving `configure' the -option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. - -Optional Features -================= - -Some packages pay attention to `--enable-FEATURE' options to -`configure', where FEATURE indicates an optional part of the package. -They may also pay attention to `--with-PACKAGE' options, where PACKAGE -is something like `gnu-as' or `x' (for the X Window System). The -`README' should mention any `--enable-' and `--with-' options that the -package recognizes. - - For packages that use the X Window System, `configure' can usually -find the X include and library files automatically, but if it doesn't, -you can use the `configure' options `--x-includes=DIR' and -`--x-libraries=DIR' to specify their locations. - -Specifying the System Type -========================== - -There may be some features `configure' cannot figure out automatically, -but needs to determine by the type of machine the package will run on. -Usually, assuming the package is built to be run on the _same_ -architectures, `configure' can figure that out, but if it prints a -message saying it cannot guess the machine type, give it the -`--build=TYPE' option. TYPE can either be a short name for the system -type, such as `sun4', or a canonical name which has the form: - - CPU-COMPANY-SYSTEM - -where SYSTEM can have one of these forms: - - OS KERNEL-OS - - See the file `config.sub' for the possible values of each field. If -`config.sub' isn't included in this package, then this package doesn't -need to know the machine type. - - If you are _building_ compiler tools for cross-compiling, you should -use the option `--target=TYPE' to select the type of system they will -produce code for. - - If you want to _use_ a cross compiler, that generates code for a -platform different from the build platform, you should specify the -"host" platform (i.e., that on which the generated programs will -eventually be run) with `--host=TYPE'. - -Sharing Defaults -================ - -If you want to set default values for `configure' scripts to share, you -can create a site shell script called `config.site' that gives default -values for variables like `CC', `cache_file', and `prefix'. -`configure' looks for `PREFIX/share/config.site' if it exists, then -`PREFIX/etc/config.site' if it exists. Or, you can set the -`CONFIG_SITE' environment variable to the location of the site script. -A warning: not all `configure' scripts look for a site script. - -Defining Variables -================== - -Variables not defined in a site shell script can be set in the -environment passed to `configure'. However, some packages may run -configure again during the build, and the customized values of these -variables may be lost. In order to avoid this problem, you should set -them in the `configure' command line, using `VAR=value'. For example: - - ./configure CC=/usr/local2/bin/gcc - -causes the specified `gcc' to be used as the C compiler (unless it is -overridden in the site shell script). Here is a another example: - - /bin/bash ./configure CONFIG_SHELL=/bin/bash - -Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent -configuration-related scripts to be executed by `/bin/bash'. - -`configure' Invocation -====================== - -`configure' recognizes the following options to control how it operates. - -`--help' -`-h' - Print a summary of the options to `configure', and exit. - -`--version' -`-V' - Print the version of Autoconf used to generate the `configure' - script, and exit. - -`--cache-file=FILE' - Enable the cache: use and save the results of the tests in FILE, - traditionally `config.cache'. FILE defaults to `/dev/null' to - disable caching. - -`--config-cache' -`-C' - Alias for `--cache-file=config.cache'. - -`--quiet' -`--silent' -`-q' - Do not print messages saying which checks are being made. To - suppress all normal output, redirect it to `/dev/null' (any error - messages will still be shown). - -`--srcdir=DIR' - Look for the package's source code in directory DIR. Usually - `configure' can determine that directory automatically. - -`configure' also accepts some other, not widely useful, options. Run -`configure --help' for more details. - diff --git a/portland/libxdg-vfs/libxdg-vfs-client/Makefile.am b/portland/libxdg-vfs/libxdg-vfs-client/Makefile.am deleted file mode 100644 index a459377..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/Makefile.am +++ /dev/null @@ -1 +0,0 @@ -SUBDIRS = src tests diff --git a/portland/libxdg-vfs/libxdg-vfs-client/Makefile.cvs b/portland/libxdg-vfs/libxdg-vfs-client/Makefile.cvs deleted file mode 100644 index 1e17bc9..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/Makefile.cvs +++ /dev/null @@ -1,6 +0,0 @@ -all: - @libtoolize - @aclocal - @autoheader - @automake --add-missing - @autoconf diff --git a/portland/libxdg-vfs/libxdg-vfs-client/NEWS b/portland/libxdg-vfs/libxdg-vfs-client/NEWS deleted file mode 100644 index 4af1832..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/NEWS +++ /dev/null @@ -1 +0,0 @@ -None
\ No newline at end of file diff --git a/portland/libxdg-vfs/libxdg-vfs-client/README b/portland/libxdg-vfs/libxdg-vfs-client/README deleted file mode 100644 index 09fe2be..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/README +++ /dev/null @@ -1,8 +0,0 @@ -libxdg-vfs-client -================= - -C-client library for xdg-vfs - - -(for examples see the 'tests'-directory) - diff --git a/portland/libxdg-vfs/libxdg-vfs-client/configure.ac b/portland/libxdg-vfs/libxdg-vfs-client/configure.ac deleted file mode 100644 index ac6d1e1..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/configure.ac +++ /dev/null @@ -1,28 +0,0 @@ -dnl Process this file with autoconf to produce a configure script. - -dnl AC_INIT(src/main.c) -AC_INIT(src/xdg_vfs_client.c) -dnl AM_CONFIG_HEADER(config.h) - -PACKAGE=libxdg-vfs-client -VERSION=0.1.8 - -AM_INIT_AUTOMAKE($PACKAGE,$VERSION) - -AC_PROG_CC -AC_STDC_HEADERS -AC_PROG_INSTALL - -AC_ENABLE_SHARED(yes) -AC_PROG_LIBTOOL - -dnl PKG_CHECK_MODULES(DEPS, glib-2.0 >= 2.0) - -AC_SUBST(DEPS_CFLAGS) -AC_SUBST(DEPS_LIBS) - -AC_OUTPUT([ -Makefile -src/Makefile -tests/Makefile -]) diff --git a/portland/libxdg-vfs/libxdg-vfs-client/doc/imgs/libxdg-vfs-demo-filebrowser-gnome.png b/portland/libxdg-vfs/libxdg-vfs-client/doc/imgs/libxdg-vfs-demo-filebrowser-gnome.png Binary files differdeleted file mode 100644 index fc95061..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/doc/imgs/libxdg-vfs-demo-filebrowser-gnome.png +++ /dev/null diff --git a/portland/libxdg-vfs/libxdg-vfs-client/doc/imgs/libxdg-vfs-demo-filebrowser-kde.png b/portland/libxdg-vfs/libxdg-vfs-client/doc/imgs/libxdg-vfs-demo-filebrowser-kde.png Binary files differdeleted file mode 100644 index 580a99a..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/doc/imgs/libxdg-vfs-demo-filebrowser-kde.png +++ /dev/null diff --git a/portland/libxdg-vfs/libxdg-vfs-client/doc/imgs/libxdg-vfs-demo-filebrowser-root.png b/portland/libxdg-vfs/libxdg-vfs-client/doc/imgs/libxdg-vfs-demo-filebrowser-root.png Binary files differdeleted file mode 100644 index 0f4da0e..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/doc/imgs/libxdg-vfs-demo-filebrowser-root.png +++ /dev/null diff --git a/portland/libxdg-vfs/libxdg-vfs-client/doc/libxdg-vfs.html b/portland/libxdg-vfs/libxdg-vfs-client/doc/libxdg-vfs.html deleted file mode 100644 index c858b6c..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/doc/libxdg-vfs.html +++ /dev/null @@ -1,208 +0,0 @@ -<html> - <head> - <title>libxdg-vfs</title> - </head> - <body> - <h1>libxdg-vfs</h1> - <p><em>libxdg-vfs</em> provides a generic API to the Virtual-File-System libraries KIO and Gnome-VFS. - It supports the commands - <ul> - <li><em>backend</em> (obtain backend information)</li> - <li><em>get</em> (read file)</li> - <li><em>put</em> (write file)</li> - <li><em>cp</em> (copy file)</li> - <li><em>mv</em> (move file)</li> - <li><em>rm</em> (erase file)</li> - <li><em>mkdir</em> (create folder)</li> - <li><em>rmdir</em> (delete folder)</li> - <li><em>info</em> (get file-info)</li> - <li><em>setattrs</em> (set file attributes)</li> - <li><em>ls</em> (list directory)</li> - <li><em>openfildlg</em> (show open-file-dialog)</li> - <li><em>savefildlg</em> (show save-file-dialog)</li> - </ul> - </p> - <p>It is designed to work in synchronous as well as asynchronous context.</p> - <h2>Backends</h2> - <p>The backend executables (xdg_vfs_kde or xdg_vfs_gnome) are forked as child process and - the communication goes through the stdin/stdout pipes of the child-process (the <em>shell</em>-mode of the backend executables is used). The backends are in the separate packages xdg-vfs-kde.tar.gz and xdg-vfs-gnome.tar.gz.</p> - <h2>Sessions</h2> - <p>To open a session call the function:</p> -<code> -XdgVfsResult xdg_vfs_sess_start(XdgVfsSession ** session, char * preferredDesktop); -</code> - <p>The library will launch the child-process and return a session pointer. Use "this" (or NULL) - to - autodetect the current desktop - or "kde" / "gnome" for the <em>preferredDesktop</em> argument. - </p> - <h2>Running Commands</h2> - <p>A session can run a sequence of VFS commands. Because the backends are single-threaded and synchronous - you can only run one command after the other in a session (for parallel commands open a second session). - Here are some examples: - </p> - <h3>Copying a file</h3> - <p>Let's see how a copying a file is done:</p> -<code> -XdgVfsResult r = xdg_vfs_sess_cmd_copyFile(session, "protocol://user@server/srcfile", "protocol://user@server/targetfile"); -</code> - <p>After calling this function you have to read the response items until you get a return value different from - XDGVFS_RESULT_CONTINUES. Internally the 'readItem' function has only a single 'read(incoming_fd)' call per - iteration. This is to prevent blocking in an async application - (you have to watch for read-events on the fd returned by xdg_vfs_sess_getIncomingFiledescriptor()) - </p> -<pre> -XdgVfsResult r; -XdgVfsItemType type; -XdgVfsItem * item; - -while ((r = xdg_vfs_sess_readItem(session, &type, &item, NULL, NULL)) == XDGVFS_RESULT_CONTINUES) -{ - switch (type) - { - case XDGVFS_ITEMTYPE_COPY_HEAD: - { - XdgVfsCopyHead * head = (XdgVfsCopyHead*) item; - fprintf(stderr, "copying uri_src='%s' to uri_target='%s'\n", - head->uri_src, head->uri_target); - break; - } - case XDGVFS_ITEMTYPE_PROGRESS: - { - XdgVfsProgress * progress = (XdgVfsProgress *) item; - fprintf(stderr, "progress: copied=%d size=%d\n", progress->copied, progress->size); - break; - } - case XDGVFS_ITEMTYPE_NONE: - { - break; /* no complete item -> continue */ - } - default: - { - fprintf(stderr, "unexpected item - type=%d\n", type); - break; - } - } - xdg_vfs_item_unref(item); -} -if (r) { /* command failed */ } -</pre> - <h3>Reading a file</h3> - <p>When reading a file you will receive information items and data chunks.</p> -<pre> -XdgVfsResult r; -r = xdg_vfs_sess_cmd_getFile(session, "protocol://user@server/file"); -if (r) { /* command init error */ } - -char * buf=NULL; -int len=0; -XdgVfsItemType type; -XdgVfsItem * item; - -while ((r = xdg_vfs_sess_readItem(session, &type, &item, &buf, &len)) == XDGVFS_RESULT_CONTINUES) -{ - switch (type) - { - case XDGVFS_ITEMTYPE_GET_HEAD: - { - XdgVfsSimpleHead * head = (XdgVfsSimpleHead*) item; - fprintf(stderr, "reading file uri='%s'\n", head->uri); - break; - } - case XDGVFS_DATAIN: - { - fprintf(stderr, "file-data chunklen=%d\n", len); - fwrite (buf, 1, len, stdout); /* your file data */ - break; - } - case XDGVFS_ITEMTYPE_DATAIN_DONE: - { - XdgVfsDataInDoneItem * dii = (XdgVfsDataInDoneItem *) item; - fprintf(stderr, "read done - bytecount='%d'\n", dii->bytecount); - break; - } - case XDGVFS_ITEMTYPE_NONE: - { - break; - } - default: - { - fprintf(stderr, "unexpected item - type=%d\n", type); - break; - } - } - xdg_vfs_item_unref(item); -} -if (r) { /* command failed */ } -</pre> - <h3>Opening a file-dialog</h3> -<pre> -XdgVfsResult r; -r = xdg_vfs_sess_cmd_openFileDialog(session, "protocol://user@server/directory", 0); -if (r) { /* command init error */ } - -while ((r = xdg_vfs_sess_readItem(session, &type, &item, NULL, NULL)) == XDGVFS_RESULT_CONTINUES) -{ - switch(type) - { - case XDGVFS_ITEMTYPE_OPENFILEDLG_RESPONSE: - { - XdgVfsOpenFileDlgResponse * dlgResp = (XdgVfsOpenFileDlgResponse*) item; - fprintf(stderr, "selected_uri='%s'\n", dlgResp->selected_uri); - break; - } - case XDGVFS_ITEMTYPE_NONE: - { - break; - } - default: - { - fprintf(stderr, "unexpected item - type=%d\n", type); - break; - } - } - xdg_vfs_item_unref(item); -} -if (r) { /* command failed */ } -</pre> -<h3>Other Commands</h3> -<p>For the other commands see the samples in the 'tests' directory of the tarball. -Also have a look at <em>xdg_vfs_client.h</em> and <em>xdg_vfs_common.h</em> (list of result codes). -<h2>Async Applications</h2> -<p>Check the filedescriptor of the sessions incoming pipe in your event loop before calling</p> -<code> -XdgVfsResult xdg_vfs_sess_readItem(XdgVfsSession * sess, XdgVfsItemType * typeOut, - XdgVfsItem ** itemOut, char ** buffer, int * len); -</code> -<p>and the outgoing pipes filedescriptor before calling</p> -<code> -XdgVfsResult xdg_vfs_sess_sendData(XdgVfsSession * sess); -</code> -<p>(only required when writing a file).</p> -<h2>VFS browser demo</h2> -<p>Libxdg-vfs-demo-filebrowser is a simple file-system-browser (written in Gtk+) which uses libxdg-vfs. -I'm trying to find out whether libxdg-vfs could be used as backend for file-choosers (like GtkFileChooser) - especially in cases -where you need to customize file-dialogs and the simple Open/Save file-dialogs provided by libxdg-vfs won't -suffice.</p> -<p><em>Root URI of the VFS-backend:</em></p> -<p><code>XdgVfsBackendInfo</code> has a field called <code>system_uri</code> -which points to the virtual root folder (often listed in side-panes of file-dialogs) of the VFS backend. -Like <em>system:/</em> on KDE or <em>computer://</em> on Gnome. -</p> -<p><em>Icons and Icon-themes:</em></p> -<p><code>XdgVfsBackendInfo</code> has a field called <code>file_icon_theme</code> (which is 'crystalsvg' on KDE and 'gnome' on Gnome). -The <code>XdgVfsFileInfo</code> structure (returned when listing directories) has an <code>iconname</code> field. -With this information we can look up the right file-icons, without even knowing which backend is running. -</p> -<p>Screenshot: VFS browser using KIO and Gnome-VFS backend (pointing to root folder of the VFS):</p> -<p><img src="imgs/libxdg-vfs-demo-filebrowser-root.png"></p> -<p>Screenshot: VFS browser using the Gnome-VFS backend:</p> -<p><img src="imgs/libxdg-vfs-demo-filebrowser-gnome.png"></p> -<p>Screenshot: VFS browser using the KIO backend:</p> -<p><img src="imgs/libxdg-vfs-demo-filebrowser-kde.png"></p> - -<h2>Sources/Docs</h2> -<p>Sources (CVS): <a href="http://webcvs.freedesktop.org/portland/portland/libxdg-vfs/">http://webcvs.freedesktop.org/portland/portland/libxdg-vfs/</a></p> -<p>Backend manual: <a href="http://www.scheinwelt.at/~norbertf/dadapt/files/xdg_utils/doc/xdg-vfs.html">http://www.scheinwelt.at/~norbertf/dadapt/files/xdg_utils/doc/xdg-vfs.html</a></p> -<p>Portland VFS task: <a href="http://portland.freedesktop.org/wiki/TaskVFS">http://portland.freedesktop.org/wiki/TaskVFS</a></p> -<p>___ n.f. 2006 ___</p> - </body> -</html> diff --git a/portland/libxdg-vfs/libxdg-vfs-client/src/.cvsignore b/portland/libxdg-vfs/libxdg-vfs-client/src/.cvsignore deleted file mode 100644 index 26a73db..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/src/.cvsignore +++ /dev/null @@ -1,8 +0,0 @@ -*.la -*.lo -*.o -.deps -.libs -Makefile -Makefile.in - diff --git a/portland/libxdg-vfs/libxdg-vfs-client/src/Makefile.am b/portland/libxdg-vfs/libxdg-vfs-client/src/Makefile.am deleted file mode 100644 index b6494a9..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/src/Makefile.am +++ /dev/null @@ -1,12 +0,0 @@ - -AM_CPPFLAGS = $(DEPS_CFLAGS) - -lib_LTLIBRARIES = libxdg_vfs_client.la - -libxdg_vfs_client_la_SOURCES = xdg_vfs_client.c xdg_vfs_forkexec.c xdg_vfs_errstrs.c -libxdg_vfs_client_la_LIBADD = $(DEPS_LIBS) -libxdg_vfs_client_la_LDFLAGS = $(all_libraries) - -libxdg_vfs_clientincludedir = $(includedir) -libxdg_vfs_clientinclude_HEADERS = xdg_vfs_client.h xdg_vfs_common.h -noinst_HEADERS = xdg_vfs_forkexec.h diff --git a/portland/libxdg-vfs/libxdg-vfs-client/src/xdg_vfs_client.c b/portland/libxdg-vfs/libxdg-vfs-client/src/xdg_vfs_client.c deleted file mode 100644 index 6ec8df7..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/src/xdg_vfs_client.c +++ /dev/null @@ -1,1261 +0,0 @@ -/* -# xdg_vfs_client.c -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - -#include <stdlib.h> -#include <stdio.h> -#include <string.h> -#include <errno.h> - -#include "xdg_vfs_client.h" -#include "xdg_vfs_common.h" - -/* ==== utils ==== */ - -static XdgVfsFileType _translate_filetype(char * filetype) { - if (strcmp (filetype, "UNKNOWN")==0) - return XDGVFS_FILE_TYPE_UNKNOWN; - if (strcmp (filetype, "REGULAR")==0) - return XDGVFS_FILE_TYPE_REGULAR; - if (strcmp (filetype, "DIRECTORY")==0) - return XDGVFS_FILE_TYPE_DIRECTORY; - if (strcmp (filetype, "FIFO")==0) - return XDGVFS_FILE_TYPE_FIFO; - if (strcmp (filetype, "SOCKET")==0) - return XDGVFS_FILE_TYPE_SOCKET; - if (strcmp (filetype, "CHARDEV")==0) - return XDGVFS_FILE_TYPE_CHARDEV; - if (strcmp (filetype, "BLOCKDEV")==0) - return XDGVFS_FILE_TYPE_BLOCKDEV; - if (strcmp (filetype, "SYMLINK")==0) - return XDGVFS_FILE_TYPE_SYMLINK; - if (strcmp (filetype, "VFSMOUNTPOINT")==0) - return XDGVFS_FILE_TYPE_VFSMOUNTPOINT; - return XDGVFS_FILE_TYPE_UNREC; -}; - - -static int parse_pair(char * theLine, char ** keyName, char ** valueStr, long long int * valueLLInt) { - char * pValue = NULL; - char * tailptr; - - - *keyName = theLine; - *valueStr = NULL; - *valueLLInt = -1; - if (!theLine) return -1; //error - - if (*theLine) { - int c=0; - while (theLine[c] != '\0') { - if (theLine[c] == '=') { - theLine[c] = '\0'; - pValue = theLine +c +1; - } - - c++; - } - } - if (!pValue) return -2; - *valueStr = pValue; - errno = 0; - *valueLLInt = strtoll (pValue, &tailptr, 10); - if (errno) { - *valueLLInt =0; - return 2; - } - return 1; -} - -static int _parse_failure(char * failureStr, char ** errstr) { - char * pValue = failureStr + strlen(XDGVFS_TAG_FAILED); - char * tailptr; - errno = 0; - int errcode = strtol (pValue, &tailptr, 10); - - if (errno) { - *errstr = NULL; - return -1; - } - // fprintf(stderr, "errorcode = %d\n", errcode); - *errstr=tailptr; - return errcode; -} - -static void _init_job(XdgVfsSession * sess) { - - sess->currentItemType = 0; - sess->currentItem = NULL; - sess->lastJobErrorCode = 0; - sess->lastJobErrorText = NULL; - - sess->outBuf_used = 0; - -} - -static XdgVfsResult _finish_simple_job(XdgVfsSession * sess) -{ - XdgVfsResult r; - XdgVfsItemType type=0; - XdgVfsItem * item=NULL; - - while ((r=xdg_vfs_sess_readItem(sess, &type, - &item, NULL, NULL)) == XDGVFS_RESULT_CONTINUES) - { - // if (XDG_VFS_DEBUG_IPC) fprintf(stderr, "_finish simple job\n"); - switch (type) - { - case XDGVFS_ITEMTYPE_NONE: - { - break; - } - default: - { - fprintf(stderr, "simple job - unexpected item - type=%d\n", type); - break; - } - } - xdg_vfs_item_unref(item); - } - return r; -} - -/* =============== sessions =============== */ - -static char * _detect_desktop() { - char * e; - e = getenv ("GNOME_DESKTOP_SESSION_ID"); - if (e && strcmp(e, "") != 0) return "gnome"; - e = getenv ("KDE_FULL_SESSION"); - if (e && strcmp(e, "true") == 0) return "kde"; - return NULL; -} - - -XdgVfsResult xdg_vfs_sess_start(XdgVfsSession ** sessOut, char * preferredDesktop) { - int r; - char * desktop; - char * exePrefix = "xdg_vfs_"; - char * childArgv[] = { "xdg_vfs_client", "shell", NULL }; - - if (preferredDesktop && strcmp(preferredDesktop, "this") != 0) - desktop = preferredDesktop; - else - desktop = _detect_desktop(); - - if (!desktop) - return XDGVFS_RESULT_CANNOT_LAUNCH_BACKEND; - - XdgVfsSession * newSess = malloc(sizeof(XdgVfsSession)); - - char executableName[strlen(exePrefix) + strlen(preferredDesktop) + 1]; - executableName[0] = '\0'; - - strcat(executableName, exePrefix); - strcat(executableName, desktop); - - //puts(executableName); - - r = xdg_vfs_forkexec(executableName, childArgv, &newSess->pid, &newSess->fd_out, &newSess->fd_in); - - if (r) { - free(newSess); - *sessOut = NULL; - return XDGVFS_RESULT_IOERR; - } - newSess->inBuf = malloc(XDGVFS_CLIENT_BUFFERSIZE+1); - newSess->rawBufIn = malloc(XDGVFS_CLIENT_BUFFERSIZE+1); - newSess->inBuf_size = XDGVFS_CLIENT_BUFFERSIZE; - newSess->inBuf_used = 0; - _init_job(newSess); - newSess->stateIn = XDGVFS_STATE_EXPECTING_PROMPT; - newSess->recurse_count = 0; - - while (1) { - r = xdg_vfs_sess_readItem(newSess, NULL, - NULL, NULL, NULL); - /* fprintf(stderr, "readItem r=%d state=%d\n", r, newSess->stateIn); */ - - if (newSess->stateIn == XDGVFS_STATE_READY) break; - if (r!=XDGVFS_RESULT_CONTINUES) { - xdg_vfs_sess_close(newSess); - return XDGVFS_RESULT_CANNOT_LAUNCH_BACKEND; - } - } - - *sessOut = newSess; - - return XDGVFS_RESULT_OK; -} - -int xdg_vfs_sess_getIncomingFiledescriptor(XdgVfsSession * sess) -{ - return sess->fd_in; -} - -int xdg_vfs_sess_getOutgoingFiledescriptor(XdgVfsSession * sess) -{ - return sess->fd_out; -} - -int xdg_vfs_sess_isBusy(XdgVfsSession * sess) -{ - return sess->stateIn != XDGVFS_STATE_READY; -} - - -XdgVfsResult xdg_vfs_sess_close(XdgVfsSession * sess) { - if (!sess) { - fprintf(stderr, "NULL pointer passed to xdg_vfs_sess_close!\n"); - return XDGVFS_ERRORCODE_GENERIC; - } - close(sess->fd_out); - close(sess->fd_in); - free(sess->inBuf); - free(sess); - return XDGVFS_RESULT_OK; -} - -/* ================ file/dir change monitoring ============ */ - -void xdg_vfs_sess_set_monitor_callback( - XdgVfsSession * sess, - XdgVfsMonitorCallback cb, - void * userdata - ) -{ - sess->monitor_cb = cb; - sess->monitor_cb_userdata=userdata; -} - -/* ================ items ================= */ - -XdgVfsItem * xdg_vfs_item_ref(XdgVfsItem * item) { - item->refcount++; - return item; -} - -void xdg_vfs_item_unref(XdgVfsItem * item) { - if (item && --item->refcount <= 0) { - switch (item->type) - { - case XDGVFS_ITEMTYPE_FILEINFO: - { - XdgVfsFileInfo * _item = (XdgVfsFileInfo *) item; - if (_item->uri) free(_item->uri); - if (_item->basename) free(_item->basename); - if (_item->mimetype) free(_item->mimetype); - if (_item->user) free(_item->user); - if (_item->group) free(_item->group); - if (_item->mountpoint_id) free(_item->mountpoint_id); - break; - } - case XDGVFS_ITEMTYPE_GET_HEAD: - case XDGVFS_ITEMTYPE_PUT_HEAD: - case XDGVFS_ITEMTYPE_SETATTRS_HEAD: - case XDGVFS_ITEMTYPE_MKDIR_HEAD: - case XDGVFS_ITEMTYPE_RMDIR_HEAD: - case XDGVFS_ITEMTYPE_RM_HEAD: - case XDGVFS_ITEMTYPE_LS_HEAD: - { - // fprintf(stderr,"why1\n"); - XdgVfsSimpleHead * _item = (XdgVfsSimpleHead*) item; - if (_item->uri) free (_item->uri); - break; - } - case XDGVFS_ITEMTYPE_OPENFILEDLG_RESPONSE: - { - XdgVfsOpenFileDlgResponse * _item = (XdgVfsOpenFileDlgResponse*) item; - if (_item->selected_localpath) free(_item->selected_localpath); - if (_item->selected_uri) free(_item->selected_uri); - break; - } - case XDGVFS_ITEMTYPE_SAVEFILEDLG_RESPONSE: - { - // fprintf(stderr,"why\n"); - XdgVfsSaveFileDlgResponse * _item = (XdgVfsSaveFileDlgResponse*) item; - if (_item->selected_localpath) free(_item->selected_localpath); - if (_item->selected_uri) free(_item->selected_uri); - break; - } - case XDGVFS_ITEMTYPE_COPY_HEAD: - { - XdgVfsCopyHead * _item = (XdgVfsCopyHead*) item; - if (_item->uri_src) free(_item->uri_src); - if (_item->uri_target) free(_item->uri_target); - break; - } - case XDGVFS_ITEMTYPE_MOVE_HEAD: - { - XdgVfsMoveHead * _item = (XdgVfsMoveHead*) item; - if (_item->uri_src) free(_item->uri_src); - if (_item->uri_target) free(_item->uri_target); - break; - } - case XDGVFS_ITEMTYPE_BACKENDINFO: - { - XdgVfsBackendInfo * _item = (XdgVfsBackendInfo*) item; - if (_item->backend_id) free(_item->backend_id); - if (_item->system_uri) free(_item->system_uri); - if (_item->file_icon_theme) free(_item->file_icon_theme); - break; - } - - } - free(item); - - } - -} - - -/* ================ command utils =============== */ - -static XdgVfsResult _write_command(XdgVfsSession * sess, char * command, const char * argv[]) { - if (!sess) - { - fprintf(stderr, "NULL pointer passed to _write_command!\n"); - return XDGVFS_ERRORCODE_GENERIC; - } - if (sess->stateIn != XDGVFS_STATE_READY) return XDGVFS_RESULT_BAD_STATE; - FILE* out = fdopen(dup(sess->fd_out), "w"); - fputs(command, out); - int c=0; - while(argv[c] != NULL) { - const char * arg = argv[c]; - fputc((int)' ', out); - fputc((int)'"', out); - fputs(arg, out); /* todo: escape double quotes! */ - fputc((int)'"', out); - c++; - } - fputc(10, out); - fflush(out); - fclose(out); - //printf("written command!\n"); - sess->stateIn = XDGVFS_STATE_READING_TEXT; - _init_job(sess); - return XDGVFS_RESULT_OK; -} - -XdgVfsResult xdg_vfs_sess_cancelCommand(XdgVfsSession * sess) -{ - /* not implemented yet */ - fprintf(stderr, "xdg_vfs_sess_cmd_cancel() not implemented yet\n"); - return XDGVFS_RESULT_OK; -} - -/* ========================= Commands ========================== */ - -XdgVfsResult xdg_vfs_sess_cmd_backendInfo(XdgVfsSession * sess) -{ - const char * argv[] = { NULL }; - return _write_command(sess, "backend", argv); -} - - -XdgVfsResult xdg_vfs_sess_cmd_getFile(XdgVfsSession * sess, const char * filename) -{ - const char * argv[] = { filename, "-e", NULL }; - return _write_command(sess, "get", argv); -} - -XdgVfsResult xdg_vfs_sess_cmd_putFile(XdgVfsSession * sess, const char * filename, - XdgVfsFlags flags) -{ - const char * argv[] = { filename, "-e", NULL, NULL }; - if (flags & XDGVFS_FLAGS_OVERWRITE) - { - argv[2] = "--overwrite"; - } - return _write_command(sess, "put", argv); -} - -XdgVfsResult xdg_vfs_sess_cmd_getFileInfo(XdgVfsSession * sess, const char * filename) -{ - const char * argv[] = { filename, NULL }; - return _write_command(sess, "info", argv); -} - -XdgVfsResult xdg_vfs_sess_cmd_setAttrs(XdgVfsSession * sess, - const char * filename, int permissions, int setPermFlag, char * user, char * group) -{ - XdgVfsResult r; - int an = 1; - const char * argv[] = { filename, NULL, NULL, NULL, NULL }; - - if ((!user) && (!group) && (!setPermFlag)) return XDGVFS_RESULT_PARAMETER_ERR; - - if (user) - { - char * str = calloc(256,1); - strncat(str, "--user=", 255); - strncat(str, user, 255); - argv[an++] = str; - } - if (group) - { - char * str = calloc(256,1); - strncat(str, "--group=", 255); - strncat(str, user, 255); - argv[an++] = str; - } - if (setPermFlag) - { - char * str = calloc(256,1); - snprintf (str, 255, "--permissions=%d\n", permissions); - argv[an++] = str; - } - r = _write_command(sess, "info", argv); - - if (argv[1]) free((void*)argv[1]); - if (argv[2]) free((void*)argv[2]); - if (argv[3]) free((void*)argv[3]); - return r; -} - -XdgVfsResult xdg_vfs_sess_cmd_copyFile(XdgVfsSession * sess, const char * filename_src, const char * filename_target) -{ - const char * argv[] = { filename_src, filename_target, "--progress", NULL }; - return _write_command(sess, "cp", argv); -} - -XdgVfsResult xdg_vfs_sess_cmd_moveFile(XdgVfsSession * sess, const char * filename_src, const char * filename_target) -{ - const char * argv[] = { filename_src, filename_target, "--progress", NULL }; - return _write_command(sess, "mv", argv); -} - - -XdgVfsResult xdg_vfs_sess_cmd_listDirectory(XdgVfsSession * sess, const char * filename) -{ - const char * argv[] = { filename, "--dive-de-links", NULL }; - return _write_command(sess, "ls", argv); -} - -XdgVfsResult xdg_vfs_sess_cmd_makeDirectory(XdgVfsSession * sess, const char * filename) -{ - const char * argv[] = { filename, NULL }; - return _write_command(sess, "mkdir", argv); -} - -XdgVfsResult xdg_vfs_sess_cmd_removeDirectory(XdgVfsSession * sess, const char * filename) -{ - const char * argv[] = { filename, NULL }; - return _write_command(sess, "rmdir", argv); -} - -XdgVfsResult xdg_vfs_sess_cmd_removeFile(XdgVfsSession * sess, const char * filename) -{ - const char * argv[] = { filename, NULL }; - return _write_command(sess, "rm", argv); -} - -XdgVfsResult xdg_vfs_sess_cmd_mount(XdgVfsSession * sess, const char * mountpoint_id) -{ - const char * argv[] = { mountpoint_id, NULL }; - return _write_command(sess, "mount", argv); -} - -XdgVfsResult xdg_vfs_sess_cmd_monitorDir(XdgVfsSession * sess, const char * uri) -{ - const char * argv[] = { uri, NULL }; - XdgVfsResult r = _write_command(sess, "mondir", argv); - if (r) return r; - return _finish_simple_job(sess); -} - -XdgVfsResult xdg_vfs_sess_cmd_monitorFile(XdgVfsSession * sess, const char * uri) -{ - const char * argv[] = { uri, NULL }; - XdgVfsResult r = _write_command(sess, "monfile", argv); - if (r) return r; - return _finish_simple_job(sess); - -} - -XdgVfsResult xdg_vfs_sess_cmd_removeMonitor(XdgVfsSession * sess, const char * uri) -{ - const char * argv[] = { uri, NULL }; - XdgVfsResult r = _write_command(sess, "rmmon", argv); - if (r) return r; - return _finish_simple_job(sess); -} - - -XdgVfsResult xdg_vfs_sess_cmd_openFileDialog(XdgVfsSession * sess, const char * default_uri, XdgVfsFlags flags) -{ - const char * argv[] = { default_uri, NULL, NULL, NULL }; - - if (flags & XDGVFS_FLAGS_INSTANT_GET) { - argv[1] = "--instant-get"; - } - if (flags & XDGVFS_FLAGS_QRY_FILEINFO) { - argv[2] = "-i"; - } - return _write_command(sess, "openfiledlg", argv); - -} - -XdgVfsResult xdg_vfs_sess_cmd_saveFileDialog(XdgVfsSession * sess, - const char * default_folder_uri, - const char * default_filename, - XdgVfsFlags flags) -{ - const char * argv[] = { default_folder_uri, default_filename, NULL, NULL }; - - - if (flags & XDGVFS_FLAGS_INSTANT_PUT) { - if (!default_filename) - argv[1] = "--instant-put"; - else - argv[2] = "--instant-put"; - } - return _write_command(sess, "savefiledlg", argv); -} - -/* ========================= Reading and writing ========================== */ - -static XdgVfsResult _read_chunk(XdgVfsSession * sess) -{ - int i, n; - char * buf = sess->inBuf; - int used = sess->inBuf_used; - int size = sess->inBuf_size; - - n = read (sess->fd_in, buf+used, size-used,0); - if (n==0) - { - return XDGVFS_RESULT_IOERR; // EOF -> child process has died - } - if (n<0) - { - printf ("reading head returns: %d\n", n); - perror ("error reading"); - return XDGVFS_RESULT_IOERR; // EOF -> child process has died - } - if (XDG_VFS_DEBUG_IPC) - { - fwrite (buf+used, 1, n, stderr); - fflush(stderr); - } - - sess->inBuf_used = used+n; - return XDGVFS_RESULT_OK; -} - -static char * _get_str_blocking(XdgVfsSession * sess, int size) { - char * buf = sess->inBuf; - int used = sess->inBuf_used; - char * str; - while (sess->inBuf_used < size) - { - XdgVfsResult r = _read_chunk(sess); - if (r) - { - fprintf(stdout, "_get_str_blocking problem: %d\n", r); - return NULL; - } - } - str = malloc(size+1); - memcpy(str, buf, size); - str[size]='\0'; - memcpy(buf, buf+size, used-size); - sess->inBuf_used = used-size; - return str; -} - -static char * _get_next_line(XdgVfsSession * sess) { - char * theLine = NULL; - char * buf = sess->inBuf; - int i; - int used = sess->inBuf_used; - //buf[used+1] = '\0'; - //fprintf(stderr, "_get_next_line used=%d buf=%s\n", used, buf); - for (i = 0; i < used; i++) { - if (buf[i] == '\n') { - buf[i] = '\0'; - theLine=strdup(buf); - memcpy(buf, buf+i+1, used-i); /* shift data left */ - sess->inBuf_used = used-i-1; - break; - } - } - return theLine; -} - - - -static XdgVfsResult _xdg_vfs_sess_parseLine(XdgVfsSession * sess, XdgVfsItemType * type, XdgVfsItem ** item) -{ - char * theLine; - - *type = XDGVFS_ITEMTYPE_NONE; - *item = NULL; - - - theLine = _get_next_line(sess); - if (!theLine) - { - XdgVfsResult r = _read_chunk(sess); - if (r) return r; - theLine = _get_next_line(sess); - } - - - if (XDG_VFS_DEBUG_IPC) fprintf(stdout, "t=%d line: >>%s<<\n", (sess->currentItemType), theLine); - - if (theLine && theLine[0] != '\0') - { - if (theLine[0] == '[' || theLine[0] == '(' || theLine[0] == ':') - { - /* We got a new Object - thus we have to return the old one */ - XdgVfsItem * newItem = NULL; - - if (strcmp(theLine, XDGVFS_TAG_BACKEND)==0) - { - XdgVfsBackendInfo * _newItem = calloc(1, sizeof(XdgVfsBackendInfo)); - newItem = (XdgVfsItem*) _newItem; - newItem->type = XDGVFS_ITEMTYPE_BACKENDINFO; - } - else if (strcmp(theLine, XDGVFS_TAG_GET)==0) - { - XdgVfsSimpleHead * _newItem = calloc(1, sizeof(XdgVfsSimpleHead)); - newItem = (XdgVfsItem*) _newItem; - newItem->type = XDGVFS_ITEMTYPE_GET_HEAD; - } - else if (strcmp(theLine, XDGVFS_TAG_PUT)==0) - { - XdgVfsSimpleHead * _newItem = calloc(1, sizeof(XdgVfsSimpleHead)); - newItem = (XdgVfsItem*) _newItem; - newItem->type = XDGVFS_ITEMTYPE_PUT_HEAD; - } - else if (strcmp(theLine, XDGVFS_TAG_ESCAPEDDATA_OUT)==0) - { - XdgVfsDataInDoneItem * _newItem = calloc(1, sizeof(XdgVfsDataInDoneItem)); - _newItem->bytecount = 0; - newItem = (XdgVfsItem*) _newItem; - newItem->type = XDGVFS_ITEMTYPE_DATAIN_DONE; - sess->stateIn = XDGVFS_STATE_READING_DATA; - } - else if (strcmp(theLine,XDGVFS_TAG_PUT)==0) - { - XdgVfsSimpleHead * _newItem = calloc(1, sizeof(XdgVfsSimpleHead)); - newItem = (XdgVfsItem*) _newItem; - newItem->type = XDGVFS_ITEMTYPE_GET_HEAD; - } - else if (strcmp(theLine, XDGVFS_TAG_ESCAPEDDATA_IN)==0) - { - XdgVfsDataOutDoneItem * _newItem = calloc(1, sizeof(XdgVfsDataOutDoneItem)); - newItem = (XdgVfsItem*) _newItem; - _newItem->bytecount = 0; - newItem->type = XDGVFS_ITEMTYPE_DATAOUT_DONE; - sess->stateIn = XDGVFS_STATE_WRITING_DATA; - } - else if (strcmp(theLine,XDGVFS_TAG_CP)==0) - { - XdgVfsCopyHead * _newItem = calloc(1, sizeof(XdgVfsCopyHead)); - newItem = (XdgVfsItem*) _newItem; - newItem->type = XDGVFS_ITEMTYPE_COPY_HEAD; - } - else if (strcmp(theLine,XDGVFS_TAG_MV)==0) - { - XdgVfsMoveHead * _newItem = calloc(1, sizeof(XdgVfsMoveHead)); - newItem = (XdgVfsItem*) _newItem; - newItem->type = XDGVFS_ITEMTYPE_MOVE_HEAD; - } - else if (strcmp(theLine,XDGVFS_TAG_PROGRESS)==0) - { - XdgVfsProgress * _newItem = calloc(1, sizeof(XdgVfsProgress)); - newItem = (XdgVfsItem*) _newItem; - newItem->type = XDGVFS_ITEMTYPE_PROGRESS; - } - else if (strcmp(theLine,XDGVFS_TAG_FILEINFO)==0 - || strcmp(theLine,XDGVFS_TAG_DIRENTRY)==0) - { - XdgVfsFileInfo * _newItem = calloc(1, sizeof(XdgVfsFileInfo)); - newItem = (XdgVfsItem*) _newItem; - newItem->type = XDGVFS_ITEMTYPE_FILEINFO; - } - else if (strcmp(theLine,XDGVFS_TAG_SETATTRS)==0) - { - XdgVfsSimpleHead * _newItem = calloc(1, sizeof(XdgVfsSimpleHead)); - newItem = (XdgVfsItem*) _newItem; - newItem->type = XDGVFS_ITEMTYPE_SETATTRS_HEAD; - } - else if (strcmp(theLine,XDGVFS_TAG_LS)==0) - { - XdgVfsSimpleHead * _newItem = calloc(1, sizeof(XdgVfsSimpleHead)); - newItem = (XdgVfsItem*) _newItem; - newItem->type = XDGVFS_ITEMTYPE_LS_HEAD; - } - else if (strcmp(theLine,XDGVFS_TAG_MKDIR)==0) - { - XdgVfsSimpleHead * _newItem = calloc(1, sizeof(XdgVfsSimpleHead)); - newItem = (XdgVfsItem*) _newItem; - newItem->type = XDGVFS_ITEMTYPE_MKDIR_HEAD; - } - else if (strcmp(theLine,XDGVFS_TAG_RMDIR)==0) - { - XdgVfsSimpleHead * _newItem = calloc(1, sizeof(XdgVfsSimpleHead)); - newItem = (XdgVfsItem*) _newItem; - newItem->type = XDGVFS_ITEMTYPE_RMDIR_HEAD; - } - else if (strcmp(theLine,XDGVFS_TAG_RM)==0) - { - XdgVfsSimpleHead * _newItem = calloc(1, sizeof(XdgVfsSimpleHead)); - newItem = (XdgVfsItem*) _newItem; - newItem->type = XDGVFS_ITEMTYPE_RMDIR_HEAD; - } - else if (strcmp(theLine,XDGVFS_TAG_MOUNT)==0) - { - //XdgVfsSimpleHead * _newItem = calloc(1, sizeof(XdgVfsSimpleHead)); - newItem = NULL; - //newItem->type = XDGVFS_ITEMTYPE_NONE; - } - else if (strcmp(theLine,XDGVFS_TAG_OPENFILEDLG)==0) - { - XdgVfsOpenFileDlgResponse * _newItem = calloc(1, sizeof(XdgVfsOpenFileDlgResponse)); - newItem = (XdgVfsItem*) _newItem; - newItem->type = XDGVFS_ITEMTYPE_OPENFILEDLG_RESPONSE; - } - else if (strcmp(theLine,XDGVFS_TAG_SAVEFILEDLG)==0) - { - XdgVfsSaveFileDlgResponse * _newItem = calloc(1, sizeof(XdgVfsSaveFileDlgResponse)); - newItem = (XdgVfsItem*) _newItem; - newItem->type = XDGVFS_ITEMTYPE_SAVEFILEDLG_RESPONSE; - } - /* finished? */ - else if (strcmp(theLine,XDGVFS_TAG_DONE)==0) - { - //fprintf(stderr,"done\n"); - sess->stateIn = XDGVFS_STATE_EXPECTING_PROMPT; - sess->lastJobErrorCode = XDGVFS_ERRORCODE_OK; - } - else if (strncmp(theLine,XDGVFS_TAG_FAILED, strlen(XDGVFS_TAG_FAILED)) ==0) - { - char * errstr; - sess->lastJobErrorCode = _parse_failure(theLine, &errstr); - sess->stateIn = XDGVFS_STATE_EXPECTING_PROMPT; - //fprintf(stderr,"failed code=%d\n", sess->lastJobErrorCode); - sess->currentItemType = XDGVFS_ITEMTYPE_NONE; - sess->currentItem = NULL; // fixme unref! - } else { - fprintf(stderr,"unexpected tag: %s\n", theLine); - sess->stateIn = XDGVFS_STATE_ERROR_LEAVING; - return XDGVFS_RESULT_IOERR; - } - - *type = sess->currentItemType; - *item = sess->currentItem; - if (newItem) { - newItem->refcount = 1; - sess->currentItemType = newItem->type; - sess->currentItem = newItem; - } else { - sess->currentItemType = XDGVFS_ITEMTYPE_NONE; - sess->currentItem = NULL; - } - - } - else if(theLine[0] == XDGVFS_TAG_MONITOREVENT [0]) - { - int l = strlen(theLine); - if (l>2 && sess->monitor_cb) - { - char * changed_uri = strdup(theLine+2); - sess->monitor_cb(sess, changed_uri, sess->monitor_cb_userdata); - free(changed_uri); - } - else - fprintf(stderr, "monitorevent: line too short\n"); - } - else - { - XdgVfsItem * rItem = sess->currentItem; - char * keyname; - char * valueStr; - long long int valueLLInt; - parse_pair(theLine, &keyname, &valueStr, &valueLLInt); - switch(sess->currentItemType) - { - case(XDGVFS_ITEMTYPE_GET_HEAD): - case(XDGVFS_ITEMTYPE_PUT_HEAD): - case(XDGVFS_ITEMTYPE_MKDIR_HEAD): - case(XDGVFS_ITEMTYPE_RMDIR_HEAD): - case(XDGVFS_ITEMTYPE_RM_HEAD): - case(XDGVFS_ITEMTYPE_LS_HEAD): - case(XDGVFS_ITEMTYPE_SETATTRS_HEAD): - { - XdgVfsSimpleHead * _rItem = (XdgVfsSimpleHead*)rItem; - if (strcmp(keyname, "uri")==0) - _rItem->uri = strdup(valueStr); - break; - } - case(XDGVFS_ITEMTYPE_BACKENDINFO): - { - - XdgVfsBackendInfo * _rItem = (XdgVfsBackendInfo*)rItem; - if (strcmp(keyname, "backend_id")==0) - _rItem->backend_id = strdup(valueStr); - if (strcmp(keyname, "system_uri")==0) - _rItem->system_uri = strdup(valueStr); - if (strcmp(keyname, "file_icon_theme")==0) - _rItem->file_icon_theme = strdup(valueStr); - break; - } - case(XDGVFS_ITEMTYPE_FILEINFO): - { - - XdgVfsFileInfo * _rItem = (XdgVfsFileInfo*)rItem; - if (strcmp(keyname, "basename")==0) - _rItem->basename = strdup(valueStr); - if (strcmp(keyname, "mimetype")==0) - _rItem->mimetype = strdup(valueStr); - if (strcmp(keyname, "iconname")==0) - _rItem->iconname = strdup(valueStr); - if (strcmp(keyname, "uri")==0) - _rItem->uri = strdup(valueStr); - if (strcmp(keyname, "user")==0) - _rItem->user = strdup(valueStr); - if (strcmp(keyname, "group")==0) - _rItem->group = strdup(valueStr); - if (strcmp(keyname, "linkdest")==0) - _rItem->linkdest = strdup(valueStr); - if (strcmp(keyname, "filetype")==0) - _rItem->filetype = _translate_filetype(valueStr); - if (strcmp(keyname, "mountpoint_id")==0) - _rItem->mountpoint_id = strdup(valueStr); - - if (strcmp(keyname, "permissions")==0) - _rItem->permissions = valueLLInt; - if (strcmp(keyname, "size")==0) - _rItem->size = valueLLInt; - if (strcmp(keyname, "atime")==0) - _rItem->atime = valueLLInt; - if (strcmp(keyname, "mtime")==0) - _rItem->mtime = valueLLInt; - if (strcmp(keyname, "ctime")==0) - _rItem->ctime = valueLLInt; - if (strcmp(keyname, "is_mounted")==0) - _rItem->is_mounted = valueLLInt; - break; - } - case(XDGVFS_ITEMTYPE_PROGRESS): - { - XdgVfsProgress * _rItem = (XdgVfsProgress*)rItem; - if (strcmp(keyname, "total_bytes")==0) - _rItem->size = valueLLInt; - if (strcmp(keyname, "bytes_copied")==0) - _rItem->copied = valueLLInt; - break; - } - case(XDGVFS_ITEMTYPE_OPENFILEDLG_RESPONSE): - { - XdgVfsOpenFileDlgResponse * _rItem = (XdgVfsOpenFileDlgResponse*) rItem; - if (strcmp(keyname, "selected_localpath")==0) - _rItem->selected_localpath = strdup(valueStr);; - if (strcmp(keyname, "selected_uri")==0) - _rItem->selected_uri = strdup(valueStr);; - break; - } - case(XDGVFS_ITEMTYPE_SAVEFILEDLG_RESPONSE): - { - XdgVfsSaveFileDlgResponse * _rItem = (XdgVfsSaveFileDlgResponse*) rItem; - if (strcmp(keyname, "selected_localpath")==0) - _rItem->selected_localpath = strdup(valueStr);; - if (strcmp(keyname, "selected_uri")==0) - _rItem->selected_uri = strdup(valueStr);; - break; - } - case(XDGVFS_ITEMTYPE_COPY_HEAD): - { - XdgVfsCopyHead * _rItem = (XdgVfsCopyHead*) rItem; - if (strcmp(keyname, "uri_src")==0) - _rItem->uri_src = strdup(valueStr);; - if (strcmp(keyname, "uri_target")==0) - _rItem->uri_target = strdup(valueStr);; - break; - } - case(XDGVFS_ITEMTYPE_MOVE_HEAD): - { - XdgVfsMoveHead * _rItem = (XdgVfsMoveHead*) rItem; - if (strcmp(keyname, "uri_src")==0) - _rItem->uri_src = strdup(valueStr);; - if (strcmp(keyname, "uri_target")==0) - _rItem->uri_target = strdup(valueStr);; - break; - } - case(XDGVFS_ITEMTYPE_DATAIN_DONE): - break; - } - //if (valueStr) free(valueStr); - } - } - return XDGVFS_RESULT_CONTINUES; -} - -static void _debug_print_out_buffer(XdgVfsSession * sess) { - int i; - //sess->inBuf[sess->inBuf_used+1] = '\0'; - // - fprintf(stderr, "buf: used=%d '", sess->inBuf_used); - for (i=0;i<sess->inBuf_used;i++) - { - int c = sess->inBuf[i]; - if (c < 32 || c > 126) - fputc('.', stderr); - else - fputc(c, stderr); - } - fprintf(stderr, "'\n"); -} - -static XdgVfsResult _report_size(XdgVfsSession * sess, int len) -{ - if (sess->currentItemType == XDGVFS_ITEMTYPE_DATAIN_DONE) - { - XdgVfsDataInDoneItem * item = (XdgVfsDataInDoneItem *) sess->currentItem; - item->bytecount+=len; - return XDGVFS_RESULT_OK; - - } - else - { - fprintf(stderr,"fatal: data-in-item not found!!!\n"); - sess->stateIn = XDGVFS_STATE_ERROR_LEAVING; - return XDGVFS_RESULT_FATAL_ERR; - } -} - -static XdgVfsResult _read_data(XdgVfsSession * sess, XdgVfsItemType * typeOut, char ** buffer, int * len) -{ - *buffer = NULL; - *len = 0; - if (sess->inBuf_used<2) - { - //fprintf(stderr, "readchunk\n"); - XdgVfsResult r = _read_chunk(sess); - if (r) return r; - } - - char * buf = sess->inBuf; - int used = sess->inBuf_used; - //fprintf(stderr, "\nlen = %d\n", used); - int i=0; - char * outptr = sess->rawBufIn; - while (i<used) - { - char c = buf[i]; - if (c == '~') - { - i++; - if (i<used) - { - if (buf[i] == '~') - { - i++; - *outptr++ = '~'; - continue; - } - else - if (buf[i] == '\n') - { - memcpy(buf, buf+i+1, used-i); - *buffer = sess->rawBufIn; - *len = outptr - sess->rawBufIn; - sess->inBuf_used = used-i-1; - - _report_size(sess, *len); - /* fprintf(stderr, "read all data - end found len=%d\n", *len); */ - /* _debug_print_out_buffer(sess); */ - - sess->stateIn = XDGVFS_STATE_READING_TEXT; - /* finished - switch back to text-mode */ - *typeOut = XDGVFS_DATAIN; - return XDGVFS_RESULT_CONTINUES; - } - else - { - *buffer = NULL; - *len = 0; - fprintf(stderr, "unescaping error at pos=%d buffer len=%d:\n", i, used); - _debug_print_out_buffer(sess); - fprintf(stderr, "unescaped buffer:\n"); - fwrite (sess->rawBufIn, 1, outptr - sess->rawBufIn, stdout); - sess->inBuf_used = 0; - sess->stateIn = XDGVFS_STATE_ERROR_LEAVING; - - return XDGVFS_RESULT_UNESCAPING_DATA_ERR; - } - } - else - { - buf[0]='~'; /* cannot process this - leave escape char in buffer */ - sess->inBuf_used = 1; - *buffer = sess->rawBufIn; - *len = outptr - sess->rawBufIn; - _report_size(sess, *len); - *typeOut = XDGVFS_DATAIN; - return XDGVFS_RESULT_CONTINUES; - } - } - else - { - i++; - *outptr++ = c; - } - } - - *buffer = sess->rawBufIn; - *len = outptr - sess->rawBufIn; - _report_size(sess, *len); - sess->inBuf_used = 0; - *typeOut = XDGVFS_DATAIN; - return XDGVFS_RESULT_CONTINUES; -} - - -static XdgVfsResult _xdg_vfs_sess_readItem(XdgVfsSession * sess, XdgVfsItemType * typeOut, - XdgVfsItem ** itemOut, char ** buffer, int * len) -{ - - if (typeOut) *typeOut = 0; - if (itemOut) *itemOut = NULL; - if (buffer) *buffer = NULL; - if (len) * len=0; - - if (XDG_VFS_DEBUG_IPC) fprintf(stderr, "state=%d\n", sess->stateIn); - // _debug_print_out_buffer(sess); - - - switch(sess->stateIn) - { - case(XDGVFS_STATE_EXPECTING_PROMPT): - - if (sess->inBuf_used >= 2) - { - char * prompt = _get_str_blocking(sess, 2); - if (prompt && strcmp(prompt, "> ")==0) - { - sess->stateIn = XDGVFS_STATE_READY; - free(prompt); - return sess->lastJobErrorCode; - } - else - { - if(prompt) free (prompt); - return XDGVFS_ERRORCODE_CORRUPTED_DATA; - } - } -/* else if (sess->inBuf_used > 2) - { - return XDGVFS_ERRORCODE_CORRUPTED_DATA; - } */ - else - { - XdgVfsResult r = _read_chunk(sess); - if (r) return r; - return XDGVFS_RESULT_CONTINUES; - } - break; - case(XDGVFS_STATE_READY): - { - XdgVfsResult r = _xdg_vfs_sess_parseLine(sess, typeOut, itemOut); - if (typeOut && *typeOut != XDGVFS_ITEMTYPE_NONE) - { - fprintf(stderr, - "WARNING: calling this function in 'ready-state' shouldn't " - "return anything except triggering file monitoring events!" - " itemType=%d\n", typeOut); - - if (typeOut) *typeOut=XDGVFS_ITEMTYPE_NONE; - if (itemOut) - { - xdg_vfs_item_unref(*itemOut); - *itemOut=NULL; - } - return XDGVFS_RESULT_BAD_STATE; - } - if (r!=XDGVFS_RESULT_CONTINUES) - { - fprintf(stderr, - "WARNING: calling this function in 'ready-state' shouldn't" - " return errors!\n"); - return r; - } - return XDGVFS_RESULT_OK; - } - case(XDGVFS_STATE_READING_TEXT): - return _xdg_vfs_sess_parseLine(sess, typeOut, itemOut); - case(XDGVFS_STATE_READING_DATA): - return _read_data(sess, typeOut, buffer, len); - case(XDGVFS_STATE_WRITING_DATA): - *typeOut = XDGVFS_DATAOUT; - return XDGVFS_RESULT_CONTINUES; - case(XDGVFS_STATE_ERROR_LEAVING): - return XDGVFS_RESULT_IOERR; - - default: - return XDGVFS_RESULT_BAD_STATE; - } - return XDGVFS_ERRORCODE_OK; -} - -XdgVfsResult xdg_vfs_sess_readItem(XdgVfsSession * sess, XdgVfsItemType * typeOut, - XdgVfsItem ** itemOut, char ** buffer, int * len) -{ - XdgVfsResult r; - if (sess->recurse_count > 0) { - fprintf(stderr, "Warning: cannot recurse readItem function!\n"); - return XDGVFS_RESULT_BAD_STATE; - } - sess->recurse_count = sess->recurse_count+1; - r= _xdg_vfs_sess_readItem(sess, typeOut, itemOut, buffer, len); - sess->recurse_count = sess->recurse_count-1; - return r; -} - -static int _chk_incoming(XdgVfsSession * sess) -{ - /* check for canceled */ - int filedes = sess->fd_in; - int r; - fd_set set; - struct timeval timeout; - - /* Initialize the file descriptor set. */ - FD_ZERO (&set); - FD_SET (filedes, &set); - - /* Initialize the timeout data structure. */ - timeout.tv_sec = 0; - timeout.tv_usec = 0; - - /* select returns 0 if timeout, 1 if input available, -1 if error. */ - r= select (FD_SETSIZE, &set, NULL, NULL, &timeout); - if (r==0) return 0; - if (r==-1) - { - fprintf(stderr, "WARNING: Error when checking stdin for incoming data\n"); - return 0; - } - else - { - return 1; - } -} - - -XdgVfsResult xdg_vfs_sess_sendData(XdgVfsSession * sess) { - - if (_chk_incoming(sess)) - { - sess->stateIn = XDGVFS_STATE_READING_TEXT; - return XDGVFS_RESULT_IOERR; - } - - - if (sess->outBuf_used - sess->outBuf_sent == 0) return XDGVFS_RESULT_GIVE_ME_DATA; - - ssize_t len = write (sess->fd_out, - sess->outBuf + sess->outBuf_sent, - sess->outBuf_used - sess->outBuf_sent); - // fprintf(stderr, "sent %d bytes\n", len); - //sleep(1); - if (len == -1) { - if (errno == EAGAIN) return XDGVFS_RESULT_CALL_SENDDATA_AGAIN; - perror ("sending data to xdg-vfs process - IOERR"); - return XDGVFS_RESULT_IOERR; - } - sess->outBuf_sent += len; - - - if (sess->outBuf_used - sess->outBuf_sent == 0) { - if (sess->outBuf_EOF) { - sess->stateIn = XDGVFS_STATE_READING_TEXT; - return XDGVFS_RESULT_OK; - } - return XDGVFS_RESULT_GIVE_ME_DATA; - } - - return XDGVFS_RESULT_CALL_SENDDATA_AGAIN; - -} - -XdgVfsResult xdg_vfs_sess_putDataChunk(XdgVfsSession * sess, char * data, int len) { - - sess->outBuf_sent = 0; - if (len == 0 ) { /* EOF */ - if (data) { - fprintf(stderr, "WARNING: set data to NULL on EOF!!\n"); - } - - sess->outBuf[0] = '~'; - sess->outBuf[1] = '\n'; - sess->outBuf_used = 2; - sess->outBuf_EOF = 1; - return XDGVFS_RESULT_CALL_SENDDATA_AGAIN; - } - - if (sess->currentItemType == XDGVFS_ITEMTYPE_DATAOUT_DONE) { - XdgVfsDataOutDoneItem * dii = (XdgVfsDataOutDoneItem *) sess->currentItem; - dii->bytecount += len; - } - else - { - fprintf(stderr, "Where is my object?\n"); - return XDGVFS_RESULT_BAD_STATE; - } - - if (!sess->outBuf) sess->outBuf = malloc(len*2); /* can be max twice the data size */ - if (sess->outBuf_size < len * 2) - { - sess->outBuf = realloc (sess->outBuf, len * 2); - sess->outBuf_size = len * 2; - } - int i = 0; - char * wptr = sess->outBuf; - for (i = 0; i<len; i++) - { - char c = data[i]; - if (c == '~') /* escape it */ - { - *wptr++ = '~'; - *wptr++ = '~'; - } - else - *wptr++ = c; - } - sess->outBuf_used = wptr - sess->outBuf; - - return XDGVFS_RESULT_CALL_SENDDATA_AGAIN; - -} - - - - diff --git a/portland/libxdg-vfs/libxdg-vfs-client/src/xdg_vfs_client.h b/portland/libxdg-vfs/libxdg-vfs-client/src/xdg_vfs_client.h deleted file mode 100644 index 326ad29..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/src/xdg_vfs_client.h +++ /dev/null @@ -1,548 +0,0 @@ -/* -# xdg_vfs_client.h -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - - -#ifndef XDGVFS_CLIENT_H_ -#define XDGVFS_CLIENT_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -#include <stdlib.h> -#include <stdio.h> -#include <string.h> -#include <xdg_vfs_common.h> - -#define XDG_VFS_DEBUG_IPC 0 - -#define XDGVFS_CLIENT_BUFFERSIZE 8192 - -typedef size_t XdgVfsFileSize; - - -/* ====== incoming Items ======== */ - - -/** -* itemtypes -*/ -typedef enum { - XDGVFS_ITEMTYPE_FILEINFO = 1, - XDGVFS_ITEMTYPE_SETATTRS_HEAD = 2, - XDGVFS_ITEMTYPE_DIR_HEAD = 3, - XDGVFS_ITEMTYPE_DIR_ENTRY = 4, - XDGVFS_ITEMTYPE_PROGRESS = 5, - XDGVFS_ITEMTYPE_GET_HEAD = 6, - XDGVFS_ITEMTYPE_PUT_HEAD = 7, - XDGVFS_ITEMTYPE_COPY_HEAD = 8, - XDGVFS_ITEMTYPE_MOVE_HEAD = 9, - XDGVFS_ITEMTYPE_MKDIR_HEAD = 10, - XDGVFS_ITEMTYPE_RMDIR_HEAD = 11, - XDGVFS_ITEMTYPE_RM_HEAD = 12, - XDGVFS_ITEMTYPE_LS_HEAD = 13, - XDGVFS_ITEMTYPE_OPENFILEDLG_RESPONSE = 14, - XDGVFS_ITEMTYPE_SAVEFILEDLG_RESPONSE = 15, - XDGVFS_ITEMTYPE_DATAIN_DONE = 16, - XDGVFS_ITEMTYPE_DATAOUT_DONE = 17, - XDGVFS_DATAIN = 18, - XDGVFS_DATAOUT = 19, - XDGVFS_ITEMTYPE_BACKENDINFO = 20, - - XDGVFS_ITEMTYPE_NONE = 0 -} XdgVfsItemType; - - -typedef struct { - XdgVfsItemType type; - int refcount; -} XdgVfsItem; - -typedef struct { - XdgVfsItem itm; - char * backend_id; - char * system_uri; - char * file_icon_theme; -} XdgVfsBackendInfo; - - -typedef struct { - XdgVfsItem itm; - XdgVfsFileSize bytecount; -} XdgVfsDataInDoneItem; - -typedef struct { - XdgVfsItem itm; - XdgVfsFileSize bytecount; -} XdgVfsDataOutDoneItem; - -typedef struct { - XdgVfsItem itm; - char * uri; -} XdgVfsSimpleHead; - -/** -* fileinfo filetypes -*/ -typedef enum { - XDGVFS_FILE_TYPE_UNKNOWN = 1, - XDGVFS_FILE_TYPE_REGULAR = 2, - XDGVFS_FILE_TYPE_DIRECTORY = 3, - XDGVFS_FILE_TYPE_FIFO = 4, - XDGVFS_FILE_TYPE_SOCKET = 5, - XDGVFS_FILE_TYPE_CHARDEV = 6, - XDGVFS_FILE_TYPE_BLOCKDEV = 7, - XDGVFS_FILE_TYPE_SYMLINK = 8, - XDGVFS_FILE_TYPE_VFSMOUNTPOINT = 9, - XDGVFS_FILE_TYPE_UNREC = 0 -} XdgVfsFileType; - -/** -* fileinfo item -*/ -typedef struct { - XdgVfsItem itm; - char * uri; - char * basename; - char * mimetype; - size_t size; - int permissions; - char * user; - char * group; - int atime; - int ctime; - int mtime; - char * linkdest; - XdgVfsFileType filetype; - char * iconname; - char * mountpoint_id; - int is_mounted; -} XdgVfsFileInfo; - -typedef struct { - XdgVfsItem itm; - char * selected_localpath; - char * selected_uri; -} XdgVfsOpenFileDlgResponse; - -typedef struct { - XdgVfsItem itm; - char * selected_localpath; - char * selected_uri; -} XdgVfsSaveFileDlgResponse; - -typedef struct { - XdgVfsItem itm; - char * uri_src; - char * uri_target; -} XdgVfsCopyHead; - -typedef struct { - XdgVfsItem itm; - char * uri_src; - char * uri_target; -} XdgVfsMoveHead; - -typedef struct { - XdgVfsItem itm; - int percent; - XdgVfsFileSize size; - XdgVfsFileSize copied; -} XdgVfsProgress; - - -/* ====== flags and return values ======== */ - -/* -* Command flags -*/ -typedef enum { - XDGVFS_FLAGS_NONE = 0, - XDGVFS_FLAGS_OVERWRITE = 2, - XDGVFS_FLAGS_INSTANT_GET = 4, - XDGVFS_FLAGS_INSTANT_PUT = 8, - XDGVFS_FLAGS_QRY_FILEINFO = 16 -} XdgVfsFlags; - -/** -* xdg-vfs return values: -* values less than 0 are client errors. -* values greater than 0 are XDGVFS_ERRORCODE_* errors! -*/ -#define XDGVFS_RESULT_CANNOT_LAUNCH_BACKEND -10 -#define XDGVFS_RESULT_CALL_SENDDATA_AGAIN -9 -#define XDGVFS_RESULT_GIVE_ME_DATA -8 -#define XDGVFS_RESULT_PARAMETER_ERR -7 -#define XDGVFS_RESULT_FATAL_ERR -6 -#define XDGVFS_RESULT_UNESCAPING_DATA_ERR -5 -#define XDGVFS_RESULT_BAD_STATE -4 -#define XDGVFS_RESULT_IOERR -3 -#define XDGVFS_RESULT_NOT_POSSIBLE -2 -#define XDGVFS_RESULT_CONTINUES -1 -#define XDGVFS_RESULT_DONE 0 -#define XDGVFS_RESULT_OK 0 - -#define XDGVFS_RESULT_CANNOT_LAUNCH_BACKEND_STR "Client: Cannot launch backend" -#define XDGVFS_RESULT_CALL_SENDDATA_AGAIN_STR "Client: call sendData again" -#define XDGVFS_RESULT_GIVE_ME_DATA_STR "Client: give me data" -#define XDGVFS_RESULT_PARAMETER_ERR_STR "Client: parameter error" -#define XDGVFS_RESULT_FATAL_ERR_STR "Client: fatal error" -#define XDGVFS_RESULT_UNESCAPING_DATA_ERR_STR "Client: unescaping data error" -#define XDGVFS_RESULT_BAD_STATE_STR "Client: bad state" -#define XDGVFS_RESULT_IOERR_STR "Client: IOERR" -#define XDGVFS_RESULT_NOT_POSSIBLE_STR "Client: operation not possible" -#define XDGVFS_RESULT_CONTINUES_STR "Client: result continues" -#define XDGVFS_RESULT_OK_STR "Client: OK/DONE" - -typedef int XdgVfsResult; - -/** -* session state -*/ -typedef enum { - XDGVFS_STATE_ERROR_LEAVING = -1, - XDGVFS_STATE_READING_DATA = 1, - XDGVFS_STATE_WRITING_DATA = 2, - XDGVFS_STATE_EXPECTING_PROMPT = 3, - XDGVFS_STATE_READY = 4, - XDGVFS_STATE_READING_TEXT = 5 -} XdgVfsState; - -typedef struct _XdgVfsSession XdgVfsSession; - -typedef void (*XdgVfsMonitorCallback)(XdgVfsSession * sess, char * uri, void * user_data); - -/* -* Session Object -* never access the members of this stuct directly (it might change)! -*/ -struct _XdgVfsSession { - /* all members are private! */ - - /* pipes to the sub-process */ - int fd_in; - int fd_out; - - int pid; - - /* incoming data buffers */ - char * inBuf; - int inBuf_used; - int inBuf_size; - XdgVfsState stateIn; - - char * rawBufIn; - - /* outgoing data buffers */ - char * outBuf; - int outBuf_sent; - int outBuf_used; - int outBuf_size; - int outBuf_EOF; - XdgVfsState stateOut; - - /* incoming items */ - XdgVfsItemType currentItemType; - XdgVfsItem * currentItem; - - int lastJobErrorCode; - char * lastJobErrorText; - - /* file/dir change monitoring */ - XdgVfsMonitorCallback monitor_cb; - void * monitor_cb_userdata; - - /* recursion protection */ - int recurse_count; - -}; - - -/** -* -* Start Session and setup child process -* (with a session you can run a 'session of' xdg-vfs commands (one after the other) -* pass NULL or "this" for the current desktop or "kde"/"gnome" for preferredDesktop. -*/ -XdgVfsResult xdg_vfs_sess_start(XdgVfsSession ** sessOut, char * preferredDesktop); - -/** -* Close session and kill child process -* -*/ -XdgVfsResult xdg_vfs_sess_close(XdgVfsSession * sess); - -/** -* Cancel the current Command -* -*/ -XdgVfsResult xdg_vfs_sess_cancelCommand(XdgVfsSession * sess); - -/** -* Watch this fd to avoid blocking in xdgvfs_sess_readItem() -* -*/ -int xdg_vfs_sess_getIncomingFiledescriptor(XdgVfsSession * sess); - -/** -* Watch this fd to avoid blocking in xdg_vfs_sess_sendData(); -* -*/ -int xdg_vfs_sess_getOutgoingFiledescriptor(XdgVfsSession * sess); - -/** -* Check if the session is ready for commands -* -*/ -int xdg_vfs_sess_isBusy(XdgVfsSession * sess); - -/* ============== file/dirwatch monitor ===================== */ - -void xdg_vfs_sess_set_monitor_callback( - XdgVfsSession * sess, - XdgVfsMonitorCallback cb, - void * userdata - ); - -/* ====================== VFS Commands =======================*/ - -/* -* After running a command the session will leave the READY state and -* you have to read items by calling xdg_vfs_sess_readItem() (except for the 'simple' commands) -* -* See the samples in the 'tests' directory for a tutorial. -*/ - -/** -* Command: get Backend Info -* -* returns items: -* - XDGVFS_ITEMTYPE_BACKENDINFO -*/ -XdgVfsResult xdg_vfs_sess_cmd_backendInfo(XdgVfsSession * sess); - -/** -* Command: get File -* -* returns items: -* - XDGVFS_ITEMTYPE_GET_HEAD -* - XDGVFS_DATAIN (multi) -* - XDGVFS_ITEMTYPE_DATAIN_DONE -*/ -XdgVfsResult xdg_vfs_sess_cmd_getFile(XdgVfsSession * sess, const char * uri); - -/** -* Command: put File -* -* returns items: -* - XDGVFS_ITEMTYPE_PUT_HEAD -* - XDGVFS_DATAOUT (multi -> you have to put data into the outgoing buffer and send it) -* - XDGVFS_ITEMTYPE_DATAOUT_DONE -*/ -XdgVfsResult xdg_vfs_sess_cmd_putFile(XdgVfsSession * sess, const char * uri, - XdgVfsFlags flags); - -/** -* Command: getFileInfo -* -* returns items: -* - XDGVFS_ITEMTYPE_FILEINFO -*/ -XdgVfsResult xdg_vfs_sess_cmd_getFileInfo(XdgVfsSession * sess, const char * uri); - -/** -* Command: SetAttrs -* -* leave user or group NULL when you don't want to change it. -* set setPermFlag=0 if you don't want to change the permissions. -* -* returns items: -* - XDGVFS_ITEMTYPE_SETATTRS_HEAD -* -*/ -XdgVfsResult xdg_vfs_sess_cmd_setAttrs(XdgVfsSession * sess, - const char * uri, int permissions, int setPermFlag, char * user, char * group); - -/** -* Command: CopyFile -* -* returns items: -* - XDGVFS_ITEMTYPE_COPY_HEAD -* - XDGVFS_ITEMTYPE_PROGRESS (multi) -*/ -XdgVfsResult xdg_vfs_sess_cmd_copyFile(XdgVfsSession * sess, const char * uri_src, const char * uri_target); - -/** -* Command: Move File -* -* returns items: -* - XDGVFS_ITEMTYPE_MOVE_HEAD -* - XDGVFS_ITEMTYPE_PROGRESS (multi) -*/ -XdgVfsResult xdg_vfs_sess_cmd_moveFile(XdgVfsSession * sess, const char * uri_src, const char * uri_target); - -/** -* Command: Make Directory -* -* returns items: -* - XDGVFS_ITEMTYPE_MKDIR_HEAD -* -*/ -XdgVfsResult xdg_vfs_sess_cmd_makeDirectory(XdgVfsSession * sess, const char * uri); - -/** -* Command: Remove Directory -* -* returns items: -* - XDGVFS_ITEMTYPE_RMDIR_HEAD -*/ -XdgVfsResult xdg_vfs_sess_cmd_removeDirectory(XdgVfsSession * sess, const char * uri); - -/** -* Command: Delete File -* -* returns items: -* - XDGVFS_ITEMTYPE_RM_HEAD -*/ -XdgVfsResult xdg_vfs_sess_cmd_removeFile(XdgVfsSession * sess, const char * uri); - -/** -* Command: List Directory -* -* returns items: -* - XDGVFS_ITEMTYPE_LS_HEAD -* - XDGVFS_ITEMTYPE_FILEINFO (multi) -*/ -XdgVfsResult xdg_vfs_sess_cmd_listDirectory(XdgVfsSession * sess, const char * uri); - -/** -* Command: Mount -* -* returns items: -* (none, but you have to loop xdg_vfs_sess_readItem() to wait for the result) -*/ -XdgVfsResult xdg_vfs_sess_cmd_mount(XdgVfsSession * sess, const char * mountpoint_id); - -/** -* Command: monitor directory -* This is a simple command, you don't have to call xdg_vfs_sess_readItem(). -*/ -XdgVfsResult xdg_vfs_sess_cmd_monitorDir(XdgVfsSession * sess, const char * uri); - -/** -* Command: monitor file -* This is a simple command, you don't have to call xdg_vfs_sess_readItem(). -*/ -XdgVfsResult xdg_vfs_sess_cmd_monitorFile(XdgVfsSession * sess, const char * uri); - -/** -* Command: remove monitor -* This is a simple command, you don't have to call xdg_vfs_sess_readItem(). -*/ -XdgVfsResult xdg_vfs_sess_cmd_removeMonitor(XdgVfsSession * sess, const char * uri); - -/** -* Command: Show Open-File-Dialog -* -* returns items: -* - XDGVFS_ITEMTYPE_OPENFILEDLG_RESPONSE -*/ -XdgVfsResult xdg_vfs_sess_cmd_openFileDialog(XdgVfsSession * sess, const char * default_uri, XdgVfsFlags flags); - -/** -* Command: Show Save-File-Dialog -* -* returns itmes: -* - XDGVFS_ITEMTYPE_SAVEFILEDLG_RESPONSE -*/ -XdgVfsResult xdg_vfs_sess_cmd_saveFileDialog(XdgVfsSession * sess, - const char * default_folder_uri, - const char * default_filename, - XdgVfsFlags flags); - -/* ============= READ / WRITE FUNCTIONS ============= */ - -/** -* Read an Item or a Chunk of File-Data. Continue reading items until -* the return value is != XDGVFS_RESULT_CONTINUES. -* -* This function has to be looped after executing a xdg-vfs command (but not for the 'simple' commands). -* -* If you want to do this non-blocking check the incoming fd in your event-loop. -*/ -XdgVfsResult xdg_vfs_sess_readItem(XdgVfsSession * sess, XdgVfsItemType * typeOut, - XdgVfsItem ** itemOut, char ** buffer, int * len); - - -/* ------ used when writing a file with xdg_vfs_sess_cmd_putFile() -------- */ - -/** -* Put a Chunk of File-Data into the outgoing buffer. -* set len = 0 on EOF. -* If there is no error this function will usually return XDGVFS_RESULT_CALL_SENDDATA_AGAIN -* -> You have to call the function xdg_vfs_sess_sendData() until the outgoing -* buffer is emptied. -*/ -XdgVfsResult xdg_vfs_sess_putDataChunk(XdgVfsSession * sess, char * data, int len); - -/** -* Send data from the outgoing buffer - repeat this on -* XDGVFS_RESULT_CALL_SENDDATA_AGAIN until you get -* XDGVFS_RESULT_GIVE_ME_DATA or XDGVFS_RESULT_OK (finished); -* -* if you want to do that nonblocking check the outgoing fd first -*/ -XdgVfsResult xdg_vfs_sess_sendData(XdgVfsSession * sess); - - - -/* ================= XdgVfsItem ======================*/ - -/** -* increase reference Count -* -*/ -XdgVfsItem * xdg_vfs_item_ref(XdgVfsItem * item); - -/** -* decrease reference Count -* -*/ -void xdg_vfs_item_unref(XdgVfsItem * item); - -/* =================== tools ========================= */ - -/* -* get string message for XdgVfsResult. The string is statically allocated, you don't have to free() it. -*/ -char * xdg_vfs_resultToString(XdgVfsResult code); - - -#ifdef __cplusplus -} -#endif -#endif diff --git a/portland/libxdg-vfs/libxdg-vfs-client/src/xdg_vfs_common.h b/portland/libxdg-vfs/libxdg-vfs-client/src/xdg_vfs_common.h deleted file mode 100644 index 3963983..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/src/xdg_vfs_common.h +++ /dev/null @@ -1,146 +0,0 @@ -/* -# xdg_vfs_common.h -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - -#ifndef XDG_VFS_COMMON_H -#define XDG_VFS_COMMON_H - -#ifdef __cplusplus -extern "C" { -#endif - -#define DEFAULT_DATA_ESC_CHAR 126 -#define DEFAULT_CANCEL_CHAR (int)'!' - -/* error codes */ - -#define XDGVFS_ERRORCODE_OK 0 -#define XDGVFS_ERRORCODE_CANCELED 10 -#define XDGVFS_ERRORCODE_BAD_PARAMETER 11 -#define XDGVFS_ERRORCODE_NOT_SUPPORTED 12 -#define XDGVFS_ERRORCODE_GENERIC 13 -#define XDGVFS_ERRORCODE_INIT_ERROR 14 -#define XDGVFS_ERRORCODE_DATA_ERROR 15 -#define XDGVFS_ERRORCODE_IO_ERROR 16 -#define XDGVFS_ERRORCODE_NOT_PERMITTED 17 -#define XDGVFS_ERRORCODE_MALFORMED_URL 18 -#define XDGVFS_ERRORCODE_PROTOCOL_ERROR 19 -#define XDGVFS_ERRORCODE_USR_OR_GRP_NOT_FOUND 20 -#define XDGVFS_ERRORCODE_INTERNAL 21 -#define XDGVFS_ERRORCODE_CANNOT_OPEN_FOR_WRITING 22 -#define XDGVFS_ERRORCODE_CANNOT_OPEN_FOR_READING 23 -#define XDGVFS_ERRORCODE_IS_DIRECTORY 24 -#define XDGVFS_ERRORCODE_IS_FILE 25 -#define XDGVFS_ERRORCODE_NOT_FOUND 26 -#define XDGVFS_ERRORCODE_ALREADY_EXISTS 27 -#define XDGVFS_ERRORCODE_HOST_NOT_FOUND 28 -#define XDGVFS_ERRORCODE_ACCESS_DENIED 29 -#define XDGVFS_ERRORCODE_CANNOT_ENTER_DIRECTORY 30 -#define XDGVFS_ERRORCODE_PROTOCOL_IS_NOT_A_FILESYSTEM 31 -#define XDGVFS_ERRORCODE_LOOP 32 -#define XDGVFS_ERRORCODE_COULD_NOT_CREATE_SOCKET 33 -#define XDGVFS_ERRORCODE_COULD_NOT_CONNECT 34 -#define XDGVFS_ERRORCODE_ERR_CONNECTION_BROKEN 35 -#define XDGVFS_ERRORCODE_COULD_NOT_MOUNT 36 -#define XDGVFS_ERRORCODE_COULD_NOT_UNMOUNT 37 -#define XDGVFS_ERRORCODE_SOCKET_ERROR 38 -#define XDGVFS_ERRORCODE_LOGIN_FAILED 39 -#define XDGVFS_ERRORCODE_OPERATION_FAILED 40 -#define XDGVFS_ERRORCODE_CANNOT_RESUME 41 -#define XDGVFS_ERRORCODE_OUT_OF_MEMORY 42 -#define XDGVFS_ERRORCODE_UNKNOWN_PROXY_HOST 43 -#define XDGVFS_ERRORCODE_ABORTED 44 -#define XDGVFS_ERRORCODE_TIMEOUT 45 -#define XDGVFS_ERRORCODE_SERVICE_NOT_AVAILABLE 46 -#define XDGVFS_ERRORCODE_CANNOT_DELETE_ORIGINAL 47 -#define XDGVFS_ERRORCODE_CANNOT_DELETE_PARTIAL 48 -#define XDGVFS_ERRORCODE_CANNOT_RENAME_ORIGINAL 49 -#define XDGVFS_ERRORCODE_CANNOT_RENAME_PARTIAL 50 -#define XDGVFS_ERRORCODE_NEED_PASSWD 51 -#define XDGVFS_ERRORCODE_NO_CONTENT 52 -#define XDGVFS_ERRORCODE_NO_SPACE 53 -#define XDGVFS_ERRORCODE_IDENTICAL_FILES 54 -#define XDGVFS_ERRORCODE_CORRUPTED_DATA 55 -#define XDGVFS_ERRORCODE_WRONG_FORMAT 56 -#define XDGVFS_ERRORCODE_ERROR_BAD_FILE 66 -#define XDGVFS_ERRORCODE_TOO_BIG 67 -#define XDGVFS_ERRORCODE_NOT_OPEN 68 -#define XDGVFS_ERRORCODE_INVALID_OPEN_MODE 69 -#define XDGVFS_ERRORCODE_TOO_MANY_OPEN_FILES 70 -#define XDGVFS_ERRORCODE_EOF 71 -#define XDGVFS_ERRORCODE_IN_PROGRESS 72 -#define XDGVFS_ERRORCODE_INTERRUPTED 73 -#define XDGVFS_ERRORCODE_HOST_HAS_NO_ADDRESS 74 -#define XDGVFS_ERRORCODE_DIRECTORY_NOT_EMPTY 75 -#define XDGVFS_ERRORCODE_TOO_MANY_LINKS 76 -#define XDGVFS_ERRORCODE_READ_ONLY_FILE_SYSTEM 77 -#define XDGVFS_ERRORCODE_NOT_SAME_FILE_SYSTEM 78 -#define XDGVFS_ERRORCODE_NAME_TOO_LONG 79 -#define XDGVFS_ERRORCODE_SERVICE_OBSOLETE 80 -#define XDGVFS_ERRORCODE_NO_DEFAULT 81 -#define XDGVFS_ERRORCODE_NAMESERVER 82 -#define XDGVFS_ERRORCODE_LOCKED 83 -#define XDGVFS_ERRORCODE_DEPRECATED_FUNCTION 84 -#define XDGVFS_ERRORCODE_DIRECTORY_BUSY 85 -#define XDGVFS_ERRORCODE_NOT_A_DIRECTORY 86 - - -/* tags (private!) */ - -#define XDGVFS_TAG_DATA_OUT "(>>>RAW_DATA>>>)" -#define XDGVFS_TAG_ESCAPEDDATA_OUT "(>>>ESCAPED_DATA>>>)" -#define XDGVFS_TAG_DATA_IN "(<<<RAW_DATA<<<)" -#define XDGVFS_TAG_ESCAPEDDATA_IN "(<<<ESCAPED_DATA<<<)" - -#define XDGVFS_TAG_BACKEND "[BACKEND]" -#define XDGVFS_TAG_GET "[GET]" -#define XDGVFS_TAG_PUT "[PUT]" -#define XDGVFS_TAG_CP "[CP]" -#define XDGVFS_TAG_MV "[MV]" -#define XDGVFS_TAG_LS "[LS]" -#define XDGVFS_TAG_FILEINFO "[FILEINFO]" -#define XDGVFS_TAG_SETATTRS "[SETATTRS]" -#define XDGVFS_TAG_SAVEFILEDLG "[SAVEFILEDLG]" -#define XDGVFS_TAG_OPENFILEDLG "[OPENFILEDLG]" -#define XDGVFS_TAG_MKDIR "[MKDIR]" -#define XDGVFS_TAG_RMDIR "[RMDIR]" -#define XDGVFS_TAG_RM "[RM]" -#define XDGVFS_TAG_MOUNT "[MOUNT]" -#define XDGVFS_TAG_MONITOREVENT "*" - - -#define XDGVFS_TAG_METADATA "(METADATA)" -#define XDGVFS_TAG_DIRENTRY "(DIRENTRY)" -#define XDGVFS_TAG_PROGRESS "(PROGRESS)" - -#define XDGVFS_TAG_DONE ":-)" -#define XDGVFS_TAG_FAILED ":-(" - -#ifdef __cplusplus -} -#endif -#endif - diff --git a/portland/libxdg-vfs/libxdg-vfs-client/src/xdg_vfs_errstrs.c b/portland/libxdg-vfs/libxdg-vfs-client/src/xdg_vfs_errstrs.c deleted file mode 100644 index a68326f..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/src/xdg_vfs_errstrs.c +++ /dev/null @@ -1,137 +0,0 @@ -/* -# xdg_vfs_errstrs.c -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - -#include "xdg_vfs_client.h" -#include "xdg_vfs_common.h" - -typedef struct -{ - int code; - char * str; -} XdgVfsErrorToStringMapping; - -XdgVfsErrorToStringMapping _xdg_vfs_error2string_mapping_arr[] = -{ - - { XDGVFS_ERRORCODE_OK , "OK" }, - { XDGVFS_ERRORCODE_CANCELED , "Canceled" }, - { XDGVFS_ERRORCODE_BAD_PARAMETER , "Bad Parameter" }, - { XDGVFS_ERRORCODE_NOT_SUPPORTED , "Not supported" }, - { XDGVFS_ERRORCODE_GENERIC , "Generic error" }, - { XDGVFS_ERRORCODE_INIT_ERROR , "init error" }, - { XDGVFS_ERRORCODE_DATA_ERROR , "Data error" }, - { XDGVFS_ERRORCODE_IO_ERROR , "IO error" }, - { XDGVFS_ERRORCODE_NOT_PERMITTED , "Not permitted" }, - { XDGVFS_ERRORCODE_MALFORMED_URL , "Malformed URL" }, - { XDGVFS_ERRORCODE_PROTOCOL_ERROR , "Protocol error" }, - { XDGVFS_ERRORCODE_USR_OR_GRP_NOT_FOUND , "User or Group not found" }, - { XDGVFS_ERRORCODE_INTERNAL , "Internal error" }, - { XDGVFS_ERRORCODE_CANNOT_OPEN_FOR_WRITING , "Cannot open for writing"}, - { XDGVFS_ERRORCODE_CANNOT_OPEN_FOR_READING , "Cannot open for reading"}, - { XDGVFS_ERRORCODE_IS_DIRECTORY , "is directory"}, - { XDGVFS_ERRORCODE_IS_FILE , "is file"}, - { XDGVFS_ERRORCODE_NOT_FOUND , "not found"}, - { XDGVFS_ERRORCODE_ALREADY_EXISTS , "already exists"}, - { XDGVFS_ERRORCODE_HOST_NOT_FOUND , "host not found"}, - { XDGVFS_ERRORCODE_ACCESS_DENIED , "access denied"}, - { XDGVFS_ERRORCODE_CANNOT_ENTER_DIRECTORY , "cannot enter directory"}, - { XDGVFS_ERRORCODE_PROTOCOL_IS_NOT_A_FILESYSTEM , "protocol is not a filesystem"}, - { XDGVFS_ERRORCODE_LOOP , "loop"}, - { XDGVFS_ERRORCODE_COULD_NOT_CREATE_SOCKET , "cannot create socket"}, - { XDGVFS_ERRORCODE_COULD_NOT_CONNECT , "could not connect"}, - { XDGVFS_ERRORCODE_ERR_CONNECTION_BROKEN , "conection broken"}, - { XDGVFS_ERRORCODE_COULD_NOT_MOUNT , "could not mount"}, - { XDGVFS_ERRORCODE_COULD_NOT_UNMOUNT , "could not unmount"}, - { XDGVFS_ERRORCODE_SOCKET_ERROR , "socket error"}, - { XDGVFS_ERRORCODE_LOGIN_FAILED , "login failed"}, - { XDGVFS_ERRORCODE_OPERATION_FAILED , "operation failed"}, - { XDGVFS_ERRORCODE_CANNOT_RESUME , "cannot resume"}, - { XDGVFS_ERRORCODE_OUT_OF_MEMORY , "out of memory"}, - { XDGVFS_ERRORCODE_UNKNOWN_PROXY_HOST , "unknown proxy host"}, - { XDGVFS_ERRORCODE_ABORTED , "aborted"}, - { XDGVFS_ERRORCODE_TIMEOUT , "timeout"}, - { XDGVFS_ERRORCODE_SERVICE_NOT_AVAILABLE , "service not available"}, - { XDGVFS_ERRORCODE_CANNOT_DELETE_ORIGINAL , "cannot delete original"}, - { XDGVFS_ERRORCODE_CANNOT_DELETE_PARTIAL , "cannot delete partial"}, - { XDGVFS_ERRORCODE_CANNOT_RENAME_ORIGINAL , "cannot rename original"}, - { XDGVFS_ERRORCODE_CANNOT_RENAME_PARTIAL , "cannot rename partial"}, - { XDGVFS_ERRORCODE_NEED_PASSWD , "need passwd"}, - { XDGVFS_ERRORCODE_NO_CONTENT , "no content"}, - { XDGVFS_ERRORCODE_NO_SPACE , "no space"}, - { XDGVFS_ERRORCODE_IDENTICAL_FILES , "identical files"}, - { XDGVFS_ERRORCODE_CORRUPTED_DATA , "corrupted data"}, - { XDGVFS_ERRORCODE_WRONG_FORMAT , "wrong format"}, - { XDGVFS_ERRORCODE_ERROR_BAD_FILE , "bad file"}, - { XDGVFS_ERRORCODE_TOO_BIG , "too big"}, - { XDGVFS_ERRORCODE_NOT_OPEN , "not open"}, - { XDGVFS_ERRORCODE_INVALID_OPEN_MODE , "invalid open mode"}, - { XDGVFS_ERRORCODE_TOO_MANY_OPEN_FILES , "too many open files"}, - { XDGVFS_ERRORCODE_EOF , "End of file (EOF)"}, - { XDGVFS_ERRORCODE_IN_PROGRESS , "In Progress" }, - { XDGVFS_ERRORCODE_INTERRUPTED , "interrupted" }, - { XDGVFS_ERRORCODE_HOST_HAS_NO_ADDRESS , "Host has no address" }, - { XDGVFS_ERRORCODE_DIRECTORY_NOT_EMPTY , "Directory not empty" }, - { XDGVFS_ERRORCODE_TOO_MANY_LINKS , "Too many links" }, - { XDGVFS_ERRORCODE_READ_ONLY_FILE_SYSTEM , "Read only filesystem" }, - { XDGVFS_ERRORCODE_NOT_SAME_FILE_SYSTEM , "not the same filesystem" }, - { XDGVFS_ERRORCODE_NAME_TOO_LONG , "name too long" }, - { XDGVFS_ERRORCODE_SERVICE_OBSOLETE , "service obsolete" }, - { XDGVFS_ERRORCODE_NO_DEFAULT , "no default" }, - { XDGVFS_ERRORCODE_NAMESERVER , "nameserver error" }, - { XDGVFS_ERRORCODE_LOCKED , "locked" }, - { XDGVFS_ERRORCODE_DEPRECATED_FUNCTION , "deprecated function" }, - { XDGVFS_ERRORCODE_DIRECTORY_BUSY , "directory busy" }, - { XDGVFS_ERRORCODE_NOT_A_DIRECTORY , "not a directory" } -}; - -char * xdg_vfs_resultToString(XdgVfsResult code) -{ - int i; - for (i=0;i<sizeof(_xdg_vfs_error2string_mapping_arr)/sizeof(XdgVfsErrorToStringMapping);i++) - { - if (_xdg_vfs_error2string_mapping_arr[i].code == code) - return _xdg_vfs_error2string_mapping_arr[i].str; - } - - switch(code) - { - case(XDGVFS_RESULT_CANNOT_LAUNCH_BACKEND): return XDGVFS_RESULT_CANNOT_LAUNCH_BACKEND_STR; - case(XDGVFS_RESULT_CALL_SENDDATA_AGAIN): return XDGVFS_RESULT_CALL_SENDDATA_AGAIN_STR; - case(XDGVFS_RESULT_GIVE_ME_DATA): return XDGVFS_RESULT_GIVE_ME_DATA_STR; - case(XDGVFS_RESULT_PARAMETER_ERR): return XDGVFS_RESULT_PARAMETER_ERR_STR; - case(XDGVFS_RESULT_FATAL_ERR): return XDGVFS_RESULT_FATAL_ERR_STR; - case(XDGVFS_RESULT_UNESCAPING_DATA_ERR): return XDGVFS_RESULT_UNESCAPING_DATA_ERR_STR; - case(XDGVFS_RESULT_BAD_STATE): return XDGVFS_RESULT_BAD_STATE_STR; - case(XDGVFS_RESULT_IOERR): return XDGVFS_RESULT_IOERR_STR; - case(XDGVFS_RESULT_NOT_POSSIBLE): return XDGVFS_RESULT_NOT_POSSIBLE_STR; - case(XDGVFS_RESULT_CONTINUES): return XDGVFS_RESULT_CONTINUES_STR; - case(XDGVFS_RESULT_OK): return XDGVFS_RESULT_OK_STR; - } - return "Client: cannot translate error code to string!"; -} - - diff --git a/portland/libxdg-vfs/libxdg-vfs-client/src/xdg_vfs_forkexec.c b/portland/libxdg-vfs/libxdg-vfs-client/src/xdg_vfs_forkexec.c deleted file mode 100644 index 83b4747..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/src/xdg_vfs_forkexec.c +++ /dev/null @@ -1,100 +0,0 @@ -/* -# xdg_vfs_forkexec.c -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - -#include <unistd.h> -#include <stdio.h> -#include "xdg_vfs_forkexec.h" - - -int xdg_vfs_forkexec(char * filename, char ** argv, pid_t * child_pid, int * childs_stdin, int * childs_stdout) -{ - - pid_t pid; - int child_stdin_pipe[2]; - int child_stdout_pipe[2]; - - - /* create pipes */ - if (pipe (child_stdin_pipe)) - { - fprintf (stderr, "Pipe child_stdin_pipe failed.\n"); - return 1; - } - - if (pipe (child_stdout_pipe)) - { - fprintf (stderr, "Pipe child_stdout_pipe failed.\n"); - return 1; - } - - - /* create the child process */ - pid = fork (); - if (pid == (pid_t) 0) - { - int r; - /* this is the child process. close other ends of the pipes. */ - close (child_stdin_pipe[1]); - close (child_stdout_pipe[0]); - - dup2 (child_stdin_pipe[0], STDIN_FILENO); - dup2 (child_stdout_pipe[1], STDOUT_FILENO); - - r = execvp(filename, argv); - if (r) { - close (child_stdin_pipe[0]); - close (child_stdout_pipe[1]); - fprintf(stderr, "after fork execvp(%s, argv) ", filename); - perror("failed"); - exit(1); - } - exit(0); - } - else if (pid < (pid_t) 0) - { - /* the fork failed */ - fprintf (stderr, "Fork failed.\n"); - return 1; - } - else - { - /* this is the parent process. close other ends first. */ - close (child_stdin_pipe[0]); - close (child_stdout_pipe[1]); - //write_to_pipe (mypipe[1]); - - *childs_stdin = child_stdin_pipe[1]; - *childs_stdout = child_stdout_pipe[0]; - - *child_pid = pid; - - return 0; - } -} - - - diff --git a/portland/libxdg-vfs/libxdg-vfs-client/src/xdg_vfs_forkexec.h b/portland/libxdg-vfs/libxdg-vfs-client/src/xdg_vfs_forkexec.h deleted file mode 100644 index de2a8a6..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/src/xdg_vfs_forkexec.h +++ /dev/null @@ -1,40 +0,0 @@ -/* -# xdg_vfs_forkexec.h -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - -#ifndef XDG_VFS_FORKEXEC_H -#define XDG_VFS_FORKEXEC_H - -#ifdef __cplusplus -extern "C" { -#endif - -int xdg_vfs_forkexec(char * filename, char ** argv, pid_t * child_pid, int * childs_stdin, int * childs_stdout); - -#ifdef __cplusplus -} -#endif -#endif diff --git a/portland/libxdg-vfs/libxdg-vfs-client/tests/.cvsignore b/portland/libxdg-vfs/libxdg-vfs-client/tests/.cvsignore deleted file mode 100644 index 26a73db..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/tests/.cvsignore +++ /dev/null @@ -1,8 +0,0 @@ -*.la -*.lo -*.o -.deps -.libs -Makefile -Makefile.in - diff --git a/portland/libxdg-vfs/libxdg-vfs-client/tests/Makefile.am b/portland/libxdg-vfs/libxdg-vfs-client/tests/Makefile.am deleted file mode 100644 index a55fa2b..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/tests/Makefile.am +++ /dev/null @@ -1,28 +0,0 @@ -bin_PROGRAMS = test1 sample1_multi sample2_getfile sample3_putfile \ - sample4_copy sample5_mount sample6_monitor - -test1_SOURCES = test1.c -test1_LDADD = ../src/libxdg_vfs_client.la $(DEPS_LIBS) - -sample1_multi_SOURCES = sample1_multi.c -sample1_multi_LDADD = ../src/libxdg_vfs_client.la $(DEPS_LIBS) - -sample2_getfile_SOURCES = sample2_getfile.c -sample2_getfile_LDADD = ../src/libxdg_vfs_client.la $(DEPS_LIBS) - -sample3_putfile_SOURCES = sample3_putfile.c -sample3_putfile_LDADD = ../src/libxdg_vfs_client.la $(DEPS_LIBS) - -sample4_copy_SOURCES = sample4_copy.c -sample4_copy_LDADD = ../src/libxdg_vfs_client.la $(DEPS_LIBS) - -sample5_mount_SOURCES = sample5_mount.c -sample5_mount_LDADD = ../src/libxdg_vfs_client.la $(DEPS_LIBS) - -sample6_monitor_SOURCES = sample6_monitor.c -sample6_monitor_LDADD = ../src/libxdg_vfs_client.la $(DEPS_LIBS) - -INCLUDES = $(all_includes) -I$(top_srcdir)/src - -AM_CPPFLAGS = $(DEPS_CFLAGS) - diff --git a/portland/libxdg-vfs/libxdg-vfs-client/tests/sample1_multi.c b/portland/libxdg-vfs/libxdg-vfs-client/tests/sample1_multi.c deleted file mode 100644 index ddd3ed9..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/tests/sample1_multi.c +++ /dev/null @@ -1,327 +0,0 @@ -/* -# sample1_multi.c -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - -/* - demonstrates how to use the commands: - xdg_vfs_sess_cmd_backendInfo() - xdg_vfs_sess_cmd_getFileInfo() - xdg_vfs_sess_cmd_listDirectory() - xdg_vfs_sess_cmd_openFileDialog() - xdg_vfs_sess_cmd_saveFileDialog() - xdg_vfs_sess_cmd_getFile() -*/ - - -#include "xdg_vfs_client.h" - -#include <stdio.h> -#include <stdlib.h> -#include <unistd.h> - -int main(int argc, char *argv[]) -{ - XdgVfsResult r; - XdgVfsSession * session; - - if (argc!=2) { - fprintf(stderr,"usage: %s {gnome|kde|this}\n", argv[0]); - exit(1); - } - - r = xdg_vfs_sess_start(&session, argv[1]); - - if (r) { - fprintf(stderr, " session start problem=%d\n", r); - return 1; - } - - fprintf(stderr, "======= test 0 : backend info =======\n", r); - - r = xdg_vfs_sess_cmd_backendInfo(session); - - if (r) { - fprintf(stderr, "test 0 cmd problem #%d %s\n", r, xdg_vfs_resultToString(r)); - return 1; - } - - XdgVfsItemType type; - XdgVfsItem * item; - - while ((r=xdg_vfs_sess_readItem(session, &type, - &item, NULL, NULL)) == XDGVFS_RESULT_CONTINUES) - { - switch(type) - { - case XDGVFS_ITEMTYPE_BACKENDINFO: - { - XdgVfsBackendInfo * backendInfo = (XdgVfsBackendInfo*) item; - fprintf(stderr, "backend_id='%s' system_uri='%s' file_icon_theme='%s'\n", - backendInfo->backend_id, - backendInfo->system_uri, - backendInfo->file_icon_theme); - } - case XDGVFS_ITEMTYPE_NONE: - { - break; - } - default: - { - fprintf(stderr, "unexpected item - type=%d\n", type); - break; - } - } - xdg_vfs_item_unref(item); - } - fprintf(stderr, "test 0 result=%d %s\n", r, xdg_vfs_resultToString(r)); - - fprintf(stderr, "======= test 1 : info / =======\n", r); - - r = xdg_vfs_sess_cmd_getFileInfo(session, "/"); - - if (r) { - fprintf(stderr, "test 1 cmd problem #%d %s\n", r, xdg_vfs_resultToString(r)); - return 1; - } - - while ((r=xdg_vfs_sess_readItem(session, &type, - &item, NULL, NULL)) == XDGVFS_RESULT_CONTINUES) - { - //fprintf(stderr, "got item type %d\n", typeOut); - switch(type) - { - case XDGVFS_ITEMTYPE_FILEINFO: - { - XdgVfsFileInfo * info = (XdgVfsFileInfo*) item; - fprintf(stderr, "got fileinfo uri='%s'\n", info->uri); - } - case XDGVFS_ITEMTYPE_NONE: - { - break; - } - default: - { - fprintf(stderr, "unexpected item - type=%d\n", type); - break; - } - } - xdg_vfs_item_unref(item); - } - fprintf(stderr, "test 1 result=%d %s\n", r, xdg_vfs_resultToString(r)); - - fprintf(stderr, "======= test 2 : info /notexist =======\n", r); - - r = xdg_vfs_sess_cmd_getFileInfo(session, "/notexist"); - if (r) { - fprintf(stderr, "test 2 cmd problem #%d %s\n", r, xdg_vfs_resultToString(r)); - return 1; - } - - while ((r=xdg_vfs_sess_readItem(session, &type, - &item, NULL, NULL)) == XDGVFS_RESULT_CONTINUES) - { - switch(type) - { - case XDGVFS_ITEMTYPE_FILEINFO: - { - XdgVfsFileInfo * info = (XdgVfsFileInfo*) item; - fprintf(stderr, "got fileinfo uri='%s'\n", info->uri); - break; - } - case XDGVFS_ITEMTYPE_NONE: - { - break; - } - default: - { - fprintf(stderr, "unexpected item - type=%d\n", type); - break; - } - } - xdg_vfs_item_unref(item); - } - fprintf(stderr, "test 2 result=%d %s\n", r, xdg_vfs_resultToString(r)); - - fprintf(stderr, "======= test 3 : ls /usr/local/bin =======\n", r); - - r = xdg_vfs_sess_cmd_listDirectory(session, "/usr/local/bin"); - - if (r) { - fprintf(stderr, "test 3 cmd problem #%d %s\n", r, xdg_vfs_resultToString(r)); - return 1; - } - - while ((r=xdg_vfs_sess_readItem(session, &type, - &item, NULL, NULL)) == XDGVFS_RESULT_CONTINUES) - { - switch(type) - { - case XDGVFS_ITEMTYPE_LS_HEAD: - { - XdgVfsSimpleHead * head = (XdgVfsSimpleHead*) item; - fprintf(stdout, "got ls header uri='%s'\n", head->uri); - break; - } - - case XDGVFS_ITEMTYPE_FILEINFO: - { - XdgVfsFileInfo * info = (XdgVfsFileInfo*) item; - fprintf(stdout, "got fileinfo uri='%s'\n", info->uri); - break; - } - case XDGVFS_ITEMTYPE_NONE: - { - break; - } - default: - { - fprintf(stderr, "unexpected item - type=%d\n", type); - break; - } - } - xdg_vfs_item_unref(item); - } - fprintf(stderr, "test 3 result=%d %s\n", r, xdg_vfs_resultToString(r)); - - fprintf(stderr, "======= test 4 : openfiledlg =======\n", r); - - r = xdg_vfs_sess_cmd_openFileDialog(session, "/tmp", XDGVFS_FLAGS_NONE); - if (r) { - fprintf(stderr, "test 4 cmd problem #%d %s\n", r, xdg_vfs_resultToString(r)); - return 1; - } - - while ((r=xdg_vfs_sess_readItem(session, &type, - &item, NULL, NULL)) == XDGVFS_RESULT_CONTINUES) - { - switch(type) - { - case XDGVFS_ITEMTYPE_OPENFILEDLG_RESPONSE: - { - XdgVfsOpenFileDlgResponse * dlgResp = (XdgVfsOpenFileDlgResponse*) item; - fprintf(stderr, "selected_uri='%s'\n", dlgResp->selected_uri); - break; - } - case XDGVFS_ITEMTYPE_NONE: - { - break; - } - default: - { - fprintf(stderr, "unexpected item - type=%d\n", type); - break; - } - } - xdg_vfs_item_unref(item); - } - - fprintf(stderr, "test 4 result=%d %s\n", r, xdg_vfs_resultToString(r)); - - fprintf(stderr, "======= test 5 : savefiledlg =======\n", r); - - r = xdg_vfs_sess_cmd_saveFileDialog(session, "/tmp", "test.txt", XDGVFS_FLAGS_NONE); - if (r) { - fprintf(stderr, "test 5 cmd problem #%d %s\n", r, xdg_vfs_resultToString(r)); - return 1; - } - - while ((r=xdg_vfs_sess_readItem(session, &type, - &item, NULL, NULL)) == XDGVFS_RESULT_CONTINUES) - { - switch(type) - { - case XDGVFS_ITEMTYPE_SAVEFILEDLG_RESPONSE: - { - XdgVfsSaveFileDlgResponse * dlgResp = (XdgVfsSaveFileDlgResponse*) item; - fprintf(stderr, "selected_uri='%s'\n", dlgResp->selected_uri); - break; - } - case XDGVFS_ITEMTYPE_NONE: - { - break; - } - default: - { - fprintf(stderr, "unexpected item - type=%d\n", type); - break; - } - } - xdg_vfs_item_unref(item); - } - fprintf(stderr, "test 5 result=%d %s\n", r, xdg_vfs_resultToString(r)); - - fprintf(stderr, "======= test 6 : get /etc/passwd =======\n", r); - - r = xdg_vfs_sess_cmd_getFile(session, "/etc/passwd"); - if (r) { - fprintf(stderr, "test 6 cmd problem #%d %s\n", r, xdg_vfs_resultToString(r)); - return 1; - } - - char * buf; - int len; - - while ((r=xdg_vfs_sess_readItem(session, &type, - &item, &buf, &len)) == XDGVFS_RESULT_CONTINUES) - { - switch (type) - { - case XDGVFS_ITEMTYPE_GET_HEAD: - { - XdgVfsSimpleHead * sh = (XdgVfsSimpleHead*) item; - fprintf(stderr, "'get' header uri='%s'\n", sh->uri); - break; - } - case XDGVFS_DATAIN: - { - fprintf(stderr, "'data' chunklen=%d\n", len); - fwrite (buf, 1, len, stderr); - break; - } - case XDGVFS_ITEMTYPE_DATAIN_DONE: - { - XdgVfsDataInDoneItem * dii = (XdgVfsDataInDoneItem *) item; - fprintf(stderr, "data done bytecount='%d'\n", dii->bytecount); - break; - } - case XDGVFS_ITEMTYPE_NONE: - { - break; - } - default: - { - fprintf(stderr, "unexpected item - type=%d\n", type); - break; - } - } - xdg_vfs_item_unref(item); - } - fprintf(stderr, "test 6 result=%d %s\n", r, xdg_vfs_resultToString(r)); - return 1; - - xdg_vfs_sess_close(session); - sleep (1); -} diff --git a/portland/libxdg-vfs/libxdg-vfs-client/tests/sample2_getfile.c b/portland/libxdg-vfs/libxdg-vfs-client/tests/sample2_getfile.c deleted file mode 100644 index 62df4aa..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/tests/sample2_getfile.c +++ /dev/null @@ -1,106 +0,0 @@ -/* -# sample2_getfile.c -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - -#include "xdg_vfs_client.h" - -#include <stdio.h> -#include <stdlib.h> -#include <unistd.h> - -int main(int argc, char *argv[]) -{ - XdgVfsResult r; - XdgVfsSession * session; - - if (argc!=3) { - fprintf(stderr,"usage: %s {gnome|kde|this} FILENAME\n", argv[0]); - exit(1); - } - - r = xdg_vfs_sess_start(&session, argv[1]); - - if (r) { - fprintf(stderr, "start session error=%d\n", r); - return 1; - } - - fprintf(stderr, "======= test : getFile -> stdout =======\n", r); - - r = xdg_vfs_sess_cmd_getFile(session, argv[2]); - - if (r) { - fprintf(stderr, "test cmd problem=%d\n", r); - return 1; - } - - char * buf=NULL; - int len=0; - XdgVfsItemType type; - XdgVfsItem * item; - - while ((r = xdg_vfs_sess_readItem(session, &type, &item, &buf, &len)) == XDGVFS_RESULT_CONTINUES) - { - switch (type) - { - case XDGVFS_ITEMTYPE_GET_HEAD: - { - XdgVfsSimpleHead * head = (XdgVfsSimpleHead*) item; - fprintf(stderr, "reading file uri='%s'\n", head->uri); - break; - } - case XDGVFS_DATAIN: - { - /* fprintf(stderr, "file-data chunklen=%d\n", len); */ - fwrite (buf, 1, len, stdout); /* your file data */ - break; - } - case XDGVFS_ITEMTYPE_DATAIN_DONE: - { - XdgVfsDataInDoneItem * dii = (XdgVfsDataInDoneItem *) item; - fprintf(stderr, "read done - bytecount='%d'\n", dii->bytecount); - break; - } - case XDGVFS_ITEMTYPE_NONE: - { - break; - } - default: - { - fprintf(stderr, "unexpected item - type=%d\n", type); - break; - } - } - xdg_vfs_item_unref(item); - } - if (r) { - fprintf(stderr, "test 4 result=%d\n", r); - return 1; - } - - xdg_vfs_sess_close(session); - sleep (1); -} diff --git a/portland/libxdg-vfs/libxdg-vfs-client/tests/sample3_putfile.c b/portland/libxdg-vfs/libxdg-vfs-client/tests/sample3_putfile.c deleted file mode 100644 index fa73517..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/tests/sample3_putfile.c +++ /dev/null @@ -1,117 +0,0 @@ -/* -# sample3_putfile.c -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - -#include "xdg_vfs_client.h" - -#include <stdio.h> -#include <stdlib.h> -#include <unistd.h> - -int main(int argc, char *argv[]) -{ - XdgVfsResult r; - XdgVfsSession * session; - - if (argc!=3) { - fprintf(stderr,"usage: %s {gnome|kde|this} FILENAME\n", argv[0]); - exit(1); - } - - r = xdg_vfs_sess_start(&session, argv[1]); - - if (r) { - fprintf(stderr, "sess start error=%d\n", r); - return 1; - } - - - fprintf(stderr, "======= test : putFile =======\n", r); - - r = xdg_vfs_sess_cmd_putFile(session, argv[2], 0); - - if (r) { - fprintf(stderr, "test cmd problem=%d\n", r); - return 1; - } - - XdgVfsItemType type=0; - XdgVfsItem * item=NULL; - int n = 5; - - while ((r=xdg_vfs_sess_readItem(session, &type, - &item, NULL, NULL)) == XDGVFS_RESULT_CONTINUES) - { - // fprintf(stderr, "got item type=%d\n", typeOut); - switch (type) - { - case XDGVFS_ITEMTYPE_PUT_HEAD: - { - XdgVfsSimpleHead * sh = (XdgVfsSimpleHead*) item; - fprintf(stderr, "'put' head uri='%s'\n", sh->uri); - break; - } - case XDGVFS_DATAOUT: - { - XdgVfsResult wr; - - /* send file */ - - if (n--) wr = xdg_vfs_sess_putDataChunk(session, "Hello World", 10); - else wr = xdg_vfs_sess_putDataChunk(session, NULL, 0); /* EOF */ - - fprintf(stderr, "writing chunk rval=%d\n", wr); - - while (wr == XDGVFS_RESULT_CALL_SENDDATA_AGAIN) { - wr = xdg_vfs_sess_sendData(session); - fprintf(stderr, "sending chunk rval=%d\n", wr); - } - - break; - } - case XDGVFS_ITEMTYPE_DATAOUT_DONE: - { - XdgVfsDataOutDoneItem * dii = (XdgVfsDataOutDoneItem *) item; - fprintf(stderr, "data out done bytecount=%d\n", dii->bytecount); - break; - } - case XDGVFS_ITEMTYPE_NONE: - { - break; - } - default: - { - fprintf(stderr, "unexpected item - type=%d\n", type); - break; - } - } - xdg_vfs_item_unref(item); - } - fprintf(stderr, "test result=%d\n", r); - - xdg_vfs_sess_close(session); - -} diff --git a/portland/libxdg-vfs/libxdg-vfs-client/tests/sample4_copy.c b/portland/libxdg-vfs/libxdg-vfs-client/tests/sample4_copy.c deleted file mode 100644 index d6656ef..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/tests/sample4_copy.c +++ /dev/null @@ -1,102 +0,0 @@ -/* -# sample4_copy.c -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - -#include "xdg_vfs_client.h" - -#include <stdio.h> -#include <stdlib.h> -#include <unistd.h> - -int main(int argc, char *argv[]) -{ - XdgVfsResult r; - XdgVfsSession * session; - - if (argc!=4) { - fprintf(stderr,"usage: %s {gnome|kde|this} FILENAME FILENAME\n", argv[0]); - exit(1); - } - - r = xdg_vfs_sess_start(&session, argv[1]); - - if (r) { - fprintf(stderr, "sess start error=%d\n", r); - return 1; - } - - - fprintf(stderr, "======= test : copy file =======\n", r); - - - - r = xdg_vfs_sess_cmd_copyFile(session, argv[2], argv[3]); - - if (r) { - fprintf(stderr, "test cmd problem=%d\n", r); - return 1; - } - - XdgVfsItemType type=0; - XdgVfsItem * item=NULL; - int n = 5; - - while ((r=xdg_vfs_sess_readItem(session, &type, - &item, NULL, NULL)) == XDGVFS_RESULT_CONTINUES) - { - // fprintf(stderr, "got item type=%d\n", typeOut); - switch (type) - { - case XDGVFS_ITEMTYPE_COPY_HEAD: - { - XdgVfsCopyHead * head = (XdgVfsCopyHead*) item; - fprintf(stderr, "copying uri_src='%s' to uri_target='%s'\n", - head->uri_src, head->uri_target); - break; - } - case XDGVFS_ITEMTYPE_PROGRESS: - { - XdgVfsProgress * progress = (XdgVfsProgress *) item; - fprintf(stderr, "progress: copied=%d size=%d\n", progress->copied, progress->size); - break; - } - case XDGVFS_ITEMTYPE_NONE: - { - break; - } - default: - { - fprintf(stderr, "unexpected item - type=%d\n", type); - break; - } - } - xdg_vfs_item_unref(item); - } - fprintf(stderr, "test result=%d\n", r); - - xdg_vfs_sess_close(session); - -} diff --git a/portland/libxdg-vfs/libxdg-vfs-client/tests/sample5_mount.c b/portland/libxdg-vfs/libxdg-vfs-client/tests/sample5_mount.c deleted file mode 100644 index a285d6c..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/tests/sample5_mount.c +++ /dev/null @@ -1,95 +0,0 @@ -/* -# sample5_mount.c -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - -#include "xdg_vfs_client.h" - -#include <stdio.h> -#include <stdlib.h> -#include <unistd.h> - -int main(int argc, char *argv[]) -{ - XdgVfsResult r; - XdgVfsSession * session; - - if (argc!=3) { - fprintf(stderr,"usage: %s {gnome|kde|this} MOUNTPOINT_ID\n", argv[0]); - exit(1); - } - - r = xdg_vfs_sess_start(&session, argv[1]); - - if (r) { - fprintf(stderr, "sess start error=%d\n", r); - return 1; - } - - - fprintf(stderr, "======= test : mount =======\n", r); - - - - r = xdg_vfs_sess_cmd_mount(session, argv[2]); - - if (r) { - fprintf(stderr, "test cmd problem=%d\n", r); - return 1; - } - - XdgVfsItemType type=0; - XdgVfsItem * item=NULL; - int n = 5; - - while ((r=xdg_vfs_sess_readItem(session, &type, - &item, NULL, NULL)) == XDGVFS_RESULT_CONTINUES) - { - switch (type) - { - case XDGVFS_ITEMTYPE_NONE: - { - break; - } - case XDGVFS_ITEMTYPE_FILEINFO: - { - /* lists the volumes just mounted */ - XdgVfsFileInfo * info = (XdgVfsFileInfo*) item; - fprintf(stderr, "mounted as uri=%s\n", info->uri); - break; - } - default: - { - fprintf(stderr, "unexpected item - type=%d\n", type); - break; - } - } - xdg_vfs_item_unref(item); - } - fprintf(stderr, "test result=%d\n", r); - - xdg_vfs_sess_close(session); - -} diff --git a/portland/libxdg-vfs/libxdg-vfs-client/tests/sample6_monitor.c b/portland/libxdg-vfs/libxdg-vfs-client/tests/sample6_monitor.c deleted file mode 100644 index d905551..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/tests/sample6_monitor.c +++ /dev/null @@ -1,106 +0,0 @@ -/* -# sample6_monitor.c -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - -#include "xdg_vfs_client.h" - -#include <stdio.h> -#include <stdlib.h> -#include <unistd.h> - -void myXdgVfsMonitorCallback(XdgVfsSession * sess, char * uri, void * user_data) -{ - printf("changed: %s\n", uri); -} - -int main(int argc, char *argv[]) -{ - XdgVfsResult r; - XdgVfsSession * session; - - if (argc!=3) { - fprintf(stderr,"usage: %s {gnome|kde|this} MONITOR_DIR_URI\n", argv[0]); - exit(1); - } - - r = xdg_vfs_sess_start(&session, argv[1]); - - if (r) { - fprintf(stderr, "sess start error=%d\n", r); - return 1; - } - - xdg_vfs_sess_set_monitor_callback(session, myXdgVfsMonitorCallback, NULL); - - fprintf(stderr, "======= test : monitor =======\n", r); - - - - r = xdg_vfs_sess_cmd_monitorDir(session, argv[2]); - - if (r) { - fprintf(stderr, "monitor cmd problem=%d\n", r); - return 1; - } - - fprintf(stderr, "Now waiting for monitor events!\n"); - - if(xdg_vfs_sess_isBusy(session)) - { - fprintf(stderr, "We can't wait for monitor events when the session is busy!\n"); - return 1; - } - - /* because the session is in READY state, we can not loop with r=XDGVFS_RESULT_CONTINUES - as with xdg-vfs commands */ - - XdgVfsItemType type=0; - XdgVfsItem * item=NULL; - - while ((r=xdg_vfs_sess_readItem(session, &type, - &item, NULL, NULL)) == XDGVFS_RESULT_OK) - { - switch (type) - { - case XDGVFS_ITEMTYPE_NONE: - { - break; - } - default: - { - fprintf(stderr, "unexpected item - type=%d\n", type); - break; - } - } - xdg_vfs_item_unref(item); - } - - fprintf(stderr, "cmd monitor result=%d\n", r); - - - xdg_vfs_sess_close(session); - -} diff --git a/portland/libxdg-vfs/libxdg-vfs-client/tests/test1.c b/portland/libxdg-vfs/libxdg-vfs-client/tests/test1.c deleted file mode 100644 index 03a51d8..0000000 --- a/portland/libxdg-vfs/libxdg-vfs-client/tests/test1.c +++ /dev/null @@ -1,63 +0,0 @@ -/* -* -* Copyright (C) 2005 Norbert Frese -* -* This library is free software; you can redistribute it and/or -* modify it under the terms of the GNU Lesser General Public -* License as published by the Free Software Foundation; either -* version 2.1 of the License, or (at your option) any later version. -* -* This library is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -* Lesser General Public License for more details. -* -* You should have received a copy of the GNU Lesser General Public -* License along with this library; if not, write to the Free Software -* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -* - */ - -#include "xdg_vfs_client.h" -#include "xdg_vfs_forkexec.h" - -#include <stdio.h> -#include <stdlib.h> -#include <unistd.h> - -int main(int argc, char *argv[]) -{ - printf("hello world\n"); - - int child_pid; - int childs_stdin; - int childs_stdout; - int r; - - // /home/norbert/work/c/xdg-vfs-gnome/src/ - r = xdg_vfs_forkexec("xdg_vfs_gnome", argv, &child_pid, &childs_stdin, &childs_stdout); - printf("r=%d\n", r); - printf("pid=%d\n", child_pid); - - FILE * fout = fdopen (childs_stdin, "w"); - - fprintf(fout, "info /\nquit\n"); - fflush(fout); - - puts("====="); - - FILE * fin = fdopen (childs_stdout, "r"); - if (!fin) perror("fopen"); - int c; - - while ((c =fgetc(fin)) != EOF) { - putchar (':'); putchar(c); - } - - perror("reading"); - - int status; - r= waitpid(child_pid, &status, 0); - if (r==-1) perror("waitpid:"); - printf("r=%d\n", r); -} diff --git a/portland/libxdg-vfs/xdg-vfs-browser-demo/.cvsignore b/portland/libxdg-vfs/xdg-vfs-browser-demo/.cvsignore deleted file mode 100644 index 6d3654f..0000000 --- a/portland/libxdg-vfs/xdg-vfs-browser-demo/.cvsignore +++ /dev/null @@ -1,27 +0,0 @@ -*.la -*.lo -*.o -ABOUT-NLS -Makefile -Makefile.in -aclocal.m4 -autom4te.cache -config.cache -config.h -config.h.in -config.log -config.status -configure -libtool -config.guess -config.sub -depcomp -install-sh -ltmain.sh -missing -stamp-h1 -.libs -.deps -.cdtproject -.project - diff --git a/portland/libxdg-vfs/xdg-vfs-browser-demo/AUTHORS b/portland/libxdg-vfs/xdg-vfs-browser-demo/AUTHORS deleted file mode 100644 index d76f6e9..0000000 --- a/portland/libxdg-vfs/xdg-vfs-browser-demo/AUTHORS +++ /dev/null @@ -1 +0,0 @@ -Norbert Frese (nf2@scheinwelt.at) 2006 diff --git a/portland/libxdg-vfs/xdg-vfs-browser-demo/COPYING b/portland/libxdg-vfs/xdg-vfs-browser-demo/COPYING deleted file mode 100644 index 1edf08c..0000000 --- a/portland/libxdg-vfs/xdg-vfs-browser-demo/COPYING +++ /dev/null @@ -1,18 +0,0 @@ -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. diff --git a/portland/libxdg-vfs/xdg-vfs-browser-demo/ChangeLog b/portland/libxdg-vfs/xdg-vfs-browser-demo/ChangeLog deleted file mode 100644 index ede0d5c..0000000 --- a/portland/libxdg-vfs/xdg-vfs-browser-demo/ChangeLog +++ /dev/null @@ -1,7 +0,0 @@ -2005-11-21 gettextize <bug-gnu-gettext@gnu.org> - - * Makefile.am (SUBDIRS): Add po. - (ACLOCAL_AMFLAGS): New variable. - (EXTRA_DIST): New variable. - * configure.ac (AC_OUTPUT): Add po/Makefile.in. - diff --git a/portland/libxdg-vfs/xdg-vfs-browser-demo/INSTALL b/portland/libxdg-vfs/xdg-vfs-browser-demo/INSTALL deleted file mode 100644 index 23e5f25..0000000 --- a/portland/libxdg-vfs/xdg-vfs-browser-demo/INSTALL +++ /dev/null @@ -1,236 +0,0 @@ -Installation Instructions -************************* - -Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free -Software Foundation, Inc. - -This file is free documentation; the Free Software Foundation gives -unlimited permission to copy, distribute and modify it. - -Basic Installation -================== - -These are generic installation instructions. - - The `configure' shell script attempts to guess correct values for -various system-dependent variables used during compilation. It uses -those values to create a `Makefile' in each directory of the package. -It may also create one or more `.h' files containing system-dependent -definitions. Finally, it creates a shell script `config.status' that -you can run in the future to recreate the current configuration, and a -file `config.log' containing compiler output (useful mainly for -debugging `configure'). - - It can also use an optional file (typically called `config.cache' -and enabled with `--cache-file=config.cache' or simply `-C') that saves -the results of its tests to speed up reconfiguring. (Caching is -disabled by default to prevent problems with accidental use of stale -cache files.) - - If you need to do unusual things to compile the package, please try -to figure out how `configure' could check whether to do them, and mail -diffs or instructions to the address given in the `README' so they can -be considered for the next release. If you are using the cache, and at -some point `config.cache' contains results you don't want to keep, you -may remove or edit it. - - The file `configure.ac' (or `configure.in') is used to create -`configure' by a program called `autoconf'. You only need -`configure.ac' if you want to change it or regenerate `configure' using -a newer version of `autoconf'. - -The simplest way to compile this package is: - - 1. `cd' to the directory containing the package's source code and type - `./configure' to configure the package for your system. If you're - using `csh' on an old version of System V, you might need to type - `sh ./configure' instead to prevent `csh' from trying to execute - `configure' itself. - - Running `configure' takes awhile. While running, it prints some - messages telling which features it is checking for. - - 2. Type `make' to compile the package. - - 3. Optionally, type `make check' to run any self-tests that come with - the package. - - 4. Type `make install' to install the programs and any data files and - documentation. - - 5. You can remove the program binaries and object files from the - source code directory by typing `make clean'. To also remove the - files that `configure' created (so you can compile the package for - a different kind of computer), type `make distclean'. There is - also a `make maintainer-clean' target, but that is intended mainly - for the package's developers. If you use it, you may have to get - all sorts of other programs in order to regenerate files that came - with the distribution. - -Compilers and Options -===================== - -Some systems require unusual options for compilation or linking that the -`configure' script does not know about. Run `./configure --help' for -details on some of the pertinent environment variables. - - You can give `configure' initial values for configuration parameters -by setting variables in the command line or in the environment. Here -is an example: - - ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix - - *Note Defining Variables::, for more details. - -Compiling For Multiple Architectures -==================================== - -You can compile the package for more than one kind of computer at the -same time, by placing the object files for each architecture in their -own directory. To do this, you must use a version of `make' that -supports the `VPATH' variable, such as GNU `make'. `cd' to the -directory where you want the object files and executables to go and run -the `configure' script. `configure' automatically checks for the -source code in the directory that `configure' is in and in `..'. - - If you have to use a `make' that does not support the `VPATH' -variable, you have to compile the package for one architecture at a -time in the source code directory. After you have installed the -package for one architecture, use `make distclean' before reconfiguring -for another architecture. - -Installation Names -================== - -By default, `make install' installs the package's commands under -`/usr/local/bin', include files under `/usr/local/include', etc. You -can specify an installation prefix other than `/usr/local' by giving -`configure' the option `--prefix=PREFIX'. - - You can specify separate installation prefixes for -architecture-specific files and architecture-independent files. If you -pass the option `--exec-prefix=PREFIX' to `configure', the package uses -PREFIX as the prefix for installing programs and libraries. -Documentation and other data files still use the regular prefix. - - In addition, if you use an unusual directory layout you can give -options like `--bindir=DIR' to specify different values for particular -kinds of files. Run `configure --help' for a list of the directories -you can set and what kinds of files go in them. - - If the package supports it, you can cause programs to be installed -with an extra prefix or suffix on their names by giving `configure' the -option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. - -Optional Features -================= - -Some packages pay attention to `--enable-FEATURE' options to -`configure', where FEATURE indicates an optional part of the package. -They may also pay attention to `--with-PACKAGE' options, where PACKAGE -is something like `gnu-as' or `x' (for the X Window System). The -`README' should mention any `--enable-' and `--with-' options that the -package recognizes. - - For packages that use the X Window System, `configure' can usually -find the X include and library files automatically, but if it doesn't, -you can use the `configure' options `--x-includes=DIR' and -`--x-libraries=DIR' to specify their locations. - -Specifying the System Type -========================== - -There may be some features `configure' cannot figure out automatically, -but needs to determine by the type of machine the package will run on. -Usually, assuming the package is built to be run on the _same_ -architectures, `configure' can figure that out, but if it prints a -message saying it cannot guess the machine type, give it the -`--build=TYPE' option. TYPE can either be a short name for the system -type, such as `sun4', or a canonical name which has the form: - - CPU-COMPANY-SYSTEM - -where SYSTEM can have one of these forms: - - OS KERNEL-OS - - See the file `config.sub' for the possible values of each field. If -`config.sub' isn't included in this package, then this package doesn't -need to know the machine type. - - If you are _building_ compiler tools for cross-compiling, you should -use the option `--target=TYPE' to select the type of system they will -produce code for. - - If you want to _use_ a cross compiler, that generates code for a -platform different from the build platform, you should specify the -"host" platform (i.e., that on which the generated programs will -eventually be run) with `--host=TYPE'. - -Sharing Defaults -================ - -If you want to set default values for `configure' scripts to share, you -can create a site shell script called `config.site' that gives default -values for variables like `CC', `cache_file', and `prefix'. -`configure' looks for `PREFIX/share/config.site' if it exists, then -`PREFIX/etc/config.site' if it exists. Or, you can set the -`CONFIG_SITE' environment variable to the location of the site script. -A warning: not all `configure' scripts look for a site script. - -Defining Variables -================== - -Variables not defined in a site shell script can be set in the -environment passed to `configure'. However, some packages may run -configure again during the build, and the customized values of these -variables may be lost. In order to avoid this problem, you should set -them in the `configure' command line, using `VAR=value'. For example: - - ./configure CC=/usr/local2/bin/gcc - -causes the specified `gcc' to be used as the C compiler (unless it is -overridden in the site shell script). Here is a another example: - - /bin/bash ./configure CONFIG_SHELL=/bin/bash - -Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent -configuration-related scripts to be executed by `/bin/bash'. - -`configure' Invocation -====================== - -`configure' recognizes the following options to control how it operates. - -`--help' -`-h' - Print a summary of the options to `configure', and exit. - -`--version' -`-V' - Print the version of Autoconf used to generate the `configure' - script, and exit. - -`--cache-file=FILE' - Enable the cache: use and save the results of the tests in FILE, - traditionally `config.cache'. FILE defaults to `/dev/null' to - disable caching. - -`--config-cache' -`-C' - Alias for `--cache-file=config.cache'. - -`--quiet' -`--silent' -`-q' - Do not print messages saying which checks are being made. To - suppress all normal output, redirect it to `/dev/null' (any error - messages will still be shown). - -`--srcdir=DIR' - Look for the package's source code in directory DIR. Usually - `configure' can determine that directory automatically. - -`configure' also accepts some other, not widely useful, options. Run -`configure --help' for more details. - diff --git a/portland/libxdg-vfs/xdg-vfs-browser-demo/Makefile.am b/portland/libxdg-vfs/xdg-vfs-browser-demo/Makefile.am deleted file mode 100644 index af437a6..0000000 --- a/portland/libxdg-vfs/xdg-vfs-browser-demo/Makefile.am +++ /dev/null @@ -1 +0,0 @@ -SUBDIRS = src diff --git a/portland/libxdg-vfs/xdg-vfs-browser-demo/Makefile.cvs b/portland/libxdg-vfs/xdg-vfs-browser-demo/Makefile.cvs deleted file mode 100644 index 1e17bc9..0000000 --- a/portland/libxdg-vfs/xdg-vfs-browser-demo/Makefile.cvs +++ /dev/null @@ -1,6 +0,0 @@ -all: - @libtoolize - @aclocal - @autoheader - @automake --add-missing - @autoconf diff --git a/portland/libxdg-vfs/xdg-vfs-browser-demo/NEWS b/portland/libxdg-vfs/xdg-vfs-browser-demo/NEWS deleted file mode 100644 index 4af1832..0000000 --- a/portland/libxdg-vfs/xdg-vfs-browser-demo/NEWS +++ /dev/null @@ -1 +0,0 @@ -None
\ No newline at end of file diff --git a/portland/libxdg-vfs/xdg-vfs-browser-demo/README b/portland/libxdg-vfs/xdg-vfs-browser-demo/README deleted file mode 100644 index 6b1c21b..0000000 --- a/portland/libxdg-vfs/xdg-vfs-browser-demo/README +++ /dev/null @@ -1 +0,0 @@ -libxdg-vfs Sample filebrowser diff --git a/portland/libxdg-vfs/xdg-vfs-browser-demo/configure.ac b/portland/libxdg-vfs/xdg-vfs-browser-demo/configure.ac deleted file mode 100644 index 199badb..0000000 --- a/portland/libxdg-vfs/xdg-vfs-browser-demo/configure.ac +++ /dev/null @@ -1,26 +0,0 @@ -dnl Process this file with autoconf to produce a configure script. - -AC_INIT(src/xdg_vfs_browser.c) -dnl AM_CONFIG_HEADER(config.h) - -PACKAGE=xdg-vfs-browser-demo -VERSION=0.0.5 - -AM_INIT_AUTOMAKE($PACKAGE,$VERSION) - -AC_PROG_CC -AC_STDC_HEADERS -AC_PROG_INSTALL - -AC_ENABLE_SHARED(yes) -AC_PROG_LIBTOOL - -PKG_CHECK_MODULES(DEPS, gtk+-2.0 >= 2.2) - -AC_SUBST(DEPS_CFLAGS) -AC_SUBST(DEPS_LIBS) - -AC_OUTPUT([ -Makefile -src/Makefile -]) diff --git a/portland/libxdg-vfs/xdg-vfs-browser-demo/setpaths.sh b/portland/libxdg-vfs/xdg-vfs-browser-demo/setpaths.sh deleted file mode 100755 index a136657..0000000 --- a/portland/libxdg-vfs/xdg-vfs-browser-demo/setpaths.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/sh - - -export PATH=/home/norbert/work/c/xdg-vfs-kde/src/:$PATH -export PATH=/home/norbert/work/c/xdg-vfs-gnome/src/:$PATH -export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH - - diff --git a/portland/libxdg-vfs/xdg-vfs-browser-demo/src/.cvsignore b/portland/libxdg-vfs/xdg-vfs-browser-demo/src/.cvsignore deleted file mode 100644 index 26a73db..0000000 --- a/portland/libxdg-vfs/xdg-vfs-browser-demo/src/.cvsignore +++ /dev/null @@ -1,8 +0,0 @@ -*.la -*.lo -*.o -.deps -.libs -Makefile -Makefile.in - diff --git a/portland/libxdg-vfs/xdg-vfs-browser-demo/src/Makefile.am b/portland/libxdg-vfs/xdg-vfs-browser-demo/src/Makefile.am deleted file mode 100644 index a5c1ae7..0000000 --- a/portland/libxdg-vfs/xdg-vfs-browser-demo/src/Makefile.am +++ /dev/null @@ -1,8 +0,0 @@ -bin_PROGRAMS = xdg_vfs_browser - -xdg_vfs_browser_SOURCES = xdg_vfs_browser.c -xdg_vfs_browser_LDADD = $(DEPS_LIBS) -lxdg_vfs_client - -AM_CFLAGS = $(DEPS_CFLAGS) - -noinst_HEADERS = diff --git a/portland/libxdg-vfs/xdg-vfs-browser-demo/src/xdg_vfs_browser.c b/portland/libxdg-vfs/xdg-vfs-browser-demo/src/xdg_vfs_browser.c deleted file mode 100644 index 4c9703a..0000000 --- a/portland/libxdg-vfs/xdg-vfs-browser-demo/src/xdg_vfs_browser.c +++ /dev/null @@ -1,791 +0,0 @@ -/* -# browser.c -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - -#include <string.h> - -#include <gtk/gtk.h> - -#include <xdg_vfs_client.h> - -enum -{ - ICON_COLUMN, - BASENAME_COLUMN, - SIZE_COLUMN, - MIMETYPE_COLUMN, - FILETYPE_COLUMN, - URI_COLUMN, - MOUNTPOINT_ID_COLUMN, - IS_MOUNTED_COLUMN, - N_COLUMNS -}; - -GtkWidget *window; -GtkTreeSelection *listselect; -GtkListStore *model; -GtkWidget *url_entry; - -guint status_bar_context_id; -GtkWidget* status_bar; - -XdgVfsSession * session; -char * system_uri; -char * current_uri=NULL; - -GtkIconTheme * iconTheme; - -static void initIconTheme(char * name) { - - iconTheme = gtk_icon_theme_new (); // gtk_icon_theme_get_default (); - - -/* gtk_icon_theme_prepend_search_path - (iconTheme, - "/usr/share/icons/crystalsvg/scalable"); */ - - gtk_icon_theme_set_custom_theme (iconTheme, - name); -/* gtk_icon_theme_set_custom_theme (iconTheme, - "gnome"); */ - - -/* - gchar ** themepath; - gint n_elements; - int i; - gtk_icon_theme_get_search_path (iconTheme, - &themepath, - &n_elements); - - for (i=0;i<n_elements;i++) - fprintf(stderr, "themepath=%s\n", themepath[i]); -*/ -} - - - -static void errorbox(int code) { - GtkWidget * dialog = gtk_message_dialog_new (GTK_WINDOW(window), - GTK_DIALOG_DESTROY_WITH_PARENT, - GTK_MESSAGE_ERROR, - GTK_BUTTONS_CLOSE, - "xdg-vfs error #%d: %s", - code, xdg_vfs_resultToString(code)); - gtk_dialog_run (GTK_DIALOG (dialog)); - gtk_widget_destroy (GTK_WIDGET(dialog)); - -} - -static void list_dir(const char * uri) -{ - XdgVfsResult r; - XdgVfsItemType type; - XdgVfsItem * item; - int i; - GtkTreeIter iter; - - char * message = g_strdup_printf ("listing %s ...", uri); - - gtk_statusbar_push(GTK_STATUSBAR(status_bar), status_bar_context_id, - message); - - g_free(message); - - while (gtk_events_pending ()) - gtk_main_iteration_do(FALSE); - - gtk_list_store_clear(model); // clear list - - while (gtk_events_pending ()) - gtk_main_iteration_do(FALSE); - - r = xdg_vfs_sess_cmd_listDirectory(session, uri); - - if (r) { - fprintf(stderr, "test 3 cmd problem=%d\n", r); - errorbox(r); - return; - } - - while ((r=xdg_vfs_sess_readItem(session, &type, - &item, NULL, NULL)) == XDGVFS_RESULT_CONTINUES) - { - switch(type) - { - case XDGVFS_ITEMTYPE_LS_HEAD: - { - XdgVfsSimpleHead * head = (XdgVfsSimpleHead*) item; - fprintf(stdout, "got ls header uri='%s'\n", head->uri); - break; - } - - case XDGVFS_ITEMTYPE_FILEINFO: - { - XdgVfsFileInfo * info = (XdgVfsFileInfo*) item; - // fprintf(stdout, "got fileinfo uri='%s'\n", info->uri); - GdkPixbuf* pixBuf; - if (info->iconname) - { - GError *gerror=NULL; - pixBuf = gtk_icon_theme_load_icon( - iconTheme, - info->iconname, - 24, - 0 /*GTK_ICON_LOOKUP_NO_SVG*/, - &gerror); - if (gerror) - { - fprintf (stderr, "Unable to load icon: %s\n", gerror->message); - g_error_free (gerror); - } - else - { - - - } - } - - gtk_list_store_append (GTK_LIST_STORE (model), &iter); - gtk_list_store_set (GTK_LIST_STORE (model), - &iter, - ICON_COLUMN, pixBuf, - BASENAME_COLUMN, info->basename, - SIZE_COLUMN, info->size, - MIMETYPE_COLUMN, info->mimetype, - FILETYPE_COLUMN, info->filetype, - URI_COLUMN, info->uri, - MOUNTPOINT_ID_COLUMN, info->mountpoint_id, - IS_MOUNTED_COLUMN, info->is_mounted, - -1); - - break; - } - case XDGVFS_ITEMTYPE_NONE: - { - break; - } - default: - { - fprintf(stderr, "unexpected item - type=%d\n", type); - break; - } - } - xdg_vfs_item_unref(item); - } - fprintf(stderr, "list result=%d\n", r); - if (r) { errorbox(r);} - else { - gtk_entry_set_text(GTK_ENTRY(url_entry), uri); - - if (current_uri) - { - r = xdg_vfs_sess_cmd_removeMonitor(session, current_uri); - fprintf(stderr, "remove monitor result=%d\n", r); - } - //if (current_uri) free(current_uri); - current_uri = strdup(uri); - // if (r && r!= XDGVFS_ERRORCODE_NOT_FOUND) { errorbox(r);} - r = xdg_vfs_sess_cmd_monitorDir(session, uri); - fprintf(stderr, "monitor dir result=%d\n", r); - // if (r && r != XDGVFS_ERRORCODE_ALREADY_EXISTS) { errorbox(r);} - } - - - - gtk_statusbar_pop (GTK_STATUSBAR(status_bar), status_bar_context_id); - -/* - for (i = 0; i < 10; i++) { - gchar *msg = g_strdup_printf ("Message %s #%d", uri, i); - gtk_list_store_append (GTK_LIST_STORE (model), &iter); - gtk_list_store_set (GTK_LIST_STORE (model), - &iter, - 0, msg, - 1, i, - -1); - g_free (msg); - } -*/ -} - -char * _mount_it(char * mountpoint_id) -{ - char * activation_uri=NULL; - - XdgVfsResult r; - - char * message = g_strdup_printf ("mounting %s", mountpoint_id); - - gtk_statusbar_push(GTK_STATUSBAR(status_bar), status_bar_context_id, - message); - - g_free(message); - - while (gtk_events_pending ()) - gtk_main_iteration_do(FALSE); - - r = xdg_vfs_sess_cmd_mount(session, mountpoint_id); - - if (r) { errorbox(r); return NULL;} - - XdgVfsItemType type=0; - XdgVfsItem * item=NULL; - int n = 5; - - while ((r=xdg_vfs_sess_readItem(session, &type, - &item, NULL, NULL)) == XDGVFS_RESULT_CONTINUES) - { - switch (type) - { - case XDGVFS_ITEMTYPE_NONE: - { - break; - } - case XDGVFS_ITEMTYPE_FILEINFO: - { - /* lists the volumes just mounted */ - XdgVfsFileInfo * info = (XdgVfsFileInfo*) item; - fprintf(stderr, "got activation uri=%s\n", info->uri); - if (!activation_uri) activation_uri = strdup(info->uri); - break; - } - default: - { - fprintf(stderr, "unexpected item - type=%d\n", type); - break; - } - } - xdg_vfs_item_unref(item); - } - if (r) { errorbox(r); activation_uri=NULL;} - fprintf(stderr, "mount result=%d\n", r); - gtk_statusbar_pop (GTK_STATUSBAR(status_bar), status_bar_context_id); - return activation_uri; -} - - -static void -tree_selection_changed_cb (GtkTreeSelection *selection, gpointer data) -{ - GtkTreeIter iter; - //GtkTreeModel *model; - gint filetype; - gchar *uri; - gchar *mountpoint_id; - gint is_mounted; - - GtkTreeModel * newTreeModel; - - if (gtk_tree_selection_get_selected (selection, &newTreeModel, &iter)) - { - model = (GtkListStore*)newTreeModel; - gtk_tree_model_get (GTK_TREE_MODEL (model), &iter, FILETYPE_COLUMN, &filetype, -1); - gtk_tree_model_get (GTK_TREE_MODEL (model), &iter, URI_COLUMN, &uri, -1); - gtk_tree_model_get (GTK_TREE_MODEL (model), &iter, MOUNTPOINT_ID_COLUMN, &mountpoint_id, -1); - gtk_tree_model_get (GTK_TREE_MODEL (model), &iter, IS_MOUNTED_COLUMN, &is_mounted, -1); - - printf ("You selected uri=%s\tfiletype=%d\tmntid=%s\tis_mounted=%d\n", uri, filetype, mountpoint_id, is_mounted); - - if (filetype==XDGVFS_FILE_TYPE_DIRECTORY) { - - list_dir(uri); - } - else if (filetype==XDGVFS_FILE_TYPE_VFSMOUNTPOINT) { - if (is_mounted) list_dir(uri); - else - { - char * activation_uri = _mount_it(mountpoint_id); - if (activation_uri) - { - list_dir(activation_uri); - free(activation_uri); - } - } - - } - - - g_free (uri); - } -} - - - -/* Create the list of "messages" */ -static GtkWidget *create_list( void ) -{ - - GtkWidget *scrolled_window; - GtkWidget *tree_view; - - GtkTreeIter iter; - /* GtkCellRenderer *cell0; - GtkCellRenderer *cell1; - GtkCellRenderer *cell2; - GtkTreeViewColumn *column0; - GtkTreeViewColumn *column1; - GtkTreeViewColumn *column2; */ - - GtkCellRenderer *normrenderer; - GtkTreeViewColumn *normcolumn; - - int i; - - /* Create a new scrolled window, with scrollbars only if needed */ - scrolled_window = gtk_scrolled_window_new (NULL, NULL); - gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window), - GTK_POLICY_AUTOMATIC, - GTK_POLICY_AUTOMATIC); - - model = gtk_list_store_new ( - N_COLUMNS, GDK_TYPE_PIXBUF, G_TYPE_STRING, - G_TYPE_INT, G_TYPE_STRING, G_TYPE_INT, - G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INT); - tree_view = gtk_tree_view_new (); - gtk_scrolled_window_add_with_viewport (GTK_SCROLLED_WINDOW (scrolled_window), - tree_view); - gtk_tree_view_set_model (GTK_TREE_VIEW (tree_view), GTK_TREE_MODEL (model)); - gtk_widget_show (tree_view); - - /* Add some messages to the window */ - /*for (i = 0; i < 10; i++) { - gchar *msg = g_strdup_printf ("Message #%d", i); - gtk_list_store_append (GTK_LIST_STORE (model), &iter); - gtk_list_store_set (GTK_LIST_STORE (model), - &iter, - 0, msg, - 1, i, - -1); - g_free (msg); - }*/ - - GtkCellRenderer* pixbufrenderer = gtk_cell_renderer_pixbuf_new(); - normcolumn = gtk_tree_view_column_new_with_attributes ("", - pixbufrenderer, - "pixbuf", ICON_COLUMN, - NULL); - gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view), - GTK_TREE_VIEW_COLUMN (normcolumn)); - - normrenderer = gtk_cell_renderer_text_new (); - - normcolumn = gtk_tree_view_column_new_with_attributes ("Name", - normrenderer, - "text", BASENAME_COLUMN, - NULL); - - gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view), - GTK_TREE_VIEW_COLUMN (normcolumn)); - - normcolumn = gtk_tree_view_column_new_with_attributes ("Size", - normrenderer, - "text", SIZE_COLUMN, - NULL); - - gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view), - GTK_TREE_VIEW_COLUMN (normcolumn)); - - normcolumn = gtk_tree_view_column_new_with_attributes ("MimeType", - normrenderer, - "text", MIMETYPE_COLUMN, - NULL); - - gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view), - GTK_TREE_VIEW_COLUMN (normcolumn)); - - normcolumn = gtk_tree_view_column_new_with_attributes ("Type", - normrenderer, - "text", FILETYPE_COLUMN, - NULL); - - gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view), - GTK_TREE_VIEW_COLUMN (normcolumn)); - - normcolumn = gtk_tree_view_column_new_with_attributes ("URI", - normrenderer, - "text", URI_COLUMN, - NULL); - - gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view), - GTK_TREE_VIEW_COLUMN (normcolumn)); - - normcolumn = gtk_tree_view_column_new_with_attributes ("MntID", - normrenderer, - "text", MOUNTPOINT_ID_COLUMN, - NULL); - - gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view), - GTK_TREE_VIEW_COLUMN (normcolumn)); - - - normcolumn = gtk_tree_view_column_new_with_attributes ("mnted", - normrenderer, - "text", IS_MOUNTED_COLUMN, - NULL); - - gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view), - GTK_TREE_VIEW_COLUMN (normcolumn)); - - - - listselect = gtk_tree_view_get_selection (GTK_TREE_VIEW (tree_view)); - gtk_tree_selection_set_mode (listselect, GTK_SELECTION_SINGLE); - g_signal_connect (G_OBJECT (listselect), "changed", - G_CALLBACK (tree_selection_changed_cb), - NULL); - - - return scrolled_window; -} - -/* Add some text to our text widget - this is a callback that is invoked -when our window is realized. We could also force our window to be -realized with gtk_widget_realize, but it would have to be part of -a hierarchy first */ - -static void insert_text( GtkTextBuffer *buffer ) -{ - GtkTextIter iter; - - gtk_text_buffer_get_iter_at_offset (buffer, &iter, 0); - - gtk_text_buffer_insert (buffer, &iter, - "", -1); -} - -/* Create a scrolled text area that displays a "message" */ -static GtkWidget *create_text( void ) -{ - GtkWidget *scrolled_window; - GtkWidget *view; - GtkTextBuffer *buffer; - - view = gtk_text_view_new (); - buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (view)); - - scrolled_window = gtk_scrolled_window_new (NULL, NULL); - gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window), - GTK_POLICY_AUTOMATIC, - GTK_POLICY_AUTOMATIC); - - gtk_container_add (GTK_CONTAINER (scrolled_window), view); - insert_text (buffer); - - gtk_widget_show_all (scrolled_window); - - return scrolled_window; -} - - -static void button_root_callback( GtkWidget *widget, - gpointer data ) -{ - g_print ("%s was pressed\n", (char *) data); - - list_dir(system_uri); - -} - - -static void button_go_callback( GtkWidget *widget, - gpointer data ) -{ - g_print ("%s was pressed\n", (char *) data); - - list_dir(gtk_entry_get_text (GTK_ENTRY(url_entry))); - -} - - -int read_backend_infos() { - XdgVfsResult r; - XdgVfsItemType type; - XdgVfsItem * item; - - r = xdg_vfs_sess_cmd_backendInfo(session); - - if (r) { - fprintf(stderr, "backend-info cmd problem=%d\n", r); - return 1; - } - - while ((r=xdg_vfs_sess_readItem(session, &type, - &item, NULL, NULL)) == XDGVFS_RESULT_CONTINUES) - { - switch(type) - { - case XDGVFS_ITEMTYPE_BACKENDINFO: - { - XdgVfsBackendInfo * backendInfo = (XdgVfsBackendInfo*) item; - fprintf(stderr, "backend_id='%s' system_uri='%s' file_icon_theme='%s'\n", - backendInfo->backend_id, - backendInfo->system_uri, - backendInfo->file_icon_theme); - - initIconTheme(backendInfo->file_icon_theme); - system_uri = strdup(backendInfo->system_uri); - - } - case XDGVFS_ITEMTYPE_NONE: - { - break; - } - default: - { - fprintf(stderr, "unexpected item - type=%d\n", type); - break; - } - } - xdg_vfs_item_unref(item); - } - if (r) { errorbox(r); exit(1); } - fprintf(stderr, "backend-info result=%d\n", r); -} - -/* avoid recursion when getting dir-monitor events */ -gboolean _list_again(gpointer data) -{ - char * uri = (char*)data; - printf("dir changed event2: current_uri=%s; uri=%s\n", current_uri, uri); - if (current_uri && strcmp(current_uri, uri)==0) list_dir(uri); - g_free(uri); - return FALSE; -} - - -void myXdgVfsMonitorCallback(XdgVfsSession * sess, char * uri, void * user_data) -{ - printf("dir changed event: %s\n", uri); - //g_idle_add(_list_again,strdup(uri)); - g_timeout_add(700,_list_again,strdup(uri)); -} - - -gboolean myGIOFunc(GIOChannel *source, GIOCondition condition, gpointer data) -{ - XdgVfsResult r; - if(!xdg_vfs_sess_isBusy(session)) - { - XdgVfsItemType type=0; - XdgVfsItem * item=NULL; - - fprintf(stderr, "incoming event!\n"); - if ((r=xdg_vfs_sess_readItem(session, &type, - &item, NULL, NULL)) == XDGVFS_RESULT_OK) - { - switch (type) - { - case XDGVFS_ITEMTYPE_NONE: - { - break; - } - default: - { - fprintf(stderr, "unexpected item - type=%d\n", type); - break; - } - } - xdg_vfs_item_unref(item); - } - } - return TRUE; -} - - -int main( int argc, - char *argv[] ) -{ - XdgVfsResult r; - - GtkWidget *main_vbox; - GtkWidget *url_hbox; - - GtkWidget *root_button; - GtkWidget *go_button; - - GtkWidget *vpaned; - GtkWidget *list; - GtkWidget *text; - - gtk_init (&argc, &argv); - - if (argc!=2) { - fprintf(stderr,"usage: %s {gnome|kde|this}\n", argv[0]); - exit(1); - } - - r = xdg_vfs_sess_start(&session, argv[1]); - - if (r) { - fprintf(stderr, " session start problem=%d\n", r); - return 1; - } - - xdg_vfs_sess_set_monitor_callback(session, myXdgVfsMonitorCallback, NULL); - - read_backend_infos(); - - window = gtk_window_new (GTK_WINDOW_TOPLEVEL); - gtk_window_set_title (GTK_WINDOW (window), "libxdg-vfs browser demo"); - g_signal_connect (G_OBJECT (window), "destroy", - G_CALLBACK (gtk_main_quit), NULL); - gtk_container_set_border_width (GTK_CONTAINER (window), 10); - gtk_widget_set_size_request (GTK_WIDGET (window), 450, 400); - - /* vbox */ - - main_vbox = gtk_vbox_new (FALSE, 0); - gtk_box_set_homogeneous(GTK_BOX(main_vbox),FALSE); - - gtk_container_add (GTK_CONTAINER (window), main_vbox); - gtk_widget_show (main_vbox); - - - /* create url box */ - - url_hbox = gtk_hbox_new (FALSE, 0); - gtk_box_set_homogeneous(GTK_BOX(url_hbox),FALSE); - - // gtk_container_add (GTK_CONTAINER (main_vbox), url_hbox); - - gtk_box_pack_start (GTK_BOX(main_vbox), - url_hbox, - FALSE, - FALSE, - 5); - gtk_widget_show (url_hbox); - - /* create root URI button */ - - root_button = gtk_button_new_with_label ("VFS Root"); - - /* Connect the "clicked" signal of the button to our callback */ - g_signal_connect (G_OBJECT (root_button), "clicked", - G_CALLBACK (button_root_callback), (gpointer) "root button"); - - gtk_widget_show (root_button); - - - gtk_box_pack_start (GTK_BOX(url_hbox), - root_button, - FALSE, - FALSE, - 5); - - - /* url entry */ - - url_entry = gtk_entry_new (); - gtk_entry_set_activates_default (GTK_ENTRY (url_entry), TRUE); - gtk_entry_set_max_length (GTK_ENTRY (url_entry), 100); - // gtk_container_add (GTK_CONTAINER (main_vbox), url_entry); - - gtk_box_pack_start (GTK_BOX(url_hbox), - url_entry, - TRUE, - TRUE, - 5); - - gtk_widget_show (url_entry); - - /* go button */ - - go_button = gtk_button_new_with_label ("Go"); - GTK_WIDGET_SET_FLAGS (go_button, GTK_CAN_DEFAULT); - - - /* Connect the "clicked" signal of the button to our callback */ - g_signal_connect (G_OBJECT (go_button), "clicked", - G_CALLBACK (button_go_callback), (gpointer) "go button"); - - gtk_widget_show (go_button); - - gtk_box_pack_start(GTK_BOX (url_hbox), - go_button, - FALSE, - FALSE, - 5); - gtk_widget_grab_default (go_button); - - - /* create a vpaned widget and add it to our toplevel window */ - - /* - vpaned = gtk_vpaned_new (); - gtk_container_add (GTK_CONTAINER (main_vbox), vpaned); - gtk_widget_show (vpaned); - - - list = create_list (); - gtk_paned_add1 (GTK_PANED (vpaned), list); - gtk_widget_show (list); - - text = create_text (); - gtk_paned_add2 (GTK_PANED (vpaned), text); - gtk_widget_show (text); - gtk_widget_show (window); - - - */ - list = create_list (); - gtk_container_add (GTK_CONTAINER (main_vbox), list); - gtk_widget_show (list); - - status_bar = gtk_statusbar_new(); - gtk_widget_show (status_bar); - //gtk_container_add (GTK_CONTAINER (main_vbox), status_bar); - - status_bar_context_id=gtk_statusbar_get_context_id (GTK_STATUSBAR(status_bar), - "xdg_vfs_browser"); - - gtk_box_pack_start(GTK_BOX (main_vbox), - status_bar, - FALSE, - FALSE, - 0); - - gtk_widget_show (window); - gtk_list_store_clear (model); - - current_uri = system_uri; - list_dir(system_uri); - - /* watch the incoming pipe (for change notifications) */ - - GIOChannel* iochannel = g_io_channel_unix_new(xdg_vfs_sess_getIncomingFiledescriptor(session)); - - g_io_add_watch(iochannel, - G_IO_IN, - myGIOFunc, - NULL); - - gtk_main (); - - xdg_vfs_sess_close(session); - - return 0; -} diff --git a/portland/libxdg-vfs/xdg-vfs-browser-demo/test.sh b/portland/libxdg-vfs/xdg-vfs-browser-demo/test.sh deleted file mode 100755 index 50ea250..0000000 --- a/portland/libxdg-vfs/xdg-vfs-browser-demo/test.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh - -src/xdg_vfs_gnome get ftp://web198@www.nfrese.net/ -echo res: $?
\ No newline at end of file diff --git a/portland/libxdg-vfs/xdg-vfs-gnome/.cvsignore b/portland/libxdg-vfs/xdg-vfs-gnome/.cvsignore deleted file mode 100644 index 280e90a..0000000 --- a/portland/libxdg-vfs/xdg-vfs-gnome/.cvsignore +++ /dev/null @@ -1,26 +0,0 @@ -*.la -*.lo -*.o -Makefile -Makefile.in -aclocal.m4 -autom4te.cache -config.cache -config.h -config.h.in -config.log -config.status -configure -libtool -config.guess -config.sub -depcomp -install-sh -ltmain.sh -missing -stamp-h1 -.libs -.deps -.cdtproject -.project - diff --git a/portland/libxdg-vfs/xdg-vfs-gnome/AUTHORS b/portland/libxdg-vfs/xdg-vfs-gnome/AUTHORS deleted file mode 100644 index 25d341d..0000000 --- a/portland/libxdg-vfs/xdg-vfs-gnome/AUTHORS +++ /dev/null @@ -1 +0,0 @@ -Norbert Frese (nf2@scheinwelt.at) 2006
\ No newline at end of file diff --git a/portland/libxdg-vfs/xdg-vfs-gnome/COPYING b/portland/libxdg-vfs/xdg-vfs-gnome/COPYING deleted file mode 100644 index 1edf08c..0000000 --- a/portland/libxdg-vfs/xdg-vfs-gnome/COPYING +++ /dev/null @@ -1,18 +0,0 @@ -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. diff --git a/portland/libxdg-vfs/xdg-vfs-gnome/ChangeLog b/portland/libxdg-vfs/xdg-vfs-gnome/ChangeLog deleted file mode 100644 index ede0d5c..0000000 --- a/portland/libxdg-vfs/xdg-vfs-gnome/ChangeLog +++ /dev/null @@ -1,7 +0,0 @@ -2005-11-21 gettextize <bug-gnu-gettext@gnu.org> - - * Makefile.am (SUBDIRS): Add po. - (ACLOCAL_AMFLAGS): New variable. - (EXTRA_DIST): New variable. - * configure.ac (AC_OUTPUT): Add po/Makefile.in. - diff --git a/portland/libxdg-vfs/xdg-vfs-gnome/INSTALL b/portland/libxdg-vfs/xdg-vfs-gnome/INSTALL deleted file mode 100644 index 23e5f25..0000000 --- a/portland/libxdg-vfs/xdg-vfs-gnome/INSTALL +++ /dev/null @@ -1,236 +0,0 @@ -Installation Instructions -************************* - -Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free -Software Foundation, Inc. - -This file is free documentation; the Free Software Foundation gives -unlimited permission to copy, distribute and modify it. - -Basic Installation -================== - -These are generic installation instructions. - - The `configure' shell script attempts to guess correct values for -various system-dependent variables used during compilation. It uses -those values to create a `Makefile' in each directory of the package. -It may also create one or more `.h' files containing system-dependent -definitions. Finally, it creates a shell script `config.status' that -you can run in the future to recreate the current configuration, and a -file `config.log' containing compiler output (useful mainly for -debugging `configure'). - - It can also use an optional file (typically called `config.cache' -and enabled with `--cache-file=config.cache' or simply `-C') that saves -the results of its tests to speed up reconfiguring. (Caching is -disabled by default to prevent problems with accidental use of stale -cache files.) - - If you need to do unusual things to compile the package, please try -to figure out how `configure' could check whether to do them, and mail -diffs or instructions to the address given in the `README' so they can -be considered for the next release. If you are using the cache, and at -some point `config.cache' contains results you don't want to keep, you -may remove or edit it. - - The file `configure.ac' (or `configure.in') is used to create -`configure' by a program called `autoconf'. You only need -`configure.ac' if you want to change it or regenerate `configure' using -a newer version of `autoconf'. - -The simplest way to compile this package is: - - 1. `cd' to the directory containing the package's source code and type - `./configure' to configure the package for your system. If you're - using `csh' on an old version of System V, you might need to type - `sh ./configure' instead to prevent `csh' from trying to execute - `configure' itself. - - Running `configure' takes awhile. While running, it prints some - messages telling which features it is checking for. - - 2. Type `make' to compile the package. - - 3. Optionally, type `make check' to run any self-tests that come with - the package. - - 4. Type `make install' to install the programs and any data files and - documentation. - - 5. You can remove the program binaries and object files from the - source code directory by typing `make clean'. To also remove the - files that `configure' created (so you can compile the package for - a different kind of computer), type `make distclean'. There is - also a `make maintainer-clean' target, but that is intended mainly - for the package's developers. If you use it, you may have to get - all sorts of other programs in order to regenerate files that came - with the distribution. - -Compilers and Options -===================== - -Some systems require unusual options for compilation or linking that the -`configure' script does not know about. Run `./configure --help' for -details on some of the pertinent environment variables. - - You can give `configure' initial values for configuration parameters -by setting variables in the command line or in the environment. Here -is an example: - - ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix - - *Note Defining Variables::, for more details. - -Compiling For Multiple Architectures -==================================== - -You can compile the package for more than one kind of computer at the -same time, by placing the object files for each architecture in their -own directory. To do this, you must use a version of `make' that -supports the `VPATH' variable, such as GNU `make'. `cd' to the -directory where you want the object files and executables to go and run -the `configure' script. `configure' automatically checks for the -source code in the directory that `configure' is in and in `..'. - - If you have to use a `make' that does not support the `VPATH' -variable, you have to compile the package for one architecture at a -time in the source code directory. After you have installed the -package for one architecture, use `make distclean' before reconfiguring -for another architecture. - -Installation Names -================== - -By default, `make install' installs the package's commands under -`/usr/local/bin', include files under `/usr/local/include', etc. You -can specify an installation prefix other than `/usr/local' by giving -`configure' the option `--prefix=PREFIX'. - - You can specify separate installation prefixes for -architecture-specific files and architecture-independent files. If you -pass the option `--exec-prefix=PREFIX' to `configure', the package uses -PREFIX as the prefix for installing programs and libraries. -Documentation and other data files still use the regular prefix. - - In addition, if you use an unusual directory layout you can give -options like `--bindir=DIR' to specify different values for particular -kinds of files. Run `configure --help' for a list of the directories -you can set and what kinds of files go in them. - - If the package supports it, you can cause programs to be installed -with an extra prefix or suffix on their names by giving `configure' the -option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. - -Optional Features -================= - -Some packages pay attention to `--enable-FEATURE' options to -`configure', where FEATURE indicates an optional part of the package. -They may also pay attention to `--with-PACKAGE' options, where PACKAGE -is something like `gnu-as' or `x' (for the X Window System). The -`README' should mention any `--enable-' and `--with-' options that the -package recognizes. - - For packages that use the X Window System, `configure' can usually -find the X include and library files automatically, but if it doesn't, -you can use the `configure' options `--x-includes=DIR' and -`--x-libraries=DIR' to specify their locations. - -Specifying the System Type -========================== - -There may be some features `configure' cannot figure out automatically, -but needs to determine by the type of machine the package will run on. -Usually, assuming the package is built to be run on the _same_ -architectures, `configure' can figure that out, but if it prints a -message saying it cannot guess the machine type, give it the -`--build=TYPE' option. TYPE can either be a short name for the system -type, such as `sun4', or a canonical name which has the form: - - CPU-COMPANY-SYSTEM - -where SYSTEM can have one of these forms: - - OS KERNEL-OS - - See the file `config.sub' for the possible values of each field. If -`config.sub' isn't included in this package, then this package doesn't -need to know the machine type. - - If you are _building_ compiler tools for cross-compiling, you should -use the option `--target=TYPE' to select the type of system they will -produce code for. - - If you want to _use_ a cross compiler, that generates code for a -platform different from the build platform, you should specify the -"host" platform (i.e., that on which the generated programs will -eventually be run) with `--host=TYPE'. - -Sharing Defaults -================ - -If you want to set default values for `configure' scripts to share, you -can create a site shell script called `config.site' that gives default -values for variables like `CC', `cache_file', and `prefix'. -`configure' looks for `PREFIX/share/config.site' if it exists, then -`PREFIX/etc/config.site' if it exists. Or, you can set the -`CONFIG_SITE' environment variable to the location of the site script. -A warning: not all `configure' scripts look for a site script. - -Defining Variables -================== - -Variables not defined in a site shell script can be set in the -environment passed to `configure'. However, some packages may run -configure again during the build, and the customized values of these -variables may be lost. In order to avoid this problem, you should set -them in the `configure' command line, using `VAR=value'. For example: - - ./configure CC=/usr/local2/bin/gcc - -causes the specified `gcc' to be used as the C compiler (unless it is -overridden in the site shell script). Here is a another example: - - /bin/bash ./configure CONFIG_SHELL=/bin/bash - -Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent -configuration-related scripts to be executed by `/bin/bash'. - -`configure' Invocation -====================== - -`configure' recognizes the following options to control how it operates. - -`--help' -`-h' - Print a summary of the options to `configure', and exit. - -`--version' -`-V' - Print the version of Autoconf used to generate the `configure' - script, and exit. - -`--cache-file=FILE' - Enable the cache: use and save the results of the tests in FILE, - traditionally `config.cache'. FILE defaults to `/dev/null' to - disable caching. - -`--config-cache' -`-C' - Alias for `--cache-file=config.cache'. - -`--quiet' -`--silent' -`-q' - Do not print messages saying which checks are being made. To - suppress all normal output, redirect it to `/dev/null' (any error - messages will still be shown). - -`--srcdir=DIR' - Look for the package's source code in directory DIR. Usually - `configure' can determine that directory automatically. - -`configure' also accepts some other, not widely useful, options. Run -`configure --help' for more details. - diff --git a/portland/libxdg-vfs/xdg-vfs-gnome/Makefile.am b/portland/libxdg-vfs/xdg-vfs-gnome/Makefile.am deleted file mode 100644 index af437a6..0000000 --- a/portland/libxdg-vfs/xdg-vfs-gnome/Makefile.am +++ /dev/null @@ -1 +0,0 @@ -SUBDIRS = src diff --git a/portland/libxdg-vfs/xdg-vfs-gnome/Makefile.cvs b/portland/libxdg-vfs/xdg-vfs-gnome/Makefile.cvs deleted file mode 100644 index 1e17bc9..0000000 --- a/portland/libxdg-vfs/xdg-vfs-gnome/Makefile.cvs +++ /dev/null @@ -1,6 +0,0 @@ -all: - @libtoolize - @aclocal - @autoheader - @automake --add-missing - @autoconf diff --git a/portland/libxdg-vfs/xdg-vfs-gnome/NEWS b/portland/libxdg-vfs/xdg-vfs-gnome/NEWS deleted file mode 100644 index 4af1832..0000000 --- a/portland/libxdg-vfs/xdg-vfs-gnome/NEWS +++ /dev/null @@ -1 +0,0 @@ -None
\ No newline at end of file diff --git a/portland/libxdg-vfs/xdg-vfs-gnome/README b/portland/libxdg-vfs/xdg-vfs-gnome/README deleted file mode 100644 index 177431f..0000000 --- a/portland/libxdg-vfs/xdg-vfs-gnome/README +++ /dev/null @@ -1,132 +0,0 @@ -XDG_VFS_GNOME -============= - -xdg_vfs_gnome is a command line client for gnome-vfs. It can read and write -files, list directories, open file-dialogs,... File-data is not stored in -temporary files, but instead is pushed/pulled via stdin and stdout. - -xdg_vfs_gnome is linked to the gnomeui libraries and therefore will pop up password dialogs etc. (which the gnome-vfs command line utilities can't) - -The aim of 'xdg_vfs_gnome' is to give third party desktop applications access -to Gnome-VFS without linking to the Gnome-libraries directly. It could be hidden behind a generic 'xdg_vfs' script, which switches between KIO, -Gnome-VFS,... command line clients. - - -Samples: -======== - --) reading a file - -$ xdg_vfs_gnome get file:///etc/lilo.conf - -$ xdg_vfs_gnome get http://www.freedesktop.org - -will stream a remote file to stdout which could be read into the hosts -applications memory via the C-function popen(..,'r'); - -$ xdg_vfs_gnome openfiledlg --instant-get - -will open a file-dialog to browse to a remote or local file and instantly -stream the file-data of the selected file to stdout. - -$ xdg_vfs_gnome openfiledlg --instant-get --qry-fileinfo --slow-mime --tagged - -By adding those switches xdg_vfs_gnome will also 'stat' the remote file and -try to detect it's mime-type, size,... - --) writing a file - -$ cat /etc/passwd | xdg_vfs_gnome put ftp://user@host/mydir/file.txt - -or use something like popen(..,'w') to stream file-data to create a remote file. - --) listing a directory - -$ xdg_vfs_gnome ls sftp://user@host/dir/ - - -There are two operation modes: -============================== - -*) single command - -*) shell mode (like the command-line ftp client). In shell mode the - host application can talk to 'xdg_vfs_gnome' by connecting to the - stdin and stdout pipes to execute a sequence of vfs commands. - (for instance QProcess or functions like g_spawn_async_with_pipes() allow - connecting to stdin and stdout of a child process) - -The advantage of shell mode is that passwords are kept in memory -(the user doesn't have log in again and again) and avoiding startup-delay -when executing multiple commands (for instance if the client application -is a file-manager) - -Tagged-mode: -============ - -the -t, --tagged option tells xdg_gnome_vfs to add 'labels' when a command -returns multiple 'parts'. For instance - -> xdg_vfs_gnome openfiledlg --instant-get --qry-fileinfo --tagged - -will return an [OpenFileDlg], a [FileInfo] and a [Data] section. - -Escaping file data: -=================== - -When operating in shell- or tagged- mode you will need an escape character -to signal the end of binary data. This is done via the -e and --escape-data -switch. By default '~' is the escape character. '~~' has to be treated as -single '~' and '~\n' as EOF. The escape-character can be changed by -the -e35 or --escape-data=35 option. (when you want to use '#' ASCII 35 as escape -character) - -Usage screen: -============= - -Usage: xdg_vfs [command] [options] [filename] - - Commands: - get [filename] : remote file->stdout - info [file or dir] : stat a remote file->stdout - put [filename] : stdin->create remote file - ls [dir] : list directory - openfiledlg [dir] : show open file dialog and return selected file - savefiledlg [dir] [fname] : show save file dialog and return selected file - shell : interactive mode - - Options: - -t, --tagged : tagged mode (file-data should be escaped) - -i, --qry-fileinfo : qry file-info when retrieving a file - --show-metadata : show metadata when retrieving a file - requires tagged mode! - -m, --slow-mime : more accurate mime-type detection (slow) - -e, --escape-data : escape file data (for end of data detection) - -eXXX, --escape-data=XXX : set and use a user defined escape character - XXX = ascii code! - --end-seperator= : add a custom seperator inbetween blocks - --overwrite : allow overwriting files (put) - --instant-get : openfiledilog instant get file->stdout - --instant-put : savefiledilog instant put file from stdin - - -Todo: -===== - -*) Implement more VFS-Commands (set file-info, mkdir/rmdir, copy, move,...) - -*) Progress reporting via stdout - -*) multi file-open-dialog - -*) Improve exit codes - -*) Write xdg_vfs_kde - -*) -w switch. Is there a way to pass the window-id to Gnome for accurate placement of dialogs? - -*) Write a sample client application (a simple file-manager for instance) - -... - - diff --git a/portland/libxdg-vfs/xdg-vfs-gnome/configure.ac b/portland/libxdg-vfs/xdg-vfs-gnome/configure.ac deleted file mode 100644 index 8dc0073..0000000 --- a/portland/libxdg-vfs/xdg-vfs-gnome/configure.ac +++ /dev/null @@ -1,27 +0,0 @@ -dnl Process this file with autoconf to produce a configure script. - -dnl AC_INIT(src/main.c) -AC_INIT(src/xdg_vfs_gnome.c) -dnl AM_CONFIG_HEADER(config.h) - -PACKAGE=xdg-vfs-gnome -VERSION=0.1.14 - -AM_INIT_AUTOMAKE($PACKAGE,$VERSION) - -AC_PROG_CC -AC_STDC_HEADERS -AC_PROG_INSTALL - -AC_ENABLE_SHARED(yes) -AC_PROG_LIBTOOL - -PKG_CHECK_MODULES(DEPS, gtk+-2.0 >= 2.2 gnome-vfs-2.0 >= 2.0 libgnomeui-2.0 >= 2.0) - -AC_SUBST(DEPS_CFLAGS) -AC_SUBST(DEPS_LIBS) - -AC_OUTPUT([ -Makefile -src/Makefile -]) diff --git a/portland/libxdg-vfs/xdg-vfs-gnome/desc/xdg-vfs.xml b/portland/libxdg-vfs/xdg-vfs-gnome/desc/xdg-vfs.xml deleted file mode 100644 index cc0e828..0000000 --- a/portland/libxdg-vfs/xdg-vfs-gnome/desc/xdg-vfs.xml +++ /dev/null @@ -1,475 +0,0 @@ -<?xml version="1.0"?> -<?xml-stylesheet type="text/xsl" - href="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl"?> -<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" - "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [ -]> -<refentry id="xdg-mime"> - <refentryinfo> - <title>xdg-vfs Manual</title> - <copyright> - <year>2006</year> - </copyright> - <author> - <firstname>Norbert</firstname> - <surname>Frese</surname> - </author> - <address><email>nf2@scheinwelt.at</email></address> - <releaseinfo>This is release 0.1 of the xdg-mime Manual.</releaseinfo> - </refentryinfo> - - <refmeta> - <refentrytitle>xdg-vfs</refentrytitle> - <manvolnum>1</manvolnum> - </refmeta> - - <refnamediv> - <refname>xdg-vfs</refname> - <refpurpose>command line tool for accessing the desktops vfs system</refpurpose> - </refnamediv> - - <refsynopsisdiv> - <cmdsynopsis> - <command>xdg-vfs</command> - <arg choice="plain"><option>get</option></arg> - <arg><option>--tagged</option> - <arg><option>--qry-fileinfo</option> - <arg><option>--slow-mime</option></arg> - </arg> - </arg> - <arg><option>--escape-data</option></arg> - <arg choice="plain"><replaceable>URI</replaceable></arg> - </cmdsynopsis> - <cmdsynopsis> - <command>xdg-vfs</command> - <arg choice="plain"><option>put</option></arg> - <arg><option>--tagged</option></arg> - <arg><option>--escape-data</option></arg> - <arg><option>--overwrite</option></arg> - <arg choice="plain"><replaceable>URI</replaceable></arg> - </cmdsynopsis> - <cmdsynopsis> - <command>xdg-vfs</command> - <arg choice="plain"><option>info</option></arg> - <arg><option>--tagged</option></arg> - <arg><option>--slow-mime</option></arg> - <arg choice="plain"><replaceable>URI</replaceable></arg> - </cmdsynopsis> - <cmdsynopsis> - <command>xdg-vfs</command> - <arg choice="plain"><option>ls</option></arg> - <arg><option>--tagged</option></arg> - <arg><option>--slow-mime</option></arg> - <arg choice="plain"><replaceable>URI</replaceable></arg> - </cmdsynopsis> - <cmdsynopsis> - <command>xdg-vfs</command> - <arg choice="plain"><option>openfiledlg</option></arg> - <arg><option>--tagged</option> - <arg><option>--qry-fileinfo</option> - <arg><option>--slow-mime</option></arg> - </arg> - </arg> - <arg><option>--instant-get</option></arg> - <arg><option>--escape-data</option></arg> - <arg><replaceable>START_URI</replaceable></arg> - </cmdsynopsis> - <cmdsynopsis> - <command>xdg-vfs</command> - <arg choice="plain"><option>savefiledlg</option></arg> - <arg><option>--tagged</option></arg> - <arg><option>--instant-put</option></arg> - <arg><option>--escape-data</option></arg> - <arg><replaceable>START_DIR_URI</replaceable></arg> - <arg><replaceable>DEFAULT_FILENAME</replaceable></arg> - </cmdsynopsis> - <cmdsynopsis> - <command>xdg-vfs</command> - <arg choice="plain"><option>shell</option></arg> - </cmdsynopsis> -</refsynopsisdiv> - - <refsect1 id="description"> - <title>Description</title> - <para> - The xdg-vfs program can be used to access the desktops vfs system. - </para> - </refsect1> - <refsect1 id="commands"> - <title>Commands</title> - <variablelist> - <varlistentry> - <term><option>get</option></term> - <listitem> - <simpara> - Download a file <replaceable>URI</replaceable> and stream contents to stdout. - </simpara> - <simpara> - In tagged mode it will return <computeroutput>[GET]</computeroutput> as section header, - the filename as key/value pair - <computeroutput>uri=file:///dir/filename</computeroutput> - and the subsection header <computeroutput>(>>>ESCAPED_DATA>>>)</computeroutput> or - <computeroutput>(>>>RAW_DATA>>>)</computeroutput> followed by the file-data. - </simpara> - </listitem> - </varlistentry> - <varlistentry> - <term><option>put</option></term> - <listitem> - <simpara> - Write a file <replaceable>URI</replaceable> and stream contents from stdin. - </simpara> - <simpara> - In tagged mode it will return <computeroutput>[PUT]</computeroutput> as section header, - the filename as key/value pair - <computeroutput>uri=file:///dir/filename</computeroutput> - and the subsection header <computeroutput>(<<<ESCAPED_DATA<<<)</computeroutput> or - <computeroutput>(<<<RAW_DATA<<<)</computeroutput>, waiting for the file-data on stdin. - </simpara> - </listitem> - </varlistentry> - <varlistentry> - <term><option>info</option></term> - <listitem> - <simpara> - Determine file-info of <replaceable>URI</replaceable> and determine its mime-type. - </simpara> - <simpara> - In tagged mode it will return <computeroutput>[FILEINFO]</computeroutput> as section header. - </simpara> - <para> - The attributes of the file are described by the following key=value pairs. In case the file is a - Symlink, the attributes of the target file will be shown. Therefore the filetype will never be - 'SYMLINK'. - <variablelist> - <varlistentry> - <term><computeroutput>uri=</computeroutput></term> - <listitem> - <simpara> - Absolute URI of the file - </simpara> - </listitem> - </varlistentry> - <varlistentry> - <term><computeroutput>basename=</computeroutput></term> - <listitem> - <simpara> - Filename without path - </simpara> - </listitem> - </varlistentry> - <varlistentry> - <term><computeroutput>size=</computeroutput></term> - <listitem> - <simpara> - Byte-size of the file - </simpara> - </listitem> - </varlistentry> - <varlistentry> - <term><computeroutput>permissions=</computeroutput></term> - <listitem> - <simpara> - Permissions (octal) - </simpara> - </listitem> - </varlistentry> - <varlistentry> - <term><computeroutput>filetype=</computeroutput></term> - <listitem> - <simpara> - <computeroutput>UNKNOWN, REGULAR, DIRECTORY, FIFO, SOCKET, - CHARDEV, BLOCKDEV</computeroutput> or <computeroutput>SYMLINK</computeroutput> - </simpara> - </listitem> - </varlistentry> - <varlistentry> - <term><computeroutput>ctime=, atime=, mtime=</computeroutput></term> - <listitem> - <simpara> - Timestamps - </simpara> - </listitem> - </varlistentry> - <varlistentry> - <term><computeroutput>userid=, groupid=</computeroutput></term> - <listitem> - <simpara> - User and Group-ID (Gnome-VFS) - </simpara> - </listitem> - </varlistentry> - <varlistentry> - <term><computeroutput>user=, group=</computeroutput></term> - <listitem> - <simpara> - User- and Groupname (KIO) - </simpara> - </listitem> - </varlistentry> - <varlistentry> - <term><computeroutput>mimetype=</computeroutput></term> - <listitem> - <simpara> - Mimetype - </simpara> - </listitem> - </varlistentry> - <varlistentry> - <term><computeroutput>linkdest=</computeroutput></term> - <listitem> - <simpara> - Target if the file is a symbolic link - </simpara> - </listitem> - </varlistentry> -</variablelist> - - - </para> - </listitem> - </varlistentry> - <varlistentry> - <term><option>ls</option></term> - <listitem> - <simpara> - List directory <replaceable>URI</replaceable>. - </simpara> - <simpara> - In tagged mode it will print <computeroutput>[LS]</computeroutput> as section header, and the - Entries (same format as for 'info' command) lead by the subheader - <computeroutput>(DIRENTRY)</computeroutput>. - </simpara> - </listitem> - </varlistentry> - <varlistentry> - <term><option>openfiledlg</option></term> - <listitem> - <simpara> - Show an open-file-dialog and set the inital dir/filename to <replaceable>START_URI</replaceable>. Can be combined - with the <command>get</command> command by using the --instant-get switch. - </simpara> - <simpara> - In tagged mode it will print <computeroutput>[OPENFILEDLG]</computeroutput> as section header. The - returned key-value pairs are: <computeroutput>selected_localpath=</computeroutput> - and <computeroutput>selected_uri=</computeroutput>. The first one will only show up for local files. - </simpara> - </listitem> - </varlistentry> - <varlistentry> - <term><option>savefiledlg</option></term> - <listitem> - <simpara> - Show an save-file-dialog and set the inital dir/filename to <replaceable>START_DIR_URI</replaceable>, - and the default-filename <replaceable>DEFAULT_FILENAME</replaceable>. -Can be combined - with the <command>put</command> command by using the --instant-put switch. - </simpara> - <simpara> - In tagged mode it will print <computeroutput>[SAVEFILEDLG]</computeroutput> as section header. The - returned key-value pairs are: <computeroutput>selected_localpath=</computeroutput> - and <computeroutput>selected_uri=</computeroutput>. The first one will only show up for local files. - </simpara> - </listitem> - </varlistentry> - <varlistentry> - <term><option>shell</option></term> - <listitem> - <simpara> - Enter interactive shell mode (like the command-line ftp client). - Will always turn --tagged mode on. --escaped mode is strongly recommended - when transfering files via stdin/stdout. In shell mode the - host application can talk to <command>xdg-vfs</command> by connecting to the - stdin and stdout pipes to execute a sequence of vfs commands. - (for instance QProcess or functions like g_spawn_async_with_pipes() allow - connecting to stdin and stdout of a child process) - </simpara> - </listitem> - </varlistentry> - </variablelist> - - </refsect1> - - - <refsect1 id="options"> - <title>Options</title> - <variablelist> - <varlistentry> - <term><option>--tagged, -t</option></term> - <listitem> - <simpara> - Switch to machine parsable <emphasis>tagged-mode</emphasis>. - Main sections will have square brackets: <replaceable>[GET]</replaceable>. - Subsections will have round brackets: <replaceable>(DIRENTRY)</replaceable> - </simpara> - </listitem> - </varlistentry> - - - <varlistentry> - <term><option>--escape-data, -e</option></term> - <listitem> - <simpara> - Use an <replaceable>escape-character</replaceable> when writing/reading file-data to signal EOF. - Strongly recommended in <emphasis>tagged-mode</emphasis>. - By default '~' is the escape character. '~~' has to be treated as - single '~' and '~\n' as EOF. The escape-character can be changed by - the <command>-e35</command> or <command>--escape-data=35</command> option. - (when you want to use '#' ASCII 35 as escape - character) - </simpara> - </listitem> - </varlistentry> - - <varlistentry> - <term><option>--qry-fileinfo, -i</option></term> - <listitem> - <simpara> - Run fileinfo <command>info</command> command before retieving a file (in commands <command>get</command> - or <command>openfiledlg --instant-get</command>. - Will only work in <command>--tagged</command> mode. - </simpara> - </listitem> - </varlistentry> - - <varlistentry> - <term><option>--overwrite</option></term> - <listitem> - <simpara> - Allow overwriting an existing file in command <command>put</command>. - </simpara> - </listitem> - </varlistentry> - - <varlistentry> - <term><option>--instant-get</option></term> - <listitem> - <simpara> - Instantly <command>get</command> data of selected file in a <command>openfiledlg</command>. - </simpara> - </listitem> - </varlistentry> - - <varlistentry> - <term><option>--instant-put</option></term> - <listitem> - <simpara> - Instantly <command>put</command> data of selected file in a <command>savefiledlg</command>. - The user will be asked if he wants to overwrite the file - therefor the --overwrite flag is assumed 'on' - here. - </simpara> - </listitem> - </varlistentry> - - - <varlistentry> - <term><option>--help</option></term> - <listitem> - <simpara> - Show this help. - </simpara> - </listitem> - </varlistentry> - - <varlistentry> - <term><option>--version</option></term> - <listitem> - <simpara> - Show the xdg-vfs version information. - </simpara> - </listitem> - </varlistentry> - - </variablelist> - </refsect1> - <refsect1 id="examples"> - <title>Examples</title> - <para> -<programlisting> -xdg-vfs get file:///etc/lilo.conf - -xdg-vfs get http://www.freedesktop.org -</programlisting> - Will stream a remote file to stdout which could be read into the hosts -applications memory via the C-function popen(..,'r'); - </para> - <para> -<programlisting> -xdg-vfs openfiledlg --instant-get -</programlisting> - Will open a file-dialog to browse to a remote or local file and instantly - stream the file-data of the selected file to stdout. - - </para> - <para> -<programlisting> -xdg-vfs openfiledlg --instant-get --qry-fileinfo --slow-mime --tagged --escape-data -</programlisting> - By adding those switches xdg_vfs_gnome will also 'stat' the remote file and - try to detect it's mime-type, size,... Escaping file-data is always recommended in --tagged mode. - </para> - <para> -<programlisting> -cat /etc/passwd | xdg-vfs put ftp://user@host/mydir/file.txt -</programlisting> - or use something like popen(..,'w') to stream file-data to create a remote file. - </para> - <para> -<programlisting> -xdg-vfs ls sftp://user@host/dir/ --tagged -</programlisting> - List a remote directory. Tagged mode is recommended for listing directories. - - </para> - <para> - This shows the output of a command in 'tagged' mode (when the user selects /etc/passwd): - -<programlisting> -$ src/xdg_vfs_gnome openfiledlg --instant-get -i --tagged -e -[OPENFILEDLG] -selected_localpath=/etc/passwd -selected_uri=file:///etc/passwd -[FILEINFO] -basename=passwd -size=1389 -userid=0 -groupid=0 -permissions=644 -mtime=1149433809 -atime=1149596399 -ctime=1149433809 -filetype=REGULAR -mimetype=text/plain -uri=file:///etc/passwd -[GET] -uri=file:///etc/passwd -(>>>ESCAPED_DATA>>>) -root:x:0:0:root:/root:/bin/bash -bin:x:1:1:bin:/bin:/bin/sh -~ -$ -</programlisting> - </para> - </refsect1> - <refsect1 id="rvals"> - <title>Return Codes</title> - <para> - Return values of the xdg-vfs backends: -<programlisting> -OK 0 -CANCELED 10 -USAGEERR 11 -NOTSUPPORTED 12 -GENERIC 13 -INITERR 14 -DATAERR 15 -IOERR 16 -NOTPERMITTED 17 -INVALIDURI 18 -</programlisting> - - - </para> - </refsect1> - -</refentry> diff --git a/portland/libxdg-vfs/xdg-vfs-gnome/src/.cvsignore b/portland/libxdg-vfs/xdg-vfs-gnome/src/.cvsignore deleted file mode 100644 index 26a73db..0000000 --- a/portland/libxdg-vfs/xdg-vfs-gnome/src/.cvsignore +++ /dev/null @@ -1,8 +0,0 @@ -*.la -*.lo -*.o -.deps -.libs -Makefile -Makefile.in - diff --git a/portland/libxdg-vfs/xdg-vfs-gnome/src/Makefile.am b/portland/libxdg-vfs/xdg-vfs-gnome/src/Makefile.am deleted file mode 100644 index 712950c..0000000 --- a/portland/libxdg-vfs/xdg-vfs-gnome/src/Makefile.am +++ /dev/null @@ -1,13 +0,0 @@ -bin_PROGRAMS = xdg_vfs_gnome - -xdg_vfs_gnome_SOURCES = xdg_vfs_gnome.c \ - xdg_vfs.c \ - xdg_vfs_gnome_volumes.c \ - xdg_vfs_gnome_monitor.c - -xdg_vfs_gnome_LDADD = $(DEPS_LIBS) - -AM_CFLAGS = $(DEPS_CFLAGS) - -noinst_HEADERS = xdg_vfs.h xdg_vfs_common.h xdg_vfs_gnome.h - diff --git a/portland/libxdg-vfs/xdg-vfs-gnome/src/xdg_vfs.c b/portland/libxdg-vfs/xdg-vfs-gnome/src/xdg_vfs.c deleted file mode 100644 index f0956da..0000000 --- a/portland/libxdg-vfs/xdg-vfs-gnome/src/xdg_vfs.c +++ /dev/null @@ -1,531 +0,0 @@ -/* -# xdg_vfs.c -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - -#include <string.h> -#include <stdio.h> -#include <unistd.h> -#include <stdlib.h> - -#include <sys/types.h> -#include <sys/time.h> - -#include "xdg_vfs_common.h" -#include "xdg_vfs.h" - -char * end_seperator; -int data_esc_char= DEFAULT_DATA_ESC_CHAR; -int xdgvfs_file_permissions = XDGVFS_DEFAULT_FILE_PERMISSIONS; -int xdgvfs_dir_permissions = XDGVFS_DEFAULT_DIR_PERMISSIONS; -int debug_mode = 1; - -int xdg_vfs_getDataEscChar() -{ - return data_esc_char; -} - -char * xdg_vfs_getCustomEndSeparator() -{ - return end_seperator; -} - -/** -* print a key/value pair -* (value is a string) -*/ -void xdg_vfs_ppair_str(FILE * f, const char * key, const char * value, int opts) -{ - fprintf(f,key); - fprintf(f,"="); - if (value) fprintf(f,"%s\n", value); - else fprintf(f, "\n"); -} - -/** -* look if there is a cancel character on stdin -*/ -int xdg_vfs_chk_stdin(int wait_secs) -{ - /* check for canceled */ - int filedes = fileno (stdin); - int r; - fd_set set; - struct timeval timeout; - - - /* Initialize the file descriptor set. */ - FD_ZERO (&set); - FD_SET (filedes, &set); - - /* Initialize the timeout data structure. */ - timeout.tv_sec = wait_secs; - timeout.tv_usec = 0; - - /* select returns 0 if timeout, 1 if input available, -1 if error. */ - r= select (FD_SETSIZE, &set, NULL, NULL, &timeout); - if (r==0) return 0; - if (r==-1) - { - fprintf(stderr, "WARNING: Error when checking stdin for cancel character\n"); - return -1; /* error! */ - } - return 1; -} - -int xdg_vfs_chk_canceled(int opts) { - - if (!(opts & XDGVFS_OPT_CANCELABLE)) return 0; - - int r = xdg_vfs_chk_stdin(0)==1; - - if (r==1) - { - int c = getc(stdin); - if (c==DEFAULT_CANCEL_CHAR) return 1; - fprintf(stderr, "WARNING: Bad cancel character!\n"); - return 1; - } - return r; -} - -int empty_stdin() { /* not used */ - - /* fclean(stdin); */ - while (xdg_vfs_chk_stdin(0)==1) { - char buf[10]; - read(stdin, buf, 10); - } -} - - -/** -* print usage -*/ -int pusage(int opts) -{ - if (!(opts & XDGVFS_OPT_INTERACTIVE_MODE)) - fprintf(stderr, "Usage: xdg_vfs [command] [options] [filenames]\n"); - else - fprintf(stderr, "Usage: [command] [options] [filename]\n"); - fprintf(stderr, "\n"); - fprintf(stderr, " Commands: \n"); - - fprintf(stderr, " backend : print backend infos\n"); - fprintf(stderr, " get [uri] : remote file->stdout\n"); - fprintf(stderr, " put [uri] : stdin->create remote file\n"); - fprintf(stderr, " info [uri] : stat a remote file\n"); - fprintf(stderr, " setattrs [uri] : set file attributes\n"); - fprintf(stderr, " cp [uri] [uri] : copy file\n"); - fprintf(stderr, " mv [uri] [uri] : move/rename file\n"); - fprintf(stderr, " rm [uri] : remove file\n"); - fprintf(stderr, " mkdir [uri] : make directory\n"); - fprintf(stderr, " rmdir [uri] : remove directory\n"); - fprintf(stderr, " ls [uri] : list directory\n"); - fprintf(stderr, " mount [id] : mount\n"); - fprintf(stderr, " openfiledlg [uri] : show file-save dialog\n"); - fprintf(stderr, " savefiledlg [uri] [fname] : show file-open dialog\n"); - if (!(opts & XDGVFS_OPT_INTERACTIVE_MODE)) - fprintf(stderr, " shell : interactive mode\n"); - else - fprintf(stderr, " quit : exit interactive mode\n"); - fprintf(stderr, "\n"); - fprintf(stderr, " Options: \n"); - fprintf(stderr, " -t, --tagged : tagged mode (file-data should be escaped)\n"); - fprintf(stderr, " -i, --qry-fileinfo : qry file-info when retrieving a file\n"); - /* fprintf(stderr, " --show-metadata : show metadata when retrieving a file\n"); */ - fprintf(stderr, " requires tagged mode!\n"); - fprintf(stderr, " --dive-de-links : dive into desktop-entry links (if folders)\n"); - fprintf(stderr, " -m, --slow-mime : more accurate mime-type detection (slow)\n"); - fprintf(stderr, " -e, --escape-data : escape file data (for end of data detection)\n"); - fprintf(stderr, " -eXXX, --escape-data=XXX : set and use a user defined escape character\n"); - fprintf(stderr, " XXX = ascii code!\n"); - fprintf(stderr, " --cancelable : allow sending cancel character to stdin\n"); - fprintf(stderr, " --user= : setattrs: set user\n"); - fprintf(stderr, " --group= : setattrs: set group\n"); - fprintf(stderr, " --permissions= : set permissions when creating a file or dir\n"); - fprintf(stderr, " : or in setattrs\n"); - /* fprintf(stderr, " --end-seperator= : add a custom seperator inbetween blocks\n"); */ - fprintf(stderr, " --overwrite : allow overwriting files (put)\n"); - fprintf(stderr, " --instant-get : openfiledilog instant get file->stdout\n"); - fprintf(stderr, " --instant-put : savefiledilog instant put file from stdin\n"); - fprintf(stderr, " --title= : set dialog title\n"); - fprintf(stderr, " --progress : show progress when copying or moving a file\n"); - fprintf(stderr, "\n"); - return XDGVFS_ERRORCODE_BAD_PARAMETER ; -} - -/** -* count ordinary args -*/ -int countargs(int argc, char ** argv) -{ - int i; - int ctr=0; - for (i=0;i<argc;i++) - { - if (argv[i][0] != '-') - { - ctr++; - } - } - return ctr; -} - - -/** -* get n'th arg ignoring options -*/ -char * getarg(int argc, char ** argv, int nr) -{ - int i; - int ctr=0; - for (i=0;i<argc;i++) - { - if (argv[i][0] != '-') - { - if (ctr++==nr) return argv[i]; - } - } - return NULL; -} - -/** -* get certain option value -*/ -char * getoptarg(int argc, char ** argv, const char * optname) -{ - int i; - int ctr=0; - for (i=0;i<argc;i++) - { - if (strncmp (argv[i], optname, strlen(optname))==0) return argv[i]+strlen(optname); - } - return NULL; -} - -/** -* execute commands -*/ -int docommand(int argc, char ** argv, int globopts) -{ - char * command; char * s; char * title; - int cargs = countargs(argc, argv); - int opts = globopts; - int r; - - command = getarg(argc,argv, 1); - - if (!command) return pusage(opts); - - - if (getoptarg(argc,argv, "-t") || getoptarg(argc,argv, "--tagged")) - opts |= XDGVFS_OPT_TAGGED; - if (getoptarg(argc,argv, "-e") || getoptarg(argc,argv, "--escape-data")) - { - opts |= XDGVFS_OPT_DATAESCAPED; - s = getoptarg(argc,argv, "-e"); - if (s && strlen(s)>0) data_esc_char = atoi(s); - s = getoptarg(argc,argv, "--escape-data="); - if (s && strlen(s)>0) data_esc_char = atoi(s); - } - - if (getoptarg(argc,argv, "--permissions=")) - { - s = getoptarg(argc,argv, "--permissions="); - if (s && strlen(s)>0) - { - int perms= atoi(s); - xdgvfs_file_permissions = perms; - xdgvfs_dir_permissions = perms; - } - } - - if (getoptarg(argc,argv, "-m") || getoptarg(argc,argv, "--slow-mime")) - opts |= XDGVFS_OPT_SLOW_MIME_TYPE; - if (getoptarg(argc,argv, "--overwrite")) - opts |= XDGVFS_OPT_OVERWRITE; - - if (getoptarg(argc,argv, "--cancelable")) - opts |= XDGVFS_OPT_CANCELABLE; - - if (getoptarg(argc,argv, "--instant-get")) - opts |= XDGVFS_OPT_INSTANT_GET; - - if (getoptarg(argc,argv, "--instant-put")) - opts |= XDGVFS_OPT_INSTANT_PUT; - - if (getoptarg(argc,argv, "--dive-de-links")) - opts |= XDGVFS_OPT_DIVE_DE_LINKS; - - - if (getoptarg(argc,argv, "-i") || getoptarg(argc,argv, "--qry-fileinfo")) - opts |= XDGVFS_OPT_GET_FILEINFO; - - if (getoptarg(argc,argv, "--show-metadata")) - opts |= XDGVFS_OPT_SHOW_METADATA; - if (getoptarg(argc,argv, "-p") || getoptarg(argc,argv, "--progress")) - opts |= XDGVFS_OPT_PROGRESS; - - title=getoptarg(argc,argv, "--title="); - - - /* printf("debu=%d %d\n", opts, countargs(argc, argv)); */ - - /* get command? */ - if (cargs == 2 && strcmp(command, "backend")==0) - { - return xdg_vfs_backend(opts); - } - else if (cargs == 3 && strcmp(command, "get")==0) - { - return xdg_vfs_get(getarg(argc,argv, 2), opts); - /* info command? */ - } - else if (cargs == 3 && strcmp(command, "info")==0) - { - return xdg_vfs_getFileInfo(getarg(argc,argv, 2), opts); - } - else if (cargs == 3 && strcmp(command, "setattrs")==0) - { - XdgVfsSetFileInfoData fiData = { 0,0,0,0 }; - fiData.user = getoptarg(argc,argv, "--user="); - fiData.group = getoptarg(argc,argv, "--group="); - if (getoptarg(argc,argv, "--permissions=")) - { - s = getoptarg(argc,argv, "--permissions="); - if (s && strlen(s)>0) - { - fiData.perms=atoi(s); - fiData.setPermsFlag = 1; - } - } - return xdg_vfs_setFileInfo(getarg(argc,argv, 2), &fiData, opts); - /* ls caommand? */ - } - else if (cargs == 3 && strcmp(command, "ls")==0) - { - return xdg_vfs_dir(getarg(argc,argv, 2), opts); - /* mount command? */ - } - else if (cargs == 3 && strcmp(command, "mount")==0) - { - return xdg_vfs_mount(getarg(argc,argv, 2), opts); - /* mkdir command? */ - } - else if (cargs == 3 && strcmp(command, "mkdir")==0) - { - return xdg_vfs_mkdir(getarg(argc,argv, 2), xdgvfs_dir_permissions, opts); - } - else if (cargs == 3 && strcmp(command, "rmdir")==0) - { - return xdg_vfs_rmdir(getarg(argc,argv, 2), opts); - } - else if (cargs == 3 && strcmp(command, "put")==0) - { - return xdg_vfs_put(getarg(argc,argv, 2), xdgvfs_file_permissions, opts); - } - else if (cargs == 3 && strcmp(command, "rm")==0) - { - return xdg_vfs_rm(getarg(argc,argv, 2), opts); - } - else if (cargs == 3 && strcmp(command, "monfile")==0) - { - return xdg_vfs_monitor(getarg(argc,argv, 2), 0, opts); - } - else if (cargs == 3 && strcmp(command, "mondir")==0) - { - return xdg_vfs_monitor(getarg(argc,argv, 2), 1, opts); - } - else if (cargs == 3 && strcmp(command, "rmmon")==0) - { - return xdg_vfs_monitor_cancel(getarg(argc,argv, 2), opts); - } - else if (cargs >= 2 && strcmp(command, "openfiledlg")==0) - { - return xdg_vfs_openfiledlg(getarg(argc,argv, 2), NULL, title, opts); - } - else if (cargs >= 2 && strcmp(command, "savefiledlg")==0) - { - return xdg_vfs_savefiledlg(getarg(argc,argv, 2),getarg(argc,argv, 3), - title, xdgvfs_file_permissions, opts); - } - else if (cargs == 4 && strcmp(command, "cp")==0) - { - return xdg_vfs_cp(getarg(argc,argv, 2),getarg(argc,argv, 3), xdgvfs_file_permissions, 0, opts); - } - else if (cargs == 4 && strcmp(command, "mv")==0) - { - return xdg_vfs_cp(getarg(argc,argv, 2),getarg(argc,argv, 3), xdgvfs_file_permissions, 1, opts); - } - else - { - return pusage(opts); - } - return 1; -} - -/** -* main() function -*/ -int xdg_vfs_main(int argc, char ** argv) -{ - if (argc < 2) - { - return pusage(0); - } - - xdg_vfs_init_desklib(argc, argv); - - /* SHELL mode */ - if (countargs(argc,argv)==2 && strcmp(getarg(argc,argv, 1), "shell")==0) - { - while(1) - { - char * lineptr = NULL; - ssize_t len; - size_t n = 0; - - char ** av = calloc(SHELL_MAXARGS, sizeof(char*)); - av[0] = "shell"; - int ac = 1; - - int rcode; - - fprintf(stdout, "> "); - fflush(stdout); - xdg_vfs_monitor_list_events(0); - while (!xdg_vfs_iterate_mainloop_until_incoming_data(fileno(stdin))) - { - xdg_vfs_monitor_list_events(0); - } - len=getline (&lineptr, &n, stdin); - - if (len<0) { - if (len=EOF) { - fprintf(stderr, "xdg-vfs shell mode: stdin closed -> exit\n"); - exit(XDGVFS_ERRORCODE_IO_ERROR); - } - perror("xdg-vfs shell mode: stdin problem -> exit"); - exit(XDGVFS_ERRORCODE_IO_ERROR); - } - - /* printf("lineptr=%s len=%d\n", lineptr, len); */ - /* while(ac < SHELL_MAXARGS && (av[ac]=strtok(ac==1 ? lineptr : NULL, " \n")) ) - ac++; */ - - { - char * lout = calloc(strlen(lineptr)+1,1); - int c=0; - int co=0; - av[ac++] = lout; /* first arg */ - int parsing_error=0; - while(lineptr[c]!='\0') /* read shell line into arg array */ - { - if (lineptr[c] == '"') /* quoted strings */ - { - c++; - while(lineptr[c]!='\0') - { - if (lineptr[c] == '\\') - { - - c++; - if (lineptr[c]=='\\' || lineptr[c]=='"') - { - lout[co++] = lineptr[c++]; - continue; - } else - { - fprintf(stderr, "ERROR: Only '\\' or '\"' are allowed to be escaped with '\\' inside double quotes in shell mode!!!\n"); - parsing_error=1; - } - - } else - { - if (lineptr[c] == '"') - { - c++; - break; - } - lout[co++] = lineptr[c++]; - } - } - - } - - if (lineptr[c] == ' ') - { - lout[co] = '\0'; - av[ac++] = lout+co+1; - co++; - if (ac >= SHELL_MAXARGS) return XDGVFS_ERRORCODE_BAD_PARAMETER; - } else if (lineptr[c] == '\n') - { - /* skip newline */ - } - else - { - lout[co++] = lineptr[c]; - } - c++; - } - - /* if (debug_mode) fprintf(stderr,"av= %s|%s|%s|%s|%s|%s n=%d\n", av[0], av[1], av[2], av[3], av[4],av[5],ac); */ - - if (av[1] && strcmp(av[1], "quit")==0) - { - fprintf(stderr, "BYE!\n"); - return 0; - } - - if (!parsing_error) - { - rcode = docommand(ac,av, XDGVFS_OPT_INTERACTIVE_MODE | XDGVFS_OPT_TAGGED); - if (rcode==0) fprintf(stdout, "%s\n", XDGVFS_TAG_DONE); - else fprintf(stdout, "%s %d\n", XDGVFS_TAG_FAILED, rcode); - } - else - { - fprintf(stdout, "%s %d\n", XDGVFS_TAG_FAILED, XDGVFS_ERRORCODE_BAD_PARAMETER); - } - - free(lineptr); - free(av); - free(lout); - xdg_vfs_iterate_mainloop(); - } - } - /* single command mode */ - } - else - { - return docommand(argc,argv, 0); - } - -} - - - diff --git a/portland/libxdg-vfs/xdg-vfs-gnome/src/xdg_vfs.h b/portland/libxdg-vfs/xdg-vfs-gnome/src/xdg_vfs.h deleted file mode 100644 index 26a87b9..0000000 --- a/portland/libxdg-vfs/xdg-vfs-gnome/src/xdg_vfs.h +++ /dev/null @@ -1,135 +0,0 @@ -/* -# xdg_vfs.h -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - -#ifndef XDG_VFS_H -#define XDG_VFS_H - -#ifdef __cplusplus -extern "C" { -#endif - -#include <stdio.h> -#include <unistd.h> -#include <stdlib.h> -#include <sys/stat.h> - -#define DATA_BUF_SIZE 4096 -#define SHELL_MAXARGS 30 - -#define XDGVFS_DEFAULT_FILE_PERMISSIONS S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH -#define XDGVFS_DEFAULT_DIR_PERMISSIONS S_IRUSR | S_IWUSR | S_IXUSR | S_IRGRP | S_IWGRP | S_IXGRP | S_IXOTH - - - - -/* cli option flags */ - -#define XDGVFS_OPT_TAGGED 1 -#define XDGVFS_OPT_DATAESCAPED 2 -#define XDGVFS_OPT_SLOW_MIME_TYPE 4 -#define XDGVFS_OPT_GET_FILEINFO 8 -#define XDGVFS_OPT_INSTANT_GET 16 -#define XDGVFS_OPT_INSTANT_PUT 32 -#define XDGVFS_OPT_OVERWRITE 64 -#define XDGVFS_OPT_SHOW_METADATA 128 -#define XDGVFS_OPT_INTERACTIVE_MODE 256 -#define XDGVFS_OPT_PROGRESS 512 -#define XDGVFS_OPT_CANCELABLE 1024 -#define XDGVFS_OPT_DIVE_DE_LINKS 2048 - - - -#define XDGVFS_TEXT_SAVEFILEDLG_TITLE "Save File" -#define XDGVFS_TEXT_OPENFILEDLG_TITLE "Open File" - -typedef struct { - const char * user; - const char * group; - unsigned int perms; - int setPermsFlag; -} XdgVfsSetFileInfoData; - -/* implementation independent functions */ - -int xdg_vfs_main(int argc, char ** argv); - -int xdg_vfs_getDataEscChar(); - -char * xdg_vfs_getCustomEndSeparator(); - -void xdg_vfs_ppair_str(FILE * f, const char * key, const char * value, int opts); - -int xdg_vfs_chk_canceled(int opts); - -/* implementation functions */ - -int xdg_vfs_init_desklib(int argc, char** argv); - -int xdg_vfs_iterate_mainloop(); - -int xdg_vfs_iterate_mainloop_until_incoming_data(int fd); - -/* command implementations */ - -int xdg_vfs_backend(int opts); - -int xdg_vfs_dir(const char * text_uri, int opts); - -int xdg_vfs_mount(const char * mountpoint_id, int opts); - -int xdg_vfs_getFileInfo(const char * text_uri, int opts); - -int xdg_vfs_setFileInfo(const char * text_uri, XdgVfsSetFileInfoData * fiData, int opts); - -int xdg_vfs_get(const char * text_uri, int opts); - -int xdg_vfs_put(const char * text_uri, int perms, int opts); - -int xdg_vfs_cp(const char * text_uri_src, const char * text_uri_target, unsigned int perms, int move_flag, int opts); - -int xdg_vfs_mkdir(const char * text_uri, unsigned int perms, int opts); - -int xdg_vfs_rmdir(const char * text_uri, int opts); - -int xdg_vfs_rm(const char * text_uri, int opts); - -int xdg_vfs_openfiledlg(const char * default_dir, const char * default_filename, const char * title, int opts); - -int xdg_vfs_savefiledlg(const char * default_dir, const char * default_filename, - const char * title, unsigned int perms, int opts); - -int xdg_vfs_monitor(char * uri, int is_directory, int opts); - -int xdg_vfs_monitor_cancel(char * uri, int opts); - -int xdg_vfs_monitor_list_events(int opts); - -#ifdef __cplusplus -} -#endif -#endif - diff --git a/portland/libxdg-vfs/xdg-vfs-gnome/src/xdg_vfs_common.h b/portland/libxdg-vfs/xdg-vfs-gnome/src/xdg_vfs_common.h deleted file mode 100644 index 3963983..0000000 --- a/portland/libxdg-vfs/xdg-vfs-gnome/src/xdg_vfs_common.h +++ /dev/null @@ -1,146 +0,0 @@ -/* -# xdg_vfs_common.h -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - -#ifndef XDG_VFS_COMMON_H -#define XDG_VFS_COMMON_H - -#ifdef __cplusplus -extern "C" { -#endif - -#define DEFAULT_DATA_ESC_CHAR 126 -#define DEFAULT_CANCEL_CHAR (int)'!' - -/* error codes */ - -#define XDGVFS_ERRORCODE_OK 0 -#define XDGVFS_ERRORCODE_CANCELED 10 -#define XDGVFS_ERRORCODE_BAD_PARAMETER 11 -#define XDGVFS_ERRORCODE_NOT_SUPPORTED 12 -#define XDGVFS_ERRORCODE_GENERIC 13 -#define XDGVFS_ERRORCODE_INIT_ERROR 14 -#define XDGVFS_ERRORCODE_DATA_ERROR 15 -#define XDGVFS_ERRORCODE_IO_ERROR 16 -#define XDGVFS_ERRORCODE_NOT_PERMITTED 17 -#define XDGVFS_ERRORCODE_MALFORMED_URL 18 -#define XDGVFS_ERRORCODE_PROTOCOL_ERROR 19 -#define XDGVFS_ERRORCODE_USR_OR_GRP_NOT_FOUND 20 -#define XDGVFS_ERRORCODE_INTERNAL 21 -#define XDGVFS_ERRORCODE_CANNOT_OPEN_FOR_WRITING 22 -#define XDGVFS_ERRORCODE_CANNOT_OPEN_FOR_READING 23 -#define XDGVFS_ERRORCODE_IS_DIRECTORY 24 -#define XDGVFS_ERRORCODE_IS_FILE 25 -#define XDGVFS_ERRORCODE_NOT_FOUND 26 -#define XDGVFS_ERRORCODE_ALREADY_EXISTS 27 -#define XDGVFS_ERRORCODE_HOST_NOT_FOUND 28 -#define XDGVFS_ERRORCODE_ACCESS_DENIED 29 -#define XDGVFS_ERRORCODE_CANNOT_ENTER_DIRECTORY 30 -#define XDGVFS_ERRORCODE_PROTOCOL_IS_NOT_A_FILESYSTEM 31 -#define XDGVFS_ERRORCODE_LOOP 32 -#define XDGVFS_ERRORCODE_COULD_NOT_CREATE_SOCKET 33 -#define XDGVFS_ERRORCODE_COULD_NOT_CONNECT 34 -#define XDGVFS_ERRORCODE_ERR_CONNECTION_BROKEN 35 -#define XDGVFS_ERRORCODE_COULD_NOT_MOUNT 36 -#define XDGVFS_ERRORCODE_COULD_NOT_UNMOUNT 37 -#define XDGVFS_ERRORCODE_SOCKET_ERROR 38 -#define XDGVFS_ERRORCODE_LOGIN_FAILED 39 -#define XDGVFS_ERRORCODE_OPERATION_FAILED 40 -#define XDGVFS_ERRORCODE_CANNOT_RESUME 41 -#define XDGVFS_ERRORCODE_OUT_OF_MEMORY 42 -#define XDGVFS_ERRORCODE_UNKNOWN_PROXY_HOST 43 -#define XDGVFS_ERRORCODE_ABORTED 44 -#define XDGVFS_ERRORCODE_TIMEOUT 45 -#define XDGVFS_ERRORCODE_SERVICE_NOT_AVAILABLE 46 -#define XDGVFS_ERRORCODE_CANNOT_DELETE_ORIGINAL 47 -#define XDGVFS_ERRORCODE_CANNOT_DELETE_PARTIAL 48 -#define XDGVFS_ERRORCODE_CANNOT_RENAME_ORIGINAL 49 -#define XDGVFS_ERRORCODE_CANNOT_RENAME_PARTIAL 50 -#define XDGVFS_ERRORCODE_NEED_PASSWD 51 -#define XDGVFS_ERRORCODE_NO_CONTENT 52 -#define XDGVFS_ERRORCODE_NO_SPACE 53 -#define XDGVFS_ERRORCODE_IDENTICAL_FILES 54 -#define XDGVFS_ERRORCODE_CORRUPTED_DATA 55 -#define XDGVFS_ERRORCODE_WRONG_FORMAT 56 -#define XDGVFS_ERRORCODE_ERROR_BAD_FILE 66 -#define XDGVFS_ERRORCODE_TOO_BIG 67 -#define XDGVFS_ERRORCODE_NOT_OPEN 68 -#define XDGVFS_ERRORCODE_INVALID_OPEN_MODE 69 -#define XDGVFS_ERRORCODE_TOO_MANY_OPEN_FILES 70 -#define XDGVFS_ERRORCODE_EOF 71 -#define XDGVFS_ERRORCODE_IN_PROGRESS 72 -#define XDGVFS_ERRORCODE_INTERRUPTED 73 -#define XDGVFS_ERRORCODE_HOST_HAS_NO_ADDRESS 74 -#define XDGVFS_ERRORCODE_DIRECTORY_NOT_EMPTY 75 -#define XDGVFS_ERRORCODE_TOO_MANY_LINKS 76 -#define XDGVFS_ERRORCODE_READ_ONLY_FILE_SYSTEM 77 -#define XDGVFS_ERRORCODE_NOT_SAME_FILE_SYSTEM 78 -#define XDGVFS_ERRORCODE_NAME_TOO_LONG 79 -#define XDGVFS_ERRORCODE_SERVICE_OBSOLETE 80 -#define XDGVFS_ERRORCODE_NO_DEFAULT 81 -#define XDGVFS_ERRORCODE_NAMESERVER 82 -#define XDGVFS_ERRORCODE_LOCKED 83 -#define XDGVFS_ERRORCODE_DEPRECATED_FUNCTION 84 -#define XDGVFS_ERRORCODE_DIRECTORY_BUSY 85 -#define XDGVFS_ERRORCODE_NOT_A_DIRECTORY 86 - - -/* tags (private!) */ - -#define XDGVFS_TAG_DATA_OUT "(>>>RAW_DATA>>>)" -#define XDGVFS_TAG_ESCAPEDDATA_OUT "(>>>ESCAPED_DATA>>>)" -#define XDGVFS_TAG_DATA_IN "(<<<RAW_DATA<<<)" -#define XDGVFS_TAG_ESCAPEDDATA_IN "(<<<ESCAPED_DATA<<<)" - -#define XDGVFS_TAG_BACKEND "[BACKEND]" -#define XDGVFS_TAG_GET "[GET]" -#define XDGVFS_TAG_PUT "[PUT]" -#define XDGVFS_TAG_CP "[CP]" -#define XDGVFS_TAG_MV "[MV]" -#define XDGVFS_TAG_LS "[LS]" -#define XDGVFS_TAG_FILEINFO "[FILEINFO]" -#define XDGVFS_TAG_SETATTRS "[SETATTRS]" -#define XDGVFS_TAG_SAVEFILEDLG "[SAVEFILEDLG]" -#define XDGVFS_TAG_OPENFILEDLG "[OPENFILEDLG]" -#define XDGVFS_TAG_MKDIR "[MKDIR]" -#define XDGVFS_TAG_RMDIR "[RMDIR]" -#define XDGVFS_TAG_RM "[RM]" -#define XDGVFS_TAG_MOUNT "[MOUNT]" -#define XDGVFS_TAG_MONITOREVENT "*" - - -#define XDGVFS_TAG_METADATA "(METADATA)" -#define XDGVFS_TAG_DIRENTRY "(DIRENTRY)" -#define XDGVFS_TAG_PROGRESS "(PROGRESS)" - -#define XDGVFS_TAG_DONE ":-)" -#define XDGVFS_TAG_FAILED ":-(" - -#ifdef __cplusplus -} -#endif -#endif - diff --git a/portland/libxdg-vfs/xdg-vfs-gnome/src/xdg_vfs_gnome.c b/portland/libxdg-vfs/xdg-vfs-gnome/src/xdg_vfs_gnome.c deleted file mode 100644 index db7c639..0000000 --- a/portland/libxdg-vfs/xdg-vfs-gnome/src/xdg_vfs_gnome.c +++ /dev/null @@ -1,1106 +0,0 @@ -/* -# xdg_vfs_gnome.c -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - -/** - * READ: - * http://cvs.gnome.org/viewcvs/libgnomeui/file-chooser/ - * http://cvs.gnome.org/viewcvs/libgnomeui/libgnomeui/gnome-icon-lookup.c - * http://standards.freedesktop.org/desktop-entry-spec/ - * http://developer.gimp.org/api/2.0/glib/glib-Key-value-file-parser.html - * http://developer.gnome.org/doc/API/2.0/gnome-vfs-2.0/ - * - */ - - -#include <string.h> - -#include <gtk/gtk.h> -#include <libgnomevfs/gnome-vfs.h> -#include <libgnomeui/libgnomeui.h> -#include <time.h> - -#include <pwd.h> -#include <grp.h> - -#include "xdg_vfs_common.h" -#include "xdg_vfs.h" -#include "xdg_vfs_gnome.h" - -#define DESKTOP_GROUP "Desktop Entry" - - -/* -* translate error codes -*/ -typedef struct -{ - GnomeVFSResult result; - int xdgVfsErr; -} MapGnomeVFSResult; - -MapGnomeVFSResult mapGVFSErrArr[] = -{ - { GNOME_VFS_OK , XDGVFS_ERRORCODE_OK } , - { GNOME_VFS_ERROR_NOT_FOUND , XDGVFS_ERRORCODE_NOT_FOUND } , - { GNOME_VFS_ERROR_GENERIC , XDGVFS_ERRORCODE_GENERIC } , - { GNOME_VFS_ERROR_INTERNAL , XDGVFS_ERRORCODE_INTERNAL } , - { GNOME_VFS_ERROR_BAD_PARAMETERS , XDGVFS_ERRORCODE_BAD_PARAMETER } , - { GNOME_VFS_ERROR_NOT_SUPPORTED , XDGVFS_ERRORCODE_NOT_SUPPORTED } , - { GNOME_VFS_ERROR_IO , XDGVFS_ERRORCODE_IO_ERROR } , - { GNOME_VFS_ERROR_CORRUPTED_DATA , XDGVFS_ERRORCODE_CORRUPTED_DATA } , - { GNOME_VFS_ERROR_WRONG_FORMAT , XDGVFS_ERRORCODE_WRONG_FORMAT } , - { GNOME_VFS_ERROR_BAD_FILE , XDGVFS_ERRORCODE_ERROR_BAD_FILE } , - { GNOME_VFS_ERROR_TOO_BIG , XDGVFS_ERRORCODE_TOO_BIG } , - { GNOME_VFS_ERROR_NO_SPACE , XDGVFS_ERRORCODE_NO_SPACE } , - { GNOME_VFS_ERROR_READ_ONLY , XDGVFS_ERRORCODE_CANNOT_OPEN_FOR_WRITING } , - { GNOME_VFS_ERROR_INVALID_URI , XDGVFS_ERRORCODE_MALFORMED_URL } , - { GNOME_VFS_ERROR_NOT_OPEN , XDGVFS_ERRORCODE_NOT_OPEN } , - { GNOME_VFS_ERROR_INVALID_OPEN_MODE , XDGVFS_ERRORCODE_INVALID_OPEN_MODE } , - { GNOME_VFS_ERROR_ACCESS_DENIED , XDGVFS_ERRORCODE_ACCESS_DENIED } , - { GNOME_VFS_ERROR_TOO_MANY_OPEN_FILES , XDGVFS_ERRORCODE_TOO_MANY_OPEN_FILES } , - { GNOME_VFS_ERROR_EOF , XDGVFS_ERRORCODE_EOF } , - { GNOME_VFS_ERROR_NOT_A_DIRECTORY , XDGVFS_ERRORCODE_NOT_A_DIRECTORY } , - { GNOME_VFS_ERROR_IN_PROGRESS , XDGVFS_ERRORCODE_IN_PROGRESS } , - { GNOME_VFS_ERROR_INTERRUPTED , XDGVFS_ERRORCODE_INTERRUPTED } , - { GNOME_VFS_ERROR_FILE_EXISTS , XDGVFS_ERRORCODE_ALREADY_EXISTS } , - { GNOME_VFS_ERROR_LOOP , XDGVFS_ERRORCODE_LOOP } , - { GNOME_VFS_ERROR_NOT_PERMITTED , XDGVFS_ERRORCODE_NOT_PERMITTED } , - { GNOME_VFS_ERROR_IS_DIRECTORY , XDGVFS_ERRORCODE_IS_DIRECTORY } , - { GNOME_VFS_ERROR_NO_MEMORY , XDGVFS_ERRORCODE_OUT_OF_MEMORY } , - { GNOME_VFS_ERROR_HOST_NOT_FOUND , XDGVFS_ERRORCODE_HOST_NOT_FOUND } , - { GNOME_VFS_ERROR_INVALID_HOST_NAME , XDGVFS_ERRORCODE_HOST_NOT_FOUND } , - { GNOME_VFS_ERROR_HOST_HAS_NO_ADDRESS , XDGVFS_ERRORCODE_HOST_HAS_NO_ADDRESS } , - { GNOME_VFS_ERROR_LOGIN_FAILED , XDGVFS_ERRORCODE_LOGIN_FAILED } , - { GNOME_VFS_ERROR_CANCELLED , XDGVFS_ERRORCODE_CANCELED } , - { GNOME_VFS_ERROR_DIRECTORY_BUSY , XDGVFS_ERRORCODE_DIRECTORY_BUSY } , - { GNOME_VFS_ERROR_DIRECTORY_NOT_EMPTY , XDGVFS_ERRORCODE_DIRECTORY_NOT_EMPTY } , - { GNOME_VFS_ERROR_TOO_MANY_LINKS , XDGVFS_ERRORCODE_TOO_MANY_LINKS } , - { GNOME_VFS_ERROR_READ_ONLY_FILE_SYSTEM , XDGVFS_ERRORCODE_READ_ONLY_FILE_SYSTEM } , - { GNOME_VFS_ERROR_NOT_SAME_FILE_SYSTEM , XDGVFS_ERRORCODE_NOT_SAME_FILE_SYSTEM } , - { GNOME_VFS_ERROR_NAME_TOO_LONG , XDGVFS_ERRORCODE_NAME_TOO_LONG } , - { GNOME_VFS_ERROR_SERVICE_NOT_AVAILABLE , XDGVFS_ERRORCODE_SERVICE_NOT_AVAILABLE } , - { GNOME_VFS_ERROR_SERVICE_OBSOLETE , XDGVFS_ERRORCODE_SERVICE_OBSOLETE } , - { GNOME_VFS_ERROR_PROTOCOL_ERROR , XDGVFS_ERRORCODE_PROTOCOL_ERROR } , - { GNOME_VFS_ERROR_NO_MASTER_BROWSER , XDGVFS_ERRORCODE_INTERNAL } , - { GNOME_VFS_ERROR_NO_DEFAULT , XDGVFS_ERRORCODE_NO_DEFAULT } , - { GNOME_VFS_ERROR_NO_HANDLER , XDGVFS_ERRORCODE_PROTOCOL_ERROR } , - { GNOME_VFS_ERROR_PARSE , XDGVFS_ERRORCODE_CORRUPTED_DATA } , - { GNOME_VFS_ERROR_LAUNCH , XDGVFS_ERRORCODE_INIT_ERROR } , - { GNOME_VFS_ERROR_TIMEOUT , XDGVFS_ERRORCODE_TIMEOUT } , - { GNOME_VFS_ERROR_NAMESERVER , XDGVFS_ERRORCODE_NAMESERVER } , - { GNOME_VFS_ERROR_LOCKED , XDGVFS_ERRORCODE_LOCKED } , - { GNOME_VFS_ERROR_DEPRECATED_FUNCTION , XDGVFS_ERRORCODE_DEPRECATED_FUNCTION } -}; - -int translate_GnomeVFSResult(GnomeVFSResult result) -{ - int i; - for (i=0;i<sizeof(mapGVFSErrArr)/sizeof(MapGnomeVFSResult);i++) - { - /* printf(" %d %d\n", mapErrArr[i].kioErr, mapErrArr[i].xdgVfsErr); */ - if (mapGVFSErrArr[i].result == result) return mapGVFSErrArr[i].xdgVfsErr; - } - return XDGVFS_ERRORCODE_GENERIC; - -} - -/** -* initialize gnome -*/ -int xdg_vfs_init_desklib(int argc, char** argv) -{ - GnomeProgram *my_app; - GOptionContext *option_context; - - my_app = gnome_program_init(PACKAGE, VERSION, LIBGNOMEUI_MODULE, - argc, argv, GNOME_PARAM_NONE); - - gnome_authentication_manager_init(); - - if (!gnome_vfs_init ()) - { - fprintf(stderr, "Count not init Gnome-VFS!\n"); - return XDGVFS_ERRORCODE_INIT_ERROR; - } - - return 0; -} - -/** -* finish pending GUI-events -*/ -int xdg_vfs_iterate_mainloop() -{ - while (g_main_context_pending (NULL)) - g_main_context_iteration(NULL, FALSE); -} - -/** -* print gnome-vfs error -*/ -int print_and_translate_result(GnomeVFSResult result) -{ - const gchar * s; - s = gnome_vfs_result_to_string (result); - - fprintf(stderr, "ERROR: GnomeVFSResult=%s\n",s); - //free(s); - return translate_GnomeVFSResult(result); -} - -#define READ_ENTIRE_FILE_INITAL_BUFSIZE 100 -/** - * read entire file for desktop files - */ -GnomeVFSResult _gnome_vfs_readEntireFile(const char * text_uri, size_t * size, char ** fileData, int opts) -{ - char * buffer = malloc(READ_ENTIRE_FILE_INITAL_BUFSIZE); - size_t bufSize = READ_ENTIRE_FILE_INITAL_BUFSIZE; - GnomeVFSFileSize bytes_read; - int pos=0; - char * full_uri = gnome_vfs_make_uri_from_input(text_uri); - GnomeVFSHandle *handle; - GnomeVFSResult r; - - *fileData = NULL; - - r=gnome_vfs_open(&handle, full_uri, GNOME_VFS_OPEN_READ); - if (r!=GNOME_VFS_OK) - { - return r; - } - - while (1) - { - if (bufSize-pos <= 1) { - bufSize += READ_ENTIRE_FILE_INITAL_BUFSIZE; - buffer = realloc(buffer, bufSize); - } - - r=gnome_vfs_read(handle, buffer+pos, bufSize - pos, &bytes_read); - //fprintf(stderr, "gnome-vfs-read fname=%s, pos=%d bufSize=%d bytes_read=%d\n", full_uri, pos, bufSize, bytes_read); - - if (r!=GNOME_VFS_OK) - { - if (r==GNOME_VFS_ERROR_EOF) { - break; - } - free(buffer); - gnome_vfs_close (handle); - return r; - } - pos += bytes_read; - - } -/* if (pos != size) { - free(buffer); - fprintf(stderr, "Reading entire file problem pos=%d != size=%d\n", pos, size); - gnome_vfs_close (handle); - return GNOME_VFS_ERROR_IO; - } */ - *fileData = buffer; - *size = pos; - return GNOME_VFS_OK; -} - - -GnomeVFSResult _follow_desktop_link(const char * filename, int opts) { - GnomeVFSResult r; - GKeyFile *desktop_file; - char * desktop_file_data; - size_t desktop_file_data_size; - GError * gerror = NULL; - - desktop_file = g_key_file_new (); - - r = _gnome_vfs_readEntireFile(filename, &desktop_file_data_size, &desktop_file_data, opts); - if (r != GNOME_VFS_OK) return r; - - int parseR = g_key_file_load_from_data(desktop_file, - desktop_file_data, - desktop_file_data_size, - G_KEY_FILE_NONE, - &gerror); - g_free(desktop_file_data); - if (!parseR) { - if (gerror != NULL) - { - fprintf (stderr, "Unable to parse desktop file: %s\n", gerror->message); - g_error_free (gerror); - g_key_file_free (desktop_file); - } - } - - gchar *name; - gchar *type; - gchar *URL; - gchar *icon; - - type = g_key_file_get_value (desktop_file, DESKTOP_GROUP, "Type", NULL); - - if (!strncmp (type, "Link", 4) && !strncmp (type, "FSDevice", 8)) - { - g_free(type); - g_key_file_free (desktop_file); - return ! GNOME_VFS_OK; - } - - name = g_key_file_get_value (desktop_file, DESKTOP_GROUP, "Name", NULL); - - - - URL = g_key_file_get_value (desktop_file, DESKTOP_GROUP, "URL", NULL); - - icon = g_key_file_get_value (desktop_file, DESKTOP_GROUP, "Icon", NULL); - - if (name) fprintf (stdout, "basename=%s\n", name); - if (type) fprintf (stdout, "# de type=%s\n", type); - if (URL) fprintf (stdout, "uri=%s\n", URL); - if (icon) fprintf (stdout, "iconname=%s\n", icon); - - fprintf(stdout, "filetype=DIRECTORY\n"); - - /* - ret = - g_free (type); - */ - - g_free(name); - g_free(type); - g_free(URL); - g_free(icon); - - g_key_file_free (desktop_file); - - return GNOME_VFS_OK; - -} - -/** -* print fileinfo in key-value pair style -*/ -void xdg_gnome_vfs_printFileInfo(FILE * f, const char * full_uri, GnomeVFSFileInfo * info, int opts) -{ - - GnomeVFSFileInfoFields valid = info->valid_fields; - int did_de_dive = 0; - - - if (opts & XDGVFS_OPT_DIVE_DE_LINKS) - { - - if ((info->valid_fields & GNOME_VFS_FILE_INFO_FIELDS_MIME_TYPE) != 0 - && strcmp (gnome_vfs_file_info_get_mime_type (info), "application/x-desktop") == 0) - { - - if (_follow_desktop_link(full_uri, opts) == GNOME_VFS_OK) - { - // fprintf(stderr, "dive!\n"); - return; - } - - } - } - - fprintf(f, "basename=%s\n", info->name); - - if (valid & GNOME_VFS_FILE_INFO_FIELDS_SIZE) - { - fprintf(f, "size=%u\n", info->size); - } - if (1) - { - struct passwd * passwdEntry; - struct group * groupEntry; - - passwdEntry = getpwuid ((uid_t)info->uid); - if (passwdEntry) - { - xdg_vfs_ppair_str(f, "user", passwdEntry->pw_name, opts); - } - - groupEntry = getgrgid ((gid_t)info->gid); - if (groupEntry) - { - xdg_vfs_ppair_str(f, "group", groupEntry->gr_name, opts); - } - - /* fprintf(f, "userid=%d\n", info->uid); - fprintf(f, "groupid=%d\n", info->gid); */ - } - - if (valid & GNOME_VFS_FILE_INFO_FIELDS_PERMISSIONS) - { - fprintf(f, "permissions=%d\n", info->permissions); - } - - if (valid & GNOME_VFS_FILE_INFO_FIELDS_MTIME) - { - fprintf(f, "mtime=%d\n", info->mtime); - } - - if (valid & GNOME_VFS_FILE_INFO_FIELDS_ATIME) - { - fprintf(f, "atime=%d\n", info->atime); - } - - if (valid & GNOME_VFS_FILE_INFO_FIELDS_CTIME) - { - fprintf(f, "ctime=%d\n", info->ctime); - } - - if (valid & GNOME_VFS_FILE_INFO_FIELDS_TYPE) - { - char * tstr="UNKNOWN"; - - switch(info->type) - { - case(GNOME_VFS_FILE_TYPE_UNKNOWN): tstr = "UNKNOWN"; break; - case(GNOME_VFS_FILE_TYPE_REGULAR): tstr = "REGULAR"; break; - case(GNOME_VFS_FILE_TYPE_DIRECTORY): tstr = "DIRECTORY"; break; - case(GNOME_VFS_FILE_TYPE_FIFO): tstr = "FIFO"; break; - case(GNOME_VFS_FILE_TYPE_SOCKET): tstr = "SOCKET"; break; - case(GNOME_VFS_FILE_TYPE_CHARACTER_DEVICE): tstr = "CHARDEV"; break; - case(GNOME_VFS_FILE_TYPE_BLOCK_DEVICE): tstr = "BLOCKDEV"; break; - case(GNOME_VFS_FILE_TYPE_SYMBOLIC_LINK): tstr = "SYMLINK"; break; - /* default: tstr = "UNKNOWN"; break; */ - } - fprintf(f, "filetype=%s\n", tstr); - - } - - if (valid & GNOME_VFS_FILE_INFO_FIELDS_SYMLINK_NAME) - { - fprintf(f, "linkdest=%s\n", info->symlink_name); - } - - if (valid & GNOME_VFS_FILE_INFO_FIELDS_SIZE) - { - fprintf(f, "mimetype=%s\n", info->mime_type); - } - - GnomeIconLookupResultFlags iconLookupResultFlags; - char * iconname = gnome_icon_lookup (gtk_icon_theme_get_default (), - NULL, - NULL /* const char *file_uri */, - NULL, - info, - info->mime_type, - GNOME_ICON_LOOKUP_FLAGS_NONE, - &iconLookupResultFlags); - if (iconname) fprintf(f, "iconname=%s\n", iconname); - g_free(iconname); - - xdg_vfs_ppair_str(stdout, "uri", full_uri, opts); - - if (xdg_vfs_getCustomEndSeparator()) - fprintf(stdout, "\n%s\n", xdg_vfs_getCustomEndSeparator()); -} - - -/** -* Command: fileinfo -*/ -int xdg_vfs_getFileInfo(const char * text_uri, int opts) -{ - GnomeVFSResult r; - GnomeVFSFileInfo * info = gnome_vfs_file_info_new (); - char * full_uri = gnome_vfs_make_uri_from_input(text_uri); - - if (opts & XDGVFS_OPT_TAGGED) puts(XDGVFS_TAG_FILEINFO); - - GnomeVFSFileInfoOptions infoOpts = GNOME_VFS_FILE_INFO_FOLLOW_LINKS | GNOME_VFS_FILE_INFO_GET_MIME_TYPE; - - if (opts & XDGVFS_OPT_SLOW_MIME_TYPE) infoOpts |= GNOME_VFS_FILE_INFO_FORCE_SLOW_MIME_TYPE; - - r=gnome_vfs_get_file_info(full_uri, - info, - infoOpts); - xdg_vfs_iterate_mainloop(); - - if (r!=GNOME_VFS_OK) - { - g_free(full_uri); - gnome_vfs_file_info_unref (info); - return print_and_translate_result(r); - } - - xdg_gnome_vfs_printFileInfo(stdout, full_uri, info, opts); - - - gnome_vfs_file_info_unref (info); - g_free(full_uri); - return 0; -} - -/** -* Command: setattrs -*/ -int xdg_vfs_setFileInfo(const char * text_uri, XdgVfsSetFileInfoData * fiData, int opts) -{ - GnomeVFSResult r; - char * full_uri = gnome_vfs_make_uri_from_input(text_uri); - struct passwd * passwdEntry; - struct group * groupEntry; - GnomeVFSFileInfo * info = gnome_vfs_file_info_new (); - info->valid_fields = GNOME_VFS_FILE_INFO_FIELDS_NONE; - GnomeVFSSetFileInfoMask setFileInfoMask = GNOME_VFS_SET_FILE_INFO_NONE; - - if (opts & XDGVFS_OPT_TAGGED) puts(XDGVFS_TAG_SETATTRS); - - if (fiData->user) - { - passwdEntry = getpwnam(fiData->user); - if (passwdEntry) - { - setFileInfoMask |= GNOME_VFS_SET_FILE_INFO_OWNER; - - info->uid = passwdEntry->pw_uid; - } - else - { - fprintf(stderr, "ERROR: User '%s' not found in passwd\n", fiData->user); - gnome_vfs_file_info_unref (info); g_free(full_uri); - return XDGVFS_ERRORCODE_USR_OR_GRP_NOT_FOUND; - } - } - - if (fiData->group) - { - groupEntry = getgrnam(fiData->group); - if (groupEntry) - { - setFileInfoMask |= GNOME_VFS_SET_FILE_INFO_OWNER; - info->gid = groupEntry->gr_gid; - } - else - { - fprintf(stderr, "ERROR: Group '%s' not found in group database\n", fiData->group); - gnome_vfs_file_info_unref (info); g_free(full_uri); - return XDGVFS_ERRORCODE_USR_OR_GRP_NOT_FOUND; - } - } - - if (fiData->setPermsFlag) - { - setFileInfoMask |= GNOME_VFS_SET_FILE_INFO_PERMISSIONS; - info->valid_fields |= GNOME_VFS_FILE_INFO_FIELDS_PERMISSIONS; - info->permissions = fiData->perms; - } - - r = gnome_vfs_set_file_info(full_uri, info, setFileInfoMask); - - xdg_vfs_iterate_mainloop(); - - if (r!=GNOME_VFS_OK) - { - g_free(full_uri); - gnome_vfs_file_info_unref (info); - return print_and_translate_result(r); - } - - xdg_vfs_ppair_str(stdout, "uri", full_uri, opts); - - gnome_vfs_file_info_unref (info); - g_free(full_uri); - return XDGVFS_ERRORCODE_OK; -} - -/** -* Command: list directory -*/ -int xdg_vfs_dir(const char * text_uri, int opts) -{ - GnomeVFSResult r; - GnomeVFSDirectoryHandle *handle; - char * full_uri = gnome_vfs_make_uri_from_input(text_uri); - GnomeVFSFileInfo * info = gnome_vfs_file_info_new (); - - if (opts & XDGVFS_OPT_TAGGED) { - puts(XDGVFS_TAG_LS); - xdg_vfs_ppair_str(stdout, "uri", full_uri, opts); - } - - if (strcmp(full_uri, "tvolumes:")==0) - { - test_volume_list(); - return XDGVFS_ERRORCODE_OK; - } - - if (strcmp(full_uri, "tdrives:")==0) - { - test_drive_list(); - return XDGVFS_ERRORCODE_OK; - } - - if (strcmp(full_uri, "vfsroot://")==0) - { - _xdg_vfs_gnome_ls_vfsroot(opts & XDGVFS_OPT_TAGGED); - return XDGVFS_ERRORCODE_OK; - } - - - GnomeVFSFileInfoOptions infoOpts = GNOME_VFS_FILE_INFO_FOLLOW_LINKS | GNOME_VFS_FILE_INFO_GET_MIME_TYPE; - - if (opts & XDGVFS_OPT_SLOW_MIME_TYPE) infoOpts |= GNOME_VFS_FILE_INFO_FORCE_SLOW_MIME_TYPE; - - r=gnome_vfs_directory_open (&handle, - full_uri, - infoOpts); - - xdg_vfs_iterate_mainloop(); - - if (r!=GNOME_VFS_OK) - { - if (r==GNOME_VFS_ERROR_CANCELLED) - { - fprintf(stderr, "ERROR: Operation canceled\n"); - return XDGVFS_ERRORCODE_CANCELED; - } - return print_and_translate_result(r); - } - - while(1) - { - // char *entryUri; - r=gnome_vfs_directory_read_next(handle, info); - if (r!=GNOME_VFS_OK) - { - if (r==GNOME_VFS_ERROR_EOF) break; /* ok EOF */ - return print_and_translate_result(r); - } - if (opts & XDGVFS_OPT_TAGGED) puts(XDGVFS_TAG_DIRENTRY); - - - GnomeVFSURI* dirUri = gnome_vfs_uri_new(full_uri); - GnomeVFSURI* fileUri = gnome_vfs_uri_append_path(dirUri, - info->name); - - char * nuri = gnome_vfs_uri_to_string(fileUri, - GNOME_VFS_URI_HIDE_NONE); -/* - if (!g_str_has_suffix (full_uri, "/")) - entryUri = g_strconcat(full_uri, "/", info->name, NULL); - else - entryUri = g_strconcat(full_uri, info->name, NULL); - - char * entryUriEscaped = gnome_vfs_make_uri_from_input(entryUri); -*/ - - xdg_gnome_vfs_printFileInfo(stdout, nuri, info, opts); - - - // xdg_vfs_ppair_str(stdout, "uri", entryUriEscaped, opts); - //g_free(entryUriEscaped); - //g_free(entryUri); - gnome_vfs_uri_unref (dirUri); - gnome_vfs_uri_unref (fileUri); - g_free(nuri); - - gnome_vfs_file_info_clear (info); - if (!(opts & XDGVFS_OPT_TAGGED)) putchar(10); - } - - gnome_vfs_directory_close(handle); - gnome_vfs_file_info_unref (info); - return XDGVFS_ERRORCODE_OK; - -} - -/** -* Command: read file -*/ -int xdg_vfs_get(const char * text_uri, int opts) -{ - char buffer[DATA_BUF_SIZE]; - GnomeVFSFileSize bytes_read; - int i, rr; - int escChar = xdg_vfs_getDataEscChar(); - char * full_uri = gnome_vfs_make_uri_from_input(text_uri); - GnomeVFSHandle *handle; - GnomeVFSResult r; - - if (opts & XDGVFS_OPT_GET_FILEINFO) - { - if (!(opts & XDGVFS_OPT_TAGGED)) - { - fprintf(stderr, "ERROR: qry fileinfo in 'get' command requires tagged mode!\n"); - return XDGVFS_ERRORCODE_BAD_PARAMETER; - } - rr=xdg_vfs_getFileInfo(text_uri, opts); - if (rr != 0) return rr; - } - - if (opts & XDGVFS_OPT_TAGGED) - { - puts(XDGVFS_TAG_GET); - xdg_vfs_ppair_str(stdout, "uri", full_uri, opts); - } - r=gnome_vfs_open(&handle, full_uri, GNOME_VFS_OPEN_READ); - if (r!=GNOME_VFS_OK) - { - if (r==GNOME_VFS_ERROR_CANCELLED) - { - fprintf(stderr, "ERROR: Operation canceled\n"); - return XDGVFS_ERRORCODE_CANCELED; - } - return print_and_translate_result(r); - } - - xdg_vfs_iterate_mainloop(); - - if (opts & XDGVFS_OPT_TAGGED) - { - puts(opts & XDGVFS_OPT_DATAESCAPED ? XDGVFS_TAG_ESCAPEDDATA_OUT : XDGVFS_TAG_DATA_OUT); - } - - while (1) - { - r=gnome_vfs_read(handle, buffer, DATA_BUF_SIZE, &bytes_read); - if (r!=GNOME_VFS_OK) - { - if (r==GNOME_VFS_ERROR_EOF) break; /* ok EOF */ - return print_and_translate_result(r); - } - char outBuf[bytes_read*2]; - int oc=0; - for(i=0;i<bytes_read;i++) - { - int c = (int)buffer[i]; - /* escape char */ - /* - if (c == escChar && opts & XDGVFS_OPT_DATAESCAPED) putchar(escChar); - putchar (c); - */ - if (c == escChar && opts & XDGVFS_OPT_DATAESCAPED) - outBuf[oc++] = escChar; - outBuf[oc++] = (char)c; - } - fwrite (outBuf, 1, oc, stdout); - } - if (opts & XDGVFS_OPT_DATAESCAPED) - { - putchar(escChar); // Escape char - putchar(10); - //fprintf(stdout, "\n[/Data]\n"); - } else if (opts & XDGVFS_OPT_TAGGED) putchar(10); - - if (xdg_vfs_getCustomEndSeparator()) - fprintf(stdout, "%s\n", xdg_vfs_getCustomEndSeparator()); - gnome_vfs_close(handle); - return XDGVFS_ERRORCODE_OK; -} - -/** -* Command: mkdir -*/ -int xdg_vfs_mkdir(const char * text_uri, unsigned int perms, int opts) -{ - GnomeVFSResult r; - char * full_uri = gnome_vfs_make_uri_from_input(text_uri); - if (opts & XDGVFS_OPT_TAGGED) - { - puts(XDGVFS_TAG_MKDIR); - xdg_vfs_ppair_str(stdout, "uri", full_uri, opts); - } - r = gnome_vfs_make_directory(full_uri, perms); - if (r!=GNOME_VFS_OK) - { - return print_and_translate_result(r); - } - return XDGVFS_ERRORCODE_OK; -} - -/** -* Command: rmdir -*/ -int xdg_vfs_rmdir(const char * text_uri, int opts) -{ - GnomeVFSResult r; - char * full_uri = gnome_vfs_make_uri_from_input(text_uri); - if (opts & XDGVFS_OPT_TAGGED) - { - puts(XDGVFS_TAG_RMDIR); - xdg_vfs_ppair_str(stdout, "uri", full_uri, opts); - } - r= gnome_vfs_remove_directory(full_uri); - if (r!=GNOME_VFS_OK) - { - return print_and_translate_result(r); - } - return XDGVFS_ERRORCODE_OK; -} - -/** -* Command: rm -*/ -int xdg_vfs_rm(const char * text_uri, int opts) -{ - GnomeVFSResult r; - char * full_uri = gnome_vfs_make_uri_from_input(text_uri); - if (opts & XDGVFS_OPT_TAGGED) - { - puts(XDGVFS_TAG_RM); - xdg_vfs_ppair_str(stdout, "uri", full_uri, opts); - } - r= gnome_vfs_unlink (full_uri); - if (r!=GNOME_VFS_OK) - { - return print_and_translate_result(r); - } - return XDGVFS_ERRORCODE_OK; -} - -/** -* Copy/Move progress callback -*/ -time_t progress_lasttime=0; - -gint gnomeVFSXferProgressCallback (GnomeVFSXferProgressInfo *info, - gpointer data) -{ - int opts = 0; - - if (data) opts = *((int *)data); - if (opts & XDGVFS_OPT_PROGRESS && info) - { - time_t now = time(NULL); - if ((progress_lasttime < now)) - { - progress_lasttime=now; - puts(XDGVFS_TAG_PROGRESS); - printf("total_bytes=%d\n", info->file_size); - printf("bytes_copied=%d\n", info->bytes_copied); - } - } - info->vfs_status = GNOME_VFS_OK; - if (xdg_vfs_chk_canceled(opts)) - { - return FALSE; - } - return TRUE; -} - -/** -* Command: cp/mv -*/ -int xdg_vfs_cp(const char * text_uri_src, const char * text_uri_target, unsigned int perms, int move_flag, int opts) -{ - GnomeVFSResult r; - GnomeVFSXferOptions xfer_opts = (move_flag ? GNOME_VFS_XFER_REMOVESOURCE : GNOME_VFS_XFER_DEFAULT); - GnomeVFSXferErrorMode error_mode = GNOME_VFS_XFER_ERROR_MODE_ABORT; - GnomeVFSXferOverwriteMode overwrite_mode = - (opts & XDGVFS_OPT_OVERWRITE) - ? GNOME_VFS_XFER_OVERWRITE_MODE_REPLACE - : GNOME_VFS_XFER_OVERWRITE_MODE_ABORT; - const char * full_uri_src = gnome_vfs_make_uri_from_input(text_uri_src); - const char * full_uri_target = gnome_vfs_make_uri_from_input(text_uri_target); - GnomeVFSURI* gfull_uri_src = gnome_vfs_uri_new(full_uri_src); - GnomeVFSURI* gfull_uri_target = gnome_vfs_uri_new(full_uri_target); - - if (opts & XDGVFS_OPT_TAGGED) - { - puts(move_flag ? XDGVFS_TAG_MV : XDGVFS_TAG_CP); - xdg_vfs_ppair_str(stdout, "uri_src", full_uri_src, opts); - xdg_vfs_ppair_str(stdout, "uri_target", full_uri_target, opts); - } - - r = gnome_vfs_xfer_uri (gfull_uri_src, - gfull_uri_target, - xfer_opts, - error_mode, - overwrite_mode, - gnomeVFSXferProgressCallback, - &opts); - gnome_vfs_uri_unref (gfull_uri_src); - gnome_vfs_uri_unref (gfull_uri_target); - - if (r!=GNOME_VFS_OK) - { - return print_and_translate_result(r); - } - return XDGVFS_ERRORCODE_OK; -} - -/** -* Command: write file -*/ -int xdg_vfs_put(const char * text_uri, int perms, int opts) -{ - char buffer[DATA_BUF_SIZE]; - GnomeVFSFileSize bytes_written; - int i, rr, c; - int escChar = xdg_vfs_getDataEscChar(); - char * full_uri = gnome_vfs_make_uri_from_input(text_uri); - GnomeVFSHandle *handle; - GnomeVFSResult r; - - if (opts & XDGVFS_OPT_TAGGED) - { - puts(XDGVFS_TAG_PUT); - xdg_vfs_ppair_str(stdout, "uri", full_uri, opts); - // puts(opts & XDGVFS_OPT_DATAESCAPED ? XDGVFS_TAG_ESCAPEDDATA_IN : XDGVFS_TAG_DATA_IN); - } - - r=gnome_vfs_create(&handle, full_uri, - GNOME_VFS_OPEN_WRITE, - !(opts & XDGVFS_OPT_OVERWRITE), - perms); - - xdg_vfs_iterate_mainloop(); - - //r=gnome_vfs_open(&handle, text_uri, GNOME_VFS_OPEN_WRITE); - if (r!=GNOME_VFS_OK) - { - g_free(full_uri); - if (r==GNOME_VFS_ERROR_CANCELLED) - { - fprintf(stderr, "ERROR: Operation canceled\n"); - return XDGVFS_ERRORCODE_CANCELED; - } - return print_and_translate_result(r); - } - - if (opts & XDGVFS_OPT_TAGGED) // wait for data! - { - puts(opts & XDGVFS_OPT_DATAESCAPED ? XDGVFS_TAG_ESCAPEDDATA_IN : XDGVFS_TAG_DATA_IN); - fflush(stdout); - } - - - while (1) - { - int eofflag=0; - int len = 0; - for (i=0;i<DATA_BUF_SIZE;i++) - { /* read chunk */ - c = getc(stdin); - if (c==EOF) - { - eofflag =1; - break; - } - if (c == escChar && opts & XDGVFS_OPT_DATAESCAPED) - { - int c2 = getc(stdin); - if (c2==EOF) - { - eofflag =1; - break; - } - - if (c2!=escChar) - { - if (c2!='\n') - { - g_free(full_uri); - fprintf(stderr, "ERROR: Data escaping error\n"); - return XDGVFS_ERRORCODE_DATA_ERROR; - } - eofflag = 1; - break; - } - } - - - buffer[i] = (unsigned char)c; - len++; - } - - /* check for errors */ - if (ferror (stdin)) - { - //fprintf(stderr, "ERROR: Stdin error\n"); - g_free(full_uri); - perror("ERROR: Stdin error\n"); - return XDGVFS_ERRORCODE_DATA_ERROR; - } - - char * p = buffer; - while (len>0) - { /* write chunk */ - r=gnome_vfs_write(handle, p, len, &bytes_written); - if (r!=GNOME_VFS_OK) - { - // error delete file - g_free(full_uri); - return print_and_translate_result(r); - } - p += bytes_written; - len -= bytes_written; - } - if(eofflag) break; - } - gnome_vfs_close(handle); - g_free(full_uri); - return XDGVFS_ERRORCODE_OK; -} - -/** -* Command: open file dialog -*/ -int xdg_vfs_openfiledlg(const char * default_dir, const char * default_filename, const char * title, int opts) -{ - GtkWidget *dialog; - - gtk_init (0, NULL); - - - dialog = gtk_file_chooser_dialog_new (title ? title : XDGVFS_TEXT_OPENFILEDLG_TITLE, - NULL, - GTK_FILE_CHOOSER_ACTION_OPEN, - GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, - GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, - NULL); - - /* - - dialog = gtk_file_chooser_dialog_new ("Save File", - NULL, - GTK_FILE_CHOOSER_ACTION_SAVE, - GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, - GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, - NULL); - - */ - - gtk_file_chooser_set_local_only(GTK_FILE_CHOOSER (dialog), FALSE); - - if (default_dir) gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (dialog), default_dir); - //if (default_filename) gtk_file_chooser_set_current_name (GTK_FILE_CHOOSER (dialog), default_filename); - - if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT) - { - char *filename, *uri; - - filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog)); - - uri = gtk_file_chooser_get_uri (GTK_FILE_CHOOSER (dialog)); - - if (!(opts & XDGVFS_OPT_INSTANT_GET) || opts & XDGVFS_OPT_TAGGED) - { - if (opts & XDGVFS_OPT_TAGGED) puts(XDGVFS_TAG_OPENFILEDLG); - if (filename) fprintf(stdout, "selected_localpath=%s\n", filename); - if (uri) fprintf(stdout, "selected_uri=%s\n", uri); - - if (xdg_vfs_getCustomEndSeparator()) - fprintf(stdout, "\n%s\n", xdg_vfs_getCustomEndSeparator()); - } - - gtk_widget_destroy (dialog); - if (opts & XDGVFS_OPT_INSTANT_GET) return xdg_vfs_get(uri, opts); - return XDGVFS_ERRORCODE_OK; - - } - else - { - gtk_widget_destroy (dialog); - fprintf(stderr, "ERROR: Dialog canceled\n"); - return XDGVFS_ERRORCODE_CANCELED; - } -} - -/** -* Command: save file dlg -*/ -int xdg_vfs_savefiledlg(const char * default_dir, const char * default_filename, - const char * title, unsigned int perms, int opts) -{ - GtkWidget *dialog; - - gtk_init (0, NULL); - - dialog = gtk_file_chooser_dialog_new (title ? title : XDGVFS_TEXT_SAVEFILEDLG_TITLE, - NULL, - GTK_FILE_CHOOSER_ACTION_SAVE, - GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, - GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, - NULL); - - gtk_file_chooser_set_local_only(GTK_FILE_CHOOSER (dialog), FALSE); - gtk_file_chooser_set_do_overwrite_confirmation (GTK_FILE_CHOOSER (dialog), TRUE); - - if (default_dir) gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (dialog), default_dir); - if (default_filename) gtk_file_chooser_set_current_name (GTK_FILE_CHOOSER (dialog), default_filename); - - if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT) - { - char *filename, *uri; - - filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog)); - - uri = gtk_file_chooser_get_uri (GTK_FILE_CHOOSER (dialog)); - - if (!(opts & XDGVFS_OPT_INSTANT_PUT) || opts & XDGVFS_OPT_TAGGED) - { - if (opts & XDGVFS_OPT_TAGGED) puts(XDGVFS_TAG_SAVEFILEDLG); - if (filename) fprintf(stdout, "selected_localpath=%s\n", filename); - if (uri) fprintf(stdout, "selected_uri=%s\n", uri); - - if (xdg_vfs_getCustomEndSeparator()) - fprintf(stdout, "\n%s\n", xdg_vfs_getCustomEndSeparator()); - } - - gtk_widget_destroy (dialog); - if (opts & XDGVFS_OPT_INSTANT_PUT) return xdg_vfs_put(uri, perms, opts | XDGVFS_OPT_OVERWRITE); - return XDGVFS_ERRORCODE_OK; - } - else - { - gtk_widget_destroy (dialog); - fprintf(stderr, "ERROR: Dialog canceled\n"); - return XDGVFS_ERRORCODE_CANCELED; - } -} - -int xdg_vfs_backend(int opts) -{ - if (opts & XDGVFS_OPT_TAGGED) - { - puts(XDGVFS_TAG_BACKEND); - } - xdg_vfs_ppair_str(stdout, "backend_id", "gnome", opts); - xdg_vfs_ppair_str(stdout, "system_uri", "vfsroot://", opts); - xdg_vfs_ppair_str(stdout, "file_icon_theme", "gnome", opts); - return XDGVFS_ERRORCODE_OK; -} - - -int xdg_vfs_mount(const char * mountpoint_id, int opts) -{ - return _xdg_vfs_gnome_mount(mountpoint_id, opts & XDGVFS_OPT_TAGGED); - - -} - -/** -* main() -*/ -int main(int argc, char ** argv) -{ - return xdg_vfs_main(argc, argv); -} diff --git a/portland/libxdg-vfs/xdg-vfs-gnome/src/xdg_vfs_gnome.h b/portland/libxdg-vfs/xdg-vfs-gnome/src/xdg_vfs_gnome.h deleted file mode 100644 index d8d1f95..0000000 --- a/portland/libxdg-vfs/xdg-vfs-gnome/src/xdg_vfs_gnome.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -# xdg_vfs_gnome.h -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - -#ifndef XDG_VFS_GNOME_H -#define XDG_VFS_GNOME_H - -/* private decls */ - -int _xdg_vfs_gnome_mount(char * mountpoint_id, int tagged); - -int _xdg_vfs_gnome_ls_vfsroot(int tagged); - -int print_and_translate_result(GnomeVFSResult result); - -#endif diff --git a/portland/libxdg-vfs/xdg-vfs-gnome/src/xdg_vfs_gnome_monitor.c b/portland/libxdg-vfs/xdg-vfs-gnome/src/xdg_vfs_gnome_monitor.c deleted file mode 100644 index 0729a94..0000000 --- a/portland/libxdg-vfs/xdg-vfs-gnome/src/xdg_vfs_gnome_monitor.c +++ /dev/null @@ -1,238 +0,0 @@ -/* -# xdg_vfs_gnome_monitor.c -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - -#include <string.h> - -#include <gtk/gtk.h> -#include <libgnomevfs/gnome-vfs.h> -#include <libgnomeui/libgnomeui.h> -#include <time.h> - -#include "xdg_vfs_common.h" -#include "xdg_vfs.h" -#include "xdg_vfs_gnome.h" - -typedef struct -{ - char * monitor_uri; - GnomeVFSMonitorHandle * handle; - int has_events; -} XdgVfsGnomeMonitor; - -int global_event_count=0; - -GList * monitor_list = NULL; - -void myGnomeVFSMonitorCallback(GnomeVFSMonitorHandle *handle, - const gchar *monitor_uri, - const gchar *info_uri, - GnomeVFSMonitorEventType event_type, - gpointer user_data) -{ - GList *current_monitor; - int found = 0; - /*fprintf(stderr, "monitor event monitor_uri=%s info_uri=%s event_type=%d\n", - monitor_uri, - info_uri, - event_type);*/ - - for (current_monitor = monitor_list; current_monitor != NULL; current_monitor = current_monitor->next) - { - - XdgVfsGnomeMonitor *monitor = (XdgVfsGnomeMonitor*)current_monitor->data; - if (monitor->handle == handle) - { - monitor->has_events++; - global_event_count++; - found = 1; - } - } - if (found==0) fprintf(stderr, - "Warning: got event for unregistered handle monitor_uri=%s\n", monitor_uri); -} - -XdgVfsGnomeMonitor * new_xdg_vfs_gnome_monitor() -{ - XdgVfsGnomeMonitor * monitor = calloc(1,sizeof(XdgVfsGnomeMonitor)); - return monitor; -} - - -int xdg_vfs_monitor(char * uri, int is_directory, int opts) -{ - GnomeVFSResult r; - GnomeVFSMonitorHandle *handle; - char * full_uri = gnome_vfs_make_uri_from_input(uri); - - GList *current_monitor; - for (current_monitor = monitor_list; current_monitor != NULL; current_monitor = current_monitor->next) - { - XdgVfsGnomeMonitor *monitor = (XdgVfsGnomeMonitor*)current_monitor->data; - if( strcmp(uri, monitor->monitor_uri) ==0) - return XDGVFS_ERRORCODE_ALREADY_EXISTS; // monitor exists - } - - /* dirty hack: watch computer:// for drive changes */ - char * watch_uri = strcmp(uri, "vfsroot://")==0 ? "computer://" : full_uri; - - r = gnome_vfs_monitor_add(&handle, - watch_uri, - is_directory ? GNOME_VFS_MONITOR_DIRECTORY : GNOME_VFS_MONITOR_FILE, - myGnomeVFSMonitorCallback, - NULL /* user_data */); - - if (r==GNOME_VFS_OK) - { - XdgVfsGnomeMonitor * monitor = new_xdg_vfs_gnome_monitor(); - monitor->handle = handle; - monitor->monitor_uri = strdup(full_uri); - monitor_list = g_list_append(monitor_list, monitor); - } - - g_free(full_uri); - if (r!=GNOME_VFS_OK) return print_and_translate_result(r); - return XDGVFS_ERRORCODE_OK; -} - - -int xdg_vfs_monitor_cancel(char * uri, int opts) -{ - char * full_uri = gnome_vfs_make_uri_from_input(uri); - GList *current_monitor; - int found = 0; - for (current_monitor = monitor_list; current_monitor != NULL; current_monitor = current_monitor->next) - { - XdgVfsGnomeMonitor *monitor = (XdgVfsGnomeMonitor*)current_monitor->data; - if( strcmp(full_uri, monitor->monitor_uri) == 0) - { - GnomeVFSResult r = gnome_vfs_monitor_cancel (monitor->handle); - if (r!=GNOME_VFS_OK) - print_and_translate_result(r); - g_free(monitor->monitor_uri); - monitor_list = g_list_remove(monitor_list, monitor); - found = 1; - break; - } - } - - if (!found) - { - fprintf(stderr, "monitor with uri=%s not found!\n", full_uri); - g_free(full_uri); - return XDGVFS_ERRORCODE_NOT_FOUND; - } - g_free(full_uri); - return XDGVFS_ERRORCODE_OK; -} - -int xdg_vfs_monitor_list_events(int opts) -{ - GList *current_monitor; - int save_count = global_event_count; - int found = 0; - for (current_monitor = monitor_list; current_monitor != NULL; current_monitor = current_monitor->next) - { - XdgVfsGnomeMonitor *monitor = (XdgVfsGnomeMonitor*)current_monitor->data; - if (monitor->has_events) - { - fprintf(stdout, "%s %s\n", XDGVFS_TAG_MONITOREVENT, monitor->monitor_uri); - monitor->has_events = 0; - } - } - fflush(stdout); - global_event_count = 0; - return save_count; -} - -/* ======================== loop and wait for fd =============== */ - -typedef struct { - GSource gs; - GPollFD * gpoll; - gboolean done; -} WaitGSource; - - -gboolean wait_gs_prepare(GSource *source, gint *timeout_) -{ - WaitGSource * wsource = (WaitGSource*)source; - //fprintf(stderr, "hi1\n"); - wsource->gpoll->events = G_IO_IN | G_IO_HUP | G_IO_ERR; - *timeout_ = -1; - return FALSE; -} - -gboolean wait_gs_check(GSource *source) -{ - WaitGSource * wsource = (WaitGSource*)source; - //fprintf(stderr, "hi2 %d\n", wsource->gpoll->fd); - if (wsource->gpoll->revents & (G_IO_IN | G_IO_HUP | G_IO_ERR)) - { - //fprintf(stderr, "hi3\n"); - return TRUE; - } - return FALSE; -} - -gboolean wait_gs_dispatch(GSource *source, - GSourceFunc callback, - gpointer user_data) -{ - WaitGSource * wsource = (WaitGSource*)source; - wsource->done = TRUE; - return TRUE; -} - -GSourceFuncs wait_gs_funcs = { - .prepare = wait_gs_prepare, - .check = wait_gs_check, - .dispatch = wait_gs_dispatch -}; - -int xdg_vfs_iterate_mainloop_until_incoming_data(int fd) -{ - GPollFD gpoll={0}; - gpoll.fd = fd; - - GSource* source = g_source_new(&wait_gs_funcs, sizeof(WaitGSource)); - WaitGSource * wsource = (WaitGSource*)source; - wsource->gpoll = &gpoll; - wsource->done = FALSE; - g_source_add_poll(source, &gpoll); - g_source_set_can_recurse(source,TRUE); - - g_source_attach(source,NULL); - - //while (!(wsource->done)){ - //fprintf(stderr, "loop\n"); - g_main_context_iteration(NULL,TRUE); - //} - int done = wsource->done; - g_source_destroy (source); - return done; -} - diff --git a/portland/libxdg-vfs/xdg-vfs-gnome/src/xdg_vfs_gnome_volumes.c b/portland/libxdg-vfs/xdg-vfs-gnome/src/xdg_vfs_gnome_volumes.c deleted file mode 100644 index fc2fc93..0000000 --- a/portland/libxdg-vfs/xdg-vfs-gnome/src/xdg_vfs_gnome_volumes.c +++ /dev/null @@ -1,521 +0,0 @@ -/* -# xdg_vfs_gnome_volumes.c -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - -#include <glib.h> -#include <libgnomevfs/gnome-vfs.h> - -#include "xdg_vfs_common.h" -#include "xdg_vfs.h" - -#define DEBUG_VOLUMES 1 - -/* =============== print entries =============== */ - - -void _print_filesystem() -{ - fprintf(stdout, - "basename=Filesystem\n" - "uri=file:///\n" - "filetype=DIRECTORY\n" - "iconname=gnome-dev-harddisk\n" - ); -} - -void _print_network() -{ - fprintf(stdout, - "basename=Network\n" - "uri=network://\n" - "filetype=DIRECTORY\n" - "iconname=gnome-fs-network\n" - ); -} - -void _print_home() -{ - char * home_uri = gnome_vfs_get_uri_from_local_path (g_get_home_dir ()); - fprintf(stdout, - "basename=Home\n" - "uri=%s\n" - "filetype=DIRECTORY\n" - "iconname=gnome-fs-home\n" - , home_uri - ); -} - - -int _print_volume(GnomeVFSVolume *volume) -{ - char* activation_uri = gnome_vfs_volume_get_activation_uri - (volume); - char* display_name = gnome_vfs_volume_get_display_name - (volume); - GnomeVFSDeviceType device_type = gnome_vfs_volume_get_device_type - (volume); - - char* filesystem_type = gnome_vfs_volume_get_filesystem_type - (volume); - GnomeVFSVolumeType volume_type = gnome_vfs_volume_get_volume_type - (volume); - - char* icon = gnome_vfs_volume_get_icon(volume); - - char* device_path = gnome_vfs_volume_get_device_path - (volume); - - gboolean is_mounted = gnome_vfs_volume_is_mounted(volume); - - gboolean user_visible = gnome_vfs_volume_is_user_visible - (volume); - - gboolean read_only = gnome_vfs_volume_is_read_only (volume); - - if (DEBUG_VOLUMES) - { - fprintf(stdout, "# (VOLUME)\n"); - fprintf(stdout, "# activation_uri=%s\n", activation_uri); - fprintf(stdout, "# display_name=%s\n", display_name); - fprintf(stdout, "# icon=%s\n", icon); - fprintf(stdout, "# volume_type=%d\n", volume_type); - fprintf(stdout, "# device_type=%d\n", device_type); - fprintf(stdout, "# filesystem_type=%s\n", filesystem_type); - fprintf(stdout, "# device_path=%s\n", device_path); - fprintf(stdout, "# is_mounted=%d\n", is_mounted); - fprintf(stdout, "# user_visible=%d\n", user_visible); - fprintf(stdout, "# read_only=%d\n", read_only); - } - - if (is_mounted) - { - fprintf(stdout, "uri=%s\n", activation_uri); - fprintf(stdout, "is_mounted=1\n"); - /* fprintf(stdout, "filetype=DIRECTORY\n"); */ - } - else - fprintf(stdout, "is_mounted=0\n"); - { - GnomeVFSDrive * drive = gnome_vfs_volume_get_drive(volume); - if (drive) - fprintf(stdout, "mountpoint_id=%d\n", gnome_vfs_drive_get_id (drive)); - gnome_vfs_drive_unref(drive); - - fprintf(stdout, "filetype=VFSMOUNTPOINT\n"); - } - fprintf(stdout, "basename=%s\n", display_name); - fprintf(stdout, "iconname=%s\n", icon); - - fprintf(stdout, "\n"); - - g_free(activation_uri); - g_free(display_name); - g_free(filesystem_type); - g_free(icon); - g_free(device_path); - -} - -int _print_drive(GnomeVFSDrive *drive) -{ - - char * icon= gnome_vfs_drive_get_icon(drive); - int drive_id=gnome_vfs_drive_get_id (drive); - gboolean is_mounted= gnome_vfs_drive_is_mounted(drive); - gboolean is_user_visible=gnome_vfs_drive_is_user_visible (drive); - char * device_path=gnome_vfs_drive_get_device_path (drive); - char * activation_uri=gnome_vfs_drive_get_activation_uri(drive); - char * display_name=gnome_vfs_drive_get_display_name(drive); - - if (DEBUG_VOLUMES) - { - fprintf(stdout, "# (DRIVE)\n"); - fprintf(stdout, "# drive_icon=%s\n", icon); - fprintf(stdout, "# drive_id=%d\n", drive_id); - fprintf(stdout, "# is_mounted=%d\n", is_mounted); - fprintf(stdout, "# is_user_visible=%d\n", is_user_visible); - fprintf(stdout, "# device_path=%s\n", device_path); - fprintf(stdout, "# activation_uri=%s\n", activation_uri); - fprintf(stdout, "# display_name=%s\n", display_name); - } - fprintf(stdout, "iconname=%s\n", icon); - fprintf(stdout, "basename=%s\n", display_name); - if (is_mounted) - fprintf(stdout, "uri=%s\n", activation_uri); - fprintf(stdout, "mountpoint_id=%d\n", drive_id); - fprintf(stdout, "is_mounted=%d\n", is_mounted); - - fprintf(stdout, "filetype=VFSMOUNTPOINT\n"); - - fprintf(stdout, "\n"); - - g_free(icon); - g_free(device_path); - g_free(activation_uri); - g_free(display_name); - -} - - -/* =================== implementation ================ */ - - -GList * _xdg_vfs_gnome_vfsroot_list() { - - GList* entries=NULL; - - GnomeVFSVolumeMonitor * volume_monitor = gnome_vfs_get_volume_monitor(); - - GList* drive_list = gnome_vfs_volume_monitor_get_connected_drives - (volume_monitor); - - - - GList *current_drive; - - for (current_drive = drive_list; current_drive != NULL; current_drive = current_drive->next) - { - - GnomeVFSDrive *drive = GNOME_VFS_DRIVE(current_drive->data); - - //_print_drive(drive); - //printf("drive\n"); - - char* drive_activation_uri = gnome_vfs_drive_get_activation_uri(drive); - - /* don't list root filesystem, because it's included by hand */ - if (drive_activation_uri && strcmp(drive_activation_uri, "file:///")==0) - { - g_free(drive_activation_uri); - gnome_vfs_drive_unref(drive); - continue; - } - - - - GList* vol_list = gnome_vfs_drive_get_mounted_volumes(drive); - - GList *current_vol; - int visible_volumes_count = 0; // count the visible volumes on this drive - - for (current_vol = vol_list; current_vol != NULL; current_vol = current_vol->next) - { - GnomeVFSVolume *volume; - volume = GNOME_VFS_VOLUME (current_vol->data); - - char * device_path = gnome_vfs_volume_get_device_path(volume); - char* activation_uri = gnome_vfs_volume_get_activation_uri(volume); - - /* - if (device_path && - (strcmp(device_path, "/dev/root")==0 - || strcmp(device_path, "rootfs")==0 - ))*/ - /* don't list root filesystem, because it's included by hand */ - if (activation_uri && strcmp(activation_uri, "file:///")==0) - { - g_free(device_path); - g_free(activation_uri); - gnome_vfs_volume_unref(volume); - continue; - } - g_free(device_path); - g_free(activation_uri); - - if (TRUE || gnome_vfs_volume_is_user_visible(volume)) - { - // printf("volume\n"); - entries = g_list_append(entries, volume); - visible_volumes_count++;/* fprintf(stdout, "\n"); */ - } - else - { - gnome_vfs_volume_unref (volume); - } - - } - - /* if there is no volumes, append the drive object */ - if (visible_volumes_count<1 /* && gnome_vfs_drive_is_user_visible (drive)*/) - { - entries = g_list_append(entries, drive); - } - else - { - gnome_vfs_drive_unref(drive); - - } - g_list_free(vol_list); - - } - - /* read the remote shares */ - - //fprintf(stderr, "\nand now the network shares #####\n"); - - { - GList *vol_list; - GList *current_vol; - - GnomeVFSVolumeMonitor * volume_monitor = gnome_vfs_get_volume_monitor(); - - vol_list = gnome_vfs_volume_monitor_get_mounted_volumes(volume_monitor); - - for (current_vol = vol_list; current_vol != NULL; current_vol = current_vol->next) - { - GnomeVFSVolume *volume = GNOME_VFS_VOLUME (current_vol->data); - - if (gnome_vfs_volume_get_volume_type(volume) == GNOME_VFS_VOLUME_TYPE_CONNECTED_SERVER) - { - entries = g_list_append(entries, volume); - } - else - { - gnome_vfs_volume_unref (volume); - } - } - g_list_free(vol_list); - } - - return entries; - -} - -int _xdg_vfs_gnome_ls_vfsroot(int tagged) -{ - - GList* entries=_xdg_vfs_gnome_vfsroot_list(); - - GList* current_entry; - - if (tagged) puts(XDGVFS_TAG_DIRENTRY); - _print_home(); - puts(""); - if (tagged) puts(XDGVFS_TAG_DIRENTRY); - _print_filesystem(); - puts(""); - if (tagged) puts(XDGVFS_TAG_DIRENTRY); - _print_network(); - puts(""); - - for (current_entry = entries; current_entry!=NULL; current_entry = current_entry->next) - { - - if (tagged) puts(XDGVFS_TAG_DIRENTRY); - if (GNOME_IS_VFS_VOLUME(current_entry->data)) - { - GnomeVFSVolume *volume = GNOME_VFS_VOLUME (current_entry->data); - _print_volume(volume); - gnome_vfs_volume_unref (volume); - } - else if (GNOME_IS_VFS_DRIVE(current_entry->data)) - { - GnomeVFSDrive *drive = GNOME_VFS_DRIVE(current_entry->data); - _print_drive(drive); - gnome_vfs_drive_unref(drive); - } - else - fprintf(stdout, "# unexpected list item!\n"); - } - g_list_free(entries); - return 1; -} - - -/* ==================== mounting =================== */ - -int mount_stoploop; -int mount_tagged; - -void volume_monitor_mount_handler(GnomeVFSVolumeMonitor *vfsvolumemonitor, - GnomeVFSVolume *arg1, gpointer user_data) -{ - - int drive_id = *((int*)user_data); - - GnomeVFSDrive * drive = gnome_vfs_volume_get_drive(arg1); - if (gnome_vfs_drive_get_id(drive) == drive_id) - { - /* ha! we got the right drive */ - mount_stoploop|=2; - - GList* vol_list = gnome_vfs_drive_get_mounted_volumes(drive); - - GList *current_vol; - int visible_volumes_count = 0; // count the visible volumes on this drive - - if (mount_tagged) puts(XDGVFS_TAG_MOUNT); - for (current_vol = vol_list; current_vol != NULL; current_vol = current_vol->next) - { - GnomeVFSVolume * volume = GNOME_VFS_VOLUME (current_vol->data); - if (mount_tagged) puts(XDGVFS_TAG_DIRENTRY); - _print_volume(volume); - } - - - - } -} - -void myGnomeVFSVolumeOpCallback(gboolean succeeded, - char *error, - char *detailed_error, - gpointer data) -{ - int * r = (int*)data; - - if (succeeded) - { - fprintf(stderr, "VolumeOpCallback: mount succeeded\n"); - mount_stoploop|=1; /* wait for volume monitor callback before stopping loop */ - *r = XDGVFS_ERRORCODE_OK; - } - else - { - fprintf(stderr, "VolumeOpCallback: mount failed: %s %s\n", error, detailed_error); - *r = XDGVFS_ERRORCODE_COULD_NOT_MOUNT; - mount_stoploop=3; /* stop loop instantly*/ - } - -} - - -int _xdg_vfs_gnome_mount(char * mountpoint_id, int tagged) -{ - int mount_drive_id = atoi(mountpoint_id); - mount_tagged = tagged; - - GnomeVFSVolumeMonitor * volume_monitor = gnome_vfs_get_volume_monitor(); - - GList* drive_list = gnome_vfs_volume_monitor_get_connected_drives - (volume_monitor); - - GList *current_drive; - - for (current_drive = drive_list; current_drive != NULL; current_drive = current_drive->next) - { - - GnomeVFSDrive *drive = GNOME_VFS_DRIVE(current_drive->data); - - - - if (gnome_vfs_drive_get_id (drive) == mount_drive_id) - { - int r; - fprintf(stderr, "mounting drive with drive_id=%d!\n", mount_drive_id); - - gulong handler_id = g_signal_connect(volume_monitor, "volume-mounted", - G_CALLBACK(volume_monitor_mount_handler), &mount_drive_id); - - gnome_vfs_drive_mount (drive, myGnomeVFSVolumeOpCallback, &r); - - /* wait for both callbacks to occur */ - mount_stoploop=0; - while (!(mount_stoploop==3)) - { - // fprintf(stderr, "looping\n"); - g_main_context_iteration(NULL, TRUE); - } - - g_signal_handler_disconnect (volume_monitor, handler_id); - g_list_free(drive_list); - return r; - } - - } - g_list_free(drive_list); - fprintf(stderr, "mount-problem drive with drive_id=%d not found!\n", mount_drive_id); - return XDGVFS_ERRORCODE_GENERIC; - -} - -/* =============== tests =============== */ - -int test_drive_list() { - - GnomeVFSVolumeMonitor * volume_monitor = gnome_vfs_get_volume_monitor(); - - GList* drive_list = gnome_vfs_volume_monitor_get_connected_drives - (volume_monitor); - - printf("%p\n", drive_list); - - GList *current_drive; - - for (current_drive = drive_list; current_drive != NULL; current_drive = current_drive->next) - { - - GnomeVFSDrive *drive = GNOME_VFS_DRIVE(current_drive->data); - - _print_drive(drive); - - GList* vol_list = gnome_vfs_drive_get_mounted_volumes(drive); - - GList *current_vol; - - for (current_vol = vol_list; current_vol != NULL; current_vol = current_vol->next) - { - GnomeVFSVolume *volume; - volume = GNOME_VFS_VOLUME (current_vol->data); - - _print_volume(volume); - - } - - } - - -} - -int test_volume_list() { - - GList *vol_list; - GList *current_vol; - - GnomeVFSVolumeMonitor * volume_monitor = gnome_vfs_get_volume_monitor(); - - vol_list = gnome_vfs_volume_monitor_get_mounted_volumes(volume_monitor); - - for (current_vol = vol_list; current_vol != NULL; current_vol = current_vol->next) - { - GnomeVFSVolume *volume; - volume = GNOME_VFS_VOLUME (current_vol->data); - - _print_volume(volume); - /* g_free(activation_uri); - g_free(display_name); - g_free(filesystem_type); - g_free(device_path); - g_free(is_mounted); */ - } - -} - - - - - - diff --git a/portland/libxdg-vfs/xdg-vfs-kde/.cvsignore b/portland/libxdg-vfs/xdg-vfs-kde/.cvsignore deleted file mode 100644 index d9e3c7e..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/.cvsignore +++ /dev/null @@ -1,31 +0,0 @@ -*.la -*.lo -*.o -Makefile -Makefile.in -aclocal.m4 -autom4te.cache -config.cache -config.h -config.h.in -config.log -config.status -configure -acinclude.m4 -configure.files -configure.in -Makefile.in -stamp-h.in -subdirs -libtool -config.guess -config.sub -depcomp -install-sh -ltmain.sh -missing -stamp-h1 -.libs -.deps -.cdtproject -.project diff --git a/portland/libxdg-vfs/xdg-vfs-kde/AUTHORS b/portland/libxdg-vfs/xdg-vfs-kde/AUTHORS deleted file mode 100644 index d76f6e9..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/AUTHORS +++ /dev/null @@ -1 +0,0 @@ -Norbert Frese (nf2@scheinwelt.at) 2006 diff --git a/portland/libxdg-vfs/xdg-vfs-kde/COPYING b/portland/libxdg-vfs/xdg-vfs-kde/COPYING deleted file mode 100644 index 1edf08c..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/COPYING +++ /dev/null @@ -1,18 +0,0 @@ -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. diff --git a/portland/libxdg-vfs/xdg-vfs-kde/Makefile.am b/portland/libxdg-vfs/xdg-vfs-kde/Makefile.am deleted file mode 100644 index db02bf2..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/Makefile.am +++ /dev/null @@ -1,8 +0,0 @@ -## kdebase/Makefile.am -## (C) 1997 Stephan Kulow - -SUBDIRS = $(TOPSUBDIRS) - -include admin/deps.am - -AUTOMAKE_OPTIONS = foreign diff --git a/portland/libxdg-vfs/xdg-vfs-kde/Makefile.cvs b/portland/libxdg-vfs/xdg-vfs-kde/Makefile.cvs deleted file mode 100644 index d5c4a7b..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/Makefile.cvs +++ /dev/null @@ -1,15 +0,0 @@ - -all: - @echo "This Makefile is only for the CVS repository" - @echo "This will be deleted before making the distribution" - @echo "" - @if test ! -d admin; then \ - echo "Please recheckout this module!" ;\ - echo "for cvs: use checkout once and after that update again" ;\ - echo "for cvsup: checkout kde-common from cvsup and" ;\ - echo " link kde-common/admin to ./admin" ;\ - exit 1 ;\ - fi - $(MAKE) -f admin/Makefile.common cvs - -.SILENT: diff --git a/portland/libxdg-vfs/xdg-vfs-kde/README b/portland/libxdg-vfs/xdg-vfs-kde/README deleted file mode 100644 index f5dc19d..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/README +++ /dev/null @@ -1,111 +0,0 @@ -XDG_VFS_KDE -=========== - -!!! hint: to turn off the error messages run kdebugdialog !!! - -xdg_vfs_kde is a command line client for KIO. It can read and write -files, list directories, open file-dialogs,... File-data is not stored in -temporary files, but instead is pushed/pulled via stdin and stdout. - -The aim of 'xdg_vfs_kde' is to give third party desktop applications access -to KIO. It could be hidden behind a generic 'xdg_vfs' script, which switches between KIO, -Gnome-VFS,... command line clients. - - -Samples: -======== - --) reading a file - -$ xdg_vfs_kde get file:///etc/lilo.conf - -$ xdg_vfs_kde get http://www.freedesktop.org - -will stream a remote file to stdout which could be read into the hosts -applications memory via the C-function popen(..,'r'); - -$ xdg_vfs_kde openfiledlg --instant-get - -will open a file-dialog to browse to a remote or local file and instantly -stream the file-data of the selected file to stdout. - -$ xdg_vfs_kde openfiledlg --instant-get --qry-fileinfo --slow-mime --tagged - -By adding those switches xdg_vfs_kde will also 'stat' the remote file and -try to detect it's mime-type, size,... - --) writing a file - -$ cat /etc/passwd | xdg_vfs_kde put ftp://user@host/mydir/file.txt - -or use something like popen(..,'w') to stream file-data to create a remote file. - --) listing a directory - -$ xdg_vfs_kde ls sftp://user@host/dir/ - - -There are two operation modes: -============================== - -*) single command - -*) shell mode (like the command-line ftp client). In shell mode the - host application can talk to 'xdg_vfs_kde' by connecting to the - stdin and stdout pipes to execute a sequence of vfs commands. - (for instance QProcess or functions like g_spawn_async_with_pipes() allow - connecting to stdin and stdout of a child process) - -The advantage of shell mode is that passwords are kept in memory -(the user doesn't have log in again and again) and avoiding startup-delay -when executing multiple commands (for instance if the client application -is a file-manager) - -Tagged-mode: -============ - -the -t, --tagged option tells xdg_vfs_kde to add 'labels' when a command -returns multiple 'parts'. For instance - -> xdg_vfs_kde openfiledlg --instant-get --qry-fileinfo --tagged - -will return an [OpenFileDlg], a [FileInfo] and a [Data] section. - -Escaping file data: -=================== - -When operating in shell- or tagged- mode you will need an escape character -to signal the end of binary data. This is done via the -e and --escape-data -switch. By default '~' is the escape character. '~~' has to be treated as -single '~' and '~\n' as EOF. The escape-character can be changed by -the -e35 or --escape-data=35 option. (when you want to use '#' ASCII 35 as escape -character) - -Usage screen: -============= - -Usage: xdg_vfs [command] [options] [filename] - - Commands: - get [filename] : remote file->stdout - info [file or dir] : stat a remote file->stdout - put [filename] : stdin->create remote file - ls [dir] : list directory - openfiledlg [dir] : show open file dialog and return selected file - savefiledlg [dir] [fname] : show save file dialog and return selected file - shell : interactive mode - - Options: - -t, --tagged : tagged mode (file-data should be escaped) - -i, --qry-fileinfo : qry file-info when retrieving a file - --show-metadata : show metadata when retrieving a file - requires tagged mode! - -m, --slow-mime : more accurate mime-type detection (slow) - -e, --escape-data : escape file data (for end of data detection) - -eXXX, --escape-data=XXX : set and use a user defined escape character - XXX = ascii code! - --end-seperator= : add a custom seperator inbetween blocks - --overwrite : allow overwriting files (put) - --instant-get : openfiledilog instant get file->stdout - --instant-put : savefiledilog instant put file from stdin - diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/Doxyfile.am b/portland/libxdg-vfs/xdg-vfs-kde/admin/Doxyfile.am deleted file mode 100644 index 7ef5b5c..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/Doxyfile.am +++ /dev/null @@ -1,102 +0,0 @@ -## generate API documentation with doxygen -apidox-am-yes: - @if test \! -d "$(top_srcdir)/doc/common/" && test -z "$$DOXDATA" ; then \ - export DOXDATA=$(kde_libs_htmldir)/en/common ; \ - fi ; \ - abs_top_srcdir=`cd $(top_srcdir) && pwd` ;\ - test -d $(top_builddir)/apidocs || \ - ( cd $(top_builddir) && sh $$abs_top_srcdir/admin/doxygen.sh \ - --no-modulename --installdir=$(kde_libs_htmldir)/en \ - --no-recurse $(abs_top_srcdir) . ) ; \ - cd $(top_builddir) && sh $$abs_top_srcdir/admin/doxygen.sh \ - --recurse --no-modulename --installdir=$(kde_libs_htmldir)/en \ - $$abs_top_srcdir $(subdir) - -apidox-am-toplevel-yes: - @if test \! -d "$(top_srcdir)/doc/common/" && test -z "$$ADMIN" ; then \ - export DOXDATA=$(kde_libs_htmldir)/en/common ; \ - fi ; \ - abs_top_srcdir=`cd $(top_srcdir) && pwd` ;\ - cd $(top_builddir) && sh $$abs_top_srcdir/admin/doxygen.sh \ - --no-modulename --installdir=$(kde_libs_htmldir)/en \ - $$abs_top_srcdir - -## Don't generate API documentation without doxygen -apidox-am-no: - -apidox-am-toplevel-no: - - -apidox: - @if test "$(subdir)" != "."; then \ - $(MAKE) apidox-am-@KDE_HAS_DOXYGEN@ ;\ - else \ - $(MAKE) apidox-am-toplevel-@KDE_HAS_DOXYGEN@ ;\ - fi - - - -install-data-local: install-apidox - -## install API documentation -install-apidox: - @if test "$(subdir)" != "."; then \ - $(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir)/html ; \ - if test -f $(top_builddir)/apidocs/$(subdir)/$(subdir).tag; then \ - echo $(INSTALL_DATA) $(top_builddir)/apidocs/$(subdir)/$(subdir).tag $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir); \ - $(INSTALL_DATA) $(top_builddir)/apidocs/$(subdir)/$(subdir).tag $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir); \ - fi; \ - if test -d $(top_builddir)/apidocs/$(subdir)/html; then \ - list=`ls $(top_builddir)/apidocs/$(subdir)/html`; \ - echo "installing $(top_builddir)/apidocs/$(subdir)/html" ;\ - for file in $$list; do \ - $(INSTALL_DATA) $(top_builddir)/apidocs/$(subdir)/html/$$file $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir)/html; \ - done; \ - fi; \ - else\ - if test -d $(top_builddir)/apidocs; then \ - $(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs ;\ - list=`cd $(top_builddir)/apidocs && ls -1`; \ - echo "installing $(top_builddir)/apidocs/$$file" ;\ - echo "target directory $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs" ; \ - for file in $$list; do \ - if test -f $(top_builddir)/apidocs/$$file; then \ - $(INSTALL_DATA) $(top_builddir)/apidocs/$$file $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs; \ - fi; \ - done ; fi; \ - fi - -uninstall-local: uninstall-apidox - -## uninstall API documentation -uninstall-apidox: - @if test "$(subdir)" != "."; then \ - if test -d $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir); then \ - rm -rfv $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs/$(subdir); \ - fi \ - else \ - if test -d $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs; then \ - rm -rfv $(DESTDIR)$(kde_htmldir)/en/$(PACKAGE)-apidocs; \ - fi \ - fi - -install-apidox-recurse: install-apidox - @set fnord $(MAKEFLAGS); amf=$$2; if test -n '$(SUBDIRS)'; then \ - list='$(SUBDIRS)'; \ - for subdir in $$list; do \ - if grep '^include .*Doxyfile.am' $(srcdir)/$$subdir/Makefile.am > /dev/null ; then \ - echo "Installing apidox from $$subdir"; \ - if test "$$subdir" != "."; then \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) GENERATE_FLAG=no install-apidox-recurse) || exit 1; \ - fi ; fi ;\ - done; \ - fi - - - -.PHONY: apidox-am-yes apidox-am-no install-data-local install-apidox install-apidox uninstall-local uninstall-apidox uninstall-apidox apidox apidox-am-toplevel-no apidox-am-toplevel-yes - - -# Local Variables: -# mode: makefile -# End: diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/Doxyfile.global b/portland/libxdg-vfs/xdg-vfs-kde/admin/Doxyfile.global deleted file mode 100755 index 1b9f560..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/Doxyfile.global +++ /dev/null @@ -1,192 +0,0 @@ -OUTPUT_LANGUAGE = English -USE_WINDOWS_ENCODING = NO -BRIEF_MEMBER_DESC = NO -REPEAT_BRIEF = YES -ABBREVIATE_BRIEF = -ALWAYS_DETAILED_SEC = YES -INLINE_INHERITED_MEMB = NO -FULL_PATH_NAMES = NO -STRIP_FROM_PATH = -SHORT_NAMES = NO -JAVADOC_AUTOBRIEF = YES -MULTILINE_CPP_IS_BRIEF = NO -INHERIT_DOCS = YES -DISTRIBUTE_GROUP_DOC = NO -TAB_SIZE = 4 -OPTIMIZE_OUTPUT_FOR_C = NO -OPTIMIZE_OUTPUT_JAVA = NO -SUBGROUPING = YES -EXTRACT_ALL = NO -EXTRACT_PRIVATE = NO -EXTRACT_STATIC = YES -EXTRACT_LOCAL_CLASSES = NO -HIDE_UNDOC_MEMBERS = NO -HIDE_UNDOC_CLASSES = YES -HIDE_FRIEND_COMPOUNDS = NO -HIDE_IN_BODY_DOCS = NO -INTERNAL_DOCS = NO -CASE_SENSE_NAMES = YES -HIDE_SCOPE_NAMES = NO -SHOW_INCLUDE_FILES = YES -INLINE_INFO = YES -SORT_BRIEF_DOCS = NO -SORT_BY_SCOPE_NAME = NO -GENERATE_TESTLIST = NO -GENERATE_BUGLIST = YES -GENERATE_DEPRECATEDLIST= YES -ENABLED_SECTIONS = -MAX_INITIALIZER_LINES = 30 -SHOW_USED_FILES = YES -QUIET = YES -WARNINGS = NO -WARN_IF_UNDOCUMENTED = NO -WARN_IF_DOC_ERROR = YES -WARN_FORMAT = -WARN_LOGFILE = -INPUT = -FILE_PATTERNS = *.h \ - *.cpp \ - *.cc \ - *.hpp \ - *.dox \ - *.c++ \ - *.cxx \ - *.h++ \ - *.hh -RECURSIVE = YES -EXCLUDE = -EXCLUDE_SYMLINKS = NO -EXCLUDE_PATTERNS = *.moc.* \ - moc* \ - *.all_cpp.* \ - *unload.* \ - */test/* \ - */tests/* \ - *_p.h -EXAMPLE_PATH = -EXAMPLE_PATTERNS = -EXAMPLE_RECURSIVE = NO -IMAGE_PATH = -INPUT_FILTER = -FILTER_SOURCE_FILES = NO -SOURCE_BROWSER = YES -INLINE_SOURCES = NO -STRIP_CODE_COMMENTS = YES -REFERENCED_BY_RELATION = YES -REFERENCES_RELATION = YES -VERBATIM_HEADERS = YES -ALPHABETICAL_INDEX = YES -COLS_IN_ALPHA_INDEX = 3 -HTML_OUTPUT = -HTML_FILE_EXTENSION = .html -HTML_HEADER = ../apidocs/common/header.html -HTML_FOOTER = ../apidocs/common/footer.html -HTML_STYLESHEET = ../apidocs/common/doxygen.css -HTML_ALIGN_MEMBERS = YES -GENERATE_HTMLHELP = NO -CHM_FILE = -HHC_LOCATION = -GENERATE_CHI = NO -BINARY_TOC = NO -TOC_EXPAND = NO -DISABLE_INDEX = YES -ENUM_VALUES_PER_LINE = 4 -GENERATE_TREEVIEW = NO -TREEVIEW_WIDTH = 250 -GENERATE_LATEX = NO -LATEX_OUTPUT = -LATEX_CMD_NAME = latex -MAKEINDEX_CMD_NAME = makeindex -COMPACT_LATEX = NO -PAPER_TYPE = a4wide -EXTRA_PACKAGES = -LATEX_HEADER = -PDF_HYPERLINKS = NO -USE_PDFLATEX = NO -LATEX_BATCHMODE = NO -LATEX_HIDE_INDICES = NO -GENERATE_RTF = NO -RTF_OUTPUT = -COMPACT_RTF = NO -RTF_HYPERLINKS = NO -RTF_STYLESHEET_FILE = -RTF_EXTENSIONS_FILE = -GENERATE_MAN = NO -MAN_OUTPUT = -MAN_EXTENSION = .kde3 -MAN_LINKS = YES -GENERATE_XML = NO -XML_OUTPUT = xml -XML_SCHEMA = -XML_DTD = -XML_PROGRAMLISTING = NO -GENERATE_AUTOGEN_DEF = NO -GENERATE_PERLMOD = NO -PERLMOD_LATEX = NO -PERLMOD_PRETTY = YES -PERLMOD_MAKEVAR_PREFIX = -ENABLE_PREPROCESSING = YES -SEARCH_INCLUDES = YES -INCLUDE_PATH = -INCLUDE_FILE_PATTERNS = -PREDEFINED = QT_VERSION=320 \ - __cplusplus \ - Q_WS_X11 -EXPAND_AS_DEFINED = -SKIP_FUNCTION_MACROS = YES -TAGFILES = -GENERATE_TAGFILE = -ALLEXTERNALS = NO -EXTERNAL_GROUPS = NO -PERL_PATH = -CLASS_DIAGRAMS = YES -HIDE_UNDOC_RELATIONS = NO -HAVE_DOT = NO -UML_LOOK = NO -TEMPLATE_RELATIONS = YES -INCLUDE_GRAPH = YES -INCLUDED_BY_GRAPH = YES -CALL_GRAPH = NO -GRAPHICAL_HIERARCHY = YES -DOT_IMAGE_FORMAT = png -DOT_PATH = -DOTFILE_DIRS = -MAX_DOT_GRAPH_WIDTH = 800 -MAX_DOT_GRAPH_HEIGHT = 1024 -MAX_DOT_GRAPH_DEPTH = 0 -GENERATE_LEGEND = YES -DOT_CLEANUP = YES -SEARCHENGINE = NO - -### KDE Settings -ALIASES = \ - "intern=\par<b>Internal use only.</b>" \ - "reimp=\par<b>Reimplemented from superclass.</b>" \ - "obsolete=@deprecated" \ - "feature=\xrefitem features \"Feature(s)\" \"Features\"" \ - "maintainer=\xrefitem maintainers \"Maintainer(s)\" \"Maintainers\"" \ - "unmaintained=\xrefitem unmaintained \"Unmaintained\" \"Unmaintained\"" \ - "requirement=\xrefitem requirements \"Requirement(s)\" \"Requirements\"" \ - "faq=\xrefitem FAQ \"F.A.Q.\" \"F.A.Q.\"" \ - "authors=\xrefitem authors \"Author(s)\" \"Authors\"" \ - "FIXME=\xrefitem fixme \"Fixme\" \"Fixme\"" - -HTML_ALIGN_MEMBERS = YES -REFERENCED_BY_RELATION = NO -REFERENCES_RELATION = NO -VERBATIM_HEADERS = NO -GENERATE_HTML = YES -SOURCE_BROWSER = YES -GENERATE_AUTOGEN_DEF = NO -DETAILS_AT_TOP = YES -SORT_MEMBER_DOCS = YES -GENERATE_TODOLIST = YES -IGNORE_PREFIX = K -GENERATE_HTML = YES -CLASS_GRAPH = YES -COLLABORATION_GRAPH = NO - - -MACRO_EXPANSION = YES -EXPAND_ONLY_PREDEF = YES - diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/Makefile.common b/portland/libxdg-vfs/xdg-vfs-kde/admin/Makefile.common deleted file mode 100644 index d07b404..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/Makefile.common +++ /dev/null @@ -1,37 +0,0 @@ -### Makefile.common -### -### Copyright (C) 2002 by the KDE developers - -### All the real work is done by the shellscript cvs.sh - -SHELL=/bin/sh - -cvs dist configure configure.in configure.files subdirs package-messages package-merge Makefile.am acinclude.m4 extract-messages: - @admindir=$(admindir); \ - if test "x$$admindir" = x; then \ - admindir=.; until test -f $$admindir/admin/cvs.sh; do \ - admindir=$$admindir/..; \ - if test `cd $$admindir && pwd` = / ; then break; fi; \ - done; \ - admindir=$$admindir/admin; \ - if test -f $$admindir/cvs.sh; then :; else \ - echo "Can't find the admin/ directory in any parent of the"; \ - echo "current directory. Please set it with admindir=..."; \ - exit 1; \ - fi; \ - fi; \ - if test "$@" = "package-merge"; then \ - MAKE="$(MAKE)" POFILES="$(POFILES)" PACKAGE="$(PACKAGE)" \ - $(SHELL) $$admindir/cvs.sh package-merge ;\ - else \ - MAKE="$(MAKE)" $(SHELL) $$admindir/cvs.sh $@ ;\ - fi - -configure.in: configure.files subdirs -configure.files: subdirs - -svn: cvs - -.SILENT: - -.PHONY: svn cvs dist package-merge package-messages diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/acinclude.m4.in b/portland/libxdg-vfs/xdg-vfs-kde/admin/acinclude.m4.in deleted file mode 100644 index 9c19328..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/acinclude.m4.in +++ /dev/null @@ -1,5937 +0,0 @@ -## -*- autoconf -*- - -dnl This file is part of the KDE libraries/packages -dnl Copyright (C) 1997 Janos Farkas (chexum@shadow.banki.hu) -dnl (C) 1997,98,99 Stephan Kulow (coolo@kde.org) - -dnl This file is free software; you can redistribute it and/or -dnl modify it under the terms of the GNU Library General Public -dnl License as published by the Free Software Foundation; either -dnl version 2 of the License, or (at your option) any later version. - -dnl This library is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -dnl Library General Public License for more details. - -dnl You should have received a copy of the GNU Library General Public License -dnl along with this library; see the file COPYING.LIB. If not, write to -dnl the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -dnl Boston, MA 02110-1301, USA. - -dnl IMPORTANT NOTE: -dnl Please do not modify this file unless you expect your modifications to be -dnl carried into every other module in the repository. -dnl -dnl Single-module modifications are best placed in configure.in for kdelibs -dnl and kdebase or configure.in.in if present. - -# KDE_PATH_X_DIRECT -dnl Internal subroutine of AC_PATH_X. -dnl Set ac_x_includes and/or ac_x_libraries. -AC_DEFUN([KDE_PATH_X_DIRECT], -[ -AC_REQUIRE([KDE_CHECK_LIB64]) - -if test "$ac_x_includes" = NO; then - # Guess where to find include files, by looking for this one X11 .h file. - test -z "$x_direct_test_include" && x_direct_test_include=X11/Intrinsic.h - - # First, try using that file with no special directory specified. -AC_TRY_CPP([#include <$x_direct_test_include>], -[# We can compile using X headers with no special include directory. -ac_x_includes=], -[# Look for the header file in a standard set of common directories. -# Check X11 before X11Rn because it is often a symlink to the current release. - for ac_dir in \ - /usr/X11/include \ - /usr/X11R6/include \ - /usr/X11R5/include \ - /usr/X11R4/include \ - \ - /usr/include/X11 \ - /usr/include/X11R6 \ - /usr/include/X11R5 \ - /usr/include/X11R4 \ - \ - /usr/local/X11/include \ - /usr/local/X11R6/include \ - /usr/local/X11R5/include \ - /usr/local/X11R4/include \ - \ - /usr/local/include/X11 \ - /usr/local/include/X11R6 \ - /usr/local/include/X11R5 \ - /usr/local/include/X11R4 \ - \ - /usr/X386/include \ - /usr/x386/include \ - /usr/XFree86/include/X11 \ - \ - /usr/include \ - /usr/local/include \ - /usr/unsupported/include \ - /usr/athena/include \ - /usr/local/x11r5/include \ - /usr/lpp/Xamples/include \ - \ - /usr/openwin/include \ - /usr/openwin/share/include \ - ; \ - do - if test -r "$ac_dir/$x_direct_test_include"; then - ac_x_includes=$ac_dir - break - fi - done]) -fi # $ac_x_includes = NO - -if test "$ac_x_libraries" = NO; then - # Check for the libraries. - - test -z "$x_direct_test_library" && x_direct_test_library=Xt - test -z "$x_direct_test_function" && x_direct_test_function=XtMalloc - - # See if we find them without any special options. - # Don't add to $LIBS permanently. - ac_save_LIBS="$LIBS" - LIBS="-l$x_direct_test_library $LIBS" -AC_TRY_LINK([#include <X11/Intrinsic.h>], [${x_direct_test_function}(1)], -[LIBS="$ac_save_LIBS" -# We can link X programs with no special library path. -ac_x_libraries=], -[LIBS="$ac_save_LIBS" -# First see if replacing the include by lib works. -# Check X11 before X11Rn because it is often a symlink to the current release. -for ac_dir in `echo "$ac_x_includes" | sed s/include/lib${kdelibsuff}/` \ - /usr/X11/lib${kdelibsuff} \ - /usr/X11R6/lib${kdelibsuff} \ - /usr/X11R5/lib${kdelibsuff} \ - /usr/X11R4/lib${kdelibsuff} \ - \ - /usr/lib${kdelibsuff}/X11 \ - /usr/lib${kdelibsuff}/X11R6 \ - /usr/lib${kdelibsuff}/X11R5 \ - /usr/lib${kdelibsuff}/X11R4 \ - \ - /usr/local/X11/lib${kdelibsuff} \ - /usr/local/X11R6/lib${kdelibsuff} \ - /usr/local/X11R5/lib${kdelibsuff} \ - /usr/local/X11R4/lib${kdelibsuff} \ - \ - /usr/local/lib${kdelibsuff}/X11 \ - /usr/local/lib${kdelibsuff}/X11R6 \ - /usr/local/lib${kdelibsuff}/X11R5 \ - /usr/local/lib${kdelibsuff}/X11R4 \ - \ - /usr/X386/lib${kdelibsuff} \ - /usr/x386/lib${kdelibsuff} \ - /usr/XFree86/lib${kdelibsuff}/X11 \ - \ - /usr/lib${kdelibsuff} \ - /usr/local/lib${kdelibsuff} \ - /usr/unsupported/lib${kdelibsuff} \ - /usr/athena/lib${kdelibsuff} \ - /usr/local/x11r5/lib${kdelibsuff} \ - /usr/lpp/Xamples/lib${kdelibsuff} \ - /lib/usr/lib${kdelibsuff}/X11 \ - \ - /usr/openwin/lib${kdelibsuff} \ - /usr/openwin/share/lib${kdelibsuff} \ - ; \ -do -dnl Don't even attempt the hair of trying to link an X program! - for ac_extension in a so sl; do - if test -r $ac_dir/lib${x_direct_test_library}.$ac_extension; then - ac_x_libraries=$ac_dir - break 2 - fi - done -done]) -fi # $ac_x_libraries = NO -]) - - -dnl ------------------------------------------------------------------------ -dnl Find a file (or one of more files in a list of dirs) -dnl ------------------------------------------------------------------------ -dnl -AC_DEFUN([AC_FIND_FILE], -[ -$3=NO -for i in $2; -do - for j in $1; - do - echo "configure: __oline__: $i/$j" >&AC_FD_CC - if test -r "$i/$j"; then - echo "taking that" >&AC_FD_CC - $3=$i - break 2 - fi - done -done -]) - -dnl KDE_FIND_PATH(program-name, variable-name, list-of-dirs, -dnl if-not-found, test-parameter, prepend-path) -dnl -dnl Look for program-name in list-of-dirs+$PATH. -dnl If prepend-path is set, look in $PATH+list-of-dirs instead. -dnl If found, $variable-name is set. If not, if-not-found is evaluated. -dnl test-parameter: if set, the program is executed with this arg, -dnl and only a successful exit code is required. -AC_DEFUN([KDE_FIND_PATH], -[ - AC_MSG_CHECKING([for $1]) - if test -n "$$2"; then - kde_cv_path="$$2"; - else - kde_cache=`echo $1 | sed 'y%./+-%__p_%'` - - AC_CACHE_VAL(kde_cv_path_$kde_cache, - [ - kde_cv_path="NONE" - kde_save_IFS=$IFS - IFS=':' - dirs="" - for dir in $PATH; do - dirs="$dirs $dir" - done - if test -z "$6"; then dnl Append dirs in PATH (default) - dirs="$3 $dirs" - else dnl Prepend dirs in PATH (if 6th arg is set) - dirs="$dirs $3" - fi - IFS=$kde_save_IFS - - for dir in $dirs; do - if test -x "$dir/$1"; then - if test -n "$5" - then - evalstr="$dir/$1 $5 2>&1 " - if eval $evalstr; then - kde_cv_path="$dir/$1" - break - fi - else - kde_cv_path="$dir/$1" - break - fi - fi - done - - eval "kde_cv_path_$kde_cache=$kde_cv_path" - - ]) - - eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" - - fi - - if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then - AC_MSG_RESULT(not found) - $4 - else - AC_MSG_RESULT($kde_cv_path) - $2=$kde_cv_path - - fi -]) - -AC_DEFUN([KDE_MOC_ERROR_MESSAGE], -[ - AC_MSG_ERROR([No Qt meta object compiler (moc) found! -Please check whether you installed Qt correctly. -You need to have a running moc binary. -configure tried to run $ac_cv_path_moc and the test didn't -succeed. If configure shouldn't have tried this one, set -the environment variable MOC to the right one before running -configure. -]) -]) - -AC_DEFUN([KDE_UIC_ERROR_MESSAGE], -[ - AC_MSG_WARN([No Qt ui compiler (uic) found! -Please check whether you installed Qt correctly. -You need to have a running uic binary. -configure tried to run $ac_cv_path_uic and the test didn't -succeed. If configure shouldn't have tried this one, set -the environment variable UIC to the right one before running -configure. -]) -]) - - -AC_DEFUN([KDE_CHECK_UIC_FLAG], -[ - AC_MSG_CHECKING([whether uic supports -$1 ]) - kde_cache=`echo $1 | sed 'y% .=/+-%____p_%'` - AC_CACHE_VAL(kde_cv_prog_uic_$kde_cache, - [ - cat >conftest.ui <<EOT - <!DOCTYPE UI><UI version="3" stdsetdef="1"></UI> -EOT - ac_uic_testrun="$UIC_PATH -$1 $2 conftest.ui >/dev/null" - if AC_TRY_EVAL(ac_uic_testrun); then - eval "kde_cv_prog_uic_$kde_cache=yes" - else - eval "kde_cv_prog_uic_$kde_cache=no" - fi - rm -f conftest* - ]) - - if eval "test \"`echo '$kde_cv_prog_uic_'$kde_cache`\" = yes"; then - AC_MSG_RESULT([yes]) - : - $3 - else - AC_MSG_RESULT([no]) - : - $4 - fi -]) - - -dnl ------------------------------------------------------------------------ -dnl Find the meta object compiler and the ui compiler in the PATH, -dnl in $QTDIR/bin, and some more usual places -dnl ------------------------------------------------------------------------ -dnl -AC_DEFUN([AC_PATH_QT_MOC_UIC], -[ - AC_REQUIRE([KDE_CHECK_PERL]) - qt_bindirs="" - for dir in $kde_qt_dirs; do - qt_bindirs="$qt_bindirs $dir/bin $dir/src/moc" - done - qt_bindirs="$qt_bindirs /usr/bin /usr/X11R6/bin /usr/local/qt/bin" - if test ! "$ac_qt_bindir" = "NO"; then - qt_bindirs="$ac_qt_bindir $qt_bindirs" - fi - - KDE_FIND_PATH(moc, MOC, [$qt_bindirs], [KDE_MOC_ERROR_MESSAGE]) - if test -z "$UIC_NOT_NEEDED"; then - KDE_FIND_PATH(uic, UIC_PATH, [$qt_bindirs], [UIC_PATH=""]) - if test -z "$UIC_PATH" ; then - KDE_UIC_ERROR_MESSAGE - exit 1 - else - UIC=$UIC_PATH - - if test $kde_qtver = 3; then - KDE_CHECK_UIC_FLAG(L,[/nonexistent],ac_uic_supports_libpath=yes,ac_uic_supports_libpath=no) - KDE_CHECK_UIC_FLAG(nounload,,ac_uic_supports_nounload=yes,ac_uic_supports_nounload=no) - - if test x$ac_uic_supports_libpath = xyes; then - UIC="$UIC -L \$(kde_widgetdir)" - fi - if test x$ac_uic_supports_nounload = xyes; then - UIC="$UIC -nounload" - fi - fi - fi - else - UIC="echo uic not available: " - fi - - AC_SUBST(MOC) - AC_SUBST(UIC) - - UIC_TR="i18n" - if test $kde_qtver = 3; then - UIC_TR="tr2i18n" - fi - - AC_SUBST(UIC_TR) -]) - -AC_DEFUN([KDE_1_CHECK_PATHS], -[ - KDE_1_CHECK_PATH_HEADERS - - KDE_TEST_RPATH= - - if test -n "$USE_RPATH"; then - - if test -n "$kde_libraries"; then - KDE_TEST_RPATH="-R $kde_libraries" - fi - - if test -n "$qt_libraries"; then - KDE_TEST_RPATH="$KDE_TEST_RPATH -R $qt_libraries" - fi - - if test -n "$x_libraries"; then - KDE_TEST_RPATH="$KDE_TEST_RPATH -R $x_libraries" - fi - - KDE_TEST_RPATH="$KDE_TEST_RPATH $KDE_EXTRA_RPATH" - fi - -AC_MSG_CHECKING([for KDE libraries installed]) -ac_link='$LIBTOOL_SHELL --silent --mode=link ${CXX-g++} -o conftest $CXXFLAGS $all_includes $CPPFLAGS $LDFLAGS $all_libraries conftest.$ac_ext $LIBS -lkdecore $LIBQT $KDE_TEST_RPATH 1>&5' - -if AC_TRY_EVAL(ac_link) && test -s conftest; then - AC_MSG_RESULT(yes) -else - AC_MSG_ERROR([your system fails at linking a small KDE application! -Check, if your compiler is installed correctly and if you have used the -same compiler to compile Qt and kdelibs as you did use now. -For more details about this problem, look at the end of config.log.]) -fi - -if eval `KDEDIR= ./conftest 2>&5`; then - kde_result=done -else - kde_result=problems -fi - -KDEDIR= ./conftest 2> /dev/null >&5 # make an echo for config.log -kde_have_all_paths=yes - -KDE_SET_PATHS($kde_result) - -]) - -AC_DEFUN([KDE_SET_PATHS], -[ - kde_cv_all_paths="kde_have_all_paths=\"yes\" \ - kde_htmldir=\"$kde_htmldir\" \ - kde_appsdir=\"$kde_appsdir\" \ - kde_icondir=\"$kde_icondir\" \ - kde_sounddir=\"$kde_sounddir\" \ - kde_datadir=\"$kde_datadir\" \ - kde_locale=\"$kde_locale\" \ - kde_cgidir=\"$kde_cgidir\" \ - kde_confdir=\"$kde_confdir\" \ - kde_kcfgdir=\"$kde_kcfgdir\" \ - kde_mimedir=\"$kde_mimedir\" \ - kde_toolbardir=\"$kde_toolbardir\" \ - kde_wallpaperdir=\"$kde_wallpaperdir\" \ - kde_templatesdir=\"$kde_templatesdir\" \ - kde_bindir=\"$kde_bindir\" \ - kde_servicesdir=\"$kde_servicesdir\" \ - kde_servicetypesdir=\"$kde_servicetypesdir\" \ - kde_moduledir=\"$kde_moduledir\" \ - kde_styledir=\"$kde_styledir\" \ - kde_widgetdir=\"$kde_widgetdir\" \ - xdg_appsdir=\"$xdg_appsdir\" \ - xdg_menudir=\"$xdg_menudir\" \ - xdg_directorydir=\"$xdg_directorydir\" \ - kde_result=$1" -]) - -AC_DEFUN([KDE_SET_DEFAULT_PATHS], -[ -if test "$1" = "default"; then - - if test -z "$kde_htmldir"; then - kde_htmldir='\${datadir}/doc/HTML' - fi - if test -z "$kde_appsdir"; then - kde_appsdir='\${datadir}/applnk' - fi - if test -z "$kde_icondir"; then - kde_icondir='\${datadir}/icons' - fi - if test -z "$kde_sounddir"; then - kde_sounddir='\${datadir}/sounds' - fi - if test -z "$kde_datadir"; then - kde_datadir='\${datadir}/apps' - fi - if test -z "$kde_locale"; then - kde_locale='\${datadir}/locale' - fi - if test -z "$kde_cgidir"; then - kde_cgidir='\${exec_prefix}/cgi-bin' - fi - if test -z "$kde_confdir"; then - kde_confdir='\${datadir}/config' - fi - if test -z "$kde_kcfgdir"; then - kde_kcfgdir='\${datadir}/config.kcfg' - fi - if test -z "$kde_mimedir"; then - kde_mimedir='\${datadir}/mimelnk' - fi - if test -z "$kde_toolbardir"; then - kde_toolbardir='\${datadir}/toolbar' - fi - if test -z "$kde_wallpaperdir"; then - kde_wallpaperdir='\${datadir}/wallpapers' - fi - if test -z "$kde_templatesdir"; then - kde_templatesdir='\${datadir}/templates' - fi - if test -z "$kde_bindir"; then - kde_bindir='\${exec_prefix}/bin' - fi - if test -z "$kde_servicesdir"; then - kde_servicesdir='\${datadir}/services' - fi - if test -z "$kde_servicetypesdir"; then - kde_servicetypesdir='\${datadir}/servicetypes' - fi - if test -z "$kde_moduledir"; then - if test "$kde_qtver" = "2"; then - kde_moduledir='\${libdir}/kde2' - else - kde_moduledir='\${libdir}/kde3' - fi - fi - if test -z "$kde_styledir"; then - kde_styledir='\${libdir}/kde3/plugins/styles' - fi - if test -z "$kde_widgetdir"; then - kde_widgetdir='\${libdir}/kde3/plugins/designer' - fi - if test -z "$xdg_appsdir"; then - xdg_appsdir='\${datadir}/applications/kde' - fi - if test -z "$xdg_menudir"; then - xdg_menudir='\${sysconfdir}/xdg/menus' - fi - if test -z "$xdg_directorydir"; then - xdg_directorydir='\${datadir}/desktop-directories' - fi - - KDE_SET_PATHS(defaults) - -else - - if test $kde_qtver = 1; then - AC_MSG_RESULT([compiling]) - KDE_1_CHECK_PATHS - else - AC_MSG_ERROR([path checking not yet supported for KDE 2]) - fi - -fi -]) - -AC_DEFUN([KDE_CHECK_PATHS_FOR_COMPLETENESS], -[ if test -z "$kde_htmldir" || test -z "$kde_appsdir" || - test -z "$kde_icondir" || test -z "$kde_sounddir" || - test -z "$kde_datadir" || test -z "$kde_locale" || - test -z "$kde_cgidir" || test -z "$kde_confdir" || - test -z "$kde_kcfgdir" || - test -z "$kde_mimedir" || test -z "$kde_toolbardir" || - test -z "$kde_wallpaperdir" || test -z "$kde_templatesdir" || - test -z "$kde_bindir" || test -z "$kde_servicesdir" || - test -z "$kde_servicetypesdir" || test -z "$kde_moduledir" || - test -z "$kde_styledir" || test -z "kde_widgetdir" || - test -z "$xdg_appsdir" || test -z "$xdg_menudir" || test -z "$xdg_directorydir" || - test "x$kde_have_all_paths" != "xyes"; then - kde_have_all_paths=no - fi -]) - -AC_DEFUN([KDE_MISSING_PROG_ERROR], -[ - AC_MSG_ERROR([The important program $1 was not found! -Please check whether you installed KDE correctly. -]) -]) - -AC_DEFUN([KDE_MISSING_ARTS_ERROR], -[ - AC_MSG_ERROR([The important program $1 was not found! -Please check whether you installed aRts correctly or use ---without-arts to compile without aRts support (this will remove functionality). -]) -]) - -AC_DEFUN([KDE_SET_DEFAULT_BINDIRS], -[ - kde_default_bindirs="/usr/bin /usr/local/bin /opt/local/bin /usr/X11R6/bin /opt/kde/bin /opt/kde3/bin /usr/kde/bin /usr/local/kde/bin" - test -n "$KDEDIR" && kde_default_bindirs="$KDEDIR/bin $kde_default_bindirs" - if test -n "$KDEDIRS"; then - kde_save_IFS=$IFS - IFS=: - for dir in $KDEDIRS; do - kde_default_bindirs="$dir/bin $kde_default_bindirs " - done - IFS=$kde_save_IFS - fi -]) - -AC_DEFUN([KDE_SUBST_PROGRAMS], -[ - AC_ARG_WITH(arts, - AC_HELP_STRING([--without-arts],[build without aRts [default=no]]), - [build_arts=$withval], - [build_arts=yes] - ) - AM_CONDITIONAL(include_ARTS, test "$build_arts" '!=' "no") - if test "$build_arts" = "no"; then - AC_DEFINE(WITHOUT_ARTS, 1, [Defined if compiling without arts]) - fi - - KDE_SET_DEFAULT_BINDIRS - kde_default_bindirs="$exec_prefix/bin $prefix/bin $kde_libs_prefix/bin $kde_default_bindirs" - KDE_FIND_PATH(dcopidl, DCOPIDL, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl)]) - KDE_FIND_PATH(dcopidl2cpp, DCOPIDL2CPP, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl2cpp)]) - if test "$build_arts" '!=' "no"; then - KDE_FIND_PATH(mcopidl, MCOPIDL, [$kde_default_bindirs], [KDE_MISSING_ARTS_ERROR(mcopidl)]) - KDE_FIND_PATH(artsc-config, ARTSCCONFIG, [$kde_default_bindirs], [KDE_MISSING_ARTS_ERROR(artsc-config)]) - fi - KDE_FIND_PATH(meinproc, MEINPROC, [$kde_default_bindirs]) - - kde32ornewer=1 - kde33ornewer=1 - if test -n "$kde_qtver" && test "$kde_qtver" -lt 3; then - kde32ornewer= - kde33ornewer= - else - if test "$kde_qtver" = "3"; then - if test "$kde_qtsubver" -le 1; then - kde32ornewer= - fi - if test "$kde_qtsubver" -le 2; then - kde33ornewer= - fi - if test "$KDECONFIG" != "compiled"; then - if test `$KDECONFIG --version | grep KDE | sed 's/KDE: \(...\).*/\1/'` = 3.2; then - kde33ornewer= - fi - fi - fi - fi - - if test -n "$kde32ornewer"; then - KDE_FIND_PATH(kconfig_compiler, KCONFIG_COMPILER, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(kconfig_compiler)]) - KDE_FIND_PATH(dcopidlng, DCOPIDLNG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidlng)]) - fi - if test -n "$kde33ornewer"; then - KDE_FIND_PATH(makekdewidgets, MAKEKDEWIDGETS, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(makekdewidgets)]) - AC_SUBST(MAKEKDEWIDGETS) - fi - KDE_FIND_PATH(xmllint, XMLLINT, [${prefix}/bin ${exec_prefix}/bin], [XMLLINT=""]) - - if test -n "$MEINPROC" -a "$MEINPROC" != "compiled"; then - kde_sharedirs="/usr/share/kde /usr/local/share /usr/share /opt/kde3/share /opt/kde/share $prefix/share" - test -n "$KDEDIR" && kde_sharedirs="$KDEDIR/share $kde_sharedirs" - AC_FIND_FILE(apps/ksgmltools2/customization/kde-chunk.xsl, $kde_sharedirs, KDE_XSL_STYLESHEET) - if test "$KDE_XSL_STYLESHEET" = "NO"; then - KDE_XSL_STYLESHEET="" - else - KDE_XSL_STYLESHEET="$KDE_XSL_STYLESHEET/apps/ksgmltools2/customization/kde-chunk.xsl" - fi - fi - - DCOP_DEPENDENCIES='$(DCOPIDL)' - if test -n "$kde32ornewer"; then - KCFG_DEPENDENCIES='$(KCONFIG_COMPILER)' - DCOP_DEPENDENCIES='$(DCOPIDL) $(DCOPIDLNG)' - AC_SUBST(KCONFIG_COMPILER) - AC_SUBST(KCFG_DEPENDENCIES) - AC_SUBST(DCOPIDLNG) - fi - AC_SUBST(DCOPIDL) - AC_SUBST(DCOPIDL2CPP) - AC_SUBST(DCOP_DEPENDENCIES) - AC_SUBST(MCOPIDL) - AC_SUBST(ARTSCCONFIG) - AC_SUBST(MEINPROC) - AC_SUBST(KDE_XSL_STYLESHEET) - AC_SUBST(XMLLINT) -])dnl - -AC_DEFUN([AC_CREATE_KFSSTND], -[ -AC_REQUIRE([AC_CHECK_RPATH]) - -AC_MSG_CHECKING([for KDE paths]) -kde_result="" -kde_cached_paths=yes -AC_CACHE_VAL(kde_cv_all_paths, -[ - KDE_SET_DEFAULT_PATHS($1) - kde_cached_paths=no -]) -eval "$kde_cv_all_paths" -KDE_CHECK_PATHS_FOR_COMPLETENESS -if test "$kde_have_all_paths" = "no" && test "$kde_cached_paths" = "yes"; then - # wrong values were cached, may be, we can set better ones - kde_result= - kde_htmldir= kde_appsdir= kde_icondir= kde_sounddir= - kde_datadir= kde_locale= kde_cgidir= kde_confdir= kde_kcfgdir= - kde_mimedir= kde_toolbardir= kde_wallpaperdir= kde_templatesdir= - kde_bindir= kde_servicesdir= kde_servicetypesdir= kde_moduledir= - kde_have_all_paths= - kde_styledir= - kde_widgetdir= - xdg_appsdir = xdg_menudir= xdg_directorydir= - KDE_SET_DEFAULT_PATHS($1) - eval "$kde_cv_all_paths" - KDE_CHECK_PATHS_FOR_COMPLETENESS - kde_result="$kde_result (cache overridden)" -fi -if test "$kde_have_all_paths" = "no"; then - AC_MSG_ERROR([configure could not run a little KDE program to test the environment. -Since it had compiled and linked before, it must be a strange problem on your system. -Look at config.log for details. If you are not able to fix this, look at -http://www.kde.org/faq/installation.html or any www.kde.org mirror. -(If you're using an egcs version on Linux, you may update binutils!) -]) -else - rm -f conftest* - AC_MSG_RESULT($kde_result) -fi - -bindir=$kde_bindir - -KDE_SUBST_PROGRAMS - -]) - -AC_DEFUN([AC_SUBST_KFSSTND], -[ -AC_SUBST(kde_htmldir) -AC_SUBST(kde_appsdir) -AC_SUBST(kde_icondir) -AC_SUBST(kde_sounddir) -AC_SUBST(kde_datadir) -AC_SUBST(kde_locale) -AC_SUBST(kde_confdir) -AC_SUBST(kde_kcfgdir) -AC_SUBST(kde_mimedir) -AC_SUBST(kde_wallpaperdir) -AC_SUBST(kde_bindir) -dnl X Desktop Group standards -AC_SUBST(xdg_appsdir) -AC_SUBST(xdg_menudir) -AC_SUBST(xdg_directorydir) -dnl for KDE 2 -AC_SUBST(kde_templatesdir) -AC_SUBST(kde_servicesdir) -AC_SUBST(kde_servicetypesdir) -AC_SUBST(kde_moduledir) -AC_SUBST(kdeinitdir, '$(kde_moduledir)') -AC_SUBST(kde_styledir) -AC_SUBST(kde_widgetdir) -if test "$kde_qtver" = 1; then - kde_minidir="$kde_icondir/mini" -else -# for KDE 1 - this breaks KDE2 apps using minidir, but -# that's the plan ;-/ - kde_minidir="/dev/null" -fi -dnl AC_SUBST(kde_minidir) -dnl AC_SUBST(kde_cgidir) -dnl AC_SUBST(kde_toolbardir) -]) - -AC_DEFUN([KDE_MISC_TESTS], -[ - dnl Checks for libraries. - AC_CHECK_LIB(util, main, [LIBUTIL="-lutil"]) dnl for *BSD - AC_SUBST(LIBUTIL) - AC_CHECK_LIB(compat, main, [LIBCOMPAT="-lcompat"]) dnl for *BSD - AC_SUBST(LIBCOMPAT) - kde_have_crypt= - AC_CHECK_LIB(crypt, crypt, [LIBCRYPT="-lcrypt"; kde_have_crypt=yes], - AC_CHECK_LIB(c, crypt, [kde_have_crypt=yes], [ - AC_MSG_WARN([you have no crypt in either libcrypt or libc. -You should install libcrypt from another source or configure with PAM -support]) - kde_have_crypt=no - ])) - AC_SUBST(LIBCRYPT) - if test $kde_have_crypt = yes; then - AC_DEFINE_UNQUOTED(HAVE_CRYPT, 1, [Defines if your system has the crypt function]) - fi - AC_CHECK_SOCKLEN_T - AC_CHECK_LIB(dnet, dnet_ntoa, [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet"]) - if test $ac_cv_lib_dnet_dnet_ntoa = no; then - AC_CHECK_LIB(dnet_stub, dnet_ntoa, - [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub"]) - fi - AC_CHECK_FUNC(inet_ntoa) - if test $ac_cv_func_inet_ntoa = no; then - AC_CHECK_LIB(nsl, inet_ntoa, X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl") - fi - AC_CHECK_FUNC(connect) - if test $ac_cv_func_connect = no; then - AC_CHECK_LIB(socket, connect, X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS", , - $X_EXTRA_LIBS) - fi - - AC_CHECK_FUNC(remove) - if test $ac_cv_func_remove = no; then - AC_CHECK_LIB(posix, remove, X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix") - fi - - # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay. - AC_CHECK_FUNC(shmat, , - AC_CHECK_LIB(ipc, shmat, X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc")) - - # more headers that need to be explicitly included on darwin - AC_CHECK_HEADERS(sys/types.h stdint.h) - - # sys/bitypes.h is needed for uint32_t and friends on Tru64 - AC_CHECK_HEADERS(sys/bitypes.h) - - # darwin requires a poll emulation library - AC_CHECK_LIB(poll, poll, LIB_POLL="-lpoll") - - # for some image handling on Mac OS X - AC_CHECK_HEADERS(Carbon/Carbon.h) - - # CoreAudio framework - AC_CHECK_HEADER(CoreAudio/CoreAudio.h, [ - AC_DEFINE(HAVE_COREAUDIO, 1, [Define if you have the CoreAudio API]) - FRAMEWORK_COREAUDIO="-Xlinker -framework -Xlinker CoreAudio" - ]) - - AC_CHECK_RES_INIT - AC_SUBST(LIB_POLL) - AC_SUBST(FRAMEWORK_COREAUDIO) - LIBSOCKET="$X_EXTRA_LIBS" - AC_SUBST(LIBSOCKET) - AC_SUBST(X_EXTRA_LIBS) - AC_CHECK_LIB(ucb, killpg, [LIBUCB="-lucb"]) dnl for Solaris2.4 - AC_SUBST(LIBUCB) - - case $host in dnl this *is* LynxOS specific - *-*-lynxos* ) - AC_MSG_CHECKING([LynxOS header file wrappers]) - [CFLAGS="$CFLAGS -D__NO_INCLUDE_WARN__"] - AC_MSG_RESULT(disabled) - AC_CHECK_LIB(bsd, gethostbyname, [LIBSOCKET="-lbsd"]) dnl for LynxOS - ;; - esac - - KDE_CHECK_TYPES - KDE_CHECK_LIBDL - KDE_CHECK_STRLCPY - KDE_CHECK_PIE_SUPPORT - -# darwin needs this to initialize the environment -AC_CHECK_HEADERS(crt_externs.h) -AC_CHECK_FUNC(_NSGetEnviron, [AC_DEFINE(HAVE_NSGETENVIRON, 1, [Define if your system needs _NSGetEnviron to set up the environment])]) - -AH_VERBATIM(_DARWIN_ENVIRON, -[ -#if defined(HAVE_NSGETENVIRON) && defined(HAVE_CRT_EXTERNS_H) -# include <sys/time.h> -# include <crt_externs.h> -# define environ (*_NSGetEnviron()) -#endif -]) - -AH_VERBATIM(_AIX_STRINGS_H_BZERO, -[ -/* - * AIX defines FD_SET in terms of bzero, but fails to include <strings.h> - * that defines bzero. - */ - -#if defined(_AIX) -#include <strings.h> -#endif -]) - -AC_CHECK_FUNCS([vsnprintf snprintf]) - -AH_VERBATIM(_TRU64,[ -/* - * On HP-UX, the declaration of vsnprintf() is needed every time ! - */ - -#if !defined(HAVE_VSNPRINTF) || defined(hpux) -#if __STDC__ -#include <stdarg.h> -#include <stdlib.h> -#else -#include <varargs.h> -#endif -#ifdef __cplusplus -extern "C" -#endif -int vsnprintf(char *str, size_t n, char const *fmt, va_list ap); -#ifdef __cplusplus -extern "C" -#endif -int snprintf(char *str, size_t n, char const *fmt, ...); -#endif -]) - -]) - -dnl ------------------------------------------------------------------------ -dnl Find the header files and libraries for X-Windows. Extended the -dnl macro AC_PATH_X -dnl ------------------------------------------------------------------------ -dnl -AC_DEFUN([K_PATH_X], -[ -AC_REQUIRE([KDE_MISC_TESTS])dnl -AC_REQUIRE([KDE_CHECK_LIB64]) - -AC_ARG_ENABLE( - embedded, - AC_HELP_STRING([--enable-embedded],[link to Qt-embedded, don't use X]), - kde_use_qt_emb=$enableval, - kde_use_qt_emb=no -) - -AC_ARG_ENABLE( - qtopia, - AC_HELP_STRING([--enable-qtopia],[link to Qt-embedded, link to the Qtopia Environment]), - kde_use_qt_emb_palm=$enableval, - kde_use_qt_emb_palm=no -) - -AC_ARG_ENABLE( - mac, - AC_HELP_STRING([--enable-mac],[link to Qt/Mac (don't use X)]), - kde_use_qt_mac=$enableval, - kde_use_qt_mac=no -) - -# used to disable x11-specific stuff on special platforms -AM_CONDITIONAL(include_x11, test "$kde_use_qt_emb" = "no" && test "$kde_use_qt_mac" = "no") - -if test "$kde_use_qt_emb" = "no" && test "$kde_use_qt_mac" = "no"; then - -AC_MSG_CHECKING(for X) - -AC_CACHE_VAL(kde_cv_have_x, -[# One or both of the vars are not set, and there is no cached value. -if test "{$x_includes+set}" = set || test "$x_includes" = NONE; then - kde_x_includes=NO -else - kde_x_includes=$x_includes -fi -if test "{$x_libraries+set}" = set || test "$x_libraries" = NONE; then - kde_x_libraries=NO -else - kde_x_libraries=$x_libraries -fi - -# below we use the standard autoconf calls -ac_x_libraries=$kde_x_libraries -ac_x_includes=$kde_x_includes - -KDE_PATH_X_DIRECT -dnl AC_PATH_X_XMKMF picks /usr/lib as the path for the X libraries. -dnl Unfortunately, if compiling with the N32 ABI, this is not the correct -dnl location. The correct location is /usr/lib32 or an undefined value -dnl (the linker is smart enough to pick the correct default library). -dnl Things work just fine if you use just AC_PATH_X_DIRECT. -dnl Solaris has a similar problem. AC_PATH_X_XMKMF forces x_includes to -dnl /usr/openwin/include, which doesn't work. /usr/include does work, so -dnl x_includes should be left alone. -case "$host" in -mips-sgi-irix6*) - ;; -*-*-solaris*) - ;; -*) - _AC_PATH_X_XMKMF - if test -z "$ac_x_includes"; then - ac_x_includes="." - fi - if test -z "$ac_x_libraries"; then - ac_x_libraries="/usr/lib${kdelibsuff}" - fi -esac -#from now on we use our own again - -# when the user already gave --x-includes, we ignore -# what the standard autoconf macros told us. -if test "$kde_x_includes" = NO; then - kde_x_includes=$ac_x_includes -fi - -# for --x-libraries too -if test "$kde_x_libraries" = NO; then - kde_x_libraries=$ac_x_libraries -fi - -if test "$kde_x_includes" = NO; then - AC_MSG_ERROR([Can't find X includes. Please check your installation and add the correct paths!]) -fi - -if test "$kde_x_libraries" = NO; then - AC_MSG_ERROR([Can't find X libraries. Please check your installation and add the correct paths!]) -fi - -# Record where we found X for the cache. -kde_cv_have_x="have_x=yes \ - kde_x_includes=$kde_x_includes kde_x_libraries=$kde_x_libraries" -])dnl - -eval "$kde_cv_have_x" - -if test "$have_x" != yes; then - AC_MSG_RESULT($have_x) - no_x=yes -else - AC_MSG_RESULT([libraries $kde_x_libraries, headers $kde_x_includes]) -fi - -if test -z "$kde_x_includes" || test "x$kde_x_includes" = xNONE; then - X_INCLUDES="" - x_includes="."; dnl better than nothing :- - else - x_includes=$kde_x_includes - X_INCLUDES="-I$x_includes" -fi - -if test -z "$kde_x_libraries" || test "x$kde_x_libraries" = xNONE; then - X_LDFLAGS="" - x_libraries="/usr/lib"; dnl better than nothing :- - else - x_libraries=$kde_x_libraries - X_LDFLAGS="-L$x_libraries" -fi -all_includes="$X_INCLUDES" -all_libraries="$X_LDFLAGS $LDFLAGS_AS_NEEDED $LDFLAGS_NEW_DTAGS" - -# Check for libraries that X11R6 Xt/Xaw programs need. -ac_save_LDFLAGS="$LDFLAGS" -LDFLAGS="$LDFLAGS $X_LDFLAGS" -# SM needs ICE to (dynamically) link under SunOS 4.x (so we have to -# check for ICE first), but we must link in the order -lSM -lICE or -# we get undefined symbols. So assume we have SM if we have ICE. -# These have to be linked with before -lX11, unlike the other -# libraries we check for below, so use a different variable. -# --interran@uluru.Stanford.EDU, kb@cs.umb.edu. -AC_CHECK_LIB(ICE, IceConnectionNumber, - [LIBSM="-lSM -lICE"], , $X_EXTRA_LIBS) -LDFLAGS="$ac_save_LDFLAGS" - -LIB_X11='-lX11 $(LIBSOCKET)' - -AC_MSG_CHECKING(for libXext) -AC_CACHE_VAL(kde_cv_have_libXext, -[ -kde_ldflags_safe="$LDFLAGS" -kde_libs_safe="$LIBS" - -LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS" -LIBS="-lXext -lX11 $LIBSOCKET" - -AC_TRY_LINK([ -#include <stdio.h> -#ifdef STDC_HEADERS -# include <stdlib.h> -#endif -], -[ -printf("hello Xext\n"); -], -kde_cv_have_libXext=yes, -kde_cv_have_libXext=no -) - -LDFLAGS=$kde_ldflags_safe -LIBS=$kde_libs_safe -]) - -AC_MSG_RESULT($kde_cv_have_libXext) - -if test "$kde_cv_have_libXext" = "no"; then - AC_MSG_ERROR([We need a working libXext to proceed. Since configure -can't find it itself, we stop here assuming that make wouldn't find -them either.]) -fi - -LIB_XEXT="-lXext" -QTE_NORTTI="" - -elif test "$kde_use_qt_emb" = "yes"; then - dnl We're using QT Embedded - CPPFLAGS=-DQWS - CXXFLAGS="$CXXFLAGS -fno-rtti" - QTE_NORTTI="-fno-rtti -DQWS" - X_PRE_LIBS="" - LIB_X11="" - LIB_XEXT="" - LIB_XRENDER="" - LIBSM="" - X_INCLUDES="" - X_LDFLAGS="" - x_includes="" - x_libraries="" -elif test "$kde_use_qt_mac" = "yes"; then - dnl We're using QT/Mac (I use QT_MAC so that qglobal.h doesn't *have* to - dnl be included to get the information) --Sam - CXXFLAGS="$CXXFLAGS -DQT_MAC -no-cpp-precomp" - CFLAGS="$CFLAGS -DQT_MAC -no-cpp-precomp" - X_PRE_LIBS="" - LIB_X11="" - LIB_XEXT="" - LIB_XRENDER="" - LIBSM="" - X_INCLUDES="" - X_LDFLAGS="" - x_includes="" - x_libraries="" -fi -AC_SUBST(X_PRE_LIBS) -AC_SUBST(LIB_X11) -AC_SUBST(LIB_XRENDER) -AC_SUBST(LIBSM) -AC_SUBST(X_INCLUDES) -AC_SUBST(X_LDFLAGS) -AC_SUBST(x_includes) -AC_SUBST(x_libraries) -AC_SUBST(QTE_NORTTI) -AC_SUBST(LIB_XEXT) - -]) - -AC_DEFUN([KDE_PRINT_QT_PROGRAM], -[ -AC_REQUIRE([KDE_USE_QT]) -cat > conftest.$ac_ext <<EOF -#include "confdefs.h" -#include <qglobal.h> -#include <qapplication.h> -EOF -if test "$kde_qtver" = "2"; then -cat >> conftest.$ac_ext <<EOF -#include <qevent.h> -#include <qstring.h> -#include <qstyle.h> -EOF - -if test $kde_qtsubver -gt 0; then -cat >> conftest.$ac_ext <<EOF -#if QT_VERSION < 210 -#error 1 -#endif -EOF -fi -fi - -if test "$kde_qtver" = "3"; then -cat >> conftest.$ac_ext <<EOF -#include <qcursor.h> -#include <qstylefactory.h> -#include <private/qucomextra_p.h> -EOF -fi - -echo "#if ! ($kde_qt_verstring)" >> conftest.$ac_ext -cat >> conftest.$ac_ext <<EOF -#error 1 -#endif - -int main() { -EOF -if test "$kde_qtver" = "2"; then -cat >> conftest.$ac_ext <<EOF - QStringList *t = new QStringList(); - Q_UNUSED(t); -EOF -if test $kde_qtsubver -gt 0; then -cat >> conftest.$ac_ext <<EOF - QString s; - s.setLatin1("Elvis is alive", 14); -EOF -fi -fi -if test "$kde_qtver" = "3"; then -cat >> conftest.$ac_ext <<EOF - (void)QStyleFactory::create(QString::null); - QCursor c(Qt::WhatsThisCursor); -EOF -fi -cat >> conftest.$ac_ext <<EOF - return 0; -} -EOF -]) - -AC_DEFUN([KDE_USE_QT], -[ -if test -z "$1"; then - # Current default Qt version: 3.3 - kde_qtver=3 - kde_qtsubver=3 -else - kde_qtsubver=`echo "$1" | sed -e 's#[0-9][0-9]*\.\([0-9][0-9]*\).*#\1#'` - # following is the check if subversion isnt found in passed argument - if test "$kde_qtsubver" = "$1"; then - kde_qtsubver=1 - fi - kde_qtver=`echo "$1" | sed -e 's#^\([0-9][0-9]*\)\..*#\1#'` - if test "$kde_qtver" = "1"; then - kde_qtsubver=42 - fi -fi - -if test -z "$2"; then - if test "$kde_qtver" = "2"; then - if test $kde_qtsubver -gt 0; then - kde_qt_minversion=">= Qt 2.2.2" - else - kde_qt_minversion=">= Qt 2.0.2" - fi - fi - if test "$kde_qtver" = "3"; then - if test $kde_qtsubver -gt 0; then - if test $kde_qtsubver -gt 1; then - if test $kde_qtsubver -gt 2; then - kde_qt_minversion=">= Qt 3.3 and < 4.0" - else - kde_qt_minversion=">= Qt 3.2 and < 4.0" - fi - else - kde_qt_minversion=">= Qt 3.1 (20021021) and < 4.0" - fi - else - kde_qt_minversion=">= Qt 3.0 and < 4.0" - fi - fi - if test "$kde_qtver" = "1"; then - kde_qt_minversion=">= 1.42 and < 2.0" - fi -else - kde_qt_minversion="$2" -fi - -if test -z "$3"; then - if test $kde_qtver = 3; then - if test $kde_qtsubver -gt 0; then - kde_qt_verstring="QT_VERSION >= 0x03@VER@00 && QT_VERSION < 0x040000" - qtsubver=`echo "00$kde_qtsubver" | sed -e 's,.*\(..\)$,\1,'` - kde_qt_verstring=`echo $kde_qt_verstring | sed -e "s,@VER@,$qtsubver,"` - else - kde_qt_verstring="QT_VERSION >= 300 && QT_VERSION < 0x040000" - fi - fi - if test $kde_qtver = 2; then - if test $kde_qtsubver -gt 0; then - kde_qt_verstring="QT_VERSION >= 222" - else - kde_qt_verstring="QT_VERSION >= 200" - fi - fi - if test $kde_qtver = 1; then - kde_qt_verstring="QT_VERSION >= 142 && QT_VERSION < 200" - fi -else - kde_qt_verstring="$3" -fi - -if test $kde_qtver = 4; then - kde_qt_dirs="$QTDIR /usr/lib/qt4 /usr/lib/qt /usr/share/qt4" -fi -if test $kde_qtver = 3; then - kde_qt_dirs="$QTDIR /usr/lib/qt3 /usr/lib/qt /usr/share/qt3" -fi -if test $kde_qtver = 2; then - kde_qt_dirs="$QTDIR /usr/lib/qt2 /usr/lib/qt" -fi -if test $kde_qtver = 1; then - kde_qt_dirs="$QTDIR /usr/lib/qt" -fi -]) - -AC_DEFUN([KDE_CHECK_QT_DIRECT], -[ -AC_REQUIRE([KDE_USE_QT]) -AC_MSG_CHECKING([if Qt compiles without flags]) -AC_CACHE_VAL(kde_cv_qt_direct, -[ -AC_LANG_SAVE -AC_LANG_CPLUSPLUS -ac_LD_LIBRARY_PATH_safe=$LD_LIBRARY_PATH -ac_LIBRARY_PATH="$LIBRARY_PATH" -ac_cxxflags_safe="$CXXFLAGS" -ac_ldflags_safe="$LDFLAGS" -ac_libs_safe="$LIBS" - -CXXFLAGS="$CXXFLAGS -I$qt_includes" -LDFLAGS="$LDFLAGS $X_LDFLAGS" -if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then -LIBS="$LIBQT -lXext -lX11 $LIBSOCKET" -else -LIBS="$LIBQT $LIBSOCKET" -fi -LD_LIBRARY_PATH= -export LD_LIBRARY_PATH -LIBRARY_PATH= -export LIBRARY_PATH - -KDE_PRINT_QT_PROGRAM - -if AC_TRY_EVAL(ac_link) && test -s conftest; then - kde_cv_qt_direct="yes" -else - kde_cv_qt_direct="no" - echo "configure: failed program was:" >&AC_FD_CC - cat conftest.$ac_ext >&AC_FD_CC -fi - -rm -f conftest* -CXXFLAGS="$ac_cxxflags_safe" -LDFLAGS="$ac_ldflags_safe" -LIBS="$ac_libs_safe" - -LD_LIBRARY_PATH="$ac_LD_LIBRARY_PATH_safe" -export LD_LIBRARY_PATH -LIBRARY_PATH="$ac_LIBRARY_PATH" -export LIBRARY_PATH -AC_LANG_RESTORE -]) - -if test "$kde_cv_qt_direct" = "yes"; then - AC_MSG_RESULT(yes) - $1 -else - AC_MSG_RESULT(no) - $2 -fi -]) - -dnl ------------------------------------------------------------------------ -dnl Try to find the Qt headers and libraries. -dnl $(QT_LDFLAGS) will be -Lqtliblocation (if needed) -dnl and $(QT_INCLUDES) will be -Iqthdrlocation (if needed) -dnl ------------------------------------------------------------------------ -dnl -AC_DEFUN([AC_PATH_QT_1_3], -[ -AC_REQUIRE([K_PATH_X]) -AC_REQUIRE([KDE_USE_QT]) -AC_REQUIRE([KDE_CHECK_LIB64]) - -dnl ------------------------------------------------------------------------ -dnl Add configure flag to enable linking to MT version of Qt library. -dnl ------------------------------------------------------------------------ - -AC_ARG_ENABLE( - mt, - AC_HELP_STRING([--disable-mt],[link to non-threaded Qt (deprecated)]), - kde_use_qt_mt=$enableval, - [ - if test $kde_qtver = 3; then - kde_use_qt_mt=yes - else - kde_use_qt_mt=no - fi - ] -) - -USING_QT_MT="" - -dnl ------------------------------------------------------------------------ -dnl If we not get --disable-qt-mt then adjust some vars for the host. -dnl ------------------------------------------------------------------------ - -KDE_MT_LDFLAGS= -KDE_MT_LIBS= -if test "x$kde_use_qt_mt" = "xyes"; then - KDE_CHECK_THREADING - if test "x$kde_use_threading" = "xyes"; then - CPPFLAGS="$USE_THREADS -DQT_THREAD_SUPPORT $CPPFLAGS" - KDE_MT_LDFLAGS="$USE_THREADS" - KDE_MT_LIBS="$LIBPTHREAD" - else - kde_use_qt_mt=no - fi -fi -AC_SUBST(KDE_MT_LDFLAGS) -AC_SUBST(KDE_MT_LIBS) - -kde_qt_was_given=yes - -dnl ------------------------------------------------------------------------ -dnl If we haven't been told how to link to Qt, we work it out for ourselves. -dnl ------------------------------------------------------------------------ -if test -z "$LIBQT_GLOB"; then - if test "x$kde_use_qt_emb" = "xyes"; then - LIBQT_GLOB="libqte.*" - else - LIBQT_GLOB="libqt.*" - fi -fi - -dnl ------------------------------------------------------------ -dnl If we got --enable-embedded then adjust the Qt library name. -dnl ------------------------------------------------------------ -if test "x$kde_use_qt_emb" = "xyes"; then - qtlib="qte" -else - qtlib="qt" -fi - -kde_int_qt="-l$qtlib" - -if test -z "$LIBQPE"; then -dnl ------------------------------------------------------------ -dnl If we got --enable-palmtop then add -lqpe to the link line -dnl ------------------------------------------------------------ - if test "x$kde_use_qt_emb" = "xyes"; then - if test "x$kde_use_qt_emb_palm" = "xyes"; then - LIB_QPE="-lqpe" - else - LIB_QPE="" - fi - else - LIB_QPE="" - fi -fi - -dnl ------------------------------------------------------------------------ -dnl If we got --enable-qt-mt then adjust the Qt library name for the host. -dnl ------------------------------------------------------------------------ - -if test "x$kde_use_qt_mt" = "xyes"; then - LIBQT="-l$qtlib-mt" - kde_int_qt="-l$qtlib-mt" - LIBQT_GLOB="lib$qtlib-mt.*" - USING_QT_MT="using -mt" -else - LIBQT="-l$qtlib" -fi - -if test $kde_qtver != 1; then - - AC_REQUIRE([AC_FIND_PNG]) - AC_REQUIRE([AC_FIND_JPEG]) - LIBQT="$LIBQT $LIBPNG $LIBJPEG" -fi - -if test $kde_qtver = 3; then - AC_REQUIRE([KDE_CHECK_LIBDL]) - LIBQT="$LIBQT $LIBDL" -fi - -AC_MSG_CHECKING([for Qt]) - -if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then -LIBQT="$LIBQT $X_PRE_LIBS -lXext -lX11 $LIBSM $LIBSOCKET" -fi -ac_qt_includes=NO ac_qt_libraries=NO ac_qt_bindir=NO -qt_libraries="" -qt_includes="" -AC_ARG_WITH(qt-dir, - AC_HELP_STRING([--with-qt-dir=DIR],[where the root of Qt is installed ]), - [ ac_qt_includes="$withval"/include - ac_qt_libraries="$withval"/lib${kdelibsuff} - ac_qt_bindir="$withval"/bin - ]) - -AC_ARG_WITH(qt-includes, - AC_HELP_STRING([--with-qt-includes=DIR],[where the Qt includes are. ]), - [ - ac_qt_includes="$withval" - ]) - -kde_qt_libs_given=no - -AC_ARG_WITH(qt-libraries, - AC_HELP_STRING([--with-qt-libraries=DIR],[where the Qt library is installed.]), - [ ac_qt_libraries="$withval" - kde_qt_libs_given=yes - ]) - -AC_CACHE_VAL(ac_cv_have_qt, -[#try to guess Qt locations - -qt_incdirs="" -for dir in $kde_qt_dirs; do - qt_incdirs="$qt_incdirs $dir/include $dir" -done -qt_incdirs="$QTINC $qt_incdirs /usr/local/qt/include /usr/include/qt /usr/include /usr/X11R6/include/X11/qt /usr/X11R6/include/qt /usr/X11R6/include/qt2 /usr/include/qt3 $x_includes" -if test ! "$ac_qt_includes" = "NO"; then - qt_incdirs="$ac_qt_includes $qt_incdirs" -fi - -if test "$kde_qtver" != "1"; then - kde_qt_header=qstyle.h -else - kde_qt_header=qglobal.h -fi - -AC_FIND_FILE($kde_qt_header, $qt_incdirs, qt_incdir) -ac_qt_includes="$qt_incdir" - -qt_libdirs="" -for dir in $kde_qt_dirs; do - qt_libdirs="$qt_libdirs $dir/lib${kdelibsuff} $dir" -done -qt_libdirs="$QTLIB $qt_libdirs /usr/X11R6/lib /usr/lib /usr/local/qt/lib $x_libraries" -if test ! "$ac_qt_libraries" = "NO"; then - qt_libdir=$ac_qt_libraries -else - qt_libdirs="$ac_qt_libraries $qt_libdirs" - # if the Qt was given, the chance is too big that libqt.* doesn't exist - qt_libdir=NONE - for dir in $qt_libdirs; do - try="ls -1 $dir/${LIBQT_GLOB}" - if test -n "`$try 2> /dev/null`"; then qt_libdir=$dir; break; else echo "tried $dir" >&AC_FD_CC ; fi - done -fi -for a in $qt_libdir/lib`echo ${kde_int_qt} | sed 's,^-l,,'`_incremental.*; do - if test -e "$a"; then - LIBQT="$LIBQT ${kde_int_qt}_incremental" - break - fi -done - -ac_qt_libraries="$qt_libdir" - -AC_LANG_SAVE -AC_LANG_CPLUSPLUS - -ac_cxxflags_safe="$CXXFLAGS" -ac_ldflags_safe="$LDFLAGS" -ac_libs_safe="$LIBS" - -CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes" -LDFLAGS="$LDFLAGS -L$qt_libdir $all_libraries $USER_LDFLAGS $KDE_MT_LDFLAGS" -LIBS="$LIBS $LIBQT $KDE_MT_LIBS" - -KDE_PRINT_QT_PROGRAM - -if AC_TRY_EVAL(ac_link) && test -s conftest; then - rm -f conftest* -else - echo "configure: failed program was:" >&AC_FD_CC - cat conftest.$ac_ext >&AC_FD_CC - ac_qt_libraries="NO" -fi -rm -f conftest* -CXXFLAGS="$ac_cxxflags_safe" -LDFLAGS="$ac_ldflags_safe" -LIBS="$ac_libs_safe" - -AC_LANG_RESTORE -if test "$ac_qt_includes" = NO || test "$ac_qt_libraries" = NO; then - ac_cv_have_qt="have_qt=no" - ac_qt_notfound="" - missing_qt_mt="" - if test "$ac_qt_includes" = NO; then - if test "$ac_qt_libraries" = NO; then - ac_qt_notfound="(headers and libraries)"; - else - ac_qt_notfound="(headers)"; - fi - else - if test "x$kde_use_qt_mt" = "xyes"; then - missing_qt_mt=" -Make sure that you have compiled Qt with thread support!" - ac_qt_notfound="(library $qtlib-mt)"; - else - ac_qt_notfound="(library $qtlib)"; - fi - fi - - AC_MSG_ERROR([Qt ($kde_qt_minversion) $ac_qt_notfound not found. Please check your installation! -For more details about this problem, look at the end of config.log.$missing_qt_mt]) -else - have_qt="yes" -fi -]) - -eval "$ac_cv_have_qt" - -if test "$have_qt" != yes; then - AC_MSG_RESULT([$have_qt]); -else - ac_cv_have_qt="have_qt=yes \ - ac_qt_includes=$ac_qt_includes ac_qt_libraries=$ac_qt_libraries" - AC_MSG_RESULT([libraries $ac_qt_libraries, headers $ac_qt_includes $USING_QT_MT]) - - qt_libraries="$ac_qt_libraries" - qt_includes="$ac_qt_includes" -fi - -if test ! "$kde_qt_libs_given" = "yes" && test ! "$kde_qtver" = 3; then - KDE_CHECK_QT_DIRECT(qt_libraries= ,[]) -fi - -AC_SUBST(qt_libraries) -AC_SUBST(qt_includes) - -if test "$qt_includes" = "$x_includes" || test -z "$qt_includes"; then - QT_INCLUDES="" -else - QT_INCLUDES="-I$qt_includes" - all_includes="$QT_INCLUDES $all_includes" -fi - -if test "$qt_libraries" = "$x_libraries" || test -z "$qt_libraries"; then - QT_LDFLAGS="" -else - QT_LDFLAGS="-L$qt_libraries" - all_libraries="$QT_LDFLAGS $all_libraries" -fi -test -z "$KDE_MT_LDFLAGS" || all_libraries="$all_libraries $KDE_MT_LDFLAGS" - -AC_SUBST(QT_INCLUDES) -AC_SUBST(QT_LDFLAGS) -AC_PATH_QT_MOC_UIC - -KDE_CHECK_QT_JPEG - -if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then -LIB_QT="$kde_int_qt $LIBJPEG_QT "'$(LIBZ) $(LIBPNG) -lXext $(LIB_X11) $(LIBSM)' -else -LIB_QT="$kde_int_qt $LIBJPEG_QT "'$(LIBZ) $(LIBPNG)' -fi -test -z "$KDE_MT_LIBS" || LIB_QT="$LIB_QT $KDE_MT_LIBS" -for a in $qt_libdir/lib`echo ${kde_int_qt} | sed 's,^-l,,'`_incremental.*; do - if test -e "$a"; then - LIB_QT="$LIB_QT ${kde_int_qt}_incremental" - break - fi -done - -AC_SUBST(LIB_QT) -AC_SUBST(LIB_QPE) - -AC_SUBST(kde_qtver) -]) - -AC_DEFUN([AC_PATH_QT], -[ -AC_PATH_QT_1_3 -]) - -AC_DEFUN([KDE_CHECK_UIC_PLUGINS], -[ -AC_REQUIRE([AC_PATH_QT_MOC_UIC]) - -if test x$ac_uic_supports_libpath = xyes; then - -AC_MSG_CHECKING([if UIC has KDE plugins available]) -AC_CACHE_VAL(kde_cv_uic_plugins, -[ -cat > actest.ui << EOF -<!DOCTYPE UI><UI version="3.0" stdsetdef="1"> -<class>NewConnectionDialog</class> -<widget class="QDialog"> - <widget class="KLineEdit"> - <property name="name"> - <cstring>testInput</cstring> - </property> - </widget> -</widget> -</UI> -EOF - - - -kde_cv_uic_plugins=no -kde_line="$UIC_PATH -L $kde_widgetdir" -if test x$ac_uic_supports_nounload = xyes; then - kde_line="$kde_line -nounload" -fi -kde_line="$kde_line -impl actest.h actest.ui > actest.cpp" -if AC_TRY_EVAL(kde_line); then - # if you're trying to debug this check and think it's incorrect, - # better check your installation. The check _is_ correct - your - # installation is not. - if test -f actest.cpp && grep klineedit actest.cpp > /dev/null; then - kde_cv_uic_plugins=yes - fi -fi -rm -f actest.ui actest.cpp -]) - -AC_MSG_RESULT([$kde_cv_uic_plugins]) -if test "$kde_cv_uic_plugins" != yes; then - AC_MSG_ERROR([ -you need to install kdelibs first. - -If you did install kdelibs, then the Qt version that is picked up by -this configure is not the same version you used to compile kdelibs. -The Qt Plugin installed by kdelibs is *ONLY* loadable if it is the -_same Qt version_, compiled with the _same compiler_ and the same Qt -configuration settings. -]) -fi -fi -]) - -AC_DEFUN([KDE_CHECK_FINAL], -[ - AC_ARG_ENABLE(final, - AC_HELP_STRING([--enable-final], - [build size optimized apps (experimental - needs lots of memory)]), - kde_use_final=$enableval, kde_use_final=no) - - if test "x$kde_use_final" = "xyes"; then - KDE_USE_FINAL_TRUE="" - KDE_USE_FINAL_FALSE="#" - else - KDE_USE_FINAL_TRUE="#" - KDE_USE_FINAL_FALSE="" - fi - AC_SUBST(KDE_USE_FINAL_TRUE) - AC_SUBST(KDE_USE_FINAL_FALSE) -]) - -AC_DEFUN([KDE_CHECK_CLOSURE], -[ - AC_ARG_ENABLE(closure, - AC_HELP_STRING([--enable-closure],[delay template instantiation]), - kde_use_closure=$enableval, kde_use_closure=no) - - KDE_NO_UNDEFINED="" - if test "x$kde_use_closure" = "xyes"; then - KDE_USE_CLOSURE_TRUE="" - KDE_USE_CLOSURE_FALSE="#" -# CXXFLAGS="$CXXFLAGS $REPO" - else - KDE_USE_CLOSURE_TRUE="#" - KDE_USE_CLOSURE_FALSE="" - KDE_NO_UNDEFINED="" - case $host in - *-*-linux-gnu) - KDE_CHECK_COMPILER_FLAG([Wl,--no-undefined], - [KDE_CHECK_COMPILER_FLAG([Wl,--allow-shlib-undefined], - [KDE_NO_UNDEFINED="-Wl,--no-undefined -Wl,--allow-shlib-undefined"], - [KDE_NO_UNDEFINED=""])], - [KDE_NO_UNDEFINED=""]) - ;; - esac - fi - AC_SUBST(KDE_USE_CLOSURE_TRUE) - AC_SUBST(KDE_USE_CLOSURE_FALSE) - AC_SUBST(KDE_NO_UNDEFINED) -]) - -dnl Check if the linker supports --enable-new-dtags and --as-needed -AC_DEFUN([KDE_CHECK_NEW_LDFLAGS], -[ - AC_ARG_ENABLE(new_ldflags, - AC_HELP_STRING([--enable-new-ldflags], - [enable the new linker flags]), - kde_use_new_ldflags=$enableval, - kde_use_new_ldflags=no) - - LDFLAGS_AS_NEEDED="" - LDFLAGS_NEW_DTAGS="" - if test "x$kde_use_new_ldflags" = "xyes"; then - LDFLAGS_NEW_DTAGS="" - KDE_CHECK_COMPILER_FLAG([Wl,--enable-new-dtags], - [LDFLAGS_NEW_DTAGS="-Wl,--enable-new-dtags"],) - - KDE_CHECK_COMPILER_FLAG([Wl,--as-needed], - [LDFLAGS_AS_NEEDED="-Wl,--as-needed"],) - fi - AC_SUBST(LDFLAGS_AS_NEEDED) - AC_SUBST(LDFLAGS_NEW_DTAGS) -]) - -AC_DEFUN([KDE_CHECK_NMCHECK], -[ - AC_ARG_ENABLE(nmcheck,AC_HELP_STRING([--enable-nmcheck],[enable automatic namespace cleanness check]), - kde_use_nmcheck=$enableval, kde_use_nmcheck=no) - - if test "$kde_use_nmcheck" = "yes"; then - KDE_USE_NMCHECK_TRUE="" - KDE_USE_NMCHECK_FALSE="#" - else - KDE_USE_NMCHECK_TRUE="#" - KDE_USE_NMCHECK_FALSE="" - fi - AC_SUBST(KDE_USE_NMCHECK_TRUE) - AC_SUBST(KDE_USE_NMCHECK_FALSE) -]) - -AC_DEFUN([KDE_EXPAND_MAKEVAR], [ -savex=$exec_prefix -test "x$exec_prefix" = xNONE && exec_prefix=$prefix -tmp=$$2 -while $1=`eval echo "$tmp"`; test "x$$1" != "x$tmp"; do tmp=$$1; done -exec_prefix=$savex -]) - -dnl ------------------------------------------------------------------------ -dnl Now, the same with KDE -dnl $(KDE_LDFLAGS) will be the kdeliblocation (if needed) -dnl and $(kde_includes) will be the kdehdrlocation (if needed) -dnl ------------------------------------------------------------------------ -dnl -AC_DEFUN([AC_BASE_PATH_KDE], -[ -AC_REQUIRE([KDE_CHECK_STL]) -AC_REQUIRE([AC_PATH_QT])dnl -AC_REQUIRE([KDE_CHECK_LIB64]) - -AC_CHECK_RPATH -AC_MSG_CHECKING([for KDE]) - -if test "${prefix}" != NONE; then - kde_includes=${includedir} - KDE_EXPAND_MAKEVAR(ac_kde_includes, includedir) - - kde_libraries=${libdir} - KDE_EXPAND_MAKEVAR(ac_kde_libraries, libdir) - -else - ac_kde_includes= - ac_kde_libraries= - kde_libraries="" - kde_includes="" -fi - -AC_CACHE_VAL(ac_cv_have_kde, -[#try to guess kde locations - -if test "$kde_qtver" = 1; then - kde_check_header="ksock.h" - kde_check_lib="libkdecore.la" -else - kde_check_header="ksharedptr.h" - kde_check_lib="libkio.la" -fi - -if test -z "$1"; then - -kde_incdirs="$kde_libs_prefix/include /usr/lib/kde/include /usr/local/kde/include /usr/local/include /usr/kde/include /usr/include/kde /usr/include /opt/kde3/include /opt/kde/include $x_includes $qt_includes" -test -n "$KDEDIR" && kde_incdirs="$KDEDIR/include $KDEDIR/include/kde $KDEDIR $kde_incdirs" -kde_incdirs="$ac_kde_includes $kde_incdirs" -AC_FIND_FILE($kde_check_header, $kde_incdirs, kde_incdir) -ac_kde_includes="$kde_incdir" - -if test -n "$ac_kde_includes" && test ! -r "$ac_kde_includes/$kde_check_header"; then - AC_MSG_ERROR([ -in the prefix, you've chosen, are no KDE headers installed. This will fail. -So, check this please and use another prefix!]) -fi - -kde_libdirs="$kde_libs_prefix/lib${kdelibsuff} /usr/lib/kde/lib${kdelibsuff} /usr/local/kde/lib${kdelibsuff} /usr/kde/lib${kdelibsuff} /usr/lib${kdelibsuff}/kde /usr/lib${kdelibsuff}/kde3 /usr/lib${kdelibsuff} /usr/X11R6/lib${kdelibsuff} /usr/local/lib${kdelibsuff} /opt/kde3/lib${kdelibsuff} /opt/kde/lib${kdelibsuff} /usr/X11R6/kde/lib${kdelibsuff}" -test -n "$KDEDIR" && kde_libdirs="$KDEDIR/lib${kdelibsuff} $KDEDIR $kde_libdirs" -kde_libdirs="$ac_kde_libraries $libdir $kde_libdirs" -AC_FIND_FILE($kde_check_lib, $kde_libdirs, kde_libdir) -ac_kde_libraries="$kde_libdir" - -kde_widgetdir=NO -dnl this might be somewhere else -AC_FIND_FILE("kde3/plugins/designer/kdewidgets.la", $kde_libdirs, kde_widgetdir) - -if test -n "$ac_kde_libraries" && test ! -r "$ac_kde_libraries/$kde_check_lib"; then -AC_MSG_ERROR([ -in the prefix, you've chosen, are no KDE libraries installed. This will fail. -So, check this please and use another prefix!]) -fi - -if test -n "$kde_widgetdir" && test ! -r "$kde_widgetdir/kde3/plugins/designer/kdewidgets.la"; then -AC_MSG_ERROR([ -I can't find the designer plugins. These are required and should have been installed -by kdelibs]) -fi - -if test -n "$kde_widgetdir"; then - kde_widgetdir="$kde_widgetdir/kde3/plugins/designer" -fi - - -if test "$ac_kde_includes" = NO || test "$ac_kde_libraries" = NO || test "$kde_widgetdir" = NO; then - ac_cv_have_kde="have_kde=no" -else - ac_cv_have_kde="have_kde=yes \ - ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries" -fi - -else dnl test -z $1, e.g. from kdelibs - - ac_cv_have_kde="have_kde=no" - -fi -])dnl - -eval "$ac_cv_have_kde" - -if test "$have_kde" != "yes"; then - if test "${prefix}" = NONE; then - ac_kde_prefix="$ac_default_prefix" - else - ac_kde_prefix="$prefix" - fi - if test "$exec_prefix" = NONE; then - ac_kde_exec_prefix="$ac_kde_prefix" - AC_MSG_RESULT([will be installed in $ac_kde_prefix]) - else - ac_kde_exec_prefix="$exec_prefix" - AC_MSG_RESULT([will be installed in $ac_kde_prefix and $ac_kde_exec_prefix]) - fi - - kde_libraries="${libdir}" - kde_includes="${includedir}" - -else - ac_cv_have_kde="have_kde=yes \ - ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries" - AC_MSG_RESULT([libraries $ac_kde_libraries, headers $ac_kde_includes]) - - kde_libraries="$ac_kde_libraries" - kde_includes="$ac_kde_includes" -fi -AC_SUBST(kde_libraries) -AC_SUBST(kde_includes) - -if test "$kde_includes" = "$x_includes" || test "$kde_includes" = "$qt_includes" || test "$kde_includes" = "/usr/include"; then - KDE_INCLUDES="" -else - KDE_INCLUDES="-I$kde_includes" - all_includes="$KDE_INCLUDES $all_includes" -fi - -KDE_DEFAULT_CXXFLAGS="-DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION" - -KDE_LDFLAGS="-L$kde_libraries" -if test ! "$kde_libraries" = "$x_libraries" && test ! "$kde_libraries" = "$qt_libraries" ; then - all_libraries="$KDE_LDFLAGS $all_libraries" -fi - -AC_SUBST(KDE_LDFLAGS) -AC_SUBST(KDE_INCLUDES) - -AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) - -all_libraries="$all_libraries $USER_LDFLAGS" -all_includes="$all_includes $USER_INCLUDES" -AC_SUBST(all_includes) -AC_SUBST(all_libraries) - -if test -z "$1"; then -KDE_CHECK_UIC_PLUGINS -fi - -ac_kde_libraries="$kde_libdir" - -AC_SUBST(AUTODIRS) - - -]) - -AC_DEFUN([KDE_CHECK_EXTRA_LIBS], -[ -AC_MSG_CHECKING(for extra includes) -AC_ARG_WITH(extra-includes,AC_HELP_STRING([--with-extra-includes=DIR],[adds non standard include paths]), - kde_use_extra_includes="$withval", - kde_use_extra_includes=NONE -) -kde_extra_includes= -if test -n "$kde_use_extra_includes" && \ - test "$kde_use_extra_includes" != "NONE"; then - - ac_save_ifs=$IFS - IFS=':' - for dir in $kde_use_extra_includes; do - kde_extra_includes="$kde_extra_includes $dir" - USER_INCLUDES="$USER_INCLUDES -I$dir" - done - IFS=$ac_save_ifs - kde_use_extra_includes="added" -else - kde_use_extra_includes="no" -fi -AC_SUBST(USER_INCLUDES) - -AC_MSG_RESULT($kde_use_extra_includes) - -kde_extra_libs= -AC_MSG_CHECKING(for extra libs) -AC_ARG_WITH(extra-libs,AC_HELP_STRING([--with-extra-libs=DIR],[adds non standard library paths]), - kde_use_extra_libs=$withval, - kde_use_extra_libs=NONE -) -if test -n "$kde_use_extra_libs" && \ - test "$kde_use_extra_libs" != "NONE"; then - - ac_save_ifs=$IFS - IFS=':' - for dir in $kde_use_extra_libs; do - kde_extra_libs="$kde_extra_libs $dir" - KDE_EXTRA_RPATH="$KDE_EXTRA_RPATH -R $dir" - USER_LDFLAGS="$USER_LDFLAGS -L$dir" - done - IFS=$ac_save_ifs - kde_use_extra_libs="added" -else - kde_use_extra_libs="no" -fi - -AC_SUBST(USER_LDFLAGS) - -AC_MSG_RESULT($kde_use_extra_libs) - -]) - -AC_DEFUN([KDE_1_CHECK_PATH_HEADERS], -[ - AC_MSG_CHECKING([for KDE headers installed]) - AC_LANG_SAVE - AC_LANG_CPLUSPLUS -cat > conftest.$ac_ext <<EOF -#ifdef STDC_HEADERS -# include <stdlib.h> -#endif -#include <stdio.h> -#include "confdefs.h" -#include <kapp.h> - -int main() { - printf("kde_htmldir=\\"%s\\"\n", KApplication::kde_htmldir().data()); - printf("kde_appsdir=\\"%s\\"\n", KApplication::kde_appsdir().data()); - printf("kde_icondir=\\"%s\\"\n", KApplication::kde_icondir().data()); - printf("kde_sounddir=\\"%s\\"\n", KApplication::kde_sounddir().data()); - printf("kde_datadir=\\"%s\\"\n", KApplication::kde_datadir().data()); - printf("kde_locale=\\"%s\\"\n", KApplication::kde_localedir().data()); - printf("kde_cgidir=\\"%s\\"\n", KApplication::kde_cgidir().data()); - printf("kde_confdir=\\"%s\\"\n", KApplication::kde_configdir().data()); - printf("kde_mimedir=\\"%s\\"\n", KApplication::kde_mimedir().data()); - printf("kde_toolbardir=\\"%s\\"\n", KApplication::kde_toolbardir().data()); - printf("kde_wallpaperdir=\\"%s\\"\n", - KApplication::kde_wallpaperdir().data()); - printf("kde_bindir=\\"%s\\"\n", KApplication::kde_bindir().data()); - printf("kde_partsdir=\\"%s\\"\n", KApplication::kde_partsdir().data()); - printf("kde_servicesdir=\\"/tmp/dummy\\"\n"); - printf("kde_servicetypesdir=\\"/tmp/dummy\\"\n"); - printf("kde_moduledir=\\"/tmp/dummy\\"\n"); - printf("kde_styledir=\\"/tmp/dummy\\"\n"); - printf("kde_widgetdir=\\"/tmp/dummy\\"\n"); - printf("xdg_appsdir=\\"/tmp/dummy\\"\n"); - printf("xdg_menudir=\\"/tmp/dummy\\"\n"); - printf("xdg_directorydir=\\"/tmp/dummy\\"\n"); - printf("kde_kcfgdir=\\"/tmp/dummy\\"\n"); - return 0; - } -EOF - - ac_save_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$all_includes $CPPFLAGS" - if AC_TRY_EVAL(ac_compile); then - AC_MSG_RESULT(yes) - else - AC_MSG_ERROR([your system is not able to compile a small KDE application! -Check, if you installed the KDE header files correctly. -For more details about this problem, look at the end of config.log.]) - fi - CPPFLAGS=$ac_save_CPPFLAGS - - AC_LANG_RESTORE -]) - -AC_DEFUN([KDE_CHECK_KDEQTADDON], -[ -AC_MSG_CHECKING(for kde-qt-addon) -AC_CACHE_VAL(kde_cv_have_kdeqtaddon, -[ - kde_ldflags_safe="$LDFLAGS" - kde_libs_safe="$LIBS" - kde_cxxflags_safe="$CXXFLAGS" - - LIBS="-lkde-qt-addon $LIBQT $LIBS" - CXXFLAGS="$CXXFLAGS -I$prefix/include -I$prefix/include/kde $all_includes" - LDFLAGS="$LDFLAGS $all_libraries $USER_LDFLAGS" - - AC_TRY_LINK([ - #include <qdom.h> - ], - [ - QDomDocument doc; - ], - kde_cv_have_kdeqtaddon=yes, - kde_cv_have_kdeqtaddon=no - ) - - LDFLAGS=$kde_ldflags_safe - LIBS=$kde_libs_safe - CXXFLAGS=$kde_cxxflags_safe -]) - -AC_MSG_RESULT($kde_cv_have_kdeqtaddon) - -if test "$kde_cv_have_kdeqtaddon" = "no"; then - AC_MSG_ERROR([Can't find libkde-qt-addon. You need to install it first. -It is a separate package (and CVS module) named kde-qt-addon.]) -fi -]) - -AC_DEFUN([KDE_CREATE_LIBS_ALIASES], -[ - AC_REQUIRE([KDE_MISC_TESTS]) - AC_REQUIRE([KDE_CHECK_LIBDL]) - AC_REQUIRE([K_PATH_X]) - -if test $kde_qtver = 3; then - case $host in - *cygwin*) lib_kded="-lkdeinit_kded" ;; - *) lib_kded="" ;; - esac - AC_SUBST(LIB_KDED, $lib_kded) - AC_SUBST(LIB_KDECORE, "-lkdecore") - AC_SUBST(LIB_KDEUI, "-lkdeui") - AC_SUBST(LIB_KIO, "-lkio") - AC_SUBST(LIB_KJS, "-lkjs") - AC_SUBST(LIB_SMB, "-lsmb") - AC_SUBST(LIB_KAB, "-lkab") - AC_SUBST(LIB_KABC, "-lkabc") - AC_SUBST(LIB_KHTML, "-lkhtml") - AC_SUBST(LIB_KSPELL, "-lkspell") - AC_SUBST(LIB_KPARTS, "-lkparts") - AC_SUBST(LIB_KDEPRINT, "-lkdeprint") - AC_SUBST(LIB_KUTILS, "-lkutils") - AC_SUBST(LIB_KDEPIM, "-lkdepim") - AC_SUBST(LIB_KIMPROXY, "-lkimproxy") - AC_SUBST(LIB_KNEWSTUFF, "-lknewstuff") - AC_SUBST(LIB_KDNSSD, "-lkdnssd") - AC_SUBST(LIB_KUNITTEST, "-lkunittest") -# these are for backward compatibility - AC_SUBST(LIB_KSYCOCA, "-lkio") - AC_SUBST(LIB_KFILE, "-lkio") -elif test $kde_qtver = 2; then - AC_SUBST(LIB_KDECORE, "-lkdecore") - AC_SUBST(LIB_KDEUI, "-lkdeui") - AC_SUBST(LIB_KIO, "-lkio") - AC_SUBST(LIB_KSYCOCA, "-lksycoca") - AC_SUBST(LIB_SMB, "-lsmb") - AC_SUBST(LIB_KFILE, "-lkfile") - AC_SUBST(LIB_KAB, "-lkab") - AC_SUBST(LIB_KHTML, "-lkhtml") - AC_SUBST(LIB_KSPELL, "-lkspell") - AC_SUBST(LIB_KPARTS, "-lkparts") - AC_SUBST(LIB_KDEPRINT, "-lkdeprint") -else - AC_SUBST(LIB_KDECORE, "-lkdecore -lXext $(LIB_QT)") - AC_SUBST(LIB_KDEUI, "-lkdeui $(LIB_KDECORE)") - AC_SUBST(LIB_KFM, "-lkfm $(LIB_KDECORE)") - AC_SUBST(LIB_KFILE, "-lkfile $(LIB_KFM) $(LIB_KDEUI)") - AC_SUBST(LIB_KAB, "-lkab $(LIB_KIMGIO) $(LIB_KDECORE)") -fi -]) - -AC_DEFUN([AC_PATH_KDE], -[ - AC_BASE_PATH_KDE - AC_ARG_ENABLE(path-check,AC_HELP_STRING([--disable-path-check],[don't try to find out, where to install]), - [ - if test "$enableval" = "no"; - then ac_use_path_checking="default" - else ac_use_path_checking="" - fi - ], - [ - if test "$kde_qtver" = 1; - then ac_use_path_checking="" - else ac_use_path_checking="default" - fi - ] - ) - - AC_CREATE_KFSSTND($ac_use_path_checking) - - AC_SUBST_KFSSTND - KDE_CREATE_LIBS_ALIASES -]) - -dnl KDE_CHECK_FUNC_EXT(<func>, [headers], [sample-use], [C prototype], [autoheader define], [call if found]) -AC_DEFUN([KDE_CHECK_FUNC_EXT], -[ -AC_MSG_CHECKING(for $1) -AC_CACHE_VAL(kde_cv_func_$1, -[ -AC_LANG_SAVE -AC_LANG_CPLUSPLUS -save_CXXFLAGS="$CXXFLAGS" -kde_safe_LIBS="$LIBS" -LIBS="$LIBS $X_EXTRA_LIBS" -if test "$GXX" = "yes"; then -CXXFLAGS="$CXXFLAGS -pedantic-errors" -fi -AC_TRY_COMPILE([ -$2 -], -[ -$3 -], -kde_cv_func_$1=yes, -kde_cv_func_$1=no) -CXXFLAGS="$save_CXXFLAGS" -LIBS="$kde_safe_LIBS" -AC_LANG_RESTORE -]) - -AC_MSG_RESULT($kde_cv_func_$1) - -AC_MSG_CHECKING([if $1 needs custom prototype]) -AC_CACHE_VAL(kde_cv_proto_$1, -[ -if test "x$kde_cv_func_$1" = xyes; then - kde_cv_proto_$1=no -else - case "$1" in - setenv|unsetenv|usleep|random|srandom|seteuid|mkstemps|mkstemp|revoke|vsnprintf|strlcpy|strlcat) - kde_cv_proto_$1="yes - in libkdefakes" - ;; - *) - kde_cv_proto_$1=unknown - ;; - esac -fi - -if test "x$kde_cv_proto_$1" = xunknown; then - -AC_LANG_SAVE -AC_LANG_CPLUSPLUS - kde_safe_libs=$LIBS - LIBS="$LIBS $X_EXTRA_LIBS" - AC_TRY_LINK([ -$2 - -extern "C" $4; -], -[ -$3 -], -[ kde_cv_func_$1=yes - kde_cv_proto_$1=yes ], - [kde_cv_proto_$1="$1 unavailable"] -) -LIBS=$kde_safe_libs -AC_LANG_RESTORE -fi -]) -AC_MSG_RESULT($kde_cv_proto_$1) - -if test "x$kde_cv_func_$1" = xyes; then - AC_DEFINE(HAVE_$5, 1, [Define if you have $1]) - $6 -fi -if test "x$kde_cv_proto_$1" = xno; then - AC_DEFINE(HAVE_$5_PROTO, 1, - [Define if you have the $1 prototype]) -fi - -AH_VERBATIM([_HAVE_$5_PROTO], -[ -#if !defined(HAVE_$5_PROTO) -#ifdef __cplusplus -extern "C" { -#endif -$4; -#ifdef __cplusplus -} -#endif -#endif -]) -]) - -AC_DEFUN([AC_CHECK_SETENV], -[ - KDE_CHECK_FUNC_EXT(setenv, [ -#include <stdlib.h> -], - [setenv("VAR", "VALUE", 1);], - [int setenv (const char *, const char *, int)], - [SETENV]) -]) - -AC_DEFUN([AC_CHECK_UNSETENV], -[ - KDE_CHECK_FUNC_EXT(unsetenv, [ -#include <stdlib.h> -], - [unsetenv("VAR");], - [void unsetenv (const char *)], - [UNSETENV]) -]) - -AC_DEFUN([AC_CHECK_GETDOMAINNAME], -[ - KDE_CHECK_FUNC_EXT(getdomainname, [ -#include <stdlib.h> -#include <unistd.h> -#include <netdb.h> -], - [ -char buffer[200]; -getdomainname(buffer, 200); -], - [#include <sys/types.h> - int getdomainname (char *, size_t)], - [GETDOMAINNAME]) -]) - -AC_DEFUN([AC_CHECK_GETHOSTNAME], -[ - KDE_CHECK_FUNC_EXT(gethostname, [ -#include <stdlib.h> -#include <unistd.h> -], - [ -char buffer[200]; -gethostname(buffer, 200); -], - [int gethostname (char *, unsigned int)], - [GETHOSTNAME]) -]) - -AC_DEFUN([AC_CHECK_USLEEP], -[ - KDE_CHECK_FUNC_EXT(usleep, [ -#include <unistd.h> -], - [ -usleep(200); -], - [int usleep (unsigned int)], - [USLEEP]) -]) - - -AC_DEFUN([AC_CHECK_RANDOM], -[ - KDE_CHECK_FUNC_EXT(random, [ -#include <stdlib.h> -], - [ -random(); -], - [long int random(void)], - [RANDOM]) - - KDE_CHECK_FUNC_EXT(srandom, [ -#include <stdlib.h> -], - [ -srandom(27); -], - [void srandom(unsigned int)], - [SRANDOM]) - -]) - -AC_DEFUN([AC_CHECK_INITGROUPS], -[ - KDE_CHECK_FUNC_EXT(initgroups, [ -#include <sys/types.h> -#include <unistd.h> -#include <grp.h> -], - [ -char buffer[200]; -initgroups(buffer, 27); -], - [int initgroups(const char *, gid_t)], - [INITGROUPS]) -]) - -AC_DEFUN([AC_CHECK_MKSTEMPS], -[ - KDE_CHECK_FUNC_EXT(mkstemps, [ -#include <stdlib.h> -#include <unistd.h> -], - [ -mkstemps("/tmp/aaaXXXXXX", 6); -], - [int mkstemps(char *, int)], - [MKSTEMPS]) -]) - -AC_DEFUN([AC_CHECK_MKSTEMP], -[ - KDE_CHECK_FUNC_EXT(mkstemp, [ -#include <stdlib.h> -#include <unistd.h> -], - [ -mkstemp("/tmp/aaaXXXXXX"); -], - [int mkstemp(char *)], - [MKSTEMP]) -]) - -AC_DEFUN([AC_CHECK_MKDTEMP], -[ - KDE_CHECK_FUNC_EXT(mkdtemp, [ -#include <stdlib.h> -#include <unistd.h> -], - [ -mkdtemp("/tmp/aaaXXXXXX"); -], - [char *mkdtemp(char *)], - [MKDTEMP]) -]) - - -AC_DEFUN([AC_CHECK_RES_INIT], -[ - AC_MSG_CHECKING([if res_init needs -lresolv]) - kde_libs_safe="$LIBS" - LIBS="$LIBS $X_EXTRA_LIBS -lresolv" - AC_TRY_LINK( - [ -#include <sys/types.h> -#include <netinet/in.h> -#include <arpa/nameser.h> -#include <resolv.h> - ], - [ - res_init(); - ], - [ - LIBRESOLV="-lresolv" - AC_MSG_RESULT(yes) - AC_DEFINE(HAVE_RES_INIT, 1, [Define if you have the res_init function]) - ], - [ AC_MSG_RESULT(no) ] - ) - LIBS=$kde_libs_safe - AC_SUBST(LIBRESOLV) - - KDE_CHECK_FUNC_EXT(res_init, - [ -#include <sys/types.h> -#include <netinet/in.h> -#include <arpa/nameser.h> -#include <resolv.h> - ], - [res_init()], - [int res_init(void)], - [RES_INIT]) -]) - -AC_DEFUN([AC_CHECK_STRLCPY], -[ - KDE_CHECK_FUNC_EXT(strlcpy, [ -#include <string.h> -], -[ char buf[20]; - strlcpy(buf, "KDE function test", sizeof(buf)); -], - [unsigned long strlcpy(char*, const char*, unsigned long)], - [STRLCPY]) -]) - -AC_DEFUN([AC_CHECK_STRLCAT], -[ - KDE_CHECK_FUNC_EXT(strlcat, [ -#include <string.h> -], -[ char buf[20]; - buf[0]='\0'; - strlcat(buf, "KDE function test", sizeof(buf)); -], - [unsigned long strlcat(char*, const char*, unsigned long)], - [STRLCAT]) -]) - -AC_DEFUN([AC_CHECK_RES_QUERY], -[ - KDE_CHECK_FUNC_EXT(res_query, [ -#include <sys/types.h> -#include <netinet/in.h> -#include <arpa/nameser.h> -#include <resolv.h> -#include <netdb.h> -], -[ -res_query(NULL, 0, 0, NULL, 0); -], - [int res_query(const char *, int, int, unsigned char *, int)], - [RES_QUERY]) -]) - -AC_DEFUN([AC_CHECK_DN_SKIPNAME], -[ - KDE_CHECK_FUNC_EXT(dn_skipname, [ -#include <sys/types.h> -#include <netinet/in.h> -#include <arpa/nameser.h> -#include <resolv.h> -], -[ -dn_skipname (NULL, NULL); -], - [int dn_skipname (unsigned char *, unsigned char *)], - [DN_SKIPNAME]) -]) - - -AC_DEFUN([AC_FIND_GIF], - [AC_MSG_CHECKING([for giflib]) -AC_CACHE_VAL(ac_cv_lib_gif, -[ac_save_LIBS="$LIBS" -if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then -LIBS="$all_libraries -lgif -lX11 $LIBSOCKET" -else -LIBS="$all_libraries -lgif" -fi -AC_TRY_LINK(dnl -[ -#ifdef __cplusplus -extern "C" { -#endif -int GifLastError(void); -#ifdef __cplusplus -} -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -], - [return GifLastError();], - eval "ac_cv_lib_gif=yes", - eval "ac_cv_lib_gif=no") -LIBS="$ac_save_LIBS" -])dnl -if eval "test \"`echo $ac_cv_lib_gif`\" = yes"; then - AC_MSG_RESULT(yes) - AC_DEFINE_UNQUOTED(HAVE_LIBGIF, 1, [Define if you have libgif]) -else - AC_MSG_ERROR(You need giflib30. Please install the kdesupport package) -fi -]) - -AC_DEFUN([KDE_FIND_JPEG_HELPER], -[ -AC_MSG_CHECKING([for libjpeg$2]) -AC_CACHE_VAL(ac_cv_lib_jpeg_$1, -[ -ac_save_LIBS="$LIBS" -LIBS="$all_libraries $USER_LDFLAGS -ljpeg$2 -lm" -ac_save_CFLAGS="$CFLAGS" -CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" -AC_TRY_LINK( -[ -#ifdef __cplusplus -extern "C" { -#endif -void jpeg_CreateDecompress(); -#ifdef __cplusplus -} -#endif -], -[jpeg_CreateDecompress();], - eval "ac_cv_lib_jpeg_$1=-ljpeg$2", - eval "ac_cv_lib_jpeg_$1=no") -LIBS="$ac_save_LIBS" -CFLAGS="$ac_save_CFLAGS" -]) - -if eval "test ! \"`echo $ac_cv_lib_jpeg_$1`\" = no"; then - LIBJPEG="$ac_cv_lib_jpeg_$1" - AC_MSG_RESULT($ac_cv_lib_jpeg_$1) -else - AC_MSG_RESULT(no) - $3 -fi - -]) - -AC_DEFUN([AC_FIND_JPEG], -[ -dnl first look for libraries -KDE_FIND_JPEG_HELPER(6b, 6b, - KDE_FIND_JPEG_HELPER(normal, [], - [ - LIBJPEG= - ] - ) -) - -dnl then search the headers (can't use simply AC_TRY_xxx, as jpeglib.h -dnl requires system dependent includes loaded before it) -jpeg_incdirs="$includedir /usr/include /usr/local/include $kde_extra_includes" -AC_FIND_FILE(jpeglib.h, $jpeg_incdirs, jpeg_incdir) -test "x$jpeg_incdir" = xNO && jpeg_incdir= - -dnl if headers _and_ libraries are missing, this is no error, and we -dnl continue with a warning (the user will get no jpeg support in khtml) -dnl if only one is missing, it means a configuration error, but we still -dnl only warn -if test -n "$jpeg_incdir" && test -n "$LIBJPEG" ; then - AC_DEFINE_UNQUOTED(HAVE_LIBJPEG, 1, [Define if you have libjpeg]) -else - if test -n "$jpeg_incdir" || test -n "$LIBJPEG" ; then - AC_MSG_WARN([ -There is an installation error in jpeg support. You seem to have only one -of either the headers _or_ the libraries installed. You may need to either -provide correct --with-extra-... options, or the development package of -libjpeg6b. You can get a source package of libjpeg from http://www.ijg.org/ -Disabling JPEG support. -]) - else - AC_MSG_WARN([libjpeg not found. disable JPEG support.]) - fi - jpeg_incdir= - LIBJPEG= -fi - -AC_SUBST(LIBJPEG) -AH_VERBATIM(_AC_CHECK_JPEG, -[/* - * jpeg.h needs HAVE_BOOLEAN, when the system uses boolean in system - * headers and I'm too lazy to write a configure test as long as only - * unixware is related - */ -#ifdef _UNIXWARE -#define HAVE_BOOLEAN -#endif -]) -]) - -AC_DEFUN([KDE_CHECK_QT_JPEG], -[ -if test -n "$LIBJPEG"; then -AC_MSG_CHECKING([if Qt needs $LIBJPEG]) -AC_CACHE_VAL(kde_cv_qt_jpeg, -[ -AC_LANG_SAVE -AC_LANG_CPLUSPLUS -ac_save_LIBS="$LIBS" -LIBS="$all_libraries $USER_LDFLAGS $LIBQT" -LIBS=`echo $LIBS | sed "s/$LIBJPEG//"` -ac_save_CXXFLAGS="$CXXFLAGS" -CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES" -AC_TRY_LINK( -[#include <qapplication.h>], - [ - int argc; - char** argv; - QApplication app(argc, argv);], - eval "kde_cv_qt_jpeg=no", - eval "kde_cv_qt_jpeg=yes") -LIBS="$ac_save_LIBS" -CXXFLAGS="$ac_save_CXXFLAGS" -AC_LANG_RESTORE -fi -]) - -if eval "test ! \"`echo $kde_cv_qt_jpeg`\" = no"; then - AC_MSG_RESULT(yes) - LIBJPEG_QT='$(LIBJPEG)' -else - AC_MSG_RESULT(no) - LIBJPEG_QT= -fi - -]) - -AC_DEFUN([AC_FIND_ZLIB], -[ -AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) -AC_MSG_CHECKING([for libz]) -AC_CACHE_VAL(ac_cv_lib_z, -[ -kde_save_LIBS="$LIBS" -LIBS="$all_libraries $USER_LDFLAGS -lz $LIBSOCKET" -kde_save_CFLAGS="$CFLAGS" -CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" -AC_TRY_LINK(dnl -[ -#include<zlib.h> -], -[ - char buf[42]; - gzFile f = (gzFile) 0; - /* this would segfault.. but we only link, don't run */ - (void) gzgets(f, buf, sizeof(buf)); - - return (zlibVersion() == ZLIB_VERSION); -], - eval "ac_cv_lib_z='-lz'", - eval "ac_cv_lib_z=no") -LIBS="$kde_save_LIBS" -CFLAGS="$kde_save_CFLAGS" -])dnl -if test ! "$ac_cv_lib_z" = no; then - AC_DEFINE_UNQUOTED(HAVE_LIBZ, 1, [Define if you have libz]) - LIBZ="$ac_cv_lib_z" - AC_MSG_RESULT($ac_cv_lib_z) -else - AC_MSG_ERROR(not found. - Possibly configure picks up an outdated version - installed by XFree86. Remove it from your system. - - Check your installation and look into config.log) - LIBZ="" -fi -AC_SUBST(LIBZ) -]) - -AC_DEFUN([KDE_TRY_TIFFLIB], -[ -AC_MSG_CHECKING([for libtiff $1]) - -AC_CACHE_VAL(kde_cv_libtiff_$1, -[ -AC_LANG_SAVE -AC_LANG_CPLUSPLUS -kde_save_LIBS="$LIBS" -if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then -LIBS="$all_libraries $USER_LDFLAGS -l$1 $LIBJPEG $LIBZ -lX11 $LIBSOCKET -lm" -else -LIBS="$all_libraries $USER_LDFLAGS -l$1 $LIBJPEG $LIBZ -lm" -fi -kde_save_CXXFLAGS="$CXXFLAGS" -CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES" - -AC_TRY_LINK(dnl -[ -#include<tiffio.h> -], - [return (TIFFOpen( "", "r") == 0); ], -[ - kde_cv_libtiff_$1="-l$1 $LIBJPEG $LIBZ" -], [ - kde_cv_libtiff_$1=no -]) - -LIBS="$kde_save_LIBS" -CXXFLAGS="$kde_save_CXXFLAGS" -AC_LANG_RESTORE -]) - -if test "$kde_cv_libtiff_$1" = "no"; then - AC_MSG_RESULT(no) - LIBTIFF="" - $3 -else - LIBTIFF="$kde_cv_libtiff_$1" - AC_MSG_RESULT(yes) - AC_DEFINE_UNQUOTED(HAVE_LIBTIFF, 1, [Define if you have libtiff]) - $2 -fi - -]) - -AC_DEFUN([AC_FIND_TIFF], -[ -AC_REQUIRE([K_PATH_X]) -AC_REQUIRE([AC_FIND_ZLIB]) -AC_REQUIRE([AC_FIND_JPEG]) -AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) - -KDE_TRY_TIFFLIB(tiff, [], - KDE_TRY_TIFFLIB(tiff34)) - -AC_SUBST(LIBTIFF) -]) - -AC_DEFUN([KDE_FIND_LIBEXR], -[ -AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) -AC_REQUIRE([AC_FIND_ZLIB]) -AC_CACHE_VAL(ac_cv_libexr, -[ - if test -z "$PKG_CONFIG"; then - AC_PATH_PROG(PKG_CONFIG, pkg-config, no) - fi - - AC_MSG_CHECKING([for OpenEXR libraries]) - - if test "$PKG_CONFIG" = "no" ; then - AC_MSG_RESULT(no) - echo "*** The pkg-config script could not be found. Make sure it is" - echo "*** in your path, or set the PKG_CONFIG environment variable" - echo "*** to the full path to pkg-config." - echo "*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config." - else - if !(`$PKG_CONFIG --exists OpenEXR`) ; then - AC_MSG_RESULT(no) - EXRSTATUS=no - else - if !(`$PKG_CONFIG --atleast-version="1.1.1" OpenEXR`) ; then - AC_MSG_RESULT(no) - EXRSTATUS=old - else - kde_save_LIBS="$LIBS" - LIBS="$LIBS $all_libraries $USER_LDFLAGS $LIBZ `pkg-config --libs OpenEXR`" - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - kde_save_CXXFLAGS="$CXXFLAGS" - EXR_FLAGS=`$PKG_CONFIG --cflags OpenEXR` - CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES $EXR_FLAGS" - - AC_TRY_LINK(dnl - [ - #include <ImfRgbaFile.h> - ], - [ - using namespace Imf; - RgbaInputFile file ("dummy"); - return 0; - ], - eval "ac_cv_libexr='`pkg-config --libs OpenEXR`'", - eval "ac_cv_libexr=no" - ) - LIBS="$kde_save_LIBS" - CXXFLAGS="$kde_save_CXXFLAGS" - AC_LANG_RESTORE - ])dnl - if eval "test ! \"`echo $ac_cv_libexr`\" = no"; then - AC_DEFINE_UNQUOTED(HAVE_EXR, 1, [Define if you have OpenEXR]) - LIB_EXR="$ac_cv_libexr" - AC_MSG_RESULT($ac_cv_libexr) - else - AC_MSG_RESULT(no) - LIB_EXR="" - fi - fi - fi - fi - AC_SUBST(LIB_EXR) - AC_SUBST(EXR_FLAGS) -]) - - - -AC_DEFUN([AC_FIND_PNG], -[ -AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) -AC_REQUIRE([AC_FIND_ZLIB]) -AC_MSG_CHECKING([for libpng]) -AC_CACHE_VAL(ac_cv_lib_png, -[ -kde_save_LIBS="$LIBS" -if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then -LIBS="$LIBS $all_libraries $USER_LDFLAGS -lpng $LIBZ -lm -lX11 $LIBSOCKET" -else -LIBS="$LIBS $all_libraries $USER_LDFLAGS -lpng $LIBZ -lm" -fi -kde_save_CFLAGS="$CFLAGS" -CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" - -AC_TRY_LINK(dnl - [ - #include<png.h> - ], - [ - png_structp png_ptr = png_create_read_struct( /* image ptr */ - PNG_LIBPNG_VER_STRING, 0, 0, 0 ); - return( png_ptr != 0 ); - ], - eval "ac_cv_lib_png='-lpng $LIBZ -lm'", - eval "ac_cv_lib_png=no" -) -LIBS="$kde_save_LIBS" -CFLAGS="$kde_save_CFLAGS" -])dnl -if eval "test ! \"`echo $ac_cv_lib_png`\" = no"; then - AC_DEFINE_UNQUOTED(HAVE_LIBPNG, 1, [Define if you have libpng]) - LIBPNG="$ac_cv_lib_png" - AC_SUBST(LIBPNG) - AC_MSG_RESULT($ac_cv_lib_png) -else - AC_MSG_RESULT(no) - LIBPNG="" - AC_SUBST(LIBPNG) -fi -]) - - -AC_DEFUN([AC_FIND_JASPER], -[ -AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) -AC_REQUIRE([AC_FIND_JPEG]) -AC_MSG_CHECKING([for jasper]) -AC_CACHE_VAL(ac_cv_jasper, -[ -kde_save_LIBS="$LIBS" -LIBS="$LIBS $all_libraries $USER_LDFLAGS -ljasper $LIBJPEG -lm" -kde_save_CFLAGS="$CFLAGS" -CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" - -AC_TRY_LINK(dnl - [ - #include<jasper/jasper.h> - ], - [ - return( jas_init() ); - ], - eval "ac_cv_jasper='-ljasper $LIBJPEG -lm'", - eval "ac_cv_jasper=no" -) -LIBS="$kde_save_LIBS" -CFLAGS="$kde_save_CFLAGS" -])dnl -if eval "test ! \"`echo $ac_cv_jasper`\" = no"; then - AC_DEFINE_UNQUOTED(HAVE_JASPER, 1, [Define if you have jasper]) - LIB_JASPER="$ac_cv_jasper" - AC_MSG_RESULT($ac_cv_jasper) -else - AC_MSG_RESULT(no) - LIB_JASPER="" -fi -AC_SUBST(LIB_JASPER) -]) - -AC_DEFUN([AC_CHECK_BOOL], -[ - AC_DEFINE_UNQUOTED(HAVE_BOOL, 1, [You _must_ have bool]) -]) - -AC_DEFUN([AC_CHECK_GNU_EXTENSIONS], -[ -AC_MSG_CHECKING(if you need GNU extensions) -AC_CACHE_VAL(ac_cv_gnu_extensions, -[ -cat > conftest.c << EOF -#include <features.h> - -#ifdef __GNU_LIBRARY__ -yes -#endif -EOF - -if (eval "$ac_cpp conftest.c") 2>&5 | - egrep "yes" >/dev/null 2>&1; then - rm -rf conftest* - ac_cv_gnu_extensions=yes -else - ac_cv_gnu_extensions=no -fi -]) - -AC_MSG_RESULT($ac_cv_gnu_extensions) -if test "$ac_cv_gnu_extensions" = "yes"; then - AC_DEFINE_UNQUOTED(_GNU_SOURCE, 1, [Define if you need to use the GNU extensions]) -fi -]) - -AC_DEFUN([KDE_CHECK_COMPILER_FLAG], -[ -AC_MSG_CHECKING([whether $CXX supports -$1]) -kde_cache=`echo $1 | sed 'y% .=/+-,%____p__%'` -AC_CACHE_VAL(kde_cv_prog_cxx_$kde_cache, -[ - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - save_CXXFLAGS="$CXXFLAGS" - CXXFLAGS="$CXXFLAGS -$1" - AC_TRY_LINK([],[ return 0; ], [eval "kde_cv_prog_cxx_$kde_cache=yes"], []) - CXXFLAGS="$save_CXXFLAGS" - AC_LANG_RESTORE -]) -if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then - AC_MSG_RESULT(yes) - : - $2 -else - AC_MSG_RESULT(no) - : - $3 -fi -]) - -AC_DEFUN([KDE_CHECK_C_COMPILER_FLAG], -[ -AC_MSG_CHECKING([whether $CC supports -$1]) -kde_cache=`echo $1 | sed 'y% .=/+-,%____p__%'` -AC_CACHE_VAL(kde_cv_prog_cc_$kde_cache, -[ - AC_LANG_SAVE - AC_LANG_C - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -$1" - AC_TRY_LINK([],[ return 0; ], [eval "kde_cv_prog_cc_$kde_cache=yes"], []) - CFLAGS="$save_CFLAGS" - AC_LANG_RESTORE -]) -if eval "test \"`echo '$kde_cv_prog_cc_'$kde_cache`\" = yes"; then - AC_MSG_RESULT(yes) - : - $2 -else - AC_MSG_RESULT(no) - : - $3 -fi -]) - - -dnl AC_REMOVE_FORBIDDEN removes forbidden arguments from variables -dnl use: AC_REMOVE_FORBIDDEN(CC, [-forbid -bad-option whatever]) -dnl it's all white-space separated -AC_DEFUN([AC_REMOVE_FORBIDDEN], -[ __val=$$1 - __forbid=" $2 " - if test -n "$__val"; then - __new="" - ac_save_IFS=$IFS - IFS=" " - for i in $__val; do - case "$__forbid" in - *" $i "*) AC_MSG_WARN([found forbidden $i in $1, removing it]) ;; - *) # Careful to not add spaces, where there were none, because otherwise - # libtool gets confused, if we change e.g. CXX - if test -z "$__new" ; then __new=$i ; else __new="$__new $i" ; fi ;; - esac - done - IFS=$ac_save_IFS - $1=$__new - fi -]) - - -AC_DEFUN([KDE_CHECK_FOR_BAD_COMPILER], -[ - AC_MSG_CHECKING([whether $CC is blacklisted]) - - dnl In theory we have tu run this test against $CC and $CXX - dnl in C and in C++ mode, because its perfectly legal for - dnl the user to mix compiler versions, since C has a defined - dnl ABI. - dnl - dnl For now, we assume the user is not on crack. - - AC_TRY_COMPILE([ -#ifdef __GNUC__ -#if __GNUC__ == 4 && __GNUC_MINOR__ == 0 && __GNUC_PATCHLEVEL__ == 0 -choke me -#endif -#endif -], , - kde_bad_compiler=no, - kde_bad_compiler=yes -) - - AC_MSG_RESULT($kde_bad_compiler) - -if test "$kde_bad_compiler" = "yes"; then - AC_MSG_ERROR([ - -This particular compiler version is blacklisted because it -is known to miscompile KDE. Please use a newer version, or -if that is not yet available, choose an older version. - -Please do not report a bug or bother us reporting this -configure error. We know about it, and we introduced -it by intention to avoid untraceable bugs or crashes in KDE. - -]) -fi - -]) - -dnl AC_VALIDIFY_CXXFLAGS checks for forbidden flags the user may have given -AC_DEFUN([AC_VALIDIFY_CXXFLAGS], -[dnl -if test "x$kde_use_qt_emb" != "xyes"; then - AC_REMOVE_FORBIDDEN(CXX, [-fno-rtti -rpath]) - AC_REMOVE_FORBIDDEN(CXXFLAGS, [-fno-rtti -rpath]) -else - AC_REMOVE_FORBIDDEN(CXX, [-rpath]) - AC_REMOVE_FORBIDDEN(CXXFLAGS, [-rpath]) -fi -]) - -AC_DEFUN([AC_CHECK_COMPILERS], -[ - AC_ARG_ENABLE(debug, - AC_HELP_STRING([--enable-debug=ARG],[enables debug symbols (yes|no|full) [default=no]]), - [ - case $enableval in - yes) - kde_use_debug_code="yes" - kde_use_debug_define=no - ;; - full) - kde_use_debug_code="full" - kde_use_debug_define=no - ;; - *) - kde_use_debug_code="no" - kde_use_debug_define=yes - ;; - esac - ], - [kde_use_debug_code="no" - kde_use_debug_define=no - ]) - - dnl Just for configure --help - AC_ARG_ENABLE(dummyoption, - AC_HELP_STRING([--disable-debug], - [disables debug output and debug symbols [default=no]]), - [],[]) - - AC_ARG_ENABLE(strict, - AC_HELP_STRING([--enable-strict], - [compiles with strict compiler options (may not work!)]), - [ - if test $enableval = "no"; then - kde_use_strict_options="no" - else - kde_use_strict_options="yes" - fi - ], [kde_use_strict_options="no"]) - - AC_ARG_ENABLE(warnings,AC_HELP_STRING([--disable-warnings],[disables compilation with -Wall and similar]), - [ - if test $enableval = "no"; then - kde_use_warnings="no" - else - kde_use_warnings="yes" - fi - ], [kde_use_warnings="yes"]) - - dnl enable warnings for debug build - if test "$kde_use_debug_code" != "no"; then - kde_use_warnings=yes - fi - - AC_ARG_ENABLE(profile,AC_HELP_STRING([--enable-profile],[creates profiling infos [default=no]]), - [kde_use_profiling=$enableval], - [kde_use_profiling="no"] - ) - - dnl this prevents stupid AC_PROG_CC to add "-g" to the default CFLAGS - CFLAGS=" $CFLAGS" - - AC_PROG_CC - - AC_PROG_CPP - - if test "$GCC" = "yes"; then - if test "$kde_use_debug_code" != "no"; then - if test $kde_use_debug_code = "full"; then - CFLAGS="-g3 -fno-inline $CFLAGS" - else - CFLAGS="-g -O2 -fno-schedule-insns -fno-inline $CFLAGS" - fi - else - CFLAGS="-O2 $CFLAGS" - fi - fi - - if test "$kde_use_debug_define" = "yes"; then - CFLAGS="-DNDEBUG $CFLAGS" - fi - - - case "$host" in - *-*-sysv4.2uw*) CFLAGS="-D_UNIXWARE $CFLAGS";; - *-*-sysv5uw7*) CFLAGS="-D_UNIXWARE7 $CFLAGS";; - esac - - if test -z "$LDFLAGS" && test "$kde_use_debug_code" = "no" && test "$GCC" = "yes"; then - LDFLAGS="" - fi - - CXXFLAGS=" $CXXFLAGS" - - AC_PROG_CXX - -dnl KDE_CHECK_FOR_BAD_COMPILER - - if test "$GXX" = "yes" || test "$CXX" = "KCC"; then - if test "$kde_use_debug_code" != "no"; then - if test "$CXX" = "KCC"; then - CXXFLAGS="+K0 -Wall -pedantic -W -Wpointer-arith -Wwrite-strings $CXXFLAGS" - else - if test "$kde_use_debug_code" = "full"; then - CXXFLAGS="-g3 -fno-inline $CXXFLAGS" - else - CXXFLAGS="-g -O2 -fno-schedule-insns -fno-inline $CXXFLAGS" - fi - fi - KDE_CHECK_COMPILER_FLAG(fno-builtin,[CXXFLAGS="-fno-builtin $CXXFLAGS"]) - - dnl convenience compiler flags - KDE_CHECK_COMPILER_FLAG(Woverloaded-virtual, [WOVERLOADED_VIRTUAL="-Woverloaded-virtual"], [WOVERLOADED_VRITUAL=""]) - AC_SUBST(WOVERLOADED_VIRTUAL) - else - if test "$CXX" = "KCC"; then - CXXFLAGS="+K3 $CXXFLAGS" - else - CXXFLAGS="-O2 $CXXFLAGS" - fi - fi - fi - - if test "$kde_use_debug_define" = "yes"; then - CXXFLAGS="-DNDEBUG -DNO_DEBUG $CXXFLAGS" - fi - - if test "$kde_use_profiling" = "yes"; then - KDE_CHECK_COMPILER_FLAG(pg, - [ - CFLAGS="-pg $CFLAGS" - CXXFLAGS="-pg $CXXFLAGS" - ]) - fi - - if test "$kde_use_warnings" = "yes"; then - if test "$GCC" = "yes"; then - CXXFLAGS="-Wall -W -Wpointer-arith $CXXFLAGS" - case $host in - *-*-linux-gnu) - CFLAGS="-std=iso9899:1990 -W -Wall -Wchar-subscripts -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -D_XOPEN_SOURCE=500 -D_BSD_SOURCE $CFLAGS" - CXXFLAGS="-ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts $CXXFLAGS" - KDE_CHECK_COMPILER_FLAG(Wmissing-format-attribute, [CXXFLAGS="$CXXFLAGS -Wformat-security -Wmissing-format-attribute"]) - KDE_CHECK_C_COMPILER_FLAG(Wmissing-format-attribute, [CFLAGS="$CFLAGS -Wformat-security -Wmissing-format-attribute"]) - ;; - esac - KDE_CHECK_COMPILER_FLAG(Wundef,[CXXFLAGS="-Wundef $CXXFLAGS"]) - KDE_CHECK_COMPILER_FLAG(Wno-long-long,[CXXFLAGS="-Wno-long-long $CXXFLAGS"]) - dnl ### FIXME: revert for KDE 4 - KDE_CHECK_COMPILER_FLAG(Wno-non-virtual-dtor,[CXXFLAGS="$CXXFLAGS -Wno-non-virtual-dtor"]) - fi - fi - - if test "$GXX" = "yes" && test "$kde_use_strict_options" = "yes"; then - CXXFLAGS="-Wcast-qual -Wshadow -Wcast-align $CXXFLAGS" - fi - - AC_ARG_ENABLE(pch, - AC_HELP_STRING([--enable-pch], - [enables precompiled header support (currently only KCC or gcc >=3.4+unsermake) [default=no]]), - [ kde_use_pch=$enableval ],[ kde_use_pch=no ]) - - HAVE_GCC_VISIBILITY=0 - AC_SUBST([HAVE_GCC_VISIBILITY]) - - if test "$GXX" = "yes"; then - gcc_no_reorder_blocks=NO - KDE_CHECK_COMPILER_FLAG(fno-reorder-blocks,[gcc_no_reorder_blocks=YES]) - if test $kde_use_debug_code != "no" && \ - test $kde_use_debug_code != "full" && \ - test "YES" = "$gcc_no_reorder_blocks" ; then - CXXFLAGS="$CXXFLAGS -fno-reorder-blocks" - CFLAGS="$CFLAGS -fno-reorder-blocks" - fi - KDE_CHECK_COMPILER_FLAG(fno-exceptions,[CXXFLAGS="$CXXFLAGS -fno-exceptions"]) - KDE_CHECK_COMPILER_FLAG(fno-check-new, [CXXFLAGS="$CXXFLAGS -fno-check-new"]) - KDE_CHECK_COMPILER_FLAG(fno-common, [CXXFLAGS="$CXXFLAGS -fno-common"]) - KDE_CHECK_COMPILER_FLAG(fexceptions, [USE_EXCEPTIONS="-fexceptions"], USE_EXCEPTIONS= ) - ENABLE_PERMISSIVE_FLAG="-fpermissive" - - if test "$kde_use_pch" = "yes"; then - AC_MSG_CHECKING(whether gcc supports precompiling c header files) - echo >conftest.h - if $CC -x c-header conftest.h >/dev/null 2>/dev/null; then - kde_gcc_supports_pch=yes - AC_MSG_RESULT(yes) - else - kde_gcc_supports_pch=no - AC_MSG_RESULT(no) - fi - if test "$kde_gcc_supports_pch" = "yes"; then - AC_MSG_CHECKING(whether gcc supports precompiling c++ header files) - if $CXX -x c++-header conftest.h >/dev/null 2>/dev/null; then - kde_gcc_supports_pch=yes - AC_MSG_RESULT(yes) - else - kde_gcc_supports_pch=no - AC_MSG_RESULT(no) - fi - fi - rm -f conftest.h conftest.h.gch - fi - fi - AM_CONDITIONAL(unsermake_enable_pch, test "$kde_use_pch" = "yes" && test "$kde_gcc_supports_pch" = "yes") - if test "$CXX" = "KCC"; then - dnl unfortunately we currently cannot disable exception support in KCC - dnl because doing so is binary incompatible and Qt by default links with exceptions :-( - dnl KDE_CHECK_COMPILER_FLAG(-no_exceptions,[CXXFLAGS="$CXXFLAGS --no_exceptions"]) - dnl KDE_CHECK_COMPILER_FLAG(-exceptions, [USE_EXCEPTIONS="--exceptions"], USE_EXCEPTIONS= ) - - if test "$kde_use_pch" = "yes"; then - dnl TODO: support --pch-dir! - KDE_CHECK_COMPILER_FLAG(-pch,[CXXFLAGS="$CXXFLAGS --pch"]) - dnl the below works (but the dir must exist), but it's - dnl useless for a whole package. - dnl The are precompiled headers for each source file, so when compiling - dnl from scratch, it doesn't make a difference, and they take up - dnl around ~5Mb _per_ sourcefile. - dnl KDE_CHECK_COMPILER_FLAG(-pch_dir /tmp, - dnl [CXXFLAGS="$CXXFLAGS --pch_dir `pwd`/pcheaders"]) - fi - dnl this flag controls inlining. by default KCC inlines in optimisation mode - dnl all implementations that are defined inside the class {} declaration. - dnl because of templates-compatibility with broken gcc compilers, this - dnl can cause excessive inlining. This flag limits it to a sane level - KDE_CHECK_COMPILER_FLAG(-inline_keyword_space_time=6,[CXXFLAGS="$CXXFLAGS --inline_keyword_space_time=6"]) - KDE_CHECK_COMPILER_FLAG(-inline_auto_space_time=2,[CXXFLAGS="$CXXFLAGS --inline_auto_space_time=2"]) - KDE_CHECK_COMPILER_FLAG(-inline_implicit_space_time=2.0,[CXXFLAGS="$CXXFLAGS --inline_implicit_space_time=2.0"]) - KDE_CHECK_COMPILER_FLAG(-inline_generated_space_time=2.0,[CXXFLAGS="$CXXFLAGS --inline_generated_space_time=2.0"]) - dnl Some source files are shared between multiple executables - dnl (or libraries) and some of those need template instantiations. - dnl In that case KCC needs to compile those sources with - dnl --one_instantiation_per_object. To make it easy for us we compile - dnl _all_ objects with that flag (--one_per is a shorthand). - KDE_CHECK_COMPILER_FLAG(-one_per, [CXXFLAGS="$CXXFLAGS --one_per"]) - fi - AC_SUBST(USE_EXCEPTIONS) - dnl obsolete macro - provided to keep things going - USE_RTTI= - AC_SUBST(USE_RTTI) - - case "$host" in - *-*-irix*) test "$GXX" = yes && CXXFLAGS="-D_LANGUAGE_C_PLUS_PLUS -D__LANGUAGE_C_PLUS_PLUS $CXXFLAGS" ;; - *-*-sysv4.2uw*) CXXFLAGS="-D_UNIXWARE $CXXFLAGS";; - *-*-sysv5uw7*) CXXFLAGS="-D_UNIXWARE7 $CXXFLAGS";; - *-*-solaris*) - if test "$GXX" = yes; then - libstdcpp=`$CXX -print-file-name=libstdc++.so` - if test ! -f $libstdcpp; then - AC_MSG_ERROR([You've compiled gcc without --enable-shared. This doesn't work with KDE. Please recompile gcc with --enable-shared to receive a libstdc++.so]) - fi - fi - ;; - esac - - AC_VALIDIFY_CXXFLAGS - - AC_PROG_CXXCPP - - if test "$GCC" = yes; then - NOOPT_CFLAGS=-O0 - fi - KDE_CHECK_COMPILER_FLAG(O0,[NOOPT_CXXFLAGS=-O0]) - - AC_ARG_ENABLE(coverage, - AC_HELP_STRING([--enable-coverage],[use gcc coverage testing]), [ - if test "$am_cv_CC_dependencies_compiler_type" = "gcc3"; then - ac_coverage_compiler="-fprofile-arcs -ftest-coverage" - ac_coverage_linker="-lgcc" - elif test "$am_cv_CC_dependencies_compiler_type" = "gcc"; then - ac_coverage_compiler="-fprofile-arcs -ftest-coverage" - ac_coverage_linker="" - else - AC_MSG_ERROR([coverage with your compiler is not supported]) - fi - CFLAGS="$CFLAGS $ac_coverage_compiler" - CXXFLAGS="$CXXFLAGS $ac_coverage_compiler" - LDFLAGS="$LDFLAGS $ac_coverage_linker" - ]) - - AC_SUBST(NOOPT_CXXFLAGS) - AC_SUBST(NOOPT_CFLAGS) - AC_SUBST(ENABLE_PERMISSIVE_FLAG) - - KDE_CHECK_NEW_LDFLAGS - KDE_CHECK_FINAL - KDE_CHECK_CLOSURE - KDE_CHECK_NMCHECK - - ifdef([AM_DEPENDENCIES], AC_REQUIRE([KDE_ADD_DEPENDENCIES]), []) -]) - -AC_DEFUN([KDE_CHECK_VISIBILITY_GCC_BUG], - [ - AC_CACHE_CHECK([for gcc -fvisibility-inlines-hidden bug], kde_cv_val_gcc_visibility_bug, - [ - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - - safe_CXXFLAGS=$CXXFLAGS - safe_LDFLAGS=$LDFLAGS - CXXFLAGS="$CXXFLAGS -fPIC -fvisibility-inlines-hidden -O0" - LDFLAGS="$LDFLAGS -shared -fPIC" - - AC_TRY_LINK( - [ - /* http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19664 */ - #include <string> - int some_function( void ) __attribute__ ((visibility("default"))); - int some_function( void ) - { - std::string s("blafasel"); - return 0; - } - ], [/* elvis is alive */], - kde_cv_val_gcc_visibility_bug=no, kde_cv_val_gcc_visibility_bug=yes) - - CXXFLAGS=$safe_CXXFLAGS - LDFLAGS=$safe_LDFLAGS - AC_LANG_RESTORE - ] - ) - - if test x$kde_cv_val_gcc_visibility_bug = xno; then - CXXFLAGS="$CXXFLAGS -fvisibility-inlines-hidden" - fi - ] -) - -AC_DEFUN([KDE_ENABLE_HIDDEN_VISIBILITY], -[ - AC_BEFORE([AC_PATH_QT_1_3], [KDE_ENABLE_HIDDEN_VISIBILITY]) - - AC_MSG_CHECKING([grepping for visibility push/pop in headers]) - - if test "x$GXX" = "xyes"; then - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - AC_EGREP_CPP( - [GCC visibility push], - [ #include <exception> - ], - [ - AC_MSG_RESULT(yes) - kde_stdc_visibility_patched=yes ], - [ - AC_MSG_RESULT(no) - AC_MSG_WARN([Your libstdc++ doesn't appear to be patched for - visibility support. Disabling -fvisibility=hidden]) - - kde_stdc_visibility_patched=no ]) - - AC_LANG_RESTORE - - kde_have_gcc_visibility=no - KDE_CHECK_COMPILER_FLAG(fvisibility=hidden, - [ - kde_have_gcc_visibility=yes - dnl the whole toolchain is just a mess, gcc is just too buggy - dnl to handle STL with visibility enabled. Lets reconsider - dnl when gcc 4.2 is out or when things get fixed in the compiler. - dnl Contact mueller@kde.org for details. - AC_ARG_ENABLE(gcc-hidden-visibility, - AC_HELP_STRING([--enable-gcc-hidden-visibility],[toolchain hidden visibility [default=no]]), - [kde_have_gcc_visibility=$enableval], - [kde_have_gcc_visibility=no]) - - AC_CACHE_CHECK([if Qt is patched for -fvisibility], kde_cv_val_qt_gcc_visibility_patched, - [ - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - - safe_CXXFLAGS=$CXXFLAGS - CXXFLAGS="$CXXFLAGS $all_includes" - - AC_TRY_COMPILE( - [ -#include <qglobal.h> -#if Q_EXPORT - 0 != 0 -/* if this compiles, then Q_EXPORT is undefined */ -/* if Q_EXPORT is nonempty, this will break compilation */ -#endif - ], [/* elvis is alive */], - kde_cv_val_qt_gcc_visibility_patched=no, kde_cv_val_qt_gcc_visibility_patched=yes) - - CXXFLAGS=$safe_CXXFLAGS - AC_LANG_RESTORE - ] - ) - - if test x$kde_have_gcc_visibility = "xyes" && test x$kde_stdc_visibility_patched = "xyes" && test x$kde_cv_val_qt_gcc_visibility_patched = "xyes"; then - CXXFLAGS="$CXXFLAGS -fvisibility=hidden" - KDE_CHECK_VISIBILITY_GCC_BUG - HAVE_GCC_VISIBILITY=1 - AC_DEFINE_UNQUOTED(__KDE_HAVE_GCC_VISIBILITY, "$HAVE_GCC_VISIBILITY", [define to 1 if -fvisibility is supported]) - fi - ]) - fi -]) - -AC_DEFUN([KDE_ADD_DEPENDENCIES], -[ - [A]M_DEPENDENCIES(CC) - [A]M_DEPENDENCIES(CXX) -]) - -dnl just a wrapper to clean up configure.in -AC_DEFUN([KDE_PROG_LIBTOOL], -[ -AC_REQUIRE([AC_CHECK_COMPILERS]) -AC_REQUIRE([AC_ENABLE_SHARED]) -AC_REQUIRE([AC_ENABLE_STATIC]) - -AC_REQUIRE([AC_LIBTOOL_DLOPEN]) -AC_REQUIRE([KDE_CHECK_LIB64]) - -AC_OBJEXT -AC_EXEEXT - -AM_PROG_LIBTOOL -AC_LIBTOOL_CXX - -LIBTOOL_SHELL="/bin/sh ./libtool" -# LIBTOOL="$LIBTOOL --silent" -KDE_PLUGIN="-avoid-version -module -no-undefined \$(KDE_NO_UNDEFINED) \$(KDE_RPATH) \$(KDE_MT_LDFLAGS)" -AC_SUBST(KDE_PLUGIN) - -# This hack ensures that libtool creates shared libs for kunittest plugins. By default check_LTLIBRARIES makes static libs. -KDE_CHECK_PLUGIN="\$(KDE_PLUGIN) -rpath \$(libdir)" -AC_SUBST(KDE_CHECK_PLUGIN) - -# we patch configure quite some so we better keep that consistent for incremental runs -AC_SUBST(AUTOCONF,'$(SHELL) $(top_srcdir)/admin/cvs.sh configure || touch configure') -]) - -AC_DEFUN([KDE_CHECK_LIB64], -[ - kdelibsuff="$kde_libs_suffix" - if test -z "$kdelibsuff"; then - kdelibsuff="auto" - fi - AC_ARG_ENABLE(libsuffix, - AC_HELP_STRING([--enable-libsuffix], - [/lib directory suffix (64,32,none,auto[=default])]), - kdelibsuff=$enableval) - - if test "$kdelibsuff" = "auto"; then - -cat > conftest.c << EOF -#include <stdio.h> -int main() { - return 0; -} -EOF - kdelibsuff=`$CC conftest.c -o conftest.out; ldd conftest.out | grep -E "libc.so"| grep -E -o "/lib[[^\/]]*/" | sed "s/lib//" | sed "s/\/*//g"` - rm -rf conftest.* - fi - - if test "$kdelibsuff" = "no"; then - kdelibsuff= - fi - if test -z "$kdelibsuff"; then - AC_MSG_RESULT([not using lib directory suffix]) - AC_DEFINE(KDELIBSUFF, [""], Suffix for lib directories) - else - if test "$libdir" = '${exec_prefix}/lib'; then - libdir="$libdir${kdelibsuff}" - AC_SUBST([libdir], ["$libdir"]) dnl ugly hack for lib64 platforms - fi - AC_DEFINE_UNQUOTED(KDELIBSUFF, ["${kdelibsuff}"], Suffix for lib directories) - AC_MSG_RESULT([using lib directory suffix $kdelibsuff]) - fi -]) - -AC_DEFUN([KDE_CHECK_TYPES], -[ AC_CHECK_SIZEOF(int, 4)dnl - AC_CHECK_SIZEOF(short)dnl - AC_CHECK_SIZEOF(long, 4)dnl - AC_CHECK_SIZEOF(char *, 4)dnl -])dnl - -dnl Not used - kept for compat only? -AC_DEFUN([KDE_DO_IT_ALL], -[ -AC_CANONICAL_SYSTEM -AC_ARG_PROGRAM -AM_INIT_AUTOMAKE($1, $2) -AM_DISABLE_LIBRARIES -AC_PREFIX_DEFAULT(${KDEDIR:-/usr/local/kde}) -AC_CHECK_COMPILERS -KDE_PROG_LIBTOOL -AM_KDE_WITH_NLS -AC_PATH_KDE -]) - -AC_DEFUN([AC_CHECK_RPATH], -[ -AC_MSG_CHECKING(for rpath) -AC_ARG_ENABLE(rpath, - AC_HELP_STRING([--disable-rpath],[do not use the rpath feature of ld]), - USE_RPATH=$enableval, USE_RPATH=yes) - -if test -z "$KDE_RPATH" && test "$USE_RPATH" = "yes"; then - - KDE_RPATH="-R \$(libdir)" - - if test "$kde_libraries" != "$libdir"; then - KDE_RPATH="$KDE_RPATH -R \$(kde_libraries)" - fi - - if test -n "$qt_libraries"; then - KDE_RPATH="$KDE_RPATH -R \$(qt_libraries)" - fi - dnl $x_libraries is set to /usr/lib in case - if test -n "$X_LDFLAGS"; then - X_RPATH="-R \$(x_libraries)" - KDE_RPATH="$KDE_RPATH $X_RPATH" - fi - if test -n "$KDE_EXTRA_RPATH"; then - KDE_RPATH="$KDE_RPATH \$(KDE_EXTRA_RPATH)" - fi -fi -AC_SUBST(KDE_EXTRA_RPATH) -AC_SUBST(KDE_RPATH) -AC_SUBST(X_RPATH) -AC_MSG_RESULT($USE_RPATH) -]) - -dnl Check for the type of the third argument of getsockname -AC_DEFUN([AC_CHECK_SOCKLEN_T], -[ - AC_MSG_CHECKING(for socklen_t) - AC_CACHE_VAL(kde_cv_socklen_t, - [ - AC_LANG_PUSH(C++) - kde_cv_socklen_t=no - AC_TRY_COMPILE([ - #include <sys/types.h> - #include <sys/socket.h> - ], - [ - socklen_t len; - getpeername(0,0,&len); - ], - [ - kde_cv_socklen_t=yes - kde_cv_socklen_t_equiv=socklen_t - ]) - AC_LANG_POP(C++) - ]) - AC_MSG_RESULT($kde_cv_socklen_t) - if test $kde_cv_socklen_t = no; then - AC_MSG_CHECKING([for socklen_t equivalent for socket functions]) - AC_CACHE_VAL(kde_cv_socklen_t_equiv, - [ - kde_cv_socklen_t_equiv=int - AC_LANG_PUSH(C++) - for t in int size_t unsigned long "unsigned long"; do - AC_TRY_COMPILE([ - #include <sys/types.h> - #include <sys/socket.h> - ], - [ - $t len; - getpeername(0,0,&len); - ], - [ - kde_cv_socklen_t_equiv="$t" - break - ]) - done - AC_LANG_POP(C++) - ]) - AC_MSG_RESULT($kde_cv_socklen_t_equiv) - fi - AC_DEFINE_UNQUOTED(kde_socklen_t, $kde_cv_socklen_t_equiv, - [type to use in place of socklen_t if not defined]) - AC_DEFINE_UNQUOTED(ksize_t, $kde_cv_socklen_t_equiv, - [type to use in place of socklen_t if not defined (deprecated, use kde_socklen_t)]) -]) - -dnl This is a merge of some macros out of the gettext aclocal.m4 -dnl since we don't need anything, I took the things we need -dnl the copyright for them is: -dnl > -dnl Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc. -dnl This Makefile.in is free software; the Free Software Foundation -dnl gives unlimited permission to copy and/or distribute it, -dnl with or without modifications, as long as this notice is preserved. - -dnl This program is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without -dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A -dnl PARTICULAR PURPOSE. -dnl > -dnl for this file it is relicensed under LGPL - -AC_DEFUN([AM_KDE_WITH_NLS], - [ - dnl If we use NLS figure out what method - - AM_PATH_PROG_WITH_TEST_KDE(MSGFMT, msgfmt, - [test -n "`$ac_dir/$ac_word --version 2>&1 | grep 'GNU gettext'`"], msgfmt) - AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) - - if test -z "`$GMSGFMT --version 2>&1 | grep 'GNU gettext'`"; then - AC_MSG_RESULT([found msgfmt program is not GNU msgfmt; ignore it]) - GMSGFMT=":" - fi - MSGFMT=$GMSGFMT - AC_SUBST(GMSGFMT) - AC_SUBST(MSGFMT) - - AM_PATH_PROG_WITH_TEST_KDE(XGETTEXT, xgettext, - [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :) - - dnl Test whether we really found GNU xgettext. - if test "$XGETTEXT" != ":"; then - dnl If it is no GNU xgettext we define it as : so that the - dnl Makefiles still can work. - if $XGETTEXT --omit-header /dev/null 2> /dev/null; then - : ; - else - AC_MSG_RESULT( - [found xgettext programs is not GNU xgettext; ignore it]) - XGETTEXT=":" - fi - fi - AC_SUBST(XGETTEXT) - - ]) - -# Search path for a program which passes the given test. -# Ulrich Drepper <drepper@cygnus.com>, 1996. - -# serial 1 -# Stephan Kulow: I appended a _KDE against name conflicts - -dnl AM_PATH_PROG_WITH_TEST_KDE(VARIABLE, PROG-TO-CHECK-FOR, -dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) -AC_DEFUN([AM_PATH_PROG_WITH_TEST_KDE], -[# Extract the first word of "$2", so it can be a program name with args. -set dummy $2; ac_word=[$]2 -AC_MSG_CHECKING([for $ac_word]) -AC_CACHE_VAL(ac_cv_path_$1, -[case "[$]$1" in - /*) - ac_cv_path_$1="[$]$1" # Let the user override the test with a path. - ;; - *) - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" - for ac_dir in ifelse([$5], , $PATH, [$5]); do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - if [$3]; then - ac_cv_path_$1="$ac_dir/$ac_word" - break - fi - fi - done - IFS="$ac_save_ifs" -dnl If no 4th arg is given, leave the cache variable unset, -dnl so AC_PATH_PROGS will keep looking. -ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4" -])dnl - ;; -esac])dnl -$1="$ac_cv_path_$1" -if test -n "[$]$1"; then - AC_MSG_RESULT([$]$1) -else - AC_MSG_RESULT(no) -fi -AC_SUBST($1)dnl -]) - - -# Check whether LC_MESSAGES is available in <locale.h>. -# Ulrich Drepper <drepper@cygnus.com>, 1995. - -# serial 1 - -AC_DEFUN([AM_LC_MESSAGES], - [if test $ac_cv_header_locale_h = yes; then - AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES, - [AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES], - am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)]) - if test $am_cv_val_LC_MESSAGES = yes; then - AC_DEFINE(HAVE_LC_MESSAGES, 1, [Define if your locale.h file contains LC_MESSAGES]) - fi - fi]) - -dnl From Jim Meyering. -dnl FIXME: migrate into libit. - -AC_DEFUN([AM_FUNC_OBSTACK], -[AC_CACHE_CHECK([for obstacks], am_cv_func_obstack, - [AC_TRY_LINK([#include "obstack.h"], - [struct obstack *mem;obstack_free(mem,(char *) 0)], - am_cv_func_obstack=yes, - am_cv_func_obstack=no)]) - if test $am_cv_func_obstack = yes; then - AC_DEFINE(HAVE_OBSTACK) - else - LIBOBJS="$LIBOBJS obstack.o" - fi -]) - -dnl From Jim Meyering. Use this if you use the GNU error.[ch]. -dnl FIXME: Migrate into libit - -AC_DEFUN([AM_FUNC_ERROR_AT_LINE], -[AC_CACHE_CHECK([for error_at_line], am_cv_lib_error_at_line, - [AC_TRY_LINK([],[error_at_line(0, 0, "", 0, "");], - am_cv_lib_error_at_line=yes, - am_cv_lib_error_at_line=no)]) - if test $am_cv_lib_error_at_line = no; then - LIBOBJS="$LIBOBJS error.o" - fi - AC_SUBST(LIBOBJS)dnl -]) - -# Macro to add for using GNU gettext. -# Ulrich Drepper <drepper@cygnus.com>, 1995. - -# serial 1 -# Stephan Kulow: I put a KDE in it to avoid name conflicts - -AC_DEFUN([AM_KDE_GNU_GETTEXT], - [AC_REQUIRE([AC_PROG_MAKE_SET])dnl - AC_REQUIRE([AC_PROG_RANLIB])dnl - AC_REQUIRE([AC_HEADER_STDC])dnl - AC_REQUIRE([AC_TYPE_OFF_T])dnl - AC_REQUIRE([AC_TYPE_SIZE_T])dnl - AC_REQUIRE([AC_FUNC_ALLOCA])dnl - AC_REQUIRE([AC_FUNC_MMAP])dnl - AC_REQUIRE([AM_KDE_WITH_NLS])dnl - AC_CHECK_HEADERS([limits.h locale.h nl_types.h string.h values.h alloca.h]) - AC_CHECK_FUNCS([getcwd munmap putenv setlocale strchr strcasecmp \ -__argz_count __argz_stringify __argz_next]) - - AC_MSG_CHECKING(for stpcpy) - AC_CACHE_VAL(kde_cv_func_stpcpy, - [ - kde_safe_cxxflags=$CXXFLAGS - CXXFLAGS="-Werror" - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - AC_TRY_COMPILE([ - #include <string.h> - ], - [ - char buffer[200]; - stpcpy(buffer, buffer); - ], - kde_cv_func_stpcpy=yes, - kde_cv_func_stpcpy=no) - AC_LANG_RESTORE - CXXFLAGS=$kde_safe_cxxflags - ]) - AC_MSG_RESULT($kde_cv_func_stpcpy) - if eval "test \"`echo $kde_cv_func_stpcpy`\" = yes"; then - AC_DEFINE(HAVE_STPCPY, 1, [Define if you have stpcpy]) - fi - - AM_LC_MESSAGES - - if test "x$CATOBJEXT" != "x"; then - if test "x$ALL_LINGUAS" = "x"; then - LINGUAS= - else - AC_MSG_CHECKING(for catalogs to be installed) - NEW_LINGUAS= - for lang in ${LINGUAS=$ALL_LINGUAS}; do - case "$ALL_LINGUAS" in - *$lang*) NEW_LINGUAS="$NEW_LINGUAS $lang" ;; - esac - done - LINGUAS=$NEW_LINGUAS - AC_MSG_RESULT($LINGUAS) - fi - - dnl Construct list of names of catalog files to be constructed. - if test -n "$LINGUAS"; then - for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done - fi - fi - - ]) - -AC_DEFUN([AC_HAVE_XPM], - [AC_REQUIRE_CPP()dnl - AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) - - test -z "$XPM_LDFLAGS" && XPM_LDFLAGS= - test -z "$XPM_INCLUDE" && XPM_INCLUDE= - - AC_ARG_WITH(xpm,AC_HELP_STRING([--without-xpm],[disable color pixmap XPM tests]), - xpm_test=$withval, xpm_test="yes") - if test "x$xpm_test" = xno; then - ac_cv_have_xpm=no - else - AC_MSG_CHECKING(for XPM) - AC_CACHE_VAL(ac_cv_have_xpm, - [ - ac_save_ldflags="$LDFLAGS" - ac_save_cflags="$CFLAGS" - if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then - LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS $LDFLAGS $XPM_LDFLAGS $all_libraries -lXpm -lX11 -lXext $LIBZ $LIBSOCKET" - else - LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS $LDFLAGS $XPM_LDFLAGS $all_libraries -lXpm $LIBZ $LIBSOCKET" - fi - CFLAGS="$CFLAGS $X_INCLUDES $USER_INCLUDES" - test -n "$XPM_INCLUDE" && CFLAGS="-I$XPM_INCLUDE $CFLAGS" - AC_TRY_LINK([#include <X11/xpm.h>],[], - ac_cv_have_xpm="yes",ac_cv_have_xpm="no") - LDFLAGS="$ac_save_ldflags" - CFLAGS="$ac_save_cflags" - ])dnl - - if test "$ac_cv_have_xpm" = no; then - AC_MSG_RESULT(no) - XPM_LDFLAGS="" - XPMINC="" - $2 - else - AC_DEFINE(HAVE_XPM, 1, [Define if you have XPM support]) - if test "$XPM_LDFLAGS" = ""; then - XPMLIB='-lXpm $(LIB_X11)' - else - XPMLIB="-L$XPM_LDFLAGS -lXpm "'$(LIB_X11)' - fi - if test "$XPM_INCLUDE" = ""; then - XPMINC="" - else - XPMINC="-I$XPM_INCLUDE" - fi - AC_MSG_RESULT(yes) - $1 - fi - fi - AC_SUBST(XPMINC) - AC_SUBST(XPMLIB) -]) - -AC_DEFUN([AC_HAVE_DPMS], - [AC_REQUIRE_CPP()dnl - AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) - - test -z "$DPMS_LDFLAGS" && DPMS_LDFLAGS= - test -z "$DPMS_INCLUDE" && DPMS_INCLUDE= - DPMS_LIB= - - AC_ARG_WITH(dpms,AC_HELP_STRING([--without-dpms],[disable DPMS power saving]), - dpms_test=$withval, dpms_test="yes") - if test "x$dpms_test" = xno; then - ac_cv_have_dpms=no - else - AC_MSG_CHECKING(for DPMS) - dnl Note: ac_cv_have_dpms can be no, yes, or -lXdpms. - dnl 'yes' means DPMS_LIB="", '-lXdpms' means DPMS_LIB="-lXdpms". - AC_CACHE_VAL(ac_cv_have_dpms, - [ - if test "x$kde_use_qt_emb" = "xyes" || test "x$kde_use_qt_mac" = "xyes"; then - AC_MSG_RESULT(no) - ac_cv_have_dpms="no" - else - ac_save_ldflags="$LDFLAGS" - ac_save_cflags="$CFLAGS" - ac_save_libs="$LIBS" - LDFLAGS="$LDFLAGS $DPMS_LDFLAGS $all_libraries" - LIBS="-lX11 -lXext $LIBSOCKET" - CFLAGS="$CFLAGS $X_INCLUDES" - test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS" - AC_TRY_LINK([ - #include <X11/Xproto.h> - #include <X11/X.h> - #include <X11/Xlib.h> - #include <X11/extensions/dpms.h> - int foo_test_dpms() - { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[], - ac_cv_have_dpms="yes", [ - LIBS="-lXdpms $LIBS" - AC_TRY_LINK([ - #include <X11/Xproto.h> - #include <X11/X.h> - #include <X11/Xlib.h> - #include <X11/extensions/dpms.h> - int foo_test_dpms() - { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[], - [ - ac_cv_have_dpms="-lXdpms" - ],ac_cv_have_dpms="no") - ]) - LDFLAGS="$ac_save_ldflags" - CFLAGS="$ac_save_cflags" - LIBS="$ac_save_libs" - fi - ])dnl - - if test "$ac_cv_have_dpms" = no; then - AC_MSG_RESULT(no) - DPMS_LDFLAGS="" - DPMSINC="" - $2 - else - AC_DEFINE(HAVE_DPMS, 1, [Define if you have DPMS support]) - if test "$ac_cv_have_dpms" = "-lXdpms"; then - DPMS_LIB="-lXdpms" - fi - if test "$DPMS_LDFLAGS" = ""; then - DPMSLIB="$DPMS_LIB "'$(LIB_X11)' - else - DPMSLIB="$DPMS_LDFLAGS $DPMS_LIB "'$(LIB_X11)' - fi - if test "$DPMS_INCLUDE" = ""; then - DPMSINC="" - else - DPMSINC="-I$DPMS_INCLUDE" - fi - AC_MSG_RESULT(yes) - $1 - fi - fi - ac_save_cflags="$CFLAGS" - CFLAGS="$CFLAGS $X_INCLUDES" - test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS" - AH_TEMPLATE(HAVE_DPMSCAPABLE_PROTO, - [Define if you have the DPMSCapable prototype in <X11/extensions/dpms.h>]) - AC_CHECK_DECL(DPMSCapable, - AC_DEFINE(HAVE_DPMSCAPABLE_PROTO),, - [#include <X11/Xlib.h> - #include <X11/extensions/dpms.h>]) - AH_TEMPLATE(HAVE_DPMSINFO_PROTO, - [Define if you have the DPMSInfo prototype in <X11/extensions/dpms.h>]) - AC_CHECK_DECL(DPMSInfo, - AC_DEFINE(HAVE_DPMSINFO_PROTO),, - [#include <X11/Xlib.h> - #include <X11/extensions/dpms.h>]) - CFLAGS="$ac_save_cflags" - AC_SUBST(DPMSINC) - AC_SUBST(DPMSLIB) -]) - -AC_DEFUN([AC_HAVE_GL], - [AC_REQUIRE_CPP()dnl - AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) - - test -z "$GL_LDFLAGS" && GL_LDFLAGS= - test -z "$GL_INCLUDE" && GL_INCLUDE= - - AC_ARG_WITH(gl,AC_HELP_STRING([--without-gl],[disable 3D GL modes]), - gl_test=$withval, gl_test="yes") - if test "x$kde_use_qt_emb" = "xyes"; then - # GL and Qt Embedded is a no-go for now. - ac_cv_have_gl=no - elif test "x$gl_test" = xno; then - ac_cv_have_gl=no - else - AC_MSG_CHECKING(for GL) - AC_CACHE_VAL(ac_cv_have_gl, - [ - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - ac_save_ldflags=$LDFLAGS - ac_save_cxxflags=$CXXFLAGS - ac_save_libs=$LIBS - LDFLAGS="$LDFLAGS $GL_LDFLAGS $X_LDFLAGS $all_libraries" - LIBS="$LIBS -lGL -lGLU" - test "x$kde_use_qt_mac" != xyes && test "x$kde_use_qt_emb" != xyes && LIBS="$LIBS -lX11" - LIBS="$LIBS $LIB_XEXT -lm $LIBSOCKET" - CXXFLAGS="$CFLAGS $X_INCLUDES" - test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS" - AC_TRY_LINK([#include <GL/gl.h> -#include <GL/glu.h> -], [], - ac_cv_have_gl="yes", ac_cv_have_gl="no") - AC_LANG_RESTORE - LDFLAGS=$ac_save_ldflags - CXXFLAGS=$ac_save_cxxflags - LIBS=$ac_save_libs - ])dnl - - if test "$ac_cv_have_gl" = "no"; then - AC_MSG_RESULT(no) - GL_LDFLAGS="" - GLINC="" - $2 - else - AC_DEFINE(HAVE_GL, 1, [Defines if you have GL (Mesa, OpenGL, ...)]) - if test "$GL_LDFLAGS" = ""; then - GLLIB='-lGLU -lGL $(LIB_X11)' - else - GLLIB="$GL_LDFLAGS -lGLU -lGL "'$(LIB_X11)' - fi - if test "$GL_INCLUDE" = ""; then - GLINC="" - else - GLINC="-I$GL_INCLUDE" - fi - AC_MSG_RESULT($ac_cv_have_gl) - $1 - fi - fi - AC_SUBST(GLINC) - AC_SUBST(GLLIB) -]) - - - dnl shadow password and PAM magic - maintained by ossi@kde.org - -AC_DEFUN([KDE_PAM], [ - AC_REQUIRE([KDE_CHECK_LIBDL]) - - want_pam= - AC_ARG_WITH(pam, - AC_HELP_STRING([--with-pam[=ARG]],[enable support for PAM: ARG=[yes|no|service name]]), - [ if test "x$withval" = "xyes"; then - want_pam=yes - pam_service=kde - elif test "x$withval" = "xno"; then - want_pam=no - else - want_pam=yes - pam_service=$withval - fi - ], [ pam_service=kde ]) - - use_pam= - PAMLIBS= - if test "x$want_pam" != xno; then - AC_CHECK_LIB(pam, pam_start, [ - AC_CHECK_HEADER(security/pam_appl.h, - [ pam_header=security/pam_appl.h ], - [ AC_CHECK_HEADER(pam/pam_appl.h, - [ pam_header=pam/pam_appl.h ], - [ - AC_MSG_WARN([PAM detected, but no headers found! -Make sure you have the necessary development packages installed.]) - ] - ) - ] - ) - ], , $LIBDL) - if test -z "$pam_header"; then - if test "x$want_pam" = xyes; then - AC_MSG_ERROR([--with-pam was specified, but cannot compile with PAM!]) - fi - else - AC_DEFINE(HAVE_PAM, 1, [Defines if you have PAM (Pluggable Authentication Modules)]) - PAMLIBS="$PAM_MISC_LIB -lpam $LIBDL" - use_pam=yes - - dnl darwin claims to be something special - if test "$pam_header" = "pam/pam_appl.h"; then - AC_DEFINE(HAVE_PAM_PAM_APPL_H, 1, [Define if your PAM headers are in pam/ instead of security/]) - fi - - dnl test whether struct pam_message is const (Linux) or not (Sun) - AC_MSG_CHECKING(for const pam_message) - AC_EGREP_HEADER([struct pam_message], $pam_header, - [ AC_EGREP_HEADER([const struct pam_message], $pam_header, - [AC_MSG_RESULT([const: Linux-type PAM])], - [AC_MSG_RESULT([nonconst: Sun-type PAM]) - AC_DEFINE(PAM_MESSAGE_NONCONST, 1, [Define if your PAM support takes non-const arguments (Solaris)])] - )], - [AC_MSG_RESULT([not found - assume const, Linux-type PAM])]) - fi - fi - - AC_SUBST(PAMLIBS) -]) - -dnl DEF_PAM_SERVICE(arg name, full name, define name) -AC_DEFUN([DEF_PAM_SERVICE], [ - AC_ARG_WITH($1-pam, - AC_HELP_STRING([--with-$1-pam=[val]],[override PAM service from --with-pam for $2]), - [ if test "x$use_pam" = xyes; then - $3_PAM_SERVICE=$withval - else - AC_MSG_ERROR([Cannot use use --with-$1-pam, as no PAM was detected. -You may want to enforce it by using --with-pam.]) - fi - ], - [ if test "x$use_pam" = xyes; then - $3_PAM_SERVICE="$pam_service" - fi - ]) - if test -n "$$3_PAM_SERVICE"; then - AC_MSG_RESULT([The PAM service used by $2 will be $$3_PAM_SERVICE]) - AC_DEFINE_UNQUOTED($3_PAM_SERVICE, "$$3_PAM_SERVICE", [The PAM service to be used by $2]) - fi - AC_SUBST($3_PAM_SERVICE) -]) - -AC_DEFUN([KDE_SHADOWPASSWD], [ - AC_REQUIRE([KDE_PAM]) - - AC_CHECK_LIB(shadow, getspent, - [ LIBSHADOW="-lshadow" - ac_use_shadow=yes - ], - [ dnl for UnixWare - AC_CHECK_LIB(gen, getspent, - [ LIBGEN="-lgen" - ac_use_shadow=yes - ], - [ AC_CHECK_FUNC(getspent, - [ ac_use_shadow=yes ], - [ ac_use_shadow=no ]) - ]) - ]) - AC_SUBST(LIBSHADOW) - AC_SUBST(LIBGEN) - - AC_MSG_CHECKING([for shadow passwords]) - - AC_ARG_WITH(shadow, - AC_HELP_STRING([--with-shadow],[If you want shadow password support]), - [ if test "x$withval" != "xno"; then - use_shadow=yes - else - use_shadow=no - fi - ], [ - use_shadow="$ac_use_shadow" - ]) - - if test "x$use_shadow" = xyes; then - AC_MSG_RESULT(yes) - AC_DEFINE(HAVE_SHADOW, 1, [Define if you use shadow passwords]) - else - AC_MSG_RESULT(no) - LIBSHADOW= - LIBGEN= - fi - - dnl finally make the relevant binaries setuid root, if we have shadow passwds. - dnl this still applies, if we could use it indirectly through pam. - if test "x$use_shadow" = xyes || - ( test "x$use_pam" = xyes && test "x$ac_use_shadow" = xyes ); then - case $host in - *-*-freebsd* | *-*-netbsd* | *-*-openbsd*) - SETUIDFLAGS="-m 4755 -o root";; - *) - SETUIDFLAGS="-m 4755";; - esac - fi - AC_SUBST(SETUIDFLAGS) - -]) - -AC_DEFUN([KDE_PASSWDLIBS], [ - AC_REQUIRE([KDE_MISC_TESTS]) dnl for LIBCRYPT - AC_REQUIRE([KDE_PAM]) - AC_REQUIRE([KDE_SHADOWPASSWD]) - - if test "x$use_pam" = "xyes"; then - PASSWDLIBS="$PAMLIBS" - else - PASSWDLIBS="$LIBCRYPT $LIBSHADOW $LIBGEN" - fi - - dnl FreeBSD uses a shadow-like setup, where /etc/passwd holds the users, but - dnl /etc/master.passwd holds the actual passwords. /etc/master.passwd requires - dnl root to read, so kcheckpass needs to be root (even when using pam, since pam - dnl may need to read /etc/master.passwd). - case $host in - *-*-freebsd*) - SETUIDFLAGS="-m 4755 -o root" - ;; - *) - ;; - esac - - AC_SUBST(PASSWDLIBS) -]) - -AC_DEFUN([KDE_CHECK_LIBDL], -[ -AC_CHECK_LIB(dl, dlopen, [ -LIBDL="-ldl" -ac_cv_have_dlfcn=yes -]) - -AC_CHECK_LIB(dld, shl_unload, [ -LIBDL="-ldld" -ac_cv_have_shload=yes -]) - -AC_SUBST(LIBDL) -]) - -AC_DEFUN([KDE_CHECK_DLOPEN], -[ -KDE_CHECK_LIBDL -AC_CHECK_HEADERS(dlfcn.h dl.h) -if test "$ac_cv_header_dlfcn_h" = "no"; then - ac_cv_have_dlfcn=no -fi - -if test "$ac_cv_header_dl_h" = "no"; then - ac_cv_have_shload=no -fi - -dnl XXX why change enable_dlopen? its already set by autoconf's AC_ARG_ENABLE -dnl (MM) -AC_ARG_ENABLE(dlopen, -AC_HELP_STRING([--disable-dlopen],[link statically [default=no]]), -enable_dlopen=$enableval, -enable_dlopen=yes) - -# override the user's opinion, if we know it better ;) -if test "$ac_cv_have_dlfcn" = "no" && test "$ac_cv_have_shload" = "no"; then - enable_dlopen=no -fi - -if test "$ac_cv_have_dlfcn" = "yes"; then - AC_DEFINE_UNQUOTED(HAVE_DLFCN, 1, [Define if you have dlfcn]) -fi - -if test "$ac_cv_have_shload" = "yes"; then - AC_DEFINE_UNQUOTED(HAVE_SHLOAD, 1, [Define if you have shload]) -fi - -if test "$enable_dlopen" = no ; then - test -n "$1" && eval $1 -else - test -n "$2" && eval $2 -fi - -]) - -AC_DEFUN([KDE_CHECK_DYNAMIC_LOADING], -[ -KDE_CHECK_DLOPEN(libtool_enable_shared=yes, libtool_enable_static=no) -KDE_PROG_LIBTOOL -AC_MSG_CHECKING([dynamic loading]) -eval "`egrep '^build_libtool_libs=' libtool`" -if test "$build_libtool_libs" = "yes" && test "$enable_dlopen" = "yes"; then - dynamic_loading=yes - AC_DEFINE_UNQUOTED(HAVE_DYNAMIC_LOADING) -else - dynamic_loading=no -fi -AC_MSG_RESULT($dynamic_loading) -if test "$dynamic_loading" = "yes"; then - $1 -else - $2 -fi -]) - -AC_DEFUN([KDE_ADD_INCLUDES], -[ -if test -z "$1"; then - test_include="Pix.h" -else - test_include="$1" -fi - -AC_MSG_CHECKING([for libg++ ($test_include)]) - -AC_CACHE_VAL(kde_cv_libgpp_includes, -[ -kde_cv_libgpp_includes=no - - for ac_dir in \ - \ - /usr/include/g++ \ - /usr/include \ - /usr/unsupported/include \ - /opt/include \ - $extra_include \ - ; \ - do - if test -r "$ac_dir/$test_include"; then - kde_cv_libgpp_includes=$ac_dir - break - fi - done -]) - -AC_MSG_RESULT($kde_cv_libgpp_includes) -if test "$kde_cv_libgpp_includes" != "no"; then - all_includes="-I$kde_cv_libgpp_includes $all_includes $USER_INCLUDES" -fi -]) -]) - -AC_DEFUN([KDE_CHECK_LIBPTHREAD], -[ - dnl This code is here specifically to handle the - dnl various flavors of threading library on FreeBSD - dnl 4-, 5-, and 6-, and the (weird) rules around it. - dnl There may be an environment PTHREAD_LIBS that - dnl specifies what to use; otherwise, search for it. - dnl -pthread is special cased and unsets LIBPTHREAD - dnl below if found. - LIBPTHREAD="" - - if test -n "$PTHREAD_LIBS"; then - if test "x$PTHREAD_LIBS" = "x-pthread" ; then - LIBPTHREAD="PTHREAD" - else - PTHREAD_LIBS_save="$PTHREAD_LIBS" - PTHREAD_LIBS=`echo "$PTHREAD_LIBS_save" | sed -e 's,^-l,,g'` - AC_MSG_CHECKING([for pthread_create in $PTHREAD_LIBS]) - KDE_CHECK_LIB($PTHREAD_LIBS, pthread_create, [ - LIBPTHREAD="$PTHREAD_LIBS_save"]) - PTHREAD_LIBS="$PTHREAD_LIBS_save" - fi - fi - - dnl Is this test really needed, in the face of the Tru64 test below? - if test -z "$LIBPTHREAD"; then - AC_CHECK_LIB(pthread, pthread_create, [LIBPTHREAD="-lpthread"]) - fi - - dnl This is a special Tru64 check, see BR 76171 issue #18. - if test -z "$LIBPTHREAD" ; then - AC_MSG_CHECKING([for pthread_create in -lpthread]) - kde_safe_libs=$LIBS - LIBS="$LIBS -lpthread" - AC_TRY_LINK([#include <pthread.h>],[(void)pthread_create(0,0,0,0);],[ - AC_MSG_RESULT(yes) - LIBPTHREAD="-lpthread"],[ - AC_MSG_RESULT(no)]) - LIBS=$kde_safe_libs - fi - - dnl Un-special-case for FreeBSD. - if test "x$LIBPTHREAD" = "xPTHREAD" ; then - LIBPTHREAD="" - fi - - AC_SUBST(LIBPTHREAD) -]) - -AC_DEFUN([KDE_CHECK_PTHREAD_OPTION], -[ - USE_THREADS="" - if test -z "$LIBPTHREAD"; then - KDE_CHECK_COMPILER_FLAG(pthread, [USE_THREADS="-D_THREAD_SAFE -pthread"]) - fi - - AH_VERBATIM(__svr_define, [ -#if defined(__SVR4) && !defined(__svr4__) -#define __svr4__ 1 -#endif -]) - case $host_os in - solaris*) - KDE_CHECK_COMPILER_FLAG(mt, [USE_THREADS="-mt"]) - CPPFLAGS="$CPPFLAGS -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DUSE_SOLARIS -DSVR4" - ;; - freebsd*) - CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE $PTHREAD_CFLAGS" - ;; - aix*) - CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" - LIBPTHREAD="$LIBPTHREAD -lc_r" - ;; - linux*) CPPFLAGS="$CPPFLAGS -D_REENTRANT" - if test "$CXX" = "KCC"; then - CXXFLAGS="$CXXFLAGS --thread_safe" - NOOPT_CXXFLAGS="$NOOPT_CXXFLAGS --thread_safe" - fi - ;; - *) - ;; - esac - AC_SUBST(USE_THREADS) - AC_SUBST(LIBPTHREAD) -]) - -AC_DEFUN([KDE_CHECK_THREADING], -[ - AC_REQUIRE([KDE_CHECK_LIBPTHREAD]) - AC_REQUIRE([KDE_CHECK_PTHREAD_OPTION]) - dnl default is yes if libpthread is found and no if no libpthread is available - if test -z "$LIBPTHREAD"; then - if test -z "$USE_THREADS"; then - kde_check_threading_default=no - else - kde_check_threading_default=yes - fi - else - kde_check_threading_default=yes - fi - AC_ARG_ENABLE(threading,AC_HELP_STRING([--disable-threading],[disables threading even if libpthread found]), - kde_use_threading=$enableval, kde_use_threading=$kde_check_threading_default) - if test "x$kde_use_threading" = "xyes"; then - AC_DEFINE(HAVE_LIBPTHREAD, 1, [Define if you have a working libpthread (will enable threaded code)]) - fi -]) - -AC_DEFUN([KDE_TRY_LINK_PYTHON], -[ -if test "$kde_python_link_found" = no; then - -if test "$1" = normal; then - AC_MSG_CHECKING(if a Python application links) -else - AC_MSG_CHECKING(if Python depends on $2) -fi - -AC_CACHE_VAL(kde_cv_try_link_python_$1, -[ -kde_save_cflags="$CFLAGS" -CFLAGS="$CFLAGS $PYTHONINC" -kde_save_libs="$LIBS" -LIBS="$LIBS $LIBPYTHON $2 $LIBDL $LIBSOCKET" -kde_save_ldflags="$LDFLAGS" -LDFLAGS="$LDFLAGS $PYTHONLIB" - -AC_TRY_LINK( -[ -#include <Python.h> -],[ - PySys_SetArgv(1, 0); -], - [kde_cv_try_link_python_$1=yes], - [kde_cv_try_link_python_$1=no] -) -CFLAGS="$kde_save_cflags" -LIBS="$kde_save_libs" -LDFLAGS="$kde_save_ldflags" -]) - -if test "$kde_cv_try_link_python_$1" = "yes"; then - AC_MSG_RESULT(yes) - kde_python_link_found=yes - if test ! "$1" = normal; then - LIBPYTHON="$LIBPYTHON $2" - fi - $3 -else - AC_MSG_RESULT(no) - $4 -fi - -fi - -]) - -AC_DEFUN([KDE_CHECK_PYTHON_DIR], -[ -AC_MSG_CHECKING([for Python directory]) - -AC_CACHE_VAL(kde_cv_pythondir, -[ - if test -z "$PYTHONDIR"; then - kde_cv_pythondir=/usr/local - else - kde_cv_pythondir="$PYTHONDIR" - fi -]) - -AC_ARG_WITH(pythondir, -AC_HELP_STRING([--with-pythondir=pythondir],[use python installed in pythondir]), -[ - ac_python_dir=$withval -], ac_python_dir=$kde_cv_pythondir -) - -AC_MSG_RESULT($ac_python_dir) -]) - -AC_DEFUN([KDE_CHECK_PYTHON_INTERN], -[ -AC_REQUIRE([KDE_CHECK_LIBDL]) -AC_REQUIRE([KDE_CHECK_LIBPTHREAD]) -AC_REQUIRE([KDE_CHECK_PYTHON_DIR]) - -if test -z "$1"; then - version="1.5" -else - version="$1" -fi - -AC_MSG_CHECKING([for Python$version]) - -python_incdirs="$ac_python_dir/include /usr/include /usr/local/include/ $kde_extra_includes" -AC_FIND_FILE(Python.h, $python_incdirs, python_incdir) -if test ! -r $python_incdir/Python.h; then - AC_FIND_FILE(python$version/Python.h, $python_incdirs, python_incdir) - python_incdir=$python_incdir/python$version - if test ! -r $python_incdir/Python.h; then - python_incdir=no - fi -fi - -PYTHONINC=-I$python_incdir - -python_libdirs="$ac_python_dir/lib$kdelibsuff /usr/lib$kdelibsuff /usr/local /usr/lib$kdelibsuff $kde_extra_libs" -AC_FIND_FILE(libpython$version.so, $python_libdirs, python_libdir) -if test ! -r $python_libdir/libpython$version.so; then - AC_FIND_FILE(libpython$version.a, $python_libdirs, python_libdir) - if test ! -r $python_libdir/libpython$version.a; then - AC_FIND_FILE(python$version/config/libpython$version.a, $python_libdirs, python_libdir) - python_libdir=$python_libdir/python$version/config - if test ! -r $python_libdir/libpython$version.a; then - python_libdir=no - fi - fi -fi - -PYTHONLIB=-L$python_libdir -kde_orig_LIBPYTHON=$LIBPYTHON -if test -z "$LIBPYTHON"; then - LIBPYTHON=-lpython$version -fi - -AC_FIND_FILE(python$version/copy.py, $python_libdirs, python_moddir) -python_moddir=$python_moddir/python$version -if test ! -r $python_moddir/copy.py; then - python_moddir=no -fi - -PYTHONMODDIR=$python_moddir - -AC_MSG_RESULT(header $python_incdir library $python_libdir modules $python_moddir) - -if test x$python_incdir = xno || test x$python_libdir = xno || test x$python_moddir = xno; then - LIBPYTHON=$kde_orig_LIBPYTHON - test "x$PYTHONLIB" = "x-Lno" && PYTHONLIB="" - test "x$PYTHONINC" = "x-Ino" && PYTHONINC="" - $2 -else - dnl Note: this test is very weak - kde_python_link_found=no - KDE_TRY_LINK_PYTHON(normal) - KDE_TRY_LINK_PYTHON(m, -lm) - KDE_TRY_LINK_PYTHON(pthread, $LIBPTHREAD) - KDE_TRY_LINK_PYTHON(tcl, -ltcl) - KDE_TRY_LINK_PYTHON(db2, -ldb2) - KDE_TRY_LINK_PYTHON(m_and_thread, [$LIBPTHREAD -lm]) - KDE_TRY_LINK_PYTHON(m_and_thread_and_util, [$LIBPTHREAD -lm -lutil]) - KDE_TRY_LINK_PYTHON(m_and_thread_and_db3, [$LIBPTHREAD -lm -ldb-3 -lutil]) - KDE_TRY_LINK_PYTHON(pthread_and_db3, [$LIBPTHREAD -ldb-3]) - KDE_TRY_LINK_PYTHON(m_and_thread_and_db, [$LIBPTHREAD -lm -ldb -ltermcap -lutil]) - KDE_TRY_LINK_PYTHON(pthread_and_dl, [$LIBPTHREAD $LIBDL -lutil -lreadline -lncurses -lm]) - KDE_TRY_LINK_PYTHON(pthread_and_panel_curses, [$LIBPTHREAD $LIBDL -lm -lpanel -lcurses]) - KDE_TRY_LINK_PYTHON(m_and_thread_and_db_special, [$LIBPTHREAD -lm -ldb -lutil], [], - [AC_MSG_WARN([it seems, Python depends on another library. - Please set LIBPYTHON to '-lpython$version -lotherlib' before calling configure to fix this - and contact the authors to let them know about this problem]) - ]) - - LIBPYTHON="$LIBPYTHON $LIBDL $LIBSOCKET" - AC_SUBST(PYTHONINC) - AC_SUBST(PYTHONLIB) - AC_SUBST(LIBPYTHON) - AC_SUBST(PYTHONMODDIR) - AC_DEFINE(HAVE_PYTHON, 1, [Define if you have the development files for python]) -fi - -]) - - -AC_DEFUN([KDE_CHECK_PYTHON], -[ - KDE_CHECK_PYTHON_INTERN("2.4", - [KDE_CHECK_PYTHON_INTERN("2.3", - [KDE_CHECK_PYTHON_INTERN("2.2", - [KDE_CHECK_PYTHON_INTERN("2.1", - [KDE_CHECK_PYTHON_INTERN("2.0", - [KDE_CHECK_PYTHON_INTERN($1, $2) ]) - ]) - ]) - ]) - ]) -]) - -AC_DEFUN([KDE_CHECK_STL], -[ - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - ac_save_CXXFLAGS="$CXXFLAGS" - CXXFLAGS="`echo $CXXFLAGS | sed s/-fno-exceptions//`" - - AC_MSG_CHECKING([if C++ programs can be compiled]) - AC_CACHE_VAL(kde_cv_stl_works, - [ - AC_TRY_COMPILE([ -#include <string> -using namespace std; -],[ - string astring="Hallo Welt."; - astring.erase(0, 6); // now astring is "Welt" - return 0; -], kde_cv_stl_works=yes, - kde_cv_stl_works=no) -]) - - AC_MSG_RESULT($kde_cv_stl_works) - - if test "$kde_cv_stl_works" = "yes"; then - # back compatible - AC_DEFINE_UNQUOTED(HAVE_SGI_STL, 1, [Define if you have a STL implementation by SGI]) - else - AC_MSG_ERROR([Your Installation isn't able to compile simple C++ programs. -Check config.log for details - if you're using a Linux distribution you might miss -a package named similar to libstdc++-dev.]) - fi - - CXXFLAGS="$ac_save_CXXFLAGS" - AC_LANG_RESTORE -]) - -AC_DEFUN([AC_FIND_QIMGIO], - [AC_REQUIRE([AC_FIND_JPEG]) -AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) -AC_MSG_CHECKING([for qimgio]) -AC_CACHE_VAL(ac_cv_lib_qimgio, -[ -AC_LANG_SAVE -AC_LANG_CPLUSPLUS -ac_save_LIBS="$LIBS" -ac_save_CXXFLAGS="$CXXFLAGS" -LIBS="$all_libraries -lqimgio -lpng -lz $LIBJPEG $LIBQT" -CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes" -AC_TRY_RUN(dnl -[ -#include <qimageio.h> -#include <qstring.h> -int main() { - QString t = "hallo"; - t.fill('t'); - qInitImageIO(); -} -], - ac_cv_lib_qimgio=yes, - ac_cv_lib_qimgio=no, - ac_cv_lib_qimgio=no) -LIBS="$ac_save_LIBS" -CXXFLAGS="$ac_save_CXXFLAGS" -AC_LANG_RESTORE -])dnl -if eval "test \"`echo $ac_cv_lib_qimgio`\" = yes"; then - LIBQIMGIO="-lqimgio -lpng -lz $LIBJPEG" - AC_MSG_RESULT(yes) - AC_DEFINE_UNQUOTED(HAVE_QIMGIO, 1, [Define if you have the Qt extension qimgio available]) - AC_SUBST(LIBQIMGIO) -else - AC_MSG_RESULT(not found) -fi -]) - -AC_DEFUN([AM_DISABLE_LIBRARIES], -[ - AC_PROVIDE([AM_ENABLE_STATIC]) - AC_PROVIDE([AM_ENABLE_SHARED]) - enable_static=no - enable_shared=yes -]) - - -AC_DEFUN([AC_CHECK_UTMP_FILE], -[ - AC_MSG_CHECKING([for utmp file]) - - AC_CACHE_VAL(kde_cv_utmp_file, - [ - kde_cv_utmp_file=no - - for ac_file in \ - \ - /var/run/utmp \ - /var/adm/utmp \ - /etc/utmp \ - ; \ - do - if test -r "$ac_file"; then - kde_cv_utmp_file=$ac_file - break - fi - done - ]) - - if test "$kde_cv_utmp_file" != "no"; then - AC_DEFINE_UNQUOTED(UTMP, "$kde_cv_utmp_file", [Define the file for utmp entries]) - $1 - AC_MSG_RESULT($kde_cv_utmp_file) - else - $2 - AC_MSG_RESULT([non found]) - fi -]) - - -AC_DEFUN([KDE_CREATE_SUBDIRSLIST], -[ - -DO_NOT_COMPILE="$DO_NOT_COMPILE CVS debian bsd-port admin" -TOPSUBDIRS="" - -if test ! -s $srcdir/subdirs; then - dnl Note: Makefile.common creates subdirs, so this is just a fallback - files=`cd $srcdir && ls -1` - dirs=`for i in $files; do if test -d $i; then echo $i; fi; done` - for i in $dirs; do - echo $i >> $srcdir/subdirs - done -fi - -ac_topsubdirs= -if test -s $srcdir/inst-apps; then - ac_topsubdirs="`cat $srcdir/inst-apps`" -elif test -s $srcdir/subdirs; then - ac_topsubdirs="`cat $srcdir/subdirs`" -fi - -for i in $ac_topsubdirs; do - AC_MSG_CHECKING([if $i should be compiled]) - if test -d $srcdir/$i; then - install_it="yes" - for j in $DO_NOT_COMPILE; do - if test $i = $j; then - install_it="no" - fi - done - else - install_it="no" - fi - AC_MSG_RESULT($install_it) - vari=`echo $i | sed -e 's,[[-+.@]],_,g'` - if test $install_it = "yes"; then - TOPSUBDIRS="$TOPSUBDIRS $i" - eval "$vari""_SUBDIR_included=yes" - else - eval "$vari""_SUBDIR_included=no" - fi -done - -AC_SUBST(TOPSUBDIRS) -]) - -AC_DEFUN([KDE_CHECK_NAMESPACES], -[ -AC_MSG_CHECKING(whether C++ compiler supports namespaces) -AC_LANG_SAVE -AC_LANG_CPLUSPLUS -AC_TRY_COMPILE([ -], -[ -namespace Foo { - extern int i; - namespace Bar { - extern int i; - } -} - -int Foo::i = 0; -int Foo::Bar::i = 1; -],[ - AC_MSG_RESULT(yes) - AC_DEFINE(HAVE_NAMESPACES) -], [ -AC_MSG_RESULT(no) -]) -AC_LANG_RESTORE -]) - -dnl ------------------------------------------------------------------------ -dnl Check for S_ISSOCK macro. Doesn't exist on Unix SCO. faure@kde.org -dnl ------------------------------------------------------------------------ -dnl -AC_DEFUN([AC_CHECK_S_ISSOCK], -[ -AC_MSG_CHECKING(for S_ISSOCK) -AC_CACHE_VAL(ac_cv_have_s_issock, -[ -AC_TRY_LINK( -[ -#include <sys/stat.h> -], -[ -struct stat buff; -int b = S_ISSOCK( buff.st_mode ); -], -ac_cv_have_s_issock=yes, -ac_cv_have_s_issock=no) -]) -AC_MSG_RESULT($ac_cv_have_s_issock) -if test "$ac_cv_have_s_issock" = "yes"; then - AC_DEFINE_UNQUOTED(HAVE_S_ISSOCK, 1, [Define if sys/stat.h declares S_ISSOCK.]) -fi - -AH_VERBATIM(_ISSOCK, -[ -#ifndef HAVE_S_ISSOCK -#define HAVE_S_ISSOCK -#define S_ISSOCK(mode) (1==0) -#endif -]) - -]) - -dnl ------------------------------------------------------------------------ -dnl Check for MAXPATHLEN macro, defines KDEMAXPATHLEN. faure@kde.org -dnl ------------------------------------------------------------------------ -dnl -AC_DEFUN([AC_CHECK_KDEMAXPATHLEN], -[ -AC_MSG_CHECKING(for MAXPATHLEN) -AC_CACHE_VAL(ac_cv_maxpathlen, -[ -cat > conftest.$ac_ext <<EOF -#ifdef STDC_HEADERS -# include <stdlib.h> -#endif -#include <stdio.h> -#include <sys/param.h> -#ifndef MAXPATHLEN -#define MAXPATHLEN 1024 -#endif - -KDE_HELLO MAXPATHLEN - -EOF - -ac_try="$ac_cpp conftest.$ac_ext 2>/dev/null | grep '^KDE_HELLO' >conftest.out" - -if AC_TRY_EVAL(ac_try) && test -s conftest.out; then - ac_cv_maxpathlen=`sed 's#KDE_HELLO ##' conftest.out` -else - ac_cv_maxpathlen=1024 -fi - -rm conftest.* - -]) -AC_MSG_RESULT($ac_cv_maxpathlen) -AC_DEFINE_UNQUOTED(KDEMAXPATHLEN,$ac_cv_maxpathlen, [Define a safe value for MAXPATHLEN] ) -]) - -AC_DEFUN([KDE_CHECK_HEADER], -[ - kde_safe_cppflags=$CPPFLAGS - CPPFLAGS="$CPPFLAGS $all_includes" - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - AC_CHECK_HEADER([$1], [$2], [$3], [$4]) - AC_LANG_RESTORE - CPPFLAGS=$kde_safe_cppflags -]) - -AC_DEFUN([KDE_CHECK_HEADERS], -[ - AH_CHECK_HEADERS([$1]) - AC_LANG_SAVE - kde_safe_cppflags=$CPPFLAGS - CPPFLAGS="$CPPFLAGS $all_includes" - AC_LANG_CPLUSPLUS - AC_CHECK_HEADERS([$1], [$2], [$3], [$4]) - CPPFLAGS=$kde_safe_cppflags - AC_LANG_RESTORE -]) - -AC_DEFUN([KDE_FAST_CONFIGURE], -[ - dnl makes configure fast (needs perl) - AC_ARG_ENABLE(fast-perl, AC_HELP_STRING([--disable-fast-perl],[disable fast Makefile generation (needs perl)]), - with_fast_perl=$enableval, with_fast_perl=yes) -]) - -AC_DEFUN([KDE_CONF_FILES], -[ - val= - if test -f $srcdir/configure.files ; then - val=`sed -e 's%^%\$(top_srcdir)/%' $srcdir/configure.files` - fi - CONF_FILES= - if test -n "$val" ; then - for i in $val ; do - CONF_FILES="$CONF_FILES $i" - done - fi - AC_SUBST(CONF_FILES) -])dnl - -dnl This sets the prefix, for arts and kdelibs -dnl Do NOT use in any other module. -dnl It only looks at --prefix, KDEDIR and falls back to /usr/local/kde -AC_DEFUN([KDE_SET_PREFIX_CORE], -[ - unset CDPATH - dnl make $KDEDIR the default for the installation - AC_PREFIX_DEFAULT(${KDEDIR:-/usr/local/kde}) - - if test "x$prefix" = "xNONE"; then - prefix=$ac_default_prefix - ac_configure_args="$ac_configure_args --prefix=$prefix" - fi - # And delete superfluous '/' to make compares easier - prefix=`echo "$prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'` - exec_prefix=`echo "$exec_prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'` - - kde_libs_prefix='$(prefix)' - kde_libs_htmldir='$(kde_htmldir)' - AC_SUBST(kde_libs_prefix) - AC_SUBST(kde_libs_htmldir) - KDE_FAST_CONFIGURE - KDE_CONF_FILES -]) - - -AC_DEFUN([KDE_SET_PREFIX], -[ - unset CDPATH - dnl We can't give real code to that macro, only a value. - dnl It only matters for --help, since we set the prefix in this function anyway. - AC_PREFIX_DEFAULT(${KDEDIR:-the kde prefix}) - - KDE_SET_DEFAULT_BINDIRS - if test "x$prefix" = "xNONE"; then - dnl no prefix given: look for kde-config in the PATH and deduce the prefix from it - KDE_FIND_PATH(kde-config, KDECONFIG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(kde-config)], [], prepend) - else - dnl prefix given: look for kde-config, preferrably in prefix, otherwise in PATH - kde_save_PATH="$PATH" - PATH="$exec_prefix/bin:$prefix/bin:$PATH" - KDE_FIND_PATH(kde-config, KDECONFIG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(kde-config)], [], prepend) - PATH="$kde_save_PATH" - fi - - kde_libs_prefix=`$KDECONFIG --prefix` - if test -z "$kde_libs_prefix" || test ! -x "$kde_libs_prefix"; then - AC_MSG_ERROR([$KDECONFIG --prefix outputed the non existant prefix '$kde_libs_prefix' for kdelibs. - This means it has been moved since you installed it. - This won't work. Please recompile kdelibs for the new prefix. - ]) - fi - kde_libs_htmldir=`$KDECONFIG --install html --expandvars` - kde_libs_suffix=`$KDECONFIG --libsuffix` - - AC_MSG_CHECKING([where to install]) - if test "x$prefix" = "xNONE"; then - prefix=$kde_libs_prefix - AC_MSG_RESULT([$prefix (as returned by kde-config)]) - else - dnl --prefix was given. Compare prefixes and warn (in configure.in.bot.end) if different - given_prefix=$prefix - AC_MSG_RESULT([$prefix (as requested)]) - fi - - # And delete superfluous '/' to make compares easier - prefix=`echo "$prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'` - exec_prefix=`echo "$exec_prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'` - given_prefix=`echo "$given_prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'` - - AC_SUBST(KDECONFIG) - AC_SUBST(kde_libs_prefix) - AC_SUBST(kde_libs_htmldir) - - KDE_FAST_CONFIGURE - KDE_CONF_FILES -]) - -pushdef([AC_PROG_INSTALL], -[ - dnl our own version, testing for a -p flag - popdef([AC_PROG_INSTALL]) - dnl as AC_PROG_INSTALL works as it works we first have - dnl to save if the user didn't specify INSTALL, as the - dnl autoconf one overwrites INSTALL and we have no chance to find - dnl out afterwards - test -n "$INSTALL" && kde_save_INSTALL_given=$INSTALL - test -n "$INSTALL_PROGRAM" && kde_save_INSTALL_PROGRAM_given=$INSTALL_PROGRAM - test -n "$INSTALL_SCRIPT" && kde_save_INSTALL_SCRIPT_given=$INSTALL_SCRIPT - AC_PROG_INSTALL - - if test -z "$kde_save_INSTALL_given" ; then - # OK, user hasn't given any INSTALL, autoconf found one for us - # now we test, if it supports the -p flag - AC_MSG_CHECKING(for -p flag to install) - rm -f confinst.$$.* > /dev/null 2>&1 - echo "Testtest" > confinst.$$.orig - ac_res=no - if ${INSTALL} -p confinst.$$.orig confinst.$$.new > /dev/null 2>&1 ; then - if test -f confinst.$$.new ; then - # OK, -p seems to do no harm to install - INSTALL="${INSTALL} -p" - ac_res=yes - fi - fi - rm -f confinst.$$.* - AC_MSG_RESULT($ac_res) - fi - dnl the following tries to resolve some signs and wonders coming up - dnl with different autoconf/automake versions - dnl e.g.: - dnl *automake 1.4 install-strip sets A_M_INSTALL_PROGRAM_FLAGS to -s - dnl and has INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(A_M_INSTALL_PROGRAM_FLAGS) - dnl it header-vars.am, so there the actual INSTALL_PROGRAM gets the -s - dnl *automake 1.4a (and above) use INSTALL_STRIP_FLAG and only has - dnl INSTALL_PROGRAM = @INSTALL_PROGRAM@ there, but changes the - dnl install-@DIR@PROGRAMS targets to explicitly use that flag - dnl *autoconf 2.13 is dumb, and thinks it can use INSTALL_PROGRAM as - dnl INSTALL_SCRIPT, which breaks with automake <= 1.4 - dnl *autoconf >2.13 (since 10.Apr 1999) has not that failure - dnl *sometimes KDE does not use the install-@DIR@PROGRAM targets from - dnl automake (due to broken Makefile.am or whatever) to install programs, - dnl and so does not see the -s flag in automake > 1.4 - dnl to clean up that mess we: - dnl +set INSTALL_PROGRAM to use INSTALL_STRIP_FLAG - dnl which cleans KDE's program with automake > 1.4; - dnl +set INSTALL_SCRIPT to only use INSTALL, to clean up autoconf's problems - dnl with automake<=1.4 - dnl note that dues to this sometimes two '-s' flags are used (if KDE - dnl properly uses install-@DIR@PROGRAMS, but I don't care - dnl - dnl And to all this comes, that I even can't write in comments variable - dnl names used by automake, because it is so stupid to think I wanted to - dnl _use_ them, therefor I have written A_M_... instead of AM_ - dnl hmm, I wanted to say something ... ahh yes: Arghhh. - - if test -z "$kde_save_INSTALL_PROGRAM_given" ; then - INSTALL_PROGRAM='${INSTALL} $(INSTALL_STRIP_FLAG)' - fi - if test -z "$kde_save_INSTALL_SCRIPT_given" ; then - INSTALL_SCRIPT='${INSTALL}' - fi -])dnl - -AC_DEFUN([KDE_LANG_CPLUSPLUS], -[AC_LANG_CPLUSPLUS -ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&AC_FD_CC' -pushdef([AC_LANG_CPLUSPLUS], [popdef([AC_LANG_CPLUSPLUS]) KDE_LANG_CPLUSPLUS]) -]) - -pushdef([AC_LANG_CPLUSPLUS], -[popdef([AC_LANG_CPLUSPLUS]) -KDE_LANG_CPLUSPLUS -]) - -AC_DEFUN([KDE_CHECK_LONG_LONG], -[ -AC_MSG_CHECKING(for long long) -AC_CACHE_VAL(kde_cv_c_long_long, -[ - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - AC_TRY_LINK([], [ - long long foo = 0; - foo = foo+1; - ], - kde_cv_c_long_long=yes, kde_cv_c_long_long=no) - AC_LANG_RESTORE -]) -AC_MSG_RESULT($kde_cv_c_long_long) -if test "$kde_cv_c_long_long" = yes; then - AC_DEFINE(HAVE_LONG_LONG, 1, [Define if you have long long as datatype]) -fi -]) - -AC_DEFUN([KDE_CHECK_LIB], -[ - kde_save_LDFLAGS="$LDFLAGS" - dnl AC_CHECK_LIB modifies LIBS, so save it here - kde_save_LIBS="$LIBS" - LDFLAGS="$LDFLAGS $all_libraries" - case $host_os in - aix*) LDFLAGS="-brtl $LDFLAGS" - test "$GCC" = yes && LDFLAGS="-Wl,$LDFLAGS" - ;; - esac - AC_CHECK_LIB($1, $2, $3, $4, $5) - LDFLAGS="$kde_save_LDFLAGS" - LIBS="$kde_save_LIBS" -]) - -AC_DEFUN([KDE_JAVA_PREFIX], -[ - dir=`dirname "$1"` - base=`basename "$1"` - list=`ls -1 $dir 2> /dev/null` - for entry in $list; do - if test -d $dir/$entry/bin; then - case $entry in - $base) - javadirs="$javadirs $dir/$entry/bin" - ;; - esac - elif test -d $dir/$entry/jre/bin; then - case $entry in - $base) - javadirs="$javadirs $dir/$entry/jre/bin" - ;; - esac - fi - done -]) - -dnl KDE_CHEC_JAVA_DIR(onlyjre) -AC_DEFUN([KDE_CHECK_JAVA_DIR], -[ - -AC_ARG_WITH(java, -AC_HELP_STRING([--with-java=javadir],[use java installed in javadir, --without-java disables]), -[ ac_java_dir=$withval -], ac_java_dir="" -) - -AC_MSG_CHECKING([for Java]) - -dnl at this point ac_java_dir is either a dir, 'no' to disable, or '' to say look in $PATH -if test "x$ac_java_dir" = "xno"; then - kde_java_bindir=no - kde_java_includedir=no - kde_java_libjvmdir=no - kde_java_libgcjdir=no - kde_java_libhpidir=no -else - if test "x$ac_java_dir" = "x"; then - - - dnl No option set -> collect list of candidate paths - if test -n "$JAVA_HOME"; then - KDE_JAVA_PREFIX($JAVA_HOME) - fi - KDE_JAVA_PREFIX(/usr/j2se) - KDE_JAVA_PREFIX(/usr/lib/j2se) - KDE_JAVA_PREFIX(/usr/j*dk*) - KDE_JAVA_PREFIX(/usr/lib/j*dk*) - KDE_JAVA_PREFIX(/opt/j*sdk*) - KDE_JAVA_PREFIX(/usr/lib/java*) - KDE_JAVA_PREFIX(/usr/java*) - KDE_JAVA_PREFIX(/usr/java/j*dk*) - KDE_JAVA_PREFIX(/usr/java/j*re*) - KDE_JAVA_PREFIX(/usr/lib/SunJava2*) - KDE_JAVA_PREFIX(/usr/lib/SunJava*) - KDE_JAVA_PREFIX(/usr/lib/IBMJava2*) - KDE_JAVA_PREFIX(/usr/lib/IBMJava*) - KDE_JAVA_PREFIX(/opt/java*) - - kde_cv_path="NONE" - kde_save_IFS=$IFS - IFS=':' - for dir in $PATH; do - if test -d "$dir"; then - javadirs="$javadirs $dir" - fi - done - IFS=$kde_save_IFS - jredirs= - - dnl Now javadirs contains a list of paths that exist, all ending with bin/ - for dir in $javadirs; do - dnl Check for the java executable - if test -x "$dir/java"; then - dnl And also check for a libjvm.so somewhere under there - dnl Since we have to go to the parent dir, /usr/bin is excluded, /usr is too big. - if test "$dir" != "/usr/bin"; then - libjvmdir=`find $dir/.. -name libjvm.so | sed 's,libjvm.so,,'|head -n 1` - if test ! -f $libjvmdir/libjvm.so; then continue; fi - jredirs="$jredirs $dir" - fi - fi - done - - dnl Now jredirs contains a reduced list, of paths where both java and ../**/libjvm.so was found - JAVAC= - JAVA= - kde_java_bindir=no - for dir in $jredirs; do - JAVA="$dir/java" - kde_java_bindir=$dir - if test -x "$dir/javac"; then - JAVAC="$dir/javac" - break - fi - done - - if test -n "$JAVAC"; then - dnl this substitution might not work - well, we test for jni.h below - kde_java_includedir=`echo $JAVAC | sed -e 's,bin/javac$,include/,'` - else - kde_java_includedir=no - fi - else - dnl config option set - kde_java_bindir=$ac_java_dir/bin - if test -x $ac_java_dir/bin/java && test ! -x $ac_java_dir/bin/javac; then - kde_java_includedir=no - else - kde_java_includedir=$ac_java_dir/include - fi - fi -fi - -dnl At this point kde_java_bindir and kde_java_includedir are either set or "no" -if test "x$kde_java_bindir" != "xno"; then - - dnl Look for libjvm.so - kde_java_libjvmdir=`find $kde_java_bindir/.. -name libjvm.so | sed 's,libjvm.so,,'|head -n 1` - dnl Look for libgcj.so - kde_java_libgcjdir=`find $kde_java_bindir/.. -name libgcj.so | sed 's,libgcj.so,,'|head -n 1` - dnl Look for libhpi.so and avoid green threads - kde_java_libhpidir=`find $kde_java_bindir/.. -name libhpi.so | grep -v green | sed 's,libhpi.so,,' | head -n 1` - - dnl Now check everything's fine under there - dnl the include dir is our flag for having the JDK - if test -d "$kde_java_includedir"; then - if test ! -x "$kde_java_bindir/javac"; then - AC_MSG_ERROR([javac not found under $kde_java_bindir - it seems you passed a wrong --with-java.]) - fi - if test ! -x "$kde_java_bindir/javah"; then - AC_MSG_ERROR([javah not found under $kde_java_bindir. javac was found though! Use --with-java or --without-java.]) - fi - if test ! -x "$kde_java_bindir/jar"; then - AC_MSG_ERROR([jar not found under $kde_java_bindir. javac was found though! Use --with-java or --without-java.]) - fi - if test ! -r "$kde_java_includedir/jni.h"; then - AC_MSG_ERROR([jni.h not found under $kde_java_includedir. Use --with-java or --without-java.]) - fi - - jni_includes="-I$kde_java_includedir" - dnl Strange thing, jni.h requires jni_md.h which is under genunix here.. - dnl and under linux here.. - - dnl not needed for gcj - - if test "x$kde_java_libgcjdir" = "x"; then - test -d "$kde_java_includedir/linux" && jni_includes="$jni_includes -I$kde_java_includedir/linux" - test -d "$kde_java_includedir/solaris" && jni_includes="$jni_includes -I$kde_java_includedir/solaris" - test -d "$kde_java_includedir/genunix" && jni_includes="$jni_includes -I$kde_java_includedir/genunix" - fi - - else - JAVAC= - jni_includes= - fi - - if test "x$kde_java_libgcjdir" = "x"; then - if test ! -r "$kde_java_libjvmdir/libjvm.so"; then - AC_MSG_ERROR([libjvm.so not found under $kde_java_libjvmdir. Use --without-java.]) - fi - else - if test ! -r "$kde_java_libgcjdir/libgcj.so"; then - AC_MSG_ERROR([libgcj.so not found under $kde_java_libgcjdir. Use --without-java.]) - fi - fi - - if test ! -x "$kde_java_bindir/java"; then - AC_MSG_ERROR([java not found under $kde_java_bindir. javac was found though! Use --with-java or --without-java.]) - fi - - dnl not needed for gcj compile - - if test "x$kde_java_libgcjdir" = "x"; then - if test ! -r "$kde_java_libhpidir/libhpi.so"; then - AC_MSG_ERROR([libhpi.so not found under $kde_java_libhpidir. Use --without-java.]) - fi - fi - - if test -n "$jni_includes"; then - dnl Check for JNI version - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - ac_cxxflags_safe="$CXXFLAGS" - CXXFLAGS="$CXXFLAGS $all_includes $jni_includes" - - AC_TRY_COMPILE([ - #include <jni.h> - ], - [ - #ifndef JNI_VERSION_1_2 - Syntax Error - #endif - ],[ kde_jni_works=yes ], - [ kde_jni_works=no ]) - - if test $kde_jni_works = no; then - AC_MSG_ERROR([Incorrect version of $kde_java_includedir/jni.h. - You need to have Java Development Kit (JDK) version 1.2. - - Use --with-java to specify another location. - Use --without-java to configure without java support. - Or download a newer JDK and try again. - See e.g. http://java.sun.com/products/jdk/1.2 ]) - fi - - CXXFLAGS="$ac_cxxflags_safe" - AC_LANG_RESTORE - - dnl All tests ok, inform and subst the variables - - JAVAC=$kde_java_bindir/javac - JAVAH=$kde_java_bindir/javah - JAR=$kde_java_bindir/jar - AC_DEFINE_UNQUOTED(PATH_JAVA, "$kde_java_bindir/java", [Define where your java executable is]) - if test "x$kde_java_libgcjdir" = "x"; then - JVMLIBS="-L$kde_java_libjvmdir -ljvm -L$kde_java_libhpidir -lhpi" - else - JVMLIBS="-L$kde_java_libgcjdir -lgcj" - fi - AC_MSG_RESULT([java JDK in $kde_java_bindir]) - - else - AC_DEFINE_UNQUOTED(PATH_JAVA, "$kde_java_bindir/java", [Define where your java executable is]) - AC_MSG_RESULT([java JRE in $kde_java_bindir]) - fi -elif test -d "/Library/Java/Home"; then - kde_java_bindir="/Library/Java/Home/bin" - jni_includes="-I/Library/Java/Home/include" - - JAVAC=$kde_java_bindir/javac - JAVAH=$kde_java_bindir/javah - JAR=$kde_java_bindir/jar - JVMLIBS="-Xlinker -framework -Xlinker JavaVM" - - AC_DEFINE_UNQUOTED(PATH_JAVA, "$kde_java_bindir/java", [Define where your java executable is]) - AC_MSG_RESULT([Apple Java Framework]) -else - AC_MSG_RESULT([none found]) -fi - -AC_SUBST(JAVAC) -AC_SUBST(JAVAH) -AC_SUBST(JAR) -AC_SUBST(JVMLIBS) -AC_SUBST(jni_includes) - -# for backward compat -kde_cv_java_includedir=$kde_java_includedir -kde_cv_java_bindir=$kde_java_bindir -]) - -dnl this is a redefinition of autoconf 2.5x's AC_FOREACH. -dnl When the argument list becomes big, as in KDE for AC_OUTPUT in -dnl big packages, m4_foreach is dog-slow. So use our own version of -dnl it. (matz@kde.org) -m4_define([mm_foreach], -[m4_pushdef([$1])_mm_foreach($@)m4_popdef([$1])]) -m4_define([mm_car], [[$1]]) -m4_define([mm_car2], [[$@]]) -m4_define([_mm_foreach], -[m4_if(m4_quote($2), [], [], - [m4_define([$1], mm_car($2))$3[]_mm_foreach([$1], - mm_car2(m4_shift($2)), - [$3])])]) -m4_define([AC_FOREACH], -[mm_foreach([$1], m4_split(m4_normalize([$2])), [$3])]) - -AC_DEFUN([KDE_NEED_FLEX], -[ -kde_libs_safe=$LIBS -LIBS="$LIBS $USER_LDFLAGS" -AM_PROG_LEX -LIBS=$kde_libs_safe -if test -z "$LEXLIB"; then - AC_MSG_ERROR([You need to have flex installed.]) -fi -AC_SUBST(LEXLIB) -]) - -AC_DEFUN([AC_PATH_QTOPIA], -[ - dnl TODO: use AC_CACHE_VAL - - if test -z "$1"; then - qtopia_minver_maj=1 - qtopia_minver_min=5 - qtopia_minver_pat=0 - else - qtopia_minver_maj=`echo "$1" | sed -e "s/^\(.*\)\..*\..*$/\1/"` - qtopia_minver_min=`echo "$1" | sed -e "s/^.*\.\(.*\)\..*$/\1/"` - qtopia_minver_pat=`echo "$1" | sed -e "s/^.*\..*\.\(.*\)$/\1/"` - fi - - qtopia_minver="$qtopia_minver_maj$qtopia_minver_min$qtopia_minver_pat" - qtopia_minverstr="$qtopia_minver_maj.$qtopia_minver_min.$qtopia_minver_pat" - - AC_REQUIRE([AC_PATH_QT]) - - AC_MSG_CHECKING([for Qtopia]) - - LIB_QTOPIA="-lqpe" - AC_SUBST(LIB_QTOPIA) - - kde_qtopia_dirs="$QPEDIR /opt/Qtopia" - - ac_qtopia_incdir=NO - - AC_ARG_WITH(qtopia-dir, - AC_HELP_STRING([--with-qtopia-dir=DIR],[where the root of Qtopia is installed]), - [ ac_qtopia_incdir="$withval"/include] ) - - qtopia_incdirs="" - for dir in $kde_qtopia_dirs; do - qtopia_incdirs="$qtopia_incdirs $dir/include" - done - - if test ! "$ac_qtopia_incdir" = "NO"; then - qtopia_incdirs="$ac_qtopia_incdir $qtopia_incdirs" - fi - - qtopia_incdir="" - AC_FIND_FILE(qpe/qpeapplication.h, $qtopia_incdirs, qtopia_incdir) - ac_qtopia_incdir="$qtopia_incdir" - - if test -z "$qtopia_incdir"; then - AC_MSG_ERROR([Cannot find Qtopia headers. Please check your installation.]) - fi - - qtopia_ver_maj=`cat $qtopia_incdir/qpe/version.h | sed -n -e 's,.*QPE_VERSION "\(.*\)\..*\..*".*,\1,p'`; - qtopia_ver_min=`cat $qtopia_incdir/qpe/version.h | sed -n -e 's,.*QPE_VERSION ".*\.\(.*\)\..*".*,\1,p'`; - qtopia_ver_pat=`cat $qtopia_incdir/qpe/version.h | sed -n -e 's,.*QPE_VERSION ".*\..*\.\(.*\)".*,\1,p'`; - - qtopia_ver="$qtopia_ver_maj$qtopia_ver_min$qtopia_ver_pat" - qtopia_verstr="$qtopia_ver_maj.$qtopia_ver_min.$qtopia_ver_pat" - if test "$qtopia_ver" -lt "$qtopia_minver"; then - AC_MSG_ERROR([found Qtopia version $qtopia_verstr but version $qtopia_minverstr -is required.]) - fi - - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - - ac_cxxflags_safe="$CXXFLAGS" - ac_ldflags_safe="$LDFLAGS" - ac_libs_safe="$LIBS" - - CXXFLAGS="$CXXFLAGS -I$qtopia_incdir $all_includes" - LDFLAGS="$LDFLAGS $QT_LDFLAGS $all_libraries $USER_LDFLAGS $KDE_MT_LDFLAGS" - LIBS="$LIBS $LIB_QTOPIA $LIBQT" - - cat > conftest.$ac_ext <<EOF -#include "confdefs.h" -#include <qpe/qpeapplication.h> -#include <qpe/version.h> - -int main( int argc, char **argv ) -{ - QPEApplication app( argc, argv ); - return 0; -} -EOF - - if AC_TRY_EVAL(ac_link) && test -s conftest; then - rm -f conftest* - else - rm -f conftest* - AC_MSG_ERROR([Cannot link small Qtopia Application. For more details look at -the end of config.log]) - fi - - CXXFLAGS="$ac_cxxflags_safe" - LDFLAGS="$ac_ldflags_safe" - LIBS="$ac_libs_safe" - - AC_LANG_RESTORE - - QTOPIA_INCLUDES="-I$qtopia_incdir" - AC_SUBST(QTOPIA_INCLUDES) - - AC_MSG_RESULT([found version $qtopia_verstr with headers at $qtopia_incdir]) -]) - - -AC_DEFUN([KDE_INIT_DOXYGEN], -[ -AC_MSG_CHECKING([for Qt docs]) -kde_qtdir= -if test "${with_qt_dir+set}" = set; then - kde_qtdir="$with_qt_dir" -fi - -AC_FIND_FILE(qsql.html, [ $kde_qtdir/doc/html $QTDIR/doc/html /usr/share/doc/packages/qt3/html /usr/lib/qt/doc /usr/lib/qt3/doc /usr/lib/qt3/doc/html /usr/doc/qt3/html /usr/doc/qt3 /usr/share/doc/qt3-doc /usr/share/qt3/doc/html /usr/X11R6/share/doc/qt/html ], QTDOCDIR) -AC_MSG_RESULT($QTDOCDIR) - -AC_SUBST(QTDOCDIR) - -KDE_FIND_PATH(dot, DOT, [], []) -if test -n "$DOT"; then - KDE_HAVE_DOT="YES" -else - KDE_HAVE_DOT="NO" -fi -AC_SUBST(KDE_HAVE_DOT) -KDE_FIND_PATH(doxygen, DOXYGEN, [], []) -AC_SUBST(DOXYGEN) - -DOXYGEN_PROJECT_NAME="$1" -DOXYGEN_PROJECT_NUMBER="$2" -AC_SUBST(DOXYGEN_PROJECT_NAME) -AC_SUBST(DOXYGEN_PROJECT_NUMBER) - -KDE_HAS_DOXYGEN=no -if test -n "$DOXYGEN" && test -x "$DOXYGEN" && test -f $QTDOCDIR/qsql.html; then - KDE_HAS_DOXYGEN=yes -fi -AC_SUBST(KDE_HAS_DOXYGEN) - -]) - - -AC_DEFUN([AC_FIND_BZIP2], -[ -AC_MSG_CHECKING([for bzDecompress in libbz2]) -AC_CACHE_VAL(ac_cv_lib_bzip2, -[ -AC_LANG_SAVE -AC_LANG_CPLUSPLUS -kde_save_LIBS="$LIBS" -LIBS="$all_libraries $USER_LDFLAGS -lbz2 $LIBSOCKET" -kde_save_CXXFLAGS="$CXXFLAGS" -CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES" -AC_TRY_LINK(dnl -[ -#define BZ_NO_STDIO -#include<bzlib.h> -], - [ bz_stream s; (void) bzDecompress(&s); ], - eval "ac_cv_lib_bzip2='-lbz2'", - eval "ac_cv_lib_bzip2=no") -LIBS="$kde_save_LIBS" -CXXFLAGS="$kde_save_CXXFLAGS" -AC_LANG_RESTORE -])dnl -AC_MSG_RESULT($ac_cv_lib_bzip2) - -if test ! "$ac_cv_lib_bzip2" = no; then - BZIP2DIR=bzip2 - - LIBBZ2="$ac_cv_lib_bzip2" - AC_SUBST(LIBBZ2) - -else - - cxx_shared_flag= - ld_shared_flag= - KDE_CHECK_COMPILER_FLAG(shared, [ - ld_shared_flag="-shared" - ]) - KDE_CHECK_COMPILER_FLAG(fPIC, [ - cxx_shared_flag="-fPIC" - ]) - - AC_MSG_CHECKING([for BZ2_bzDecompress in (shared) libbz2]) - AC_CACHE_VAL(ac_cv_lib_bzip2_prefix, - [ - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - kde_save_LIBS="$LIBS" - LIBS="$all_libraries $USER_LDFLAGS $ld_shared_flag -lbz2 $LIBSOCKET" - kde_save_CXXFLAGS="$CXXFLAGS" - CXXFLAGS="$CFLAGS $cxx_shared_flag $all_includes $USER_INCLUDES" - - AC_TRY_LINK(dnl - [ - #define BZ_NO_STDIO - #include<bzlib.h> - ], - [ bz_stream s; (void) BZ2_bzDecompress(&s); ], - eval "ac_cv_lib_bzip2_prefix='-lbz2'", - eval "ac_cv_lib_bzip2_prefix=no") - LIBS="$kde_save_LIBS" - CXXFLAGS="$kde_save_CXXFLAGS" - AC_LANG_RESTORE - ])dnl - - AC_MSG_RESULT($ac_cv_lib_bzip2_prefix) - - if test ! "$ac_cv_lib_bzip2_prefix" = no; then - BZIP2DIR=bzip2 - - LIBBZ2="$ac_cv_lib_bzip2_prefix" - AC_SUBST(LIBBZ2) - - AC_DEFINE(NEED_BZ2_PREFIX, 1, [Define if the libbz2 functions need the BZ2_ prefix]) - dnl else, we just ignore this - fi - -fi -AM_CONDITIONAL(include_BZIP2, test -n "$BZIP2DIR") -]) - -dnl ------------------------------------------------------------------------ -dnl Try to find the SSL headers and libraries. -dnl $(SSL_LDFLAGS) will be -Lsslliblocation (if needed) -dnl and $(SSL_INCLUDES) will be -Isslhdrlocation (if needed) -dnl ------------------------------------------------------------------------ -dnl -AC_DEFUN([KDE_CHECK_SSL], -[ -LIBSSL="-lssl -lcrypto" -AC_REQUIRE([KDE_CHECK_LIB64]) - -ac_ssl_includes=NO ac_ssl_libraries=NO -ssl_libraries="" -ssl_includes="" -AC_ARG_WITH(ssl-dir, - AC_HELP_STRING([--with-ssl-dir=DIR],[where the root of OpenSSL is installed]), - [ ac_ssl_includes="$withval"/include - ac_ssl_libraries="$withval"/lib$kdelibsuff - ]) - -want_ssl=yes -AC_ARG_WITH(ssl, - AC_HELP_STRING([--without-ssl],[disable SSL checks]), - [want_ssl=$withval]) - -if test $want_ssl = yes; then - -AC_MSG_CHECKING(for OpenSSL) - -AC_CACHE_VAL(ac_cv_have_ssl, -[#try to guess OpenSSL locations - - ssl_incdirs="/usr/include /usr/local/include /usr/ssl/include /usr/local/ssl/include $prefix/include $kde_extra_includes" - ssl_incdirs="$ac_ssl_includes $ssl_incdirs" - AC_FIND_FILE(openssl/ssl.h, $ssl_incdirs, ssl_incdir) - ac_ssl_includes="$ssl_incdir" - - ssl_libdirs="/usr/lib$kdelibsuff /usr/local/lib$kdelibsuff /usr/ssl/lib$kdelibsuff /usr/local/ssl/lib$kdelibsuff $libdir $prefix/lib$kdelibsuff $exec_prefix/lib$kdelibsuff $kde_extra_libs" - if test ! "$ac_ssl_libraries" = "NO"; then - ssl_libdirs="$ac_ssl_libraries $ssl_libdirs" - fi - - test=NONE - ssl_libdir=NONE - for dir in $ssl_libdirs; do - try="ls -1 $dir/libssl*" - if test=`eval $try 2> /dev/null`; then ssl_libdir=$dir; break; else echo "tried $dir" >&AC_FD_CC ; fi - done - - ac_ssl_libraries="$ssl_libdir" - - ac_ldflags_safe="$LDFLAGS" - ac_libs_safe="$LIBS" - - LDFLAGS="$LDFLAGS -L$ssl_libdir $all_libraries" - LIBS="$LIBS $LIBSSL -lRSAglue -lrsaref" - - AC_TRY_LINK(,void RSAPrivateEncrypt(void);RSAPrivateEncrypt();, - ac_ssl_rsaref="yes" - , - ac_ssl_rsaref="no" - ) - - LDFLAGS="$ac_ldflags_safe" - LIBS="$ac_libs_safe" - - if test "$ac_ssl_includes" = NO || test "$ac_ssl_libraries" = NO; then - have_ssl=no - else - have_ssl=yes; - fi - - ]) - - eval "$ac_cv_have_ssl" - - AC_MSG_RESULT([libraries $ac_ssl_libraries, headers $ac_ssl_includes]) - - AC_MSG_CHECKING([whether OpenSSL uses rsaref]) - AC_MSG_RESULT($ac_ssl_rsaref) - - AC_MSG_CHECKING([for easter eggs]) - AC_MSG_RESULT([none found]) - -else - have_ssl=no -fi - -if test "$have_ssl" = yes; then - AC_MSG_CHECKING(for OpenSSL version) - dnl Check for SSL version - AC_CACHE_VAL(ac_cv_ssl_version, - [ - - cat >conftest.$ac_ext <<EOF -#include <openssl/opensslv.h> -#include <stdio.h> - int main() { - -#ifndef OPENSSL_VERSION_NUMBER - printf("ssl_version=\\"error\\"\n"); -#else - if (OPENSSL_VERSION_NUMBER < 0x00906000) - printf("ssl_version=\\"old\\"\n"); - else - printf("ssl_version=\\"ok\\"\n"); -#endif - return (0); - } -EOF - - ac_save_CPPFLAGS=$CPPFLAGS - if test "$ac_ssl_includes" != "/usr/include"; then - CPPFLAGS="$CPPFLAGS -I$ac_ssl_includes" - fi - - if AC_TRY_EVAL(ac_link); then - - if eval `./conftest 2>&5`; then - if test $ssl_version = error; then - AC_MSG_ERROR([$ssl_incdir/openssl/opensslv.h doesn't define OPENSSL_VERSION_NUMBER !]) - else - if test $ssl_version = old; then - AC_MSG_WARN([OpenSSL version too old. Upgrade to 0.9.6 at least, see http://www.openssl.org. SSL support disabled.]) - have_ssl=no - fi - fi - ac_cv_ssl_version="ssl_version=$ssl_version" - else - AC_MSG_ERROR([Your system couldn't run a small SSL test program. - Check config.log, and if you can't figure it out, send a mail to - David Faure <faure@kde.org>, attaching your config.log]) - fi - - else - AC_MSG_ERROR([Your system couldn't link a small SSL test program. - Check config.log, and if you can't figure it out, send a mail to - David Faure <faure@kde.org>, attaching your config.log]) - fi - CPPFLAGS=$ac_save_CPPFLAGS - - ]) - - eval "$ac_cv_ssl_version" - AC_MSG_RESULT($ssl_version) -fi - -if test "$have_ssl" != yes; then - LIBSSL=""; -else - AC_DEFINE(HAVE_SSL, 1, [If we are going to use OpenSSL]) - ac_cv_have_ssl="have_ssl=yes \ - ac_ssl_includes=$ac_ssl_includes ac_ssl_libraries=$ac_ssl_libraries ac_ssl_rsaref=$ac_ssl_rsaref" - - - ssl_libraries="$ac_ssl_libraries" - ssl_includes="$ac_ssl_includes" - - if test "$ac_ssl_rsaref" = yes; then - LIBSSL="-lssl -lcrypto -lRSAglue -lrsaref" - fi - - if test $ssl_version = "old"; then - AC_DEFINE(HAVE_OLD_SSL_API, 1, [Define if you have OpenSSL < 0.9.6]) - fi -fi - -SSL_INCLUDES= - -if test "$ssl_includes" = "/usr/include"; then - if test -f /usr/kerberos/include/krb5.h; then - SSL_INCLUDES="-I/usr/kerberos/include" - fi -elif test "$ssl_includes" != "/usr/local/include" && test -n "$ssl_includes"; then - SSL_INCLUDES="-I$ssl_includes" -fi - -if test "$ssl_libraries" = "/usr/lib" || test "$ssl_libraries" = "/usr/local/lib" || test -z "$ssl_libraries" || test "$ssl_libraries" = "NONE"; then - SSL_LDFLAGS="" -else - SSL_LDFLAGS="-L$ssl_libraries -R$ssl_libraries" -fi - -AC_SUBST(SSL_INCLUDES) -AC_SUBST(SSL_LDFLAGS) -AC_SUBST(LIBSSL) -]) - -AC_DEFUN([KDE_CHECK_STRLCPY], -[ - AC_REQUIRE([AC_CHECK_STRLCAT]) - AC_REQUIRE([AC_CHECK_STRLCPY]) - AC_CHECK_SIZEOF(size_t) - AC_CHECK_SIZEOF(unsigned long) - - AC_MSG_CHECKING([sizeof size_t == sizeof unsigned long]) - AC_TRY_COMPILE(,[ - #if SIZEOF_SIZE_T != SIZEOF_UNSIGNED_LONG - choke me - #endif - ],AC_MSG_RESULT([yes]),[ - AC_MSG_RESULT(no) - AC_MSG_ERROR([ - Apparently on your system our assumption sizeof size_t == sizeof unsigned long - does not apply. Please mail kde-devel@kde.org with a description of your system! - ]) - ]) -]) - -AC_DEFUN([KDE_CHECK_BINUTILS], -[ - AC_MSG_CHECKING([if ld supports unversioned version maps]) - - kde_save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS -Wl,--version-script=conftest.map" - echo "{ local: extern \"C++\" { foo }; };" > conftest.map - AC_TRY_LINK([int foo;], -[ -#ifdef __INTEL_COMPILER -icc apparently does not support libtools version-info and version-script -at the same time. Dunno where the bug is, but until somebody figured out, -better disable the optional version scripts. -#endif - - foo = 42; -], kde_supports_versionmaps=yes, kde_supports_versionmaps=no) - LDFLAGS="$kde_save_LDFLAGS" - rm -f conftest.map - AM_CONDITIONAL(include_VERSION_SCRIPT, - [test "$kde_supports_versionmaps" = "yes" && test "$kde_use_debug_code" = "no"]) - - AC_MSG_RESULT($kde_supports_versionmaps) -]) - -AC_DEFUN([AM_PROG_OBJC],[ -AC_CHECK_PROGS(OBJC, gcc, gcc) -test -z "$OBJC" && AC_MSG_ERROR([no acceptable objective-c gcc found in \$PATH]) -if test "x${OBJCFLAGS-unset}" = xunset; then - OBJCFLAGS="-g -O2" -fi -AC_SUBST(OBJCFLAGS) -_AM_IF_OPTION([no-dependencies],, [_AM_DEPENDENCIES(OBJC)]) -]) - -AC_DEFUN([KDE_CHECK_PERL], -[ - KDE_FIND_PATH(perl, PERL, [$bindir $exec_prefix/bin $prefix/bin], [ - AC_MSG_ERROR([No Perl found in your $PATH. -We need perl to generate some code.]) - ]) - AC_SUBST(PERL) -]) - -AC_DEFUN([KDE_CHECK_LARGEFILE], -[ -AC_SYS_LARGEFILE -if test "$ac_cv_sys_file_offset_bits" != no; then - CPPFLAGS="$CPPFLAGS -D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits" -fi - -if test "x$ac_cv_sys_large_files" != "xno"; then - CPPFLAGS="$CPPFLAGS -D_LARGE_FILES=1" -fi - -]) - -dnl A small extension to PKG_CHECK_MODULES (defined in pkg.m4.in) -dnl which allows to search for libs that get installed into the KDE prefix. -dnl -dnl Syntax: KDE_PKG_CHECK_MODULES(KSTUFF, libkexif >= 0.2 glib = 1.3.4, action-if, action-not) -dnl defines KSTUFF_LIBS, KSTUFF_CFLAGS, see pkg-config man page -dnl also defines KSTUFF_PKG_ERRORS on error -AC_DEFUN([KDE_PKG_CHECK_MODULES], [ - - PKG_CONFIG_PATH="$prefix/lib${kdelibsuff}/pkgconfig:$PKG_CONFIG_PATH" - if test "$prefix" != "$kde_libs_prefix"; then - PKG_CONFIG_PATH="$kde_libs_prefix/lib${kdelibsuff}/pkgconfig:$PKG_CONFIG_PATH" - fi - export PKG_CONFIG_PATH - PKG_CHECK_MODULES([$1],[$2],[$3],[$4]) -]) - - -dnl Check for PIE support in the compiler and linker -AC_DEFUN([KDE_CHECK_PIE_SUPPORT], -[ - AC_CACHE_CHECK([for PIE support], kde_cv_val_pie_support, - [ - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - safe_CXXFLAGS=$CXXFLAGS - safe_LDFLAGS=$LDFLAGS - CXXFLAGS="$CXXFLAGS -fpie" - LDFLAGS="$LDFLAGS -pie" - - AC_TRY_LINK([int foo;], [], [kde_cv_val_pie_support=yes], [kde_cv_val_pie_support=no]) - - CXXFLAGS=$safe_CXXFLAGS - LDFLAGS=$safe_LDFLAGS - AC_LANG_RESTORE - ]) - - AC_MSG_CHECKING(if enabling -pie/fpie support) - - AC_ARG_ENABLE(pie, - AC_HELP_STRING([--enable-pie],[platform supports PIE linking [default=detect]]), - [kde_has_pie_support=$enableval], - [kde_has_pie_support=detect]) - - if test "$kde_has_pie_support" = "detect"; then - kde_has_pie_support=$kde_cv_val_pie_support - fi - - AC_MSG_RESULT([$kde_has_pie_support]) - - KDE_USE_FPIE="" - KDE_USE_PIE="" - - AC_SUBST([KDE_USE_FPIE]) - AC_SUBST([KDE_USE_PIE]) - - if test "$kde_has_pie_support" = "yes"; then - KDE_USE_FPIE="-fpie" - KDE_USE_PIE="-pie" - fi -]) diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/am_edit b/portland/libxdg-vfs/xdg-vfs-kde/admin/am_edit deleted file mode 100644 index c293132..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/am_edit +++ /dev/null @@ -1,2445 +0,0 @@ -#!/usr/bin/perl -w - -# Expands the specialised KDE tags in Makefile.in to (hopefully) valid -# make syntax. -# When called without file parameters, we work recursively on all Makefile.in -# in and below the current subdirectory. When called with file parameters, -# only those Makefile.in are changed. -# The currently supported tags are -# -# {program}_METASOURCES -# where you have a choice of two styles -# {program}_METASOURCES = name1.moc name2.moc ... [\] -# {program}_METASOURCES = AUTO -# The second style requires other tags as well. -# -# To install icons : -# KDE_ICON = iconname iconname2 ... -# KDE_ICON = AUTO -# -# For documentation : -# http://developer.kde.org/documentation/other/developer-faq.html -# -# and more new tags TBD! -# -# The concept (and base code) for this program came from automoc, -# supplied by the following -# -# Matthias Ettrich <ettrich@kde.org> (The originator) -# Kalle Dalheimer <kalle@kde.org> (The original implementator) -# Harri Porten <porten@tu-harburg.de> -# Alex Zepeda <jazepeda@pacbell.net> -# David Faure <faure@kde.org> -# Stephan Kulow <coolo@kde.org> -# Dirk Mueller <mueller@kde.org> - -use Cwd; -use File::Find; -use File::Basename; - -# Prototype the functions -sub initialise (); -sub processMakefile ($); -sub updateMakefile (); -sub restoreMakefile (); - -sub removeLine ($$); -sub appendLines ($); -sub substituteLine ($$); - -sub findMocCandidates (); -sub pruneMocCandidates ($); -sub checkMocCandidates (); -sub addMocRules (); -sub findKcfgFile($); - -sub tag_AUTOMAKE (); -sub tag_META_INCLUDES (); -sub tag_METASOURCES (); -sub tag_POFILES (); -sub tag_DOCFILES (); -sub tag_LOCALINSTALL(); -sub tag_IDLFILES(); -sub tag_UIFILES(); -sub tag_KCFGFILES(); -sub tag_SUBDIRS(); -sub tag_ICON(); -sub tag_CLOSURE(); -sub tag_NO_UNDEFINED(); -sub tag_NMCHECK(); -sub tag_DIST(); -sub tag_KDEINIT(); - -# Some global globals... -$verbose = 0; # a debug flag -$thisProg = "$0"; # This programs name -$topdir = cwd(); # The current directory -@makefiles = (); # Contains all the files we'll process -@foreignfiles = (); -$start = (times)[0]; # some stats for testing - comment out for release -$version = "v0.2"; -$errorflag = 0; -$cppExt = "(cpp|cc|cxx|C|c\\+\\+)"; -$hExt = "(h|H|hh|hxx|hpp|h\\+\\+)"; -$progId = "KDE tags expanded automatically by " . basename($thisProg); -$automkCall = "\n"; -$printname = ""; # used to display the directory the Makefile is in -$use_final = 1; # create code for --enable-final -$cleantarget = "clean"; -$dryrun = 0; -$pathoption = 0; -$foreign_libtool = 0; - -while (defined ($ARGV[0])) -{ - $_ = shift; - if (/^--version$/) - { - print STDOUT "\n"; - print STDOUT basename($thisProg), " $version\n", - "This is really free software, unencumbered by the GPL.\n", - "You can do anything you like with it except sueing me.\n", - "Copyright 1998 Kalle Dalheimer <kalle\@kde.org>\n", - "Concept, design and unnecessary questions about perl\n", - " by Matthias Ettrich <ettrich\@kde.org>\n\n", - "Making it useful by Stephan Kulow <coolo\@kde.org> and\n", - "Harri Porten <porten\@kde.org>\n", - "Updated (Feb-1999), John Birch <jb.nz\@writeme.com>\n", - "Fixes and Improvements by Dirk Mueller <mueller\@kde.org>\n", - "Current Maintainer Stephan Kulow\n\n"; - exit 0; - } - elsif (/^--verbose$|^-v$/) - { - $verbose = 1; # Oh is there a problem...? - } - elsif (/^(?:-p|--path=)(.+)$/) - { - my $p = $1; - $thisProg = $p . "/". basename($thisProg); - warn ("$thisProg doesn't exist\n") if (!(-f $thisProg)); - $thisProg .= " -p".$p; - $pathoption=1; - } - elsif (/^--help$|^-h$/) - { - print STDOUT "Usage $thisProg [OPTION] ... [dir/Makefile.in]...\n", - "\n", - "Patches dir/Makefile.in generated by automake\n", - "(where dir can be an absolute or relative directory name)\n", - "\n", - " -v, --verbose verbosely list files processed\n", - " -h, --help print this help, then exit\n", - " --version print version number, then exit\n", - " -p, --path= use the path to am_edit if the path\n", - " called from is not the one to be used\n", - " --no-final don't patch for --enable-final\n"; - - exit 0; - } - elsif (/^--no-final$/) - { - $use_final = 0; - $thisProg .= " --no-final"; - } - elsif (/^--foreign-libtool$/) - { - $foreign_libtool = 1; - $thisProg .= " --foreign-libtool"; - } - elsif (/^-n$/) - { - $dryrun = 1; - } - else - { - # user selects what input files to check - # add full path if relative path is given - $_ = cwd()."/".$_ if (! /^\//); - print "User wants $_\n" if ($verbose); - push (@makefiles, $_); - } -} - -if ($thisProg =~ /^\// && !$pathoption ) -{ - print STDERR "Illegal full pathname call performed...\n", - "The call to \"$thisProg\"\nwould be inserted in some Makefile.in.\n", - "Please use option --path.\n"; - exit 1; -} - -# Only scan for files when the user hasn't entered data -if (!@makefiles) -{ - print STDOUT "Scanning for Makefile.in\n" if ($verbose); - find (\&add_makefile, cwd()); - #chdir('$topdir'); -} else { - print STDOUT "Using input files specified by user\n" if ($verbose); -} - -foreach $makefile (sort(@makefiles)) -{ - processMakefile ($makefile); - last if ($errorflag); -} - -# Just some debug statistics - comment out for release as it uses printf. -printf STDOUT "Time %.2f CPU sec\n", (times)[0] - $start if ($verbose); - -exit $errorflag; # causes make to fail if erroflag is set - -#----------------------------------------------------------------------------- - -# In conjunction with the "find" call, this builds the list of input files -sub add_makefile () -{ - push (@makefiles, $File::Find::name) if (/Makefile.in$/); -} - -#----------------------------------------------------------------------------- - -# Processes a single make file -# The parameter contains the full path name of the Makefile.in to use -sub processMakefile ($) -{ - # some useful globals for the subroutines called here - local ($makefile) = @_; - local @headerdirs = ('.'); - local $haveAutomocTag = 0; - local $MakefileData = ""; - - local $cxxsuffix = "KKK"; - - local @programs = (); # lists the names of programs and libraries - local $program = ""; - - local @kdeinits = (); # lists the kdeinit targets - - local %realObjs = (); # lists the objects compiled into $program - local %sources = (); # lists the sources used for $program - local %finalObjs = (); # lists the objects compiled when final - local %realname = (); # the binary name of program variable - local %idlfiles = (); # lists the idl files used for $program - local %globalmocs = ();# list of all mocfiles (in %mocFiles format) - local %important = (); # list of files to be generated asap - local %uiFiles = (); - local %kcfgFiles = (); - - local $allidls = ""; - local $idl_output = "";# lists all idl generated files for cleantarget - local $ui_output = "";# lists all uic generated files for cleantarget - local $kcfg_output = "";# lists all kcfg generated files for cleantarget - - local %dependmocs = (); - - local $metasourceTags = 0; - local $dep_files = ""; - local $dep_finals = ""; - local %target_adds = (); # the targets to add - local %rule_adds = (); - local $kdelang = ""; - local @cleanfiles = (); - local $cleanMoc = ""; - local $closure_output = ""; - - local %varcontent = (); - - $makefileDir = dirname($makefile); - chdir ($makefileDir); - $printname = $makefile; - $printname =~ s/^\Q$topdir\E\///; - $makefile = basename($makefile); - - print STDOUT "Processing makefile $printname\n" if ($verbose); - - # Setup and see if we need to do this. - return if (!initialise()); - - tag_AUTOMAKE (); # Allows a "make" to redo the Makefile.in - tag_META_INCLUDES (); # Supplies directories for src locations - - foreach $program (@programs) { - $sources_changed{$program} = 0; - $dependmocs{$program} = ""; - $important{$program} = ""; - tag_IDLFILES(); # Sorts out idl rules - tag_NO_UNDEFINED(); - tag_CLOSURE(); - tag_NMCHECK(); - tag_UIFILES(); # Sorts out ui rules - tag_KCFGFILES(); # Sorts out kcfg rules - tag_METASOURCES (); # Sorts out the moc rules - if ($sources_changed{$program}) { - my $lookup = $program . '_SOURCES\s*=[ \t]*(.*)'; - - if($program =~ /libkdeinit_(.*)/) { - my $prog = $1; - substituteLine($prog . '_SOURCES\s*=[ \t]*(.*)', - "${prog}_SOURCES = ${prog}_dummy.$cxxsuffix\n" . - "libkdeinit_${prog}_SOURCES = " . $sources{$program}); - $sources{$prog} = "${prog}_dummy.$cxxsuffix"; - } - else { - substituteLine($lookup, "$program\_SOURCES=" . $sources{$program}); - } - } - if ($important{$program}) { - local %source_dict = (); - for $source (split(/[\034\s]+/, $sources{$program})) { - $source_dict{$source} = 1; - } - for $source (@cleanfiles) { - $source_dict{$source} = 0; - } - for $source (keys %source_dict) { - next if (!$source); - if ($source_dict{$source}) { - # sanity check - if (! -f $source) { - print STDERR "Error: $source is listed in a _SOURCE line in $printname, but doesn't exist yet. Put it in DISTCLEANFILES!\n"; - } else { - $target_adds{"\$(srcdir)/$source"} .= $important{$program}; - } - } - } - } - } - if ($cleanMoc) { - # Always add dist clean tag - # Add extra *.moc.cpp files created for USE_AUTOMOC because they - # aren't included in the normal *.moc clean rules. - appendLines ("$cleantarget-metasources:\n\t-rm -f $cleanMoc\n"); - $target_adds{"$cleantarget-am"} .= "$cleantarget-metasources "; - } - - tag_DIST() unless ($kdeopts{"noautodist"}); - - if ($idl_output) { - appendLines ("$cleantarget-idl:\n\t-rm -f $idl_output\n"); - $target_adds{"$cleantarget-am"} .= "$cleantarget-idl "; - } - - if ($ui_output) { - appendLines ("$cleantarget-ui:\n\t-rm -f $ui_output\n"); - $target_adds{"$cleantarget-am"} .= "$cleantarget-ui "; - } - - if ($kcfg_output) { - appendLines ("$cleantarget-kcfg:\n\t-rm -f $kcfg_output\n"); - $target_adds{"$cleantarget-am"} .= "$cleantarget-kcfg "; - } - - if ($closure_output) { - appendLines ("$cleantarget-closures:\n\t-rm -f $closure_output\n"); - $target_adds{"$cleantarget-am"} .= "$cleantarget-closures "; - } - - if ($MakefileData =~ /\nKDE_LANG\s*=\s*(\S*)\s*\n/) { - $kdelang = '$(KDE_LANG)' - } else { - $kdelang = ''; - } - - tag_POFILES (); # language rules for po directory - tag_DOCFILES (); # language rules for doc directories - tag_LOCALINSTALL(); # add $(DESTDIR) before all kde_ dirs - tag_ICON(); - tag_SUBDIRS(); - - my $tmp = "force-reedit:\n"; - $tmp .= "\t$automkCall\n\tcd \$(top_srcdir) && perl $thisProg $printname\n\n"; - appendLines($tmp); - - make_bcheck_target(); - make_meta_classes(); - tag_COMPILE_FIRST(); - tag_FINAL() if (!$kdeopts{"nofinal"}); - - my $final_lines = "final:\n\t\$(MAKE) "; - my $final_install_lines = "final-install:\n\t\$(MAKE) "; - my $nofinal_lines = "no-final:\n\t\$(MAKE) "; - my $nofinal_install_lines = "no-final-install:\n\t\$(MAKE) "; - - foreach $program (@programs) { - my $lookup = $program . '_OBJECTS\s*=[ \t]*.*'; - my $new = ""; - my @list = split(/[\034\s]+/, $realObjs{$program}); - if (!$kdeopts{"nofinal"} && @list > 1 && $finalObjs{$program}) { - $new .= "$program\_final\_OBJECTS = " . $finalObjs{$program}; - $new .= "\n$program\_nofinal\_OBJECTS = " . $realObjs{$program}; - $new .= "\n\@KDE_USE_FINAL_FALSE\@$program\_OBJECTS = \$($program\_nofinal\_OBJECTS)"; - $new .= "\n\@KDE_USE_FINAL_TRUE\@$program\_OBJECTS = \$($program\_final\_OBJECTS)"; - - $final_lines .= "$program\_OBJECTS=\"\$($program\_final_OBJECTS)\" "; - $final_install_lines .= "$program\_OBJECTS=\"\$($program\_final_OBJECTS)\" "; - $nofinal_lines .= "$program\_OBJECTS=\"\$($program\_nofinal\_OBJECTS)\" "; - $nofinal_install_lines .= "$program\_OBJECTS=\"\$($program\_nofinal_OBJECTS)\" "; - } else { - $new = "$program\_OBJECTS = " . $realObjs{$program}; - } - if($MakefileData =~ m/\n$lookup/) { - substituteLine ($lookup, $new); - } - else { - appendLines("$new\n"); - } - } - appendLines($final_lines . "all-am\n"); - appendLines($final_install_lines . "install-am\n"); - appendLines($nofinal_lines . "all-am\n"); - appendLines($nofinal_install_lines . "install-am\n"); - - my $lookup = '(\@\S+\@)?DEP_FILES\s*=[ \t]*(.*)'; - if ($MakefileData =~ /\n$lookup/) { - my $condition = $1; - my $depfiles = $2; - my $workfiles; - - if ($dep_finals) { - # Add the conditions on every line, since - # there may be line continuations in the list. - $workfiles = "$dep_files $dep_finals $depfiles"; - $workfiles =~ s/\034/\034$condition\@KDE_USE_FINAL_TRUE\@\t/g; - $lines = "$condition\@KDE_USE_FINAL_TRUE\@DEP_FILES = $workfiles\n"; - $workfiles = "$dep_files $depfiles"; - $workfiles =~ s/\034/\034$condition\@KDE_USE_FINAL_FALSE\@\t/g; - $lines .= "$condition\@KDE_USE_FINAL_FALSE\@DEP_FILES = $workfiles"; - } else { - $workfiles = "$dep_files $depfiles"; - $workfiles =~ s/\034/\034$condition\t/g; - $lines = $condition . "DEP_FILES = $workfiles"; - } - substituteLine($lookup, $lines); - } - - # new recursive targets - $target_adds{ "nmcheck" } .= ""; # always create nmcheck target - $target_adds{ "nmcheck-am" } .= "nmcheck"; - $lookup = 'RECURSIVE_TARGETS\s*=[ \t]*(.*)'; - if ($MakefileData =~ /\n$lookup/) { - substituteLine($lookup, "RECURSIVE_TARGETS = $1 nmcheck-recursive bcheck-recursive"); - } - - $cvs_lines = "kde-rpo-clean:\n"; - $cvs_lines .= "\t-rm -f *.rpo\n"; - appendLines($cvs_lines); - $target_adds{"clean"} .= "kde-rpo-clean "; - - my %target_dels = ("install-data-am" => ""); - - # some strange people like to do a install-exec, and expect that also - # all modules are installed. automake doesn't know this, so we need to move - # this here from install-data to install-exec. - if ($MakefileData =~ m/\nkde_module_LTLIBRARIES\s*=/) { -# $target_adds{"install-exec-am"} .= "install-kde_moduleLTLIBRARIES "; -# don't use $target_adds here because we need to append the dependency, not -# prepend it. Fixes #44342 , when a module depends on a lib in the same dir -# and libtool needs it during relinking upon install (Simon) - my $lookup = "install-exec-am:([^\n]*)"; - if($MakefileData =~ /\n$lookup\n/) { - substituteLine("$lookup", "install-exec-am: $1 install-kde_moduleLTLIBRARIES"); - } - $target_dels{"install-data-am"} .= "install-kde_moduleLTLIBRARIES "; - $target_adds{"install-data-am"} .= " "; - } - - my $lines = ""; - - foreach $add (keys %target_adds) { - my $lookup = quotemeta($add) . ':([^\n]*)'; - if ($MakefileData =~ /\n$lookup\n/) { - my $newlines = $1; - my $oldlines = $lookup; - if (defined $target_dels{$add}) { - foreach $del (split(' ', $target_dels{$add})) { - $newlines =~ s/\s*$del\s*/ /g; - } - } - substituteLine($oldlines, "$add: " . $target_adds{$add} . $newlines); - } else { - $lines .= "$add: " . $target_adds{$add} . "\n"; - } - } - - appendLines($lines) if ($lines); - - $lines = join("\n", values %rule_adds); - appendLines($lines) if ($lines); - - my $found = 1; - - while ($found) { - if ($MakefileData =~ m/\n(.*)\$\(CXXFLAGS\)(.*)\n/) { - my $stuff_before = $1; - my $stuff_after = $2; - my $lookup = quotemeta("$1\$(CXXFLAGS)$2"); - my $replacement = "$1\$(KCXXFLAGS)$2"; - $MakefileData =~ s/$lookup/$replacement/; - $lookup =~ s/\\\$\\\(CXXFLAGS\\\)/\\\$\\\(KCXXFLAGS\\\)/; - $replacement = "$stuff_before\$(KCXXFLAGS) \$(KDE_CXXFLAGS)$stuff_after"; - next if ($stuff_before =~ /\$\(KDE_CXXFLAGS\)/ or $stuff_after =~ /\$\(KDE_CXXFLAGS\)/); - substituteLine($lookup, $replacement); - } else { - $found = 0; - } - } - - if($foreign_libtool == 0) { - $lookup = '(\n[^#].*\$\(LIBTOOL\) --mode=link) (\$\(CXXLD\).*\$\(KCXXFLAGS\))'; - - if ($MakefileData =~ m/$lookup/ ) { - $MakefileData =~ s/$lookup/$1 --tag=CXX $2/; - } - - $lookup = '(\n[^#].*\$\(LIBTOOL\) --mode=compile)\s+(\$\(CXX\)\s+)'; - if ($MakefileData =~ m/$lookup/ ) { - $MakefileData =~ s/$lookup/$1 --tag=CXX $2/; - } - } - - $MakefileData =~ s/\$\(KCXXFLAGS\)/\$\(CXXFLAGS\)/g; - - $lookup = '(.*)cp -pr \$\$/\$\$file \$\(distdir\)/\$\$file(.*)'; - if ($MakefileData =~ m/\n$lookup\n/) { - substituteLine($lookup, "$1cp -pr \$\$d/\$\$file \$(distdir)/\$\$file$2"); - } - - # Always update the Makefile.in - updateMakefile (); - return; -} - -#----------------------------------------------------------------------------- - -# Beware: This procedure is not complete. E.g. it also parses lines -# containing a '=' in rules (for instance setting shell vars). For our -# usage this us enough, though. -sub read_variables () -{ - while ($MakefileData =~ /\n\s*(\S+)\s*=([^\n]*)/g) { - $varcontent{$1} = $2; - } -} - -# Check to see whether we should process this make file. -# This is where we look for tags that we need to process. -# A small amount of initialising on the tags is also done here. -# And of course we open and/or create the needed make files. -sub initialise () -{ - if (! -r "Makefile.am") { - print STDOUT "found Makefile.in without Makefile.am\n" if ($verbose); - return 0; - } - - # Checking for files to process... - - open (FILEIN, $makefile) || die "Can't open $makefileDir/$makefile: $!\n"; - # perl bug in 5.8.0: in utf8 mode it badly screws up - binmode(FILEIN, ":bytes") if ($] >= 5.008); - # Read the file - # stat(FILEIN)[7] might look more elegant, but is slower as it - # requires stat'ing the file - seek(FILEIN, 0, 2); - my $fsize = tell(FILEIN); - seek(FILEIN, 0, 0); - read FILEIN, $MakefileData, $fsize; - close FILEIN; - print "DOS CRLF within $makefileDir/$makefile!\n" if($MakefileData =~ y/\r//d); - - # Remove the line continuations, but keep them marked - # Note: we lose the trailing spaces but that's ok. - # Don't mangle line-leading spaces (usually tabs) - # since they're important. - $MakefileData =~ s/\\\s*\n/\034/g; - - # If we've processed the file before... - restoreMakefile () if ($MakefileData =~ /$progId/); - - foreach $dir (@foreignfiles) { - if (substr($makefileDir,0,length($dir)) eq $dir) { - return 0; - } - } - - %kdeopts = (); - $kdeopts{"foreign"} = 0; - $kdeopts{"qtonly"} = 0; - $kdeopts{"noautodist"} = 0; - $kdeopts{"foreign-libtool"} = $foreign_libtool; - $kdeopts{"nofinal"} = !$use_final; # default - - read_variables(); - - if ($MakefileData =~ /\nKDE_OPTIONS\s*=[ \t]*([^\n]*)\n/) { - my $kde_options_str = $1; - local @kde_options = split(/[\034\s]+/, $kde_options_str); - if (grep(/^foreign$/, @kde_options)) { - push(@foreignfiles, $makefileDir . "/"); - return 0; # don't touch me - } - for $opt (@kde_options) { - if (!defined $kdeopts{$opt}) { - print STDERR "Warning: unknown option $opt in $printname\n"; - } else { - $kdeopts{$opt} = 1; - } - } - } - - # Look for the tags that mean we should process this file. - $metasourceTags = 0; - $metasourceTags++ while ($MakefileData =~ /\n[^=\#]*METASOURCES\s*=/g); - - my $pofileTag = 0; - $pofileTag++ while ($MakefileData =~ /\nPOFILES\s*=/g); - if ($pofileTag > 1) - { - print STDERR "Error: Only one POFILES tag allowed\n"; - $errorflag = 1; - } - - while ($MakefileData =~ /\n\.SUFFIXES:([^\n]+)\n/g) { - my $suffixes_str = $1; - my @list=split(' ', $suffixes_str); - foreach $ext (@list) { - if ($ext =~ /^\.$cppExt$/) { - $cxxsuffix = $ext; - $cxxsuffix =~ s/\.//g; - print STDOUT "will use suffix $cxxsuffix\n" if ($verbose); - last; - } - } - } - - tag_KDEINIT(); - - while ($MakefileData =~ /\n(\S*)_OBJECTS\s*=[\034 \t]*([^\n]*)\n/g) { - - my $program = $1; - my $objs = $2; # safe them - - my $ocv = 0; - - my @objlist = split(/[\034\s]+/, $objs); - foreach $obj (@objlist) { - if ($obj =~ /(\S*)\$\((\S+)\)/ ) { - my $pre = $1; - my $variable = $2; - if ($pre eq '' && exists($varcontent{$variable})) { - my @addlist = split(/[\034\s]+/, $varcontent{$variable}); - push(@objlist, @addlist); - } elsif ($variable !~ 'OBJEXT' && $variable !~ /am__objects_\d+/ ) { - $ocv = 1; - } - } - } - - next if ($ocv); - next if ($program =~ /^am_libkdeinit_/); - - $program =~ s/^am_// if ($program =~ /^am_/); - - my $sourceprogram = $program; - $sourceprogram =~ s/\@am_/\@/ if($sourceprogram =~ /^.*\@am_.+/); - - print STDOUT "found program $program\n" if ($verbose); - push(@programs, $program); - - $realObjs{$program} = $objs; - - if ($MakefileData =~ /\n$sourceprogram\_SOURCES\s*=[ \t]*(.*)\n/) { - $sources{$program} = $1; - } - else { - $sources{$program} = ""; - print STDERR "found program with no _SOURCES: $program\n"; - } - - my $realprogram = $program; - $realprogram =~ s/_/./g; # unmask to regexp - if ($MakefileData =~ /\n($realprogram)(\$\(EXEEXT\)?)?:.*\$\($program\_OBJECTS\)/) { - $realname{$program} = $1; - } else { - # not standard Makefile - nothing to worry about - $realname{$program} = ""; - } - } - - my $lookup = 'DEPDIR\s*=.*'; - if ($MakefileData !~ /\n$lookup/) { - $lookup = 'bindir\s*=[ \t]*.*'; - substituteLine($lookup, "DEPDIR = .deps\n$1") if ($MakefileData =~ /\n($lookup)/); - } - - my @marks = ('MAINTAINERCLEANFILES', 'CLEANFILES', 'DISTCLEANFILES'); - foreach $mark (@marks) { - while ($MakefileData =~ /\n($mark)\s*=[ \t]*([^\n]*)/g) { - my $clean_str = $2; - foreach $file (split('[\034\s]+', $clean_str)) { - $file =~ s/\.\///; - push(@cleanfiles, $file); - } - } - } - - my $localTag = 0; - $localTag++ if ($MakefileData =~ /\ninstall-\S+-local:/); - - return (!$errorflag); -} - -#----------------------------------------------------------------------------- - -# Gets the list of user defined directories - relative to $srcdir - where -# header files could be located. -sub tag_META_INCLUDES () -{ - my $lookup = '[^=\n]*META_INCLUDES\s*=[ \t]*(.*)'; - return 1 if ($MakefileData !~ /($lookup)\n/); - print STDOUT "META_INCLUDE processing <$1>\n" if ($verbose); - - my $headerStr = $2; - removeLine ($lookup, $1); - - my @headerlist = split(/[\034\s]+/, $headerStr); - - foreach $dir (@headerlist) - { - $dir =~ s#\$\(srcdir\)#.#; - if (! -d $dir) - { - print STDERR "Warning: $dir can't be found. ", - "Must be a relative path to \$(srcdir)\n"; - } - else - { - push (@headerdirs, $dir); - } - } - - return 0; -} - -#----------------------------------------------------------------------------- - -sub tag_FINAL() -{ - my @final_names = (); - - foreach $program (@programs) { - - if ($sources{$program} =~ /\(/) { - print STDOUT "found ( in $program\_SOURCES. skipping\n" if ($verbose); - next; - } - - my $mocs = ""; # Moc files (in this program) - my $moc_cpp_added = 0; # If we added some .moc.cpp files, due to - # no other .cpp file including the .moc one. - - my @progsources = split(/[\034\s]+/, $sources{$program}); - my %shash = (); - @shash{@progsources} = 1; # we are only interested in the existence - my %sourcelist = (); - my %extradeps = (); - - foreach $source (@progsources) { - my $suffix = $source; - $suffix =~ s/^.*\.([^\.]+)$/$1/; - - $sourcelist{$suffix} .= "$source "; - } - foreach my $mocFile (keys (%globalmocs)) - { - my ($dir, $hFile, $cppFile) = split ("\035", $globalmocs{$mocFile}, 3); - if (defined ($cppFile)) { - $mocs .= " $mocFile.moc" if exists $shash{$cppFile}; - } else { - $sourcelist{$cxxsuffix} .= "$mocFile.moc.$cxxsuffix "; - $moc_cpp_added = 1; - } - } - - # scan for extra given dependencies and add them to our target - while ($MakefileData =~ /\n\s*(\S+)\.(?:lo|o)\s*:([^\n]*)/g) { - $extradeps{$1} = $2; - } - - foreach $suffix (keys %sourcelist) { - # See if this file contains c++ code. (i.e., just check the file's suffix against c++ extensions) - my $suffix_is_cxx = 0; - if($suffix =~ /($cppExt)$/) { - $cxxsuffix = $1; - $suffix_is_cxx = 1; - } - - my $mocfiles_in = ($suffix eq $cxxsuffix) && $moc_cpp_added; - - my @sourcelist = split(/[\034\s]+/, $sourcelist{$suffix}); - - if ((@sourcelist == 1 && !$mocfiles_in) || $suffix_is_cxx != 1 ) { - - # we support IDL on our own - if ($suffix eq "skel" || $suffix =~ /^stub/ - || $suffix =~ /^signals/ # obsolete, remove in KDE-4 - || $suffix eq "h" || $suffix eq "ui" - || $suffix eq "kcfgc" ) { - next; - } - - foreach $file (@sourcelist) { - $file =~ s/\Q$suffix\E$//; - - $finalObjs{$program} .= $file; - if ($program =~ /_la$/) { - $finalObjs{$program} .= "lo "; - } else { - $finalObjs{$program} .= "o "; - } - } - next; # suffix - } - - my $source_deps = ""; - foreach $source (@sourcelist) { - if (-f $source) { - $source_deps .= " \$(srcdir)/$source"; - } else { - $source_deps .= " $source"; - } - my $plainsource = $source; - $plainsource =~ s/\.$cppExt$//; - $source_deps .= " " . $extradeps{$plainsource} if (exists($extradeps{$plainsource})); - } - - $handling = "$program.all_$suffix.$suffix: \$(srcdir)/Makefile.in" . $source_deps . " " . join(' ', $mocs) . "\n"; - $handling .= "\t\@echo 'creating $program.all_$suffix.$suffix ...'; \\\n"; - $handling .= "\trm -f $program.all_$suffix.files $program.all_$suffix.final; \\\n"; - $handling .= "\techo \"#define KDE_USE_FINAL 1\" >> $program.all_$suffix.final; \\\n"; - $handling .= "\tfor file in " . $sourcelist{$suffix} . "; do \\\n"; - $handling .= "\t echo \"#include \\\"\$\$file\\\"\" >> $program.all_$suffix.files; \\\n"; - $handling .= "\t test ! -f \$\(srcdir\)/\$\$file || egrep '^#pragma +implementation' \$\(srcdir\)/\$\$file >> $program.all_$suffix.final; \\\n"; - $handling .= "\tdone; \\\n"; - $handling .= "\tcat $program.all_$suffix.final $program.all_$suffix.files > $program.all_$suffix.$suffix; \\\n"; - $handling .= "\trm -f $program.all_$suffix.final $program.all_$suffix.files\n"; - - appendLines($handling); - - push(@final_names, "$program.all_$suffix.$suffix"); - my $finalObj = "$program.all_$suffix."; - if ($program =~ /_la$/) { - $finalObj .= "lo"; - } else { - $finalObj .= "o"; - } - $finalObjs{$program} .= $finalObj . " "; - } - } - - if (!$kdeopts{"nofinal"} && @final_names >= 1) { - # add clean-final target - my $lines = "$cleantarget-final:\n"; - $lines .= "\t-rm -f " . join(' ', @final_names) . "\n" if (@final_names); - appendLines($lines); - $target_adds{"$cleantarget-am"} .= "$cleantarget-final "; - - foreach $finalfile (@final_names) { - $finalfile =~ s/\.[^.]*$/.P/; - $dep_finals .= " \$(DEPDIR)/$finalfile"; - } - } -} - -sub tag_KDEINIT() -{ - my @progs = (); - my $ltlibs = ""; - my $lookup = 'kdeinit_LTLIBRARIES\s*=[ \t]*(.*)'; - - if ($MakefileData =~ m/\n$lookup/) { - @kdeinits = split(/[\034\s]+/, $1); - my $lines = ""; - foreach my $kdeinit (@kdeinits) { - if ($kdeinit =~ m/\.la$/) { - $kdeinit =~ s/\.la$//; - push(@progs, $kdeinit); - - $lines .= "\n${kdeinit}.la.$cxxsuffix:\n"; - $lines .= "\techo 'extern \"C\" int kdemain(int argc, char* argv[]);' > ${kdeinit}.la.$cxxsuffix; \\\n"; - $lines .= "\techo 'int main(int argc, char* argv[]) { return kdemain(argc,argv); }' >> ${kdeinit}.la.$cxxsuffix\n"; - - $lines .= "\n${kdeinit}_dummy.$cxxsuffix:\n"; - $lines .= "\techo '#include <kdemacros.h>' > ${kdeinit}_dummy.$cxxsuffix; \\\n"; - $lines .= "\techo 'extern \"C\" int kdemain(int argc, char* argv[]);' >> ${kdeinit}_dummy.$cxxsuffix; \\\n"; - $lines .= "\techo 'extern \"C\" KDE_EXPORT int kdeinitmain(int argc, char* argv[]) { return kdemain(argc,argv); }' >> ${kdeinit}_dummy.$cxxsuffix\n"; - - push(@cleanfiles, "${kdeinit}.la.$cxxsuffix"); - push(@cleanfiles, "${kdeinit}_dummy.$cxxsuffix"); - - # add dependency - $dep_files .= " \$(DEPDIR)/${kdeinit}.la.Po" if($dep_files !~/${kdeinit}.la.Po/ ); - $dep_files .= " \$(DEPDIR)/${kdeinit}_dummy.Plo" if($dep_files !~/${kdeinit}_dummy.Plo/ ); - - # make library - $lookup = $kdeinit . '_la_LIBADD\s*=[ \t]*(.*)'; - if($MakefileData =~ m/\n$lookup/) { - my $libadd = $1; - substituteLine($lookup, "${kdeinit}_la_LIBADD = libkdeinit_${kdeinit}.la"); - appendLines("libkdeinit_${kdeinit}_la_LIBADD = $libadd\n"); - } - appendLines("libkdeinit_${kdeinit}_la_LDFLAGS = -no-undefined -avoid-version \$(all_libraries)\n"); - - # add library dependencies - $lookup = $kdeinit . '_la_DEPENDENCIES\s*=[ \t]*(.*)'; - if($MakefileData =~ m/\n$lookup/) { - my $libdeps = $1; - substituteLine($lookup, "${kdeinit}_la_DEPENDENCIES = libkdeinit_${kdeinit}.la"); - appendLines("libkdeinit_${kdeinit}_la_DEPENDENCIES = $libdeps\n"); - } - - # make library objects - $lookup = "am_${kdeinit}_la_OBJECTS" . '\s*=[ \t]*(.*)'; - if($MakefileData =~ m/\n$lookup/) { - my $libobjects = $1; - substituteLine($lookup, "am_${kdeinit}_la_OBJECTS = ${kdeinit}_dummy.lo"); - appendLines("am_libkdeinit_${kdeinit}_la_OBJECTS = $libobjects\n"); - my $prog = "libkdeinit_${kdeinit}_la"; - push(@programs, $prog); - $realObjs{$prog} = $libobjects; - $realname{$prog} = "libkdeinit_${kdeinit}.la"; - } - $target_adds{"libkdeinit_${kdeinit}.la"} = "\$(libkdeinit_${kdeinit}_la_OBJECTS) \$(libkdeinit_${kdeinit}_la_DEPENDENCIES)\n" . - "\t\$(CXXLINK) -rpath \$(libdir) \$(libkdeinit_${kdeinit}_la_LDFLAGS) ". - "\$(libkdeinit_${kdeinit}_la_OBJECTS) " . - "\$(libkdeinit_${kdeinit}_la_LIBADD) " . - "\$(LIBS)\n"; - - # make libkdeinit sources - $lookup = $kdeinit . '_la_SOURCES\s*=[ \t]*(.*)'; - if($MakefileData =~ m/\n$lookup/) { - my $srces = $1; - $sources_changed{"libkdeinit_${kdeinit}_la"} = 1; - $sources{"libkdeinit_${kdeinit}_la"} = $srces; - } - - # make libkdeinit metasources - $lookup = $kdeinit . '_la_METASOURCES\s*=[ \t]*(.*)'; - substituteLine($lookup, "libkdeinit_${kdeinit}_la_METASOURCES = $1") - if($MakefileData =~ m/\n$lookup/); - -=cut - # make binary sources - $lookup = $kdeinit. '_SOURCES\s*=[ \t]*(.*)'; - if($MakefileData =~ m/\n$lookup/) { - substituteLine($lookup, "${kdeinit}_SOURCES = ${kdeinit}.la.$cxxsuffix"); - $lookup = 'SOURCES\s*=[ \t]*(.*)'; - if($MakefileData =~ m/\n$lookup/) { - my $srces = $1; - $srces =~ s/\b$kdeinit\.c\b/\$(${kdeinit}_SOURCES)/; - $srces =~ s/\$\(${kdeinit}_la_SOURCES\)/\$(libkdeinit_${kdeinit}_la_SOURCES)/; - substituteLine($lookup, "SOURCES = $srces"); - } - $lookup = 'DIST_SOURCES\s*=[ \t](.*)'; - if($MakefileData =~ m/\n$lookup/) { - my $srces = $1; - $srces =~ s/\b$kdeinit\.c\b/\$(${kdeinit}_SOURCES)/; - $srces =~ s/\$\(${kdeinit}_la_SOURCES\)/\$(libkdeinit_${kdeinit}_la_SOURCES)/; - substituteLine($lookup, "DIST_SOURCES = $srces"); - } - } - - # make binary objects / libs - $lookup = $kdeinit . '_OBJECTS\s*=[ \t]*.*'; - if($MakefileData =~ m/\n$lookup/) { - $realObjs{$kdeinit} = "${kdeinit}.la.\$(OBJEXT)"; - substituteLine("${kdeinit}_LDFLAGS\\s*=.*", "${kdeinit}_LDFLAGS = \$(all_libraries)"); - substituteLine("${kdeinit}_LDADD\\s*=.*", "${kdeinit}_LDADD = libkdeinit_${kdeinit}.la"); - substituteLine("${kdeinit}_DEPENDENCIES\\s*=.*", "${kdeinit}_DEPENDENCIES = libkdeinit_${kdeinit}.la"); - } -=cut - # add binary - push(@programs, $kdeinit); - $realObjs{$kdeinit} = "${kdeinit}.la.\$(OBJEXT)"; - $realname{$kdeinit} = $kdeinit; - $sources{$kdeinit} = "${kdeinit}.la.$cxxsuffix"; - - $lines .= "${kdeinit}_LDFLAGS = \$(KDE_RPATH) -no-undefined \$(all_libraries)\n"; - $lines .= "${kdeinit}_LDADD = libkdeinit_${kdeinit}.la\n"; - $lines .= "${kdeinit}_DEPENDENCIES = libkdeinit_${kdeinit}.la\n"; - - $target_adds{"${kdeinit}\$(EXEEXT)"} = - "\$(${kdeinit}_OBJECTS) \$(${kdeinit}_DEPENDENCIES)\n" . - "\t\@rm -f ${kdeinit}\$(EXEEXT)\n" . - "\t\$(CXXLINK) \$(${kdeinit}_LDFLAGS) \$(${kdeinit}_OBJECTS) \$(${kdeinit}_LDADD) \$(LIBS)\n"; - - $ltlibs .= " libkdeinit_${kdeinit}.la"; - } - } - appendLines($lines); - - # add libkdeinit target - $lookup = 'lib_LTLIBRARIES\s*=[ \t]*(.*)'; - if($MakefileData =~ m/\n$lookup/) { - substituteLine($lookup, "lib_LTLIBRARIES = $1 $ltlibs"); - } - else { - print STDERR - "Error: lib_LTLIBRARIES missing in $printname (required for kdeinit_LTLIBRARIES).\n"; - $errorflag = 1; - } - } - - if($#progs >= 0) { - if($MakefileData !~ m/\nbin_PROGRAMS\s*=/) { - print STDERR "Error: bin_PROGRAMS missing in $printname (required for kdeinit_LTLIBRARIES).\n"; - $errorflag = 1; - } - else { - # add our new progs to SOURCES, DIST_SOURCES and bin_PROGRAMS - my $progsources = ""; - my $progexes = ""; - foreach my $p (@progs) { - $progsources .= "\$(${p}_SOURCES) "; - $progexes .= "${p}\$(EXEEXT) "; - } - $lookup = 'SOURCES\s*=[ \t]*(.*)'; - if($MakefileData =~ /\n$lookup/) { - substituteLine($lookup, "SOURCES = $1 $progsources"); - } - $lookup = 'DIST_SOURCES\s*=[ \t]*(.*)'; - if($MakefileData =~ /\n$lookup/) { - substituteLine($lookup, "DIST_SOURCES = $1 $progsources"); - } - # bin_PROGRAMS is complicated, as it exists twice, so we do a little - # magic trick here - $lookup = 'PROGRAMS\s*=[ \t]*(.*)'; - if ($MakefileData =~ /\n$lookup/) { - substituteLine($lookup, "bin_PROGRAMS += $progexes\nPROGRAMS = $1"); - } - } - } -} - -#----------------------------------------------------------------------------- - -sub tag_COMPILE_FIRST() -{ - foreach $program (@programs) { - my $lookup = "$program" . '_COMPILE_FIRST\s*=[ \t]*(.*)'; - if ($MakefileData =~ m/\n$lookup\n/) { - my $compilefirst_str = $1; - my @compilefirst = split(/[\034\s]+/, $compilefirst_str); - my @progsources = split(/[\034\s]+/, $sources{$program}); - my %donesources = (); - foreach $source (@progsources) { - my @deps = (); - my $sdeps = ""; - if (-f $source) { - $sdeps = "\$(srcdir)/$source"; - } else { - $sdeps = "$source"; - } - foreach $depend (@compilefirst) { - next if ($source eq $depend); - # avoid cyclic dependencies - next if defined($donesources{$depend}); - push @deps, $depend; - } - $target_adds{$sdeps} .= join(' ', @deps) . ' ' if (@deps); - $donesources{$source} = 1; - } - } - } -} - -#----------------------------------------------------------------------------- - - -# Organises the list of headers that we'll use to produce moc files -# from. -sub tag_METASOURCES () -{ - local @newObs = (); # here we add to create object files - local @depend = (); # here we add to create moc files - local $mocExt = ".moc"; - local %mocFiles = (); - - my $line = ""; - my $postEqual = ""; - - my $lookup; - my $found = ""; - if ($metasourceTags > 1) { - $lookup = $program . '_METASOURCES\s*=\s*(.*)'; - return 1 if ($MakefileData !~ /\n($lookup)\n/); - $found = $1; - } else { - $lookup = $program . '_METASOURCES\s*=\s*(.*)'; - if ($MakefileData !~ /\n($lookup)\n/) { - $lookup = 'METASOURCES\s*=\s*(.*)'; - return 1 if ($MakefileData !~ /\n($lookup)\n/); - $found = $1; - $metasourceTags = 0; # we can use the general target only once - } else { - $found = $1; - } - } - print STDOUT "METASOURCE processing <$found>)\n" if ($verbose); - - $postEqual = $found; - $postEqual =~ s/[^=]*=//; - - removeLine ($lookup, $found); - - # Always find the header files that could be used to "moc" - return 1 if (findMocCandidates ()); - - if ($postEqual =~ /AUTO\s*(\S*)|USE_AUTOMOC\s*(\S*)/) - { - print STDERR "$printname: the argument for AUTO|USE_AUTOMOC is obsolete" if ($+); - $mocExt = ".moc.$cxxsuffix"; - $haveAutomocTag = 1; - } - else - { - # Not automoc so read the list of files supplied which - # should be .moc files. - - $postEqual =~ tr/\034/ /; - - # prune out extra headers - This also checks to make sure that - # the list is valid. - pruneMocCandidates ($postEqual); - } - - checkMocCandidates (); - - if (@newObs) { - my $ext = ($program =~ /_la$/) ? ".moc.lo " : ".moc.o "; - $realObjs{$program} .= "\034" . join ($ext, @newObs) . $ext; - $dependmocs{$program} = join (".moc.$cxxsuffix " , @newObs) . ".moc.$cxxsuffix"; - foreach $file (@newObs) { - $dep_files .= " \$(DEPDIR)/$file.moc.P" if($dep_files !~/$file.moc.P/); - } - } - if (@depend) { - $dependmocs{$program} .= " "; - $dependmocs{$program} .= join('.moc ', @depend) . ".moc"; - $dependmocs{$program} .= " "; - } - addMocRules (); - @globalmocs{keys %mocFiles}=values %mocFiles; -} - -#----------------------------------------------------------------------------- - -# Returns 0 if the line was processed - 1 otherwise. -# Errors are logged in the global $errorflags -sub tag_AUTOMAKE () -{ - my $lookup = '.*cd \$\(top_srcdir\)\s+&&[\034\s]+\$\(AUTOMAKE\)(.*)'; - return 1 if ($MakefileData !~ /\n($lookup)\n/); - print STDOUT "AUTOMAKE processing <$1>\n" if ($verbose); - - my $newLine = $1."\n\tcd \$(top_srcdir) && perl $thisProg $printname"; - - # automake 1.8.x adds another automake call. *sigh* - $newLine =~ s/;([\034\s]+cd\s+\$\(srcdir\)\s+&&[\034\s]+\$\(AUTOMAKE\).*)[\034\s]+\&\&[\034\s]+exit[\034\s]+0;([\034\s]+exit\s+1)/; \034 ( $1 ) || exit 1; echo \' cd \$(top_srcdir) && perl $thisProg \'; cd \$(top_srcdir) && perl $thisProg && exit 0; $2/; - substituteLine ($lookup, $newLine); - $automkCall = $1; - - $lookup = '.*cd \$\(srcdir\)\s+&&[\034\s]+\$\(AUTOCONF\)(.*)'; - if ($MakefileData =~ /\n($lookup)\n/) { - $newLine = "\tcd \$(srcdir) && rm -f configure\n"; - $newLine .= "\tcd \$(top_srcdir) && \$(MAKE) -f admin/Makefile.common configure"; - substituteLine ($lookup, $newLine); - } - - return 0; -} - -#----------------------------------------------------------------------------- - -sub handle_TOPLEVEL() -{ - my $pofiles = ""; - my @restfiles = (); - opendir (THISDIR, "."); - foreach $entry (readdir(THISDIR)) { - next if (-d $entry); - - next if ($entry eq "CVS" || $entry =~ /^\./ || $entry =~ /^Makefile/ || $entry =~ /~$/ || $entry =~ /^\#.*\#$/ || $entry =~ /.gmo$/); - - if ($entry =~ /\.po$/) { - next; - } - push(@restfiles, $entry); - } - closedir (THISDIR); - - if (@restfiles) { - $target_adds{"install-data-am"} .= "install-nls-files "; - $lines = "install-nls-files:\n"; - $lines .= "\t\$(mkinstalldirs) \$(DESTDIR)\$(kde_locale)/$kdelang\n"; - for $file (@restfiles) { - $lines .= "\t\$(INSTALL_DATA) \$\(srcdir\)/$file \$(DESTDIR)\$(kde_locale)/$kdelang/$file\n"; - } - $target_adds{"uninstall"} .= "uninstall-nls-files "; - $lines .= "uninstall-nls-files:\n"; - for $file (@restfiles) { - $lines .= "\t-rm -f \$(DESTDIR)\$(kde_locale)/$kdelang/$file\n"; - } - appendLines($lines); - } - - return 0; -} - -#----------------------------------------------------------------------------- - -sub tag_SUBDIRS () -{ - if ($MakefileData !~ /\nSUBDIRS\s*=\s*\$\(AUTODIRS\)\s*\n/) { - return 1; - } - - my $subdirs = "."; - - opendir (THISDIR, "."); - foreach $entry (readdir(THISDIR)) { - next if ($entry eq "CVS" || $entry =~ /^\./); - if (-d $entry && -f $entry . "/Makefile.am") { - $subdirs .= " $entry"; - next; - } - } - closedir (THISDIR); - - substituteLine('SUBDIRS\s*=.*', "SUBDIRS =$subdirs"); - return 0; -} - -sub tag_IDLFILES () -{ - my @psources = split(/[\034\s]+/, $sources{$program}); - my $dep_lines = ""; - my @cppFiles = (); - - foreach $source (@psources) { - my $skel = ($source =~ m/\.skel$/); - my $stub = ($source =~ m/\.stub$/); - my $signals = ($source =~ m/\.signals$/); # obsolete, remove in KDE-4 - - if ($stub || $skel || $signals) { - - my $qs = quotemeta($source); - $sources{$program} =~ s/$qs//; - $sources_changed{$program} = 1; - - $source =~ s/\.(stub|skel|signals)$//; - my $sourcename; - - if ($skel) { - $sourcename = "$source\_skel"; - } elsif ($stub) { - $sourcename = "$source\_stub"; - } else { - $sourcename = "$source\_signals"; - } - - my $sourcedir = ''; - if (-f "$makefileDir/$source.h") { - $sourcedir = '$(srcdir)/'; - } else { - if ($MakefileData =~ /\n$source\_DIR\s*=\s*(\S+)\n/) { - $sourcedir = $1; - $sourcedir .= "/" if ($sourcedir !~ /\/$/); - } - } - - if ($allidls !~ /$source\_kidl/) { - - $use_ng = ($MakefileData =~ /\n$source\_DCOPIDLNG\s*=\s*(\S+)\n/); - $dcopidl = $use_ng ? "KDECONFIG=\"\$(KDECONFIG)\" \$(DCOPIDLNG)" : "\$(DCOPIDL)"; - - $dep_lines .= "$source.kidl: $sourcedir$source.h \$(DCOP_DEPENDENCIES)\n"; - $dep_lines .= "\t$dcopidl $sourcedir$source.h > $source.kidl || ( rm -f $source.kidl ; false )\n"; - - $allidls .= $source . "_kidl "; - } - - if ($allidls !~ /$sourcename/) { - - $dep_lines_tmp = ""; - - if ($skel) { - $dep_lines .= "$sourcename.$cxxsuffix: $source.kidl\n"; - $dep_lines .= "\t\$(DCOPIDL2CPP) --c++-suffix $cxxsuffix --no-signals --no-stub $source.kidl\n"; - } elsif ($stub) { - $dep_lines_tmp = "\t\$(DCOPIDL2CPP) --c++-suffix $cxxsuffix --no-signals --no-skel $source.kidl\n"; - } else { # signals - obsolete, remove in KDE 4 - $dep_lines_tmp = "\t\$(DCOPIDL2CPP) --c++-suffix $cxxsuffix --no-stub --no-skel $source.kidl\n"; - } - - if ($stub || $signals) { - $target_adds{"$sourcename.$cxxsuffix"} .= "$sourcename.h "; - $dep_lines .= "$sourcename.h: $source.kidl\n"; - $dep_lines .= $dep_lines_tmp; - } - - $allidls .= $sourcename . " "; - } - - $idlfiles{$program} .= $sourcename . " "; - - if ($program =~ /_la$/) { - $realObjs{$program} .= " $sourcename.lo"; - } else { - $realObjs{$program} .= " $sourcename.\$(OBJEXT)"; - } - $sources{$program} .= " $sourcename.$cxxsuffix"; - $sources_changed{$program} = 1; - $important{$program} .= "$sourcename.h " if (!$skel); - $idl_output .= "\\\n\t$sourcename.$cxxsuffix $sourcename.h $source.kidl "; - push(@cleanfiles, "$sourcename.$cxxsuffix"); - push(@cleanfiles, "$sourcename.h"); - push(@cleanfiles, "$sourcename.kidl"); - $dep_files .= " \$(DEPDIR)/$sourcename.P" if ($dep_files !~/$sourcename.P/); - } - } - if ($dep_lines) { - appendLines($dep_lines); - } - - if (0) { - my $lookup = "($program)"; - $lookup .= '(|\$\(EXEEXT\))'; - $lookup =~ s/\_/./g; - $lookup .= ":(.*..$program\_OBJECTS..*)"; - # $lookup = quotemeta($lookup); - if ($MakefileData =~ /\n$lookup\n/) { - - my $line = "$1$2: "; - foreach $file (split(' ', $idlfiles{$program})) { - $line .= "$file.$cxxsuffix "; - } - $line .= $3; - substituteLine($lookup, $line); - } else { - print STDERR "no built dependency found $lookup\n"; - } - } -} - -sub tag_UIFILES () -{ - my @psources = split(/[\034\s]+/, $sources{$program}); - my @depFiles = (); - - foreach $source (@psources) { - - if ($source =~ m/\.ui$/) { - - print STDERR "adding UI file $source\n" if ($verbose); - - my $qs = quotemeta($source); - $sources{$program} =~ s/$qs//; - $sources_changed{$program} = 1; - - $source =~ s/\.ui$//; - - my $sourcedir = ''; - if (-f "$makefileDir/$source.ui") { - $sourcedir = '$(srcdir)/'; - } - - if (!$uiFiles{$source}) { - - my $dep_lines = "$source.$cxxsuffix: $sourcedir$source.ui $source.h $source.moc\n"; - $dep_lines .= "\trm -f $source.$cxxsuffix\n"; - if (!$kdeopts{"qtonly"}) { - $dep_lines .= "\techo '#include <kdialog.h>' > $source.$cxxsuffix\n"; - $dep_lines .= "\techo '#include <klocale.h>' >> $source.$cxxsuffix\n"; - my ($mangled_source) = $source; - $mangled_source =~ s/[^A-Za-z0-9]/_/g; # get rid of garbage - $dep_lines .= "\t\$(UIC) -tr \${UIC_TR} -i $source.h $sourcedir$source.ui > $source.$cxxsuffix.temp ; ret=\$\$?; \\\n"; - $dep_lines .= "\t\$(PERL) -pe \"s,\${UIC_TR}( \\\"\\\" ),QString::null,g\" $source.$cxxsuffix.temp | \$(PERL) -pe \"s,\${UIC_TR}( \\\"\\\"\\, \\\"\\\" ),QString::null,g\" | \$(PERL) -pe \"s,image([0-9][0-9]*)_data,img\\\$\$1_" . $mangled_source . ",g\" | \$(PERL) -pe \"s,: QWizard\\(,: KWizard(,g\" >> $source.$cxxsuffix ;\\\n"; - $dep_lines .= "\trm -f $source.$cxxsuffix.temp ;\\\n"; - } else { - $dep_lines .= "\t\$(UIC) -i $source.h $sourcedir$source.ui > $source.$cxxsuffix; ret=\$\$?; \\\n"; - } - $dep_lines .= "\tif test \"\$\$ret\" = 0; then echo '#include \"$source.moc\"' >> $source.$cxxsuffix; else rm -f $source.$cxxsuffix ; exit \$\$ret ; fi\n\n"; - $dep_lines .= "$source.h: $sourcedir$source.ui\n"; - $dep_lines .= "\trm -rf $source.h;\n"; - if (!$kdeopts{"qtonly"}) { - $dep_lines .= "\t\$(UIC) $sourcedir$source.ui | \$(PERL) -pi -e \"s,public QWizard,public KWizard,g; s,#include <qwizard.h>,#include <kwizard.h>,g\" >> $source.h ;\n"; - } else { - $dep_lines .= "\t\$(UIC) -o $source.h $sourcedir$source.ui\n"; - } - $dep_lines .= "$source.moc: $source.h\n"; - $dep_lines .= "\t\$(MOC) $source.h -o $source.moc\n"; - - $rule_adds{"$source.$cxxsuffix"} = $dep_lines; - - $uiFiles{$source} = 1; - $dependmocs{$program} .= " $source.moc"; - $globalmocs{$source} = "\035$source.h\035$source.cpp"; - } - - if ($program =~ /_la$/) { - $realObjs{$program} .= " $source.lo"; - } else { - $realObjs{$program} .= " $source.\$(OBJEXT)"; - } - $sources{$program} .= " $source.$cxxsuffix"; - $sources_changed{$program} = 1; - $important{$program} .= "$source.h "; - $ui_output .= "\\\n\t$source.$cxxsuffix $source.h $source.moc "; - push(@cleanfiles, "$source.$cxxsuffix"); - push(@cleanfiles, "$source.h"); - push(@cleanfiles, "$source.moc"); - $dep_files .= " \$(DEPDIR)/$source.P" if($dep_files !~/$source.P/ ); - } - } -} - -sub tag_KCFGFILES () -{ - my @psources = split(/[\034\s]+/, $sources{$program}); - my @depFiles = (); - - foreach $source (@psources) { - - if ($source =~ m/\.kcfgc$/) { - - print STDERR "adding KCFG file $source\n" if ($verbose); - - my $qs = quotemeta($source); - $sources{$program} =~ s/$qs//; - $sources_changed{$program} = 1; - - $source =~ s/\.kcfgc$//; - - my $sourcedir = ''; - if (-f "$makefileDir/$source.kcfgc") { - $sourcedir = '$(srcdir)/'; - } - - if (!$kcfgFiles{$source}) { - $kcfg = "$program.kcfg"; - findKcfgFile("$source.kcfgc"); - - my $fixsuffix = ""; - $fixsuffix = "else mv $source.cpp $source.$cxxsuffix ; " - unless "cpp" eq $cxxsuffix; - - my $dep_lines = "$source.$cxxsuffix: $source.h\n"; - $dep_lines .= "$source.h: $sourcedir$kcfg $sourcedir$source.kcfgc \$(KCFG_DEPENDENCIES)\n"; - $dep_lines .= "\t\$(KCONFIG_COMPILER) $sourcedir$kcfg $sourcedir$source.kcfgc; ret=\$\$?; \\\n"; - $dep_lines .= "\tif test \"\$\$ret\" != 0; then rm -f $source.h ; exit \$\$ret ; $fixsuffix fi\n\n"; - - $rule_adds{"$source.$cxxsuffix"} = $dep_lines; - - $kcfgFiles{$source} = 1; - } - - if ($program =~ /_la$/) { - $realObjs{$program} .= " $source.lo"; - } else { - $realObjs{$program} .= " $source.\$(OBJEXT)"; - } - $sources{$program} .= " $source.$cxxsuffix"; - $sources_changed{$program} = 1; - $important{$program} .= "$source.h "; - $kcfg_output .= "\\\n\t$source.$cxxsuffix $source.h "; - push(@cleanfiles, "$source.$cxxsuffix"); - push(@cleanfiles, "$source.h"); - $dep_files .= " \$(DEPDIR)/$source.P" if($dep_files !~/$source.P/ ); - } - } -} - -sub tag_ICON() -{ - my $lookup = '([^\s]*)_ICON\s*=[ \t]*(.*)'; - my $install = ""; - my $uninstall = ""; - - while ($MakefileData =~ /\n$lookup/g) { - my $destdir; - if ($1 eq "KDE") { - $destdir = "kde_icondir"; - } else { - $destdir = $1 . "dir"; - } - my $iconauto = ($2 =~ /AUTO\s*$/); - my @appnames = (); - if ( ! $iconauto ) { - my $appicon_str = $2; - my @_appnames = split(" ", $appicon_str); - print STDOUT "KDE_ICON processing <@_appnames>\n" if ($verbose); - foreach $appname (@_appnames) { - push(@appnames, quotemeta($appname)); - } - } else { - print STDOUT "KDE_ICON processing <AUTO>\n" if ($verbose); - } - - my @files = (); - opendir (THISDIR, "."); - foreach $entry (readdir(THISDIR)) { - next if ($entry eq "CVS" || $entry =~ /^\./ || $entry =~ /^Makefile/ || $entry =~ /~$/ || $entry =~ /^\#.*\#$/); - next if (! -f $entry); - if ( $iconauto ) - { - push(@files, $entry) - if ($entry =~ /\.xpm/ || $entry =~ /\.png/ || $entry =~ /\.mng/ || $entry =~ /\.svg/); - } else { - foreach $appname (@appnames) { - push(@files, $entry) - if ($entry =~ /-$appname\.xpm/ || $entry =~ /-$appname\.png/ || $entry =~ /-$appname\.mng/ || $entry =~ /-$appname\.svg/); - } - } - } - closedir (THISDIR); - - my %directories = (); - - foreach $file (@files) { - my $newfile = $file; - my $prefix = $file; - $prefix =~ s/\.(png|xpm|mng|svg|svgz)$//; - my $appname = $prefix; - $appname =~ s/^[^-]+-// if ($appname =~ /-/) ; - $appname =~ s/^[^-]+-// if ($appname =~ /-/) ; - $appname = quotemeta($appname); - $prefix =~ s/$appname$//; - $prefix =~ s/-$//; - - $prefix = 'lo16-app' if ($prefix eq 'mini'); - $prefix = 'lo32-app' if ($prefix eq 'lo'); - $prefix = 'hi48-app' if ($prefix eq 'large'); - $prefix .= '-app' if ($prefix =~ m/^...$/); - - my $type = $prefix; - $type =~ s/^.*-([^-]+)$/$1/; - $prefix =~ s/^(.*)-[^-]+$/$1/; - - my %type_hash = - ( - 'action' => 'actions', - 'app' => 'apps', - 'device' => 'devices', - 'filesys' => 'filesystems', - 'mime' => 'mimetypes' - ); - - if (! defined $type_hash{$type} ) { - print STDERR "unknown icon type $type in $printname ($file)\n"; - next; - } - - my %dir_hash = - ( - 'los' => 'locolor/16x16', - 'lom' => 'locolor/32x32', - 'him' => 'hicolor/32x32', - 'hil' => 'hicolor/48x48', - 'lo16' => 'locolor/16x16', - 'lo22' => 'locolor/22x22', - 'lo32' => 'locolor/32x32', - 'hi16' => 'hicolor/16x16', - 'hi22' => 'hicolor/22x22', - 'hi32' => 'hicolor/32x32', - 'hi48' => 'hicolor/48x48', - 'hi64' => 'hicolor/64x64', - 'hi128' => 'hicolor/128x128', - 'hisc' => 'hicolor/scalable', - 'cr16' => 'crystalsvg/16x16', - 'cr22' => 'crystalsvg/22x22', - 'cr32' => 'crystalsvg/32x32', - 'cr48' => 'crystalsvg/48x48', - 'cr64' => 'crystalsvg/64x64', - 'cr128' => 'crystalsvg/128x128', - 'crsc' => 'crystalsvg/scalable' - ); - - $newfile =~ s@.*-($appname\.(png|xpm|mng|svgz|svg?))@$1@; - - if (! defined $dir_hash{$prefix}) { - print STDERR "unknown icon prefix $prefix in $printname\n"; - next; - } - - my $dir = $dir_hash{$prefix} . "/" . $type_hash{$type}; - if ($newfile =~ /-[^\.]/) { - my $tmp = $newfile; - $tmp =~ s/^([^-]+)-.*$/$1/; - $dir = $dir . "/" . $tmp; - $newfile =~ s/^[^-]+-//; - } - - if (!defined $directories{$dir}) { - $install .= "\t\$(mkinstalldirs) \$(DESTDIR)\$($destdir)/$dir\n"; - $directories{$dir} = 1; - } - - $install .= "\t\$(INSTALL_DATA) \$(srcdir)/$file \$(DESTDIR)\$($destdir)/$dir/$newfile\n"; - $uninstall .= "\t-rm -f \$(DESTDIR)\$($destdir)/$dir/$newfile\n"; - - } - } - - if (length($install)) { - $target_adds{"install-data-am"} .= "install-kde-icons "; - $target_adds{"uninstall-am"} .= "uninstall-kde-icons "; - appendLines("install-kde-icons:\n" . $install . "\nuninstall-kde-icons:\n" . $uninstall); - } -} - -sub handle_POFILES($$) -{ - my @pofiles = split(" ", $_[0]); - my $lang = $_[1]; - - # Build rules for creating the gmo files - my $tmp = ""; - my $allgmofiles = ""; - my $pofileLine = "POFILES ="; - foreach $pofile (@pofiles) - { - $pofile =~ /(.*)\.[^\.]*$/; # Find name minus extension - $tmp .= "$1.gmo: $pofile\n"; - $tmp .= "\trm -f $1.gmo; \$(GMSGFMT) -o $1.gmo \$(srcdir)/$pofile\n"; - $tmp .= "\ttest ! -f $1.gmo || touch $1.gmo\n"; - $allgmofiles .= " $1.gmo"; - $pofileLine .= " $1.po"; - } - appendLines ($tmp); - my $lookup = 'POFILES\s*=([^\n]*)'; - if ($MakefileData !~ /\n$lookup/) { - appendLines("$pofileLine\nGMOFILES =$allgmofiles"); - } else { - substituteLine ($lookup, "$pofileLine\nGMOFILES =$allgmofiles"); - } - - if ($allgmofiles) { - - # Add the "clean" rule so that the maintainer-clean does something - appendLines ("clean-nls:\n\t-rm -f $allgmofiles\n"); - - $target_adds{"maintainer-clean"} .= "clean-nls "; - - $lookup = 'DISTFILES\s*=[ \t]*(.*)'; - if ($MakefileData =~ /\n$lookup/) { - $tmp = "DISTFILES = \$(GMOFILES) \$(POFILES) $1"; - substituteLine ($lookup, $tmp); - } - } - - $target_adds{"install-data-am"} .= "install-nls "; - - $tmp = "install-nls:\n"; - if ($lang) { - $tmp .= "\t\$(mkinstalldirs) \$(DESTDIR)\$(kde_locale)/$lang/LC_MESSAGES\n"; - } - $tmp .= "\t\@for base in "; - foreach $pofile (@pofiles) - { - $pofile =~ /(.*)\.[^\.]*$/; # Find name minus extension - $tmp .= "$1 "; - } - - $tmp .= "; do \\\n"; - if ($lang) { - $tmp .= "\t echo \$(INSTALL_DATA) \$\$base.gmo \$(DESTDIR)\$(kde_locale)/$lang/LC_MESSAGES/\$\$base.mo ;\\\n"; - $tmp .= "\t if test -f \$\$base.gmo; then \$(INSTALL_DATA) \$\$base.gmo \$(DESTDIR)\$(kde_locale)/$lang/LC_MESSAGES/\$\$base.mo ;\\\n"; - $tmp .= "\t elif test -f \$(srcdir)/\$\$base.gmo; then \$(INSTALL_DATA) \$(srcdir)/\$\$base.gmo \$(DESTDIR)\$(kde_locale)/$lang/LC_MESSAGES/\$\$base.mo ;\\\n"; - $tmp .= "\t fi ;\\\n"; - } else { - $tmp .= "\t echo \$(INSTALL_DATA) \$\$base.gmo \$(DESTDIR)\$(kde_locale)/\$\$base/LC_MESSAGES/\$(PACKAGE).mo ;\\\n"; - $tmp .= "\t \$(mkinstalldirs) \$(DESTDIR)\$(kde_locale)/\$\$base/LC_MESSAGES ; \\\n"; - $tmp .= "\t if test -f \$\$base.gmo; then \$(INSTALL_DATA) \$\$base.gmo \$(DESTDIR)\$(kde_locale)/\$\$base/LC_MESSAGES/\$(PACKAGE).mo ;\\\n"; - $tmp .= "\t elif test -f \$(srcdir)/\$\$base.gmo; then \$(INSTALL_DATA) \$(srcdir)/\$\$base.gmo \$(DESTDIR)\$(kde_locale)/\$\$base/LC_MESSAGES/\$(PACKAGE).mo ;\\\n"; - $tmp .= "\t fi ;\\\n"; - } - $tmp .= "\tdone\n\n"; - appendLines ($tmp); - - $target_adds{"uninstall"} .= "uninstall-nls "; - - $tmp = "uninstall-nls:\n"; - foreach $pofile (@pofiles) - { - $pofile =~ /(.*)\.[^\.]*$/; # Find name minus extension - if ($lang) { - $tmp .= "\trm -f \$(DESTDIR)\$(kde_locale)/$lang/LC_MESSAGES/$1.mo\n"; - } else { - $tmp .= "\trm -f \$(DESTDIR)\$(kde_locale)/$1/LC_MESSAGES/\$(PACKAGE).mo\n"; - } - } - appendLines($tmp); - - $target_adds{"all"} .= "all-nls "; - - $tmp = "all-nls: \$(GMOFILES)\n"; - - appendLines($tmp); - - $target_adds{"distdir"} .= "distdir-nls "; - - $tmp = "distdir-nls:\$(GMOFILES)\n"; - $tmp .= "\tfor file in \$(POFILES); do \\\n"; - $tmp .= "\t cp \$(srcdir)/\$\$file \$(distdir); \\\n"; - $tmp .= "\tdone\n"; - $tmp .= "\tfor file in \$(GMOFILES); do \\\n"; - $tmp .= "\t cp \$(srcdir)/\$\$file \$(distdir); \\\n"; - $tmp .= "\tdone\n"; - - appendLines ($tmp); - - if (!$lang) { - appendLines("merge:\n\t\$(MAKE) -f \$(top_srcdir)/admin/Makefile.common package-merge POFILES=\"\${POFILES}\" PACKAGE=\${PACKAGE}\n\n"); - } - -} - -#----------------------------------------------------------------------------- - -# Returns 0 if the line was processed - 1 otherwise. -# Errors are logged in the global $errorflags -sub tag_POFILES () -{ - my $lookup = 'POFILES\s*=([^\n]*)'; - return 1 if ($MakefileData !~ /\n$lookup/); - print STDOUT "POFILES processing <$1>\n" if ($verbose); - - my $tmp = $1; - - # make sure these are all gone. - if ($MakefileData =~ /\n\.po\.gmo:\n/) - { - print STDERR "Warning: Found old .po.gmo rules in $printname. New po rules not added\n"; - return 1; - } - - # Either find the pofiles in the directory (AUTO) or use - # only the specified po files. - my $pofiles = ""; - if ($tmp =~ /^\s*AUTO\s*$/) - { - opendir (THISDIR, "."); - $pofiles = join(" ", grep(/\.po$/, readdir(THISDIR))); - closedir (THISDIR); - print STDOUT "pofiles found = $pofiles\n" if ($verbose); - if (-f "charset" && -f "kdelibs/kdelibs.po") { - handle_TOPLEVEL(); - } - } - else - { - $tmp =~ s/\034/ /g; - $pofiles = $tmp; - } - return 1 if (!$pofiles); # Nothing to do - - handle_POFILES($pofiles, $kdelang); - - return 0; -} - -sub helper_LOCALINSTALL($) -{ - my $lookup = "\035" . $_[0] . " *:[^\035]*\035\t"; - my $copy = $MakefileData; - $copy =~ s/\n/\035/g; - if ($copy =~ /($lookup.*)$/) { - - $install = $1; - $install =~ s/\035$_[0] *:[^\035]*\035//; - my $emptyline = 0; - while (! $emptyline ) { - if ($install =~ /([^\035]*)\035(.*)/) { - local $line = $1; - $install = $2; - if ($line !~ /^\s*$/ && $line !~ /^(\@.*\@)*\t/) { - $emptyline = 1; - } else { - replaceDestDir($line); - } - } else { - $emptyline = 1; - } - } - } - -} - -sub tag_LOCALINSTALL () -{ - helper_LOCALINSTALL('install-exec-local'); - helper_LOCALINSTALL('install-data-local'); - helper_LOCALINSTALL('uninstall-local'); - - return 0; -} - -sub replaceDestDir($) { - local $line = $_[0]; - - if ( $line =~ /^\s*(\@.*\@)*\s*\$\(mkinstalldirs\)/ - || $line =~ /^\s*(\@.*\@)*\s*\$\(INSTALL\S*\)/ - || $line =~ /^\s*(\@.*\@)*\s*(-?rm.*) \S*$/) - { - $line =~ s/^(.*) ([^\s]+)\s*$/$1 \$(DESTDIR)$2/ if ($line !~ /\$\(DESTDIR\)/); - } - - if ($line ne $_[0]) { - $_[0] = quotemeta $_[0]; - substituteLine($_[0], $line); - } -} - -#--------------------------------------------------------------------------- -# libtool is very hard to persuade it could use -Wl,--no-undefined for making -# -no-undefined actually work -# append $(KDE_NO_UNFINED) after every -no-undefined in LDFLAGS -# this may go away if libtool ever does this on its own -sub tag_NO_UNDEFINED () { - return if ($program !~ /_la$/); - - my $lookup = quotemeta($realname{$program}) . ":.*?\n\t.*?\\((.*?)\\) .*\n"; - $MakefileData =~ m/$lookup/; - return if (!defined($1)); - return if ($1 !~ /CXXLINK/); - - if ($MakefileData !~ /\n$program\_LDFLAGS\s*=.*-no-undefined/ ) { - return; - } - - $lookup = $program . '\_LDFLAGS(\s*)=(.*)-no-undefined(.*)'; - if ($MakefileData =~ /\n$lookup\n/) { - my $replace = $program . "\_LDFLAGS$1=$2-no-undefined \$(KDE_NO_UNDEFINED)$3"; - substituteLine($lookup, $replace); - } -} - -sub tag_CLOSURE () { - return if ($program !~ /_la$/); - - my $lookup = quotemeta($realname{$program}) . ":.*?\n\t.*?\\((.*?)\\) .*\n"; - $MakefileData =~ m/$lookup/; - return if (!defined($1)); - return if ($1 !~ /CXXLINK/); - - if ($MakefileData !~ /\n$program\_LDFLAGS\s*=.*-no-undefined/ && - $MakefileData !~ /\n$program\_LDFLAGS\s*=.*KDE_PLUGIN/ ) { - print STDERR "Report: $program contains undefined in $printname\n" if ($program =~ /^lib/ && $dryrun); - return; - } - - my $closure = $realname{$program} . ".closure"; - my $lines = "$closure: \$($program\_OBJECTS) \$($program\_DEPENDENCIES)\n"; - $lines .= "\t\@echo \"int main() {return 0;}\" > $program\_closure.$cxxsuffix\n"; - $lines .= "\t\@\$\(LTCXXCOMPILE\) -c $program\_closure.$cxxsuffix\n"; - $lines .= "\t\$\(CXXLINK\) $program\_closure.lo \$($program\_LDFLAGS) \$($program\_OBJECTS) \$($program\_LIBADD) \$(LIBS)\n"; - $lines .= "\t\@rm -f $program\_closure.* $closure\n"; - $lines .= "\t\@echo \"timestamp\" > $closure\n"; - $lines .= "\n"; - appendLines($lines); - $lookup = $realname{$program} . ": (.*)"; - if ($MakefileData =~ /\n$lookup\n/) { - $lines = "\@KDE_USE_CLOSURE_TRUE@". $realname{$program} . ": $closure $1"; - $lines .= "\n\@KDE_USE_CLOSURE_FALSE@" . $realname{$program} . ": $1"; - substituteLine($lookup, $lines); - } - $closure_output .= " $closure"; -} - -sub tag_NMCHECK () { - return if ($program !~ /_la$/); - my $lookup = quotemeta($realname{$program}) . ":.*?\n\t.*?\\((.*?)\\) .*\n"; - $MakefileData =~ m/$lookup/; - my $linkcmd = $1; - return if (!defined($1)); - return if ($linkcmd !~ /CXXLINK/ && $linkcmd !~ /LINK/); - - $lookup = $program . '_NMCHECK\s*=([^\n]*)'; - if( $MakefileData !~ m/\n$lookup\n/ ) { - return; - } - my $allowed = $1; - $allowed =~ s/^ *//; - $lookup = $program . '_NMCHECKWEAK\s*=([^\n]*)'; - my $weak = ""; - my $is_weak = 0; - if( $MakefileData =~ m/\n$lookup\n/ ) { - $weak = $1; - $is_weak = 1; - } - $weak =~ s/^ *//; - - if( $is_weak ) - { - $weak = '--allowweak=\'' . $weak . '\' '; - } - my $nmline = "\@KDE_USE_NMCHECK_TRUE@\t\@\$(MAKE) \$(AM_MAKEFLAGS) nmcheck_$realname{$program} || ( rm -f $realname{$program}; exit 1 )"; - $lookup = '(\t\$\(CXXLINK\)[^\n]*' . $program . '_OBJECTS[^\n]*)'; - if( $MakefileData =~ /\n$lookup\n/ ) { - my $oldstuff = $1; - substituteLine( $lookup, $oldstuff . "\n" . $nmline ); - } - $lookup = '(\t\$\(LINK\)[^\n]*' . $program . '_OBJECTS[^\n]*)'; - if( $MakefileData =~ /\n$lookup\n/ ) { - my $oldstuff = $1; - substituteLine( $lookup, $oldstuff . "\n" . $nmline ); - } - $nmline = "\@\$(top_srcdir)/admin/nmcheck $realname{$program} \'$allowed\' $weak"; - appendLines( "\nnmcheck_$realname{$program}: $realname{$program} \n\t$nmline\n" ); - $target_adds{ "nmcheck" } .= "nmcheck_$realname{$program} "; -} - -sub tag_DIST () { - my %foundfiles = (); - opendir (THISDIR, "."); - foreach $entry (readdir(THISDIR)) { - next if ($entry eq "CVS" || $entry =~ /^\./ || $entry eq "Makefile" || $entry =~ /~$/ || $entry =~ /^\#.*\#$/); - next if (! -f $entry); - next if ($entry =~ /\.moc/ || $entry =~ /\.moc.$cppExt$/ || $entry =~ /\.lo$/ || $entry =~ /\.la$/ || $entry =~ /\.o/); - next if ($entry =~ /\.all_$cppExt\.$cppExt$/); - $foundfiles{$entry} = 1; - } - closedir (THISDIR); - - # doing this for MAINTAINERCLEANFILES would be wrong - my @marks = ("EXTRA_DIST", "DIST_COMMON", '\S*_SOURCES', '\S*_HEADERS', 'CLEANFILES', 'DISTCLEANFILES', '\S*_OBJECTS'); - foreach $mark (@marks) { - while ($MakefileData =~ /\n($mark)\s*=[ \t]*([^\n]*)/g) { - my $cleanfiles_str = $2; - foreach $file (split('[\034\s]+', $cleanfiles_str)) { - $file =~ s/\.\///; - $foundfiles{$file} = 0 if (defined $foundfiles{$file}); - } - } - } - my @files = ("Makefile", "config.cache", "config.log", "stamp-h", - "stamp-h1", "stamp-h1", "config.h", "Makefile", - "config.status", "config.h", "libtool", "core" ); - foreach $file (@files) { - $foundfiles{$file} = 0 if (defined $foundfiles{$file}); - } - - my $KDE_DIST = ""; - foreach $file (keys %foundfiles) { - if ($foundfiles{$file} == 1) { - $KDE_DIST .= "$file "; - } - } - if ($KDE_DIST) { - print "KDE_DIST $printname $KDE_DIST\n" if ($verbose); - - my $lookup = 'DISTFILES\s*=[ \t]*(.*)'; - if ($MakefileData =~ /\n$lookup/) { - substituteLine($lookup, "DISTFILES = $1 \$(KDE_DIST)"); - appendLines("KDE_DIST=$KDE_DIST\n"); - } - } -} - -#----------------------------------------------------------------------------- -# Returns 0 if the line was processed - 1 otherwise. -# Errors are logged in the global $errorflags -sub tag_DOCFILES () -{ - $target_adds{"all"} .= "docs-am "; - - my $lookup = 'KDE_DOCS\s*=[ \t]*([^\n]*)'; - goto nodocs if ($MakefileData !~ /\n$lookup/); - print STDOUT "KDE_DOCS processing <$1>\n" if ($verbose); - - my $tmp = $1; - - # Either find the files in the directory (AUTO) or use - # only the specified po files. - my $files = ""; - my $appname = $tmp; - $appname =~ s/^(\S*)\s*.*$/$1/; - if ($appname =~ /AUTO/) { - $appname = basename($makefileDir); - if ("$appname" eq "en") { - print STDERR "Error: KDE_DOCS = AUTO relies on the directory name. Yours is 'en' - you most likely want something else, e.g. KDE_DOCS = myapp\n"; - exit(1); - } - } - - if ($tmp !~ / - /) - { - opendir (THISDIR, "."); - foreach $entry (readdir(THISDIR)) { - next if ($entry eq "CVS" || $entry =~ /^\./ || $entry =~ /^Makefile/ || $entry =~ /~$/ || $entry =~ /^\#.*\#$/ || $entry eq "core" || $entry eq "index.cache.bz2"); - next if (! -f $entry); - $files .= "$entry "; - } - closedir (THISDIR); - print STDOUT "docfiles found = $files\n" if ($verbose); - } - else - { - $tmp =~ s/\034/ /g; - $tmp =~ s/^\S*\s*-\s*//; - $files = $tmp; - } - goto nodocs if (!$files); # Nothing to do - - if ($files =~ /(^| )index\.docbook($| )/) { - - my $lines = ""; - my $lookup = 'MEINPROC\s*='; - if ($MakefileData !~ /\n($lookup)/) { - $lines = "MEINPROC=/\$(kde_bindir)/meinproc\n"; - } - $lookup = 'KDE_XSL_STYLESHEET\s*='; - if ($MakefileData !~ /\n($lookup)/) { - $lines .= "KDE_XSL_STYLESHEET=/\$(kde_datadir)/ksgmltools2/customization/kde-chunk.xsl\n"; - } - $lookup = '\nindex.cache.bz2:'; - if ($MakefileData !~ /\n($lookup)/) { - $lines .= "index.cache.bz2: \$(srcdir)/index.docbook \$(KDE_XSL_STYLESHEET) $files\n"; - $lines .= "\t\@if test -n \"\$(MEINPROC)\"; then echo \$(MEINPROC) --check --cache index.cache.bz2 \$(srcdir)/index.docbook; \$(MEINPROC) --check --cache index.cache.bz2 \$(srcdir)/index.docbook; fi\n"; - $lines .= "\n"; - } - - $lines .= "docs-am: index.cache.bz2\n"; - $lines .= "\n"; - $lines .= "install-docs: docs-am install-nls\n"; - $lines .= "\t\$(mkinstalldirs) \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname\n"; - $lines .= "\t\@if test -f index.cache.bz2; then \\\n"; - $lines .= "\techo \$(INSTALL_DATA) index.cache.bz2 \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/; \\\n"; - $lines .= "\t\$(INSTALL_DATA) index.cache.bz2 \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/; \\\n"; - $lines .= "\telif test -f \$(srcdir)/index.cache.bz2; then \\\n"; - $lines .= "\techo \$(INSTALL_DATA) \$(srcdir)/index.cache.bz2 \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/; \\\n"; - $lines .= "\t\$(INSTALL_DATA) \$(srcdir)/index.cache.bz2 \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/; \\\n"; - $lines .= "\tfi\n"; - $lines .= "\t-rm -f \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/common\n"; - $lines .= "\t\$(LN_S) \$(kde_libs_htmldir)/$kdelang/common \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/common\n"; - - $lines .= "\n"; - $lines .= "uninstall-docs:\n"; - $lines .= "\t-rm -rf \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname\n"; - $lines .= "\n"; - $lines .= "clean-docs:\n"; - $lines .= "\t-rm -f index.cache.bz2\n"; - $lines .= "\n"; - $target_adds{"install-data-am"} .= "install-docs "; - $target_adds{"uninstall"} .= "uninstall-docs "; - $target_adds{"clean-am"} .= "clean-docs "; - appendLines ($lines); - } else { - appendLines("docs-am: $files\n"); - } - - $target_adds{"install-data-am"} .= "install-nls "; - $target_adds{"uninstall"} .= "uninstall-nls "; - - $tmp = "install-nls:\n"; - $tmp .= "\t\$(mkinstalldirs) \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname\n"; - $tmp .= "\t\@for base in $files; do \\\n"; - $tmp .= "\t echo \$(INSTALL_DATA) \$\$base \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/\$\$base ;\\\n"; - $tmp .= "\t \$(INSTALL_DATA) \$(srcdir)/\$\$base \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/\$\$base ;\\\n"; - $tmp .= "\tdone\n"; - if ($appname eq 'common') { - $tmp .= "\t\@echo \"merging common and language specific dir\" ;\\\n"; - $tmp .= "\tif test ! -f \$(kde_htmldir)/en/common/kde-common.css; then echo 'no english docs found in \$(kde_htmldir)/en/common/'; exit 1; fi \n"; - $tmp .= "\t\@com_files=`cd \$(kde_htmldir)/en/common && echo *` ;\\\n"; - $tmp .= "\tcd \$(DESTDIR)\$(kde_htmldir)/$kdelang/common ;\\\n"; - $tmp .= "\tif test -n \"\$\$com_files\"; then for p in \$\$com_files ; do \\\n"; - $tmp .= "\t case \" $files \" in \\\n"; - $tmp .= "\t *\" \$\$p \"*) ;; \\\n"; - $tmp .= "\t *) test ! -f \$\$p && echo \$(LN_S) ../../en/common/\$\$p \$(DESTDIR)\$(kde_htmldir)/$kdelang/common/\$\$p && \$(LN_S) ../../en/common/\$\$p \$\$p ;; \\\n"; - $tmp .= "\t esac ; \\\n"; - $tmp .= "\tdone ; fi ; true\n"; - } - $tmp .= "\n"; - $tmp .= "uninstall-nls:\n"; - $tmp .= "\tfor base in $files; do \\\n"; - $tmp .= "\t rm -f \$(DESTDIR)\$(kde_htmldir)/$kdelang/$appname/\$\$base ;\\\n"; - $tmp .= "\tdone\n\n"; - appendLines ($tmp); - - $target_adds{"distdir"} .= "distdir-nls "; - - $tmp = "distdir-nls:\n"; - $tmp .= "\tfor file in $files; do \\\n"; - $tmp .= "\t cp \$(srcdir)/\$\$file \$(distdir); \\\n"; - $tmp .= "\tdone\n"; - - appendLines ($tmp); - - return 0; - - nodocs: - appendLines("docs-am:\n"); - return 1; -} - -#----------------------------------------------------------------------------- -# Find headers in any of the source directories specified previously, that -# are candidates for "moc-ing". -sub findMocCandidates () -{ - foreach $dir (@headerdirs) - { - my @list = (); - opendir (SRCDIR, "$dir"); - @hFiles = grep { /.+\.$hExt$/o && !/^\./ } readdir(SRCDIR); - closedir SRCDIR; - foreach $hf (@hFiles) - { - next if ($hf =~ /^\.\#/); - $hf =~ /(.*)\.[^\.]*$/; # Find name minus extension - next if ($uiFiles{$1}); - open (HFIN, "$dir/$hf") || die "Could not open $dir/$hf: $!\n"; - my $hfsize = 0; - seek(HFIN, 0, 2); - $hfsize = tell(HFIN); - seek(HFIN, 0, 0); - read HFIN, $hfData, $hfsize; - close HFIN; - # push (@list, $hf) if(index($hfData, "Q_OBJECT") >= 0); ### fast but doesn't handle //Q_OBJECT - # handle " { friend class blah; Q_OBJECT ", but don't match antlarr_Q_OBJECT (\b). - if ( $hfData =~ /{([^}]*)\bQ_OBJECT/s ) { - push (@list, $hf) unless $1 =~ m://[^\n]*Q_OBJECT[^\n]*$:s; ## reject "// Q_OBJECT" - } - } - # The assoc array of root of headerfile and header filename - foreach $hFile (@list) - { - $hFile =~ /(.*)\.[^\.]*$/; # Find name minus extension - if ($mocFiles{$1}) - { - print STDERR "Warning: Multiple header files found for $1\n"; - next; # Use the first one - } - $mocFiles{$1} = "$dir\035$hFile"; # Add relative dir - } - } - - return 0; -} - -#----------------------------------------------------------------------------- - -# The programmer has specified a moc list. Prune out the moc candidates -# list that we found based on looking at the header files. This generates -# a warning if the programmer gets the list wrong, but this doesn't have -# to be fatal here. -sub pruneMocCandidates ($) -{ - my %prunedMoc = (); - local @mocList = split(' ', $_[0]); - - foreach $mocname (@mocList) - { - $mocname =~ s/\.moc$//; - if ($mocFiles{$mocname}) - { - $prunedMoc{$mocname} = $mocFiles{$mocname}; - } - else - { - my $print = $makefileDir; - $print =~ s/^\Q$topdir\E\\//; - # They specified a moc file but we can't find a header that - # will generate this moc file. That's possible fatal! - print STDERR "Warning: No moc-able header file for $print/$mocname\n"; - } - } - - undef %mocFiles; - %mocFiles = %prunedMoc; -} - -#----------------------------------------------------------------------------- - -# Finds the cpp files (If they exist). -# The cpp files get appended to the header file separated by \035 -sub checkMocCandidates () -{ - my @cppFiles; - my $cpp2moc; # which c++ file includes which .moc files - my $moc2cpp; # which moc file is included by which c++ files - - return unless (keys %mocFiles); - opendir(THISDIR, ".") || return; - @cppFiles = grep { /.+\.$cppExt$/o && !/.+\.moc\.$cppExt$/o - && !/.+\.all_$cppExt\.$cppExt$/o - && !/^\./ } readdir(THISDIR); - closedir THISDIR; - return unless (@cppFiles); - my $files = join (" ", @cppFiles); - $cpp2moc = {}; - $moc2cpp = {}; - foreach $cxxf (@cppFiles) - { - open (CXXFIN, $cxxf) || die "Could not open $cxxf: $!\n"; - seek(CXXFIN, 0, 2); - my $cxxfsize = tell(CXXFIN); - seek(CXXFIN, 0, 0); - read CXXFIN, $cxxfData, $cxxfsize; - close CXXFIN; - while(($cxxfData =~ m/^[ \t]*\#include\s*[<\"](.*\.moc)[>\"]/gm)) { - $cpp2moc->{$cxxf}->{$1} = 1; - $moc2cpp->{$1}->{$cxxf} = 1; - } - } - foreach my $mocFile (keys (%mocFiles)) - { - @cppFiles = keys %{$moc2cpp->{"$mocFile.moc"}}; - if (@cppFiles == 1) { - $mocFiles{$mocFile} .= "\035" . $cppFiles[0]; - push(@depend, $mocFile); - } elsif (@cppFiles == 0) { - push (@newObs, $mocFile); # Produce new object file - next if ($haveAutomocTag); # This is expected... - # But this is an error we can deal with - let them know - print STDERR - "Warning: No c++ file that includes $mocFile.moc\n"; - } else { - # We can't decide which file to use, so it's fatal. Although as a - # guess we could use the mocFile.cpp file if it's in the list??? - print STDERR - "Error: Multiple c++ files that include $mocFile.moc\n"; - print STDERR "\t",join ("\t", @cppFiles),"\n"; - $errorflag = 1; - delete $mocFiles{$mocFile}; - # Let's continue and see what happens - They have been told! - } - } -} - -#----------------------------------------------------------------------------- - -# Add the rules for generating moc source from header files -# For Automoc output *.moc.cpp but normally we'll output *.moc -# (We must compile *.moc.cpp separately. *.moc files are included -# in the appropriate *.cpp file by the programmer) -sub addMocRules () -{ - my $cppFile; - my $hFile; - - foreach $mocFile (keys (%mocFiles)) - { - undef $cppFile; - ($dir, $hFile, $cppFile) = split ("\035", $mocFiles{$mocFile}, 3); - $dir =~ s#^\.#\$(srcdir)#; - if (defined ($cppFile)) - { - $cppFile =~ s,\.[^.]*$,,; - $target_adds{"$cppFile.o"} .= "$mocFile.moc "; - $target_adds{"$cppFile.lo"} .= "$mocFile.moc "; - appendLines ("$mocFile.moc: $dir/$hFile\n\t\$(MOC) $dir/$hFile -o $mocFile.moc\n"); - $cleanMoc .= " $mocFile.moc"; - appendLines ("mocs: $mocFile.moc\n"); - } - else - { - appendLines ("$mocFile$mocExt: $dir/$hFile\n\t\$(MOC) $dir/$hFile -o $mocFile$mocExt\n"); - $cleanMoc .= " $mocFile$mocExt"; - appendLines ("mocs: $mocFile$mocExt\n"); - } - } -} - -sub make_bcheck_target() -{ - my $lookup = 'RECURSIVE_TARGETS\s*=[ \t]*(.*)'; - my $bcheckdep = "bcheck-am"; - $bcheckdep = "bcheck-recursive" if ($MakefileData =~ /\n$lookup/); - - my $headers= ""; - $headers = $1 if($MakefileData =~ /\nHEADERS\s*=[ \t]*(.+)/); - $headers =~ s/\$\((?:noinst|EXTRA)_HEADERS\)//g; - - $target_adds{"clean-am"} .= "clean-bcheck "; - - my $t = "clean-bcheck: \n" . - "\trm -f *.bchecktest.cc *.bchecktest.cc.class a.out\n\n" . - "bcheck: $bcheckdep\n\n" . - "bcheck-am:\n" . - "\t\@for i in $headers; do \\\n" . - "\t if test \$(srcdir)/\$\$i -nt \$\$i.bchecktest.cc; then \\\n" . - "\t echo \"int main() {return 0;}\" > \$\$i.bchecktest.cc ; \\\n" . - "\t echo \"#include \\\"\$\$i\\\"\" >> \$\$i.bchecktest.cc ; \\\n" . - "\t echo \"\$\$i\"; \\\n" . - "\t if ! "; - $t .= $cxxsuffix eq "KKK" ? - "\$(CXX) \$(DEFS) -I. -I\$(srcdir) -I\$(top_builddir) \$(INCLUDES) \$(AM_CPPFLAGS) \$(CPPFLAGS) \$(CXXFLAGS) \$(KDE_CXXFLAGS) " : - "\$(CXXCOMPILE) "; - $t .= " --dump-class-hierarchy -c \$\$i.bchecktest.cc; then \\\n" . - "\t rm -f \$\$i.bchecktest.cc; exit 1; \\\n" . - "\t fi ; \\\n" . - "\t echo \"\" >> \$\$i.bchecktest.cc.class; \\\n" . - "\t perl \$(top_srcdir)/admin/bcheck.pl \$\$i.bchecktest.cc.class || { rm -f \$\$i.bchecktest.cc; exit 1; }; \\\n" . - "\t rm -f a.out; \\\n" . - "\t fi ; \\\n" . - "\tdone\n"; - appendLines("$t\n"); -} - -sub make_meta_classes () -{ - return if ($kdeopts{"qtonly"}); - - my $cppFile; - my $hFile; - my $moc_class_headers = ""; - foreach $program (@programs) { - my $mocs = ""; - my @progsources = split(/[\034\s]+/, $sources{$program}); - my @depmocs = split(' ', $dependmocs{$program}); - my %shash = (), %mhash = (); - @shash{@progsources} = 1; # we are only interested in the existence - @mhash{@depmocs} = 1; - - print STDOUT "program=$program\n" if ($verbose); - print STDOUT "psources=[".join(' ', keys %shash)."]\n" if ($verbose); - print STDOUT "depmocs=[".join(' ', keys %mhash)."]\n" if ($verbose); - print STDOUT "globalmocs=[".join(' ', keys(%globalmocs))."]\n" if ($verbose); - foreach my $mocFile (keys (%globalmocs)) - { - my ($dir, $hFile, $cppFile) = split ("\035", $globalmocs{$mocFile}, 3); - if (defined ($cppFile)) - { - $mocs .= " $mocFile.moc" if exists $shash{$cppFile}; - } - else - { - # Bah. This is the case, if no C++ file includes the .moc - # file. We make a .moc.cpp file for that. Unfortunately this - # is not included in the %sources hash, but rather is mentioned - # in %dependmocs. If the user wants to use AUTO he can't just - # use an unspecific METAINCLUDES. Instead he must use - # program_METAINCLUDES. Anyway, it's not working real nicely. - # E.g. Its not clear what happens if user specifies two - # METAINCLUDES=AUTO in the same Makefile.am. - $mocs .= " $mocFile.moc.$cxxsuffix" - if exists $mhash{$mocFile.".moc.$cxxsuffix"}; - } - } - if ($mocs) { - print STDOUT "==> mocs=[".$mocs."]\n" if ($verbose); - } - print STDOUT "\n" if $verbose; - } - if ($moc_class_headers) { - appendLines ("$cleantarget-moc-classes:\n\t-rm -f $moc_class_headers\n"); - $target_adds{"$cleantarget-am"} .= "$cleantarget-moc-classes "; - } -} - -#----------------------------------------------------------------------------- - -sub updateMakefile () -{ - return if ($dryrun); - - open (FILEOUT, "> $makefile") - || die "Could not create $makefile: $!\n"; - - $MakefileData =~ s/\034/\\\n/g; # Restore continuation lines - # Append our $progId line, _below_ the "generated by automake" line - # because automake-1.6 relies on the first line to be his own. - my $progIdLine = "\# $progId - " . '$Revision: 1.1 $ '."\n"; - if ( !( $MakefileData =~ s/^(.*generated .*by automake.*\n)/$1$progIdLine/ ) ) { - warn "automake line not found in $makefile\n"; - # Fallback: first line - print FILEOUT $progIdLine; - }; - print FILEOUT $MakefileData; - close FILEOUT; -} - -#----------------------------------------------------------------------------- - -# The given line needs to be removed from the makefile -# Do this by adding the special "removed line" comment at the line start. -sub removeLine ($$) -{ - my ($lookup, $old) = @_; - - $old =~ s/\034/\\\n#>- /g; # Fix continuation lines - $MakefileData =~ s/\n$lookup/\n#>\- $old/; -} - -#----------------------------------------------------------------------------- - -# Replaces the old line with the new line -# old line(s) are retained but tagged as removed. The new line(s) have the -# "added" tag placed before it. -sub substituteLine ($$) -{ - my ($lookup, $new) = @_; - - if ($MakefileData =~ /\n($lookup)/) { - $old = $1; - $old =~ s/\034/\\\n#>\- /g; # Fix continuation lines - my $newCount = ($new =~ tr/\034//) + ($new =~ tr/\n//) + 1; - $new =~ s/\\\n/\034/g; - $MakefileData =~ s/\n$lookup/\n#>- $old\n#>\+ $newCount\n$new/; - } else { - warn "Warning: substitution of \"$lookup\" in $printname failed\n"; - } -} - -#----------------------------------------------------------------------------- - -# Slap new lines on the back of the file. -sub appendLines ($) -{ - my ($new) = @_; - my $copynew = $new; - my $newCount = ($new =~ tr/\034//) + ($new =~ tr/\n//) + 1; - $new =~ s/\\\n/\034/g; # Fix continuation lines - $MakefileData .= "\n#>\+ $newCount\n$new"; -} - -#----------------------------------------------------------------------------- - -# Restore the Makefile.in to the state it was before we fiddled with it -sub restoreMakefile () -{ - $MakefileData =~ s/# $progId[^\n\034]*[\n\034]*//g; - # Restore removed lines - $MakefileData =~ s/([\n\034])#>\- /$1/g; - # Remove added lines - while ($MakefileData =~ /[\n\034]#>\+ ([^\n\034]*)/) - { - my $newCount = $1; - my $removeLines = ""; - while ($newCount--) { - $removeLines .= "[^\n\034]*([\n\034]|)"; - } - $MakefileData =~ s/[\n\034]#>\+.*[\n\034]$removeLines/\n/; - } -} - -#----------------------------------------------------------------------------- - -# find the .kcfg file listed in the .kcfgc file -sub findKcfgFile($) -{ - my ($kcfgf) = @_; - open (KCFGFIN, $kcfgf) || die "Could not open $kcfgf: $!\n"; - seek(KCFGFIN, 0, 2); - my $kcfgfsize = tell(KCFGFIN); - seek(KCFGFIN, 0, 0); - read KCFGFIN, $kcfgfData, $kcfgfsize; - close KCFGFIN; - if(($kcfgfData =~ m/^File=(.*\.kcfg)/gm)) { - $kcfg = $1; - } -} diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/bcheck.pl b/portland/libxdg-vfs/xdg-vfs-kde/admin/bcheck.pl deleted file mode 100644 index cca973e..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/bcheck.pl +++ /dev/null @@ -1,157 +0,0 @@ -#!/usr/bin/perl -w - -use DB_File; -use Fcntl ':flock'; - -if (!defined($ARGV[0])) { - print "usage: requires .class dump as parameter!\n"; - exit; -} - -sub bailout -{ - untie %bcheckdb if(defined(%bcheckdb)); - - if(defined(MYLOCK)) { - flock MYLOCK, LOCK_UN; - close(MYLOCK); - } - - print @_; - exit 5; -} - -sub ask_user -{ - my ($dbkey, $dbchunk) = @_; - - if (defined($ENV{"BCHECK_UPDATE"})) { - $bcheckdb{$dbkey} = $dbchunk; - return; - } - - &bailout("BC problem detected") if (! -t STDIN); - - print "(I)gnore / (Q)uit / (U)pdate: "; - - my $key; - while(defined(read STDIN, $key, 1)) { - $key = lc($key); - - print "got: >$key<\n"; - - return if ($key eq 'i'); - - &bailout("BC problem. aborted") if ($key eq 'q'); - - if ($key eq 'u') { - $bcheckdb{$dbkey} = $dbchunk; - return; - } - print "\n(I)gnore / (Q)uit / (U)pdate: "; - } -} - -sub diff_chunk($$) -{ - my ($oldl, $newl) = @_; - my @old = split /^/m, $oldl; - my @new = split /^/m, $newl; - my $haschanges = 0; - my $max = $#old > $#new ? $#old : $#new; - - die "whoops. key different" if ($old[0] ne $new[0]); - - if ($#old != $#new) { - warn ("Structural difference.\n"); - print @old; - print "-----------------------------------------------\n"; - print @new; - $haschanges = 1; - return $haschanges; - } - - print $old[0]; - - my ($class) = ($old[0] =~ /^(?:Class |Vtable for )(\S+)/); - - my $c = 1; - while ($c < $max) { - my ($o, $n) = ($old[$c], $new[$c]); - chomp $o; - chomp $n; - $c++; - next if ($o eq $n); - - if(defined($class) and $n =~ /^(\d+\s+)\w+(::\S+\s*.*)$/) { - next if ($n eq "$1$class$2"); - } - - $haschanges = 1; - - print "-$o\n+$n\n\n"; - } - - return $haschanges; -} - -local $dblock = $ENV{"HOME"} . "/bcheck.lock"; -my $dbfile = $ENV{"HOME"} . "/bcheck.db"; -my $cdump = $ARGV[0]; - -die "file $cdump is not readable: $!" if (! -f $cdump); - -# make sure the advisory lock exists -open(MYLOCK, ">$dblock"); -print MYLOCK ""; - -flock MYLOCK, LOCK_EX; - -tie %bcheckdb, 'DB_File', $dbfile; - -my $chunk = ""; - -open (IN, "<$cdump") or die "cannot open $cdump: $!"; -while (<IN>) { - - chop; - - s/0x[0-9a-fA-F]+/0x......../g; - s/base size=/size=/g; - s/\(\)\s*$//g; - s/base align=/align=/g; - - $chunk .= $_ . "\n"; - - if(/^\s*$/) { - my @lines = split /^/m, $chunk; - my $key = $lines[0]; - chomp $key; - - if($key !~ /<anonymous struct>/ && - $key !~ /<anonymous union>/) { - if(defined($bcheckdb{$key})) { - my $dbversion = $bcheckdb{$key}; - - if($dbversion ne $chunk) { - &ask_user($key, $chunk) if(&diff_chunk($dbversion, $chunk)); - } - } - else { - $bcheckdb{$key} = $chunk; - print "NEW: $key\n"; - } - } - - $chunk = ""; - next; - } - -} -close(IN); - -untie %bcheckdb; -flock MYLOCK, LOCK_UN; -close(MYLOCK); - -exit 0; diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/compile b/portland/libxdg-vfs/xdg-vfs-kde/admin/compile deleted file mode 100755 index 1b1d232..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/compile +++ /dev/null @@ -1,142 +0,0 @@ -#! /bin/sh -# Wrapper for compilers which do not understand `-c -o'. - -scriptversion=2005-05-14.22 - -# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc. -# Written by Tom Tromey <tromey@cygnus.com>. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# This file is maintained in Automake, please report -# bugs to <bug-automake@gnu.org> or send patches to -# <automake-patches@gnu.org>. - -case $1 in - '') - echo "$0: No command. Try \`$0 --help' for more information." 1>&2 - exit 1; - ;; - -h | --h*) - cat <<\EOF -Usage: compile [--help] [--version] PROGRAM [ARGS] - -Wrapper for compilers which do not understand `-c -o'. -Remove `-o dest.o' from ARGS, run PROGRAM with the remaining -arguments, and rename the output as expected. - -If you are trying to build a whole package this is not the -right script to run: please start by reading the file `INSTALL'. - -Report bugs to <bug-automake@gnu.org>. -EOF - exit $? - ;; - -v | --v*) - echo "compile $scriptversion" - exit $? - ;; -esac - -ofile= -cfile= -eat= - -for arg -do - if test -n "$eat"; then - eat= - else - case $1 in - -o) - # configure might choose to run compile as `compile cc -o foo foo.c'. - # So we strip `-o arg' only if arg is an object. - eat=1 - case $2 in - *.o | *.obj) - ofile=$2 - ;; - *) - set x "$@" -o "$2" - shift - ;; - esac - ;; - *.c) - cfile=$1 - set x "$@" "$1" - shift - ;; - *) - set x "$@" "$1" - shift - ;; - esac - fi - shift -done - -if test -z "$ofile" || test -z "$cfile"; then - # If no `-o' option was seen then we might have been invoked from a - # pattern rule where we don't need one. That is ok -- this is a - # normal compilation that the losing compiler can handle. If no - # `.c' file was seen then we are probably linking. That is also - # ok. - exec "$@" -fi - -# Name of file we expect compiler to create. -cofile=`echo "$cfile" | sed -e 's|^.*/||' -e 's/\.c$/.o/'` - -# Create the lock directory. -# Note: use `[/.-]' here to ensure that we don't use the same name -# that we are using for the .o file. Also, base the name on the expected -# object file name, since that is what matters with a parallel build. -lockdir=`echo "$cofile" | sed -e 's|[/.-]|_|g'`.d -while true; do - if mkdir "$lockdir" >/dev/null 2>&1; then - break - fi - sleep 1 -done -# FIXME: race condition here if user kills between mkdir and trap. -trap "rmdir '$lockdir'; exit 1" 1 2 15 - -# Run the compile. -"$@" -ret=$? - -if test -f "$cofile"; then - mv "$cofile" "$ofile" -elif test -f "${cofile}bj"; then - mv "${cofile}bj" "$ofile" -fi - -rmdir "$lockdir" -exit $ret - -# Local Variables: -# mode: shell-script -# sh-indentation: 2 -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" -# End: diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/conf.change.pl b/portland/libxdg-vfs/xdg-vfs-kde/admin/conf.change.pl deleted file mode 100644 index 129d759..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/conf.change.pl +++ /dev/null @@ -1,191 +0,0 @@ -#!/usr/bin/env perl - -# this script patches a config.status file, to use our own perl script -# in the main loop -# we do it this way to circumvent hacking (and thereby including) -# autoconf function (which are GPL) into our LGPL acinclude.m4.in -# written by Michael Matz <matz@kde.org> -# adapted by Dirk Mueller <mueller@kde.org> -# -# This file is free software; you can redistribute it and/or -# modify it under the terms of the GNU Library General Public -# License as published by the Free Software Foundation; either -# version 2 of the License, or (at your option) any later version. - -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Library General Public License for more details. - -# You should have received a copy of the GNU Library General Public License -# along with this library; see the file COPYING.LIB. If not, write to -# the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -# Boston, MA 02110-1301, USA. - -# we have to change two places -# 1. the splitting of the substitutions into chunks of 90 (or even 48 in -# later autoconf's -# 2. the big main loop which patches all Makefile.in's - -use strict; -use File::Basename; - -my $ac_aux_dir = dirname($0); -my ($flag); -my $ac_version = 0; -my $vpath_seen = 0; -$flag = 0; - -while (<>) { -# usage of $flag: 0 -- we have seen nothing yet -# 1 -- we are in (1) -# 2 -- we have ended (1) -# 3 -- we are in (2) -# 4 -- we ended (2) - - if ($flag == 4) { - print; - } elsif ($flag == 0) { -# 1. begins with (including): "ac_max_sed_\S+\s*=\s*[0-9]+..." -# ends with (excluding) "CONFIG_FILE=..." -# in later autoconf (2.14.1) there is no CONFIG_FILES= line, -# but instead the (2) directly follow (1) - if (/^\s*ac_max_sed_([a-z]+).*=\s*([0-9]+)/ ) { - $flag = 1; - if ($1 eq 'lines') { - # lets hope its different with 2141, - # wasn't able to verify that - if ($2 eq '48') { - $ac_version = 250; - } - else { - $ac_version = 2141; - } - } elsif ($1 eq 'cmds') { - $ac_version = 213; - } - # hmm, we don't know the autoconf version, but we try anyway - } else { - print; - } - } elsif ($flag == 1) { - if (/^\s*CONFIG_FILES=/ && ($ac_version != 250)) { - print; - $flag = 2; - } elsif (/^\s*for\s+ac_file\s+in\s+.*CONFIG_FILES/ ) { - $flag = 3; - } - } elsif ($flag == 2) { -# 2. begins with: "for ac_file in.*CONFIG_FILES" (the next 'for' after (1)) -# end with: "rm -f conftest.s\*" -# on autoconf 250, it ends with '# CONFIG_HEADER section' -# -# gg: if a post-processing commands section is found first, -# stop there and insert a new loop to honor the case/esac. -# (pattern: /^\s+#\sRun the commands associated with the file./) - - if (/^\s*for\s+ac_file\s+in\s+.*CONFIG_FILES/ ) { - $flag = 3; - } else { - print; - } - } elsif ($flag == 3) { - if (/^\s*rm\s+-f\s+conftest/ ) { - $flag = 4; - &insert_main_loop(); - } elsif (/^\s*rm\s+-f\s+.*ac_cs_root/ ) { - $flag = 4; - &insert_main_loop(); - #die "hhhhhhh"; - if ($ac_version != 2141) { - print STDERR "hmm, don't know autoconf version\n"; - } - } elsif (/^\#\s*CONFIG_(HEADER|COMMANDS) section.*|^\s+#\s(Run) the commands associated/) { - $flag = 4; - my $commands = defined $2; - &insert_main_loop(); - $commands && insert_command_loop(); - if($ac_version != 250) { - print STDERR "hmm, something went wrong :-(\n"; - } - } elsif (/VPATH/ ) { - $vpath_seen = 1; - } - } -} - -die "wrong input (flag != 4)" unless $flag == 4; -print STDERR "hmm, don't know autoconf version\n" unless $ac_version; - -sub insert_main_loop { - - if ($ac_version == 250) { - &insert_main_loop_250(); - } - else { - &insert_main_loop_213(); - } -} - -sub insert_main_loop_250 { - - print <<EOF; - #echo Doing the fast build of Makefiles -- autoconf $ac_version -EOF - if ($vpath_seen) { - print <<EOF; - # VPATH subst was seen in original config.status main loop - echo '/^[ ]*VPATH[ ]*=[^:]*\$/d' >>\$tmp/subs.sed -EOF - } - print <<EOF; - rm -f \$tmp/subs.files - for ac_file in .. \$CONFIG_FILES ; do - if test "x\$ac_file" != x..; then - echo \$ac_file >> \$tmp/subs.files - fi - done - if test -f \$tmp/subs.files ; then - perl $ac_aux_dir/config.pl "\$tmp/subs.sed" "\$tmp/subs.files" "\$srcdir" "\$INSTALL" - fi - rm -f \$tmp/subs.files - -fi -EOF - return; -} - -sub insert_main_loop_213 { - print <<EOF; -#echo Doing the fast build of Makefiles -- autoconf $ac_version -if test "x\$ac_cs_root" = "x" ; then - ac_cs_root=conftest -fi -EOF - if ($vpath_seen) { - print <<EOF; -# VPATH subst was seen in original config.status main loop -echo '/^[ ]*VPATH[ ]*=[^:]*\$/d' >> \$ac_cs_root.subs -EOF - } - print <<EOF; -rm -f \$ac_cs_root.sacfiles -for ac_file in .. \$CONFIG_FILES ; do - if test "x\$ac_file" != x..; then - echo \$ac_file >> \$ac_cs_root.sacfiles - fi -done -if test -f \$ac_cs_root.sacfiles ; then - perl $ac_aux_dir/config.pl "\$ac_cs_root.subs" "\$ac_cs_root.sacfiles" "\$ac_given_srcdir" "\$ac_given_INSTALL" -fi -rm -f \$ac_cs_root.s* - -EOF - return; -} - -sub insert_command_loop { - print <<EOF; - for ac_file in .. \$CONFIG_FILES ; do -EOF -} diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/config.guess b/portland/libxdg-vfs/xdg-vfs-kde/admin/config.guess deleted file mode 100755 index 4f0f63f..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/config.guess +++ /dev/null @@ -1,1464 +0,0 @@ -#! /bin/sh -# Attempt to guess a canonical system name. -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. - -timestamp='2005-06-30' - -# This file is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA -# 02110-1301, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - - -# Originally written by Per Bothner <per@bothner.com>. -# Please send patches to <config-patches@gnu.org>. Submit a context -# diff and a properly formatted ChangeLog entry. -# -# This script attempts to guess a canonical system name similar to -# config.sub. If it succeeds, it prints the system name on stdout, and -# exits with 0. Otherwise, it exits with 1. -# -# The plan is that this can be called by configure scripts if you -# don't specify an explicit build system type. - -me=`echo "$0" | sed -e 's,.*/,,'` - -usage="\ -Usage: $0 [OPTION] - -Output the configuration name of the system \`$me' is run on. - -Operation modes: - -h, --help print this help, then exit - -t, --time-stamp print date of last modification, then exit - -v, --version print version number, then exit - -Report bugs and patches to <config-patches@gnu.org>." - -version="\ -GNU config.guess ($timestamp) - -Originally written by Per Bothner. -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 -Free Software Foundation, Inc. - -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." - -help=" -Try \`$me --help' for more information." - -# Parse command line -while test $# -gt 0 ; do - case $1 in - --time-stamp | --time* | -t ) - echo "$timestamp" ; exit ;; - --version | -v ) - echo "$version" ; exit ;; - --help | --h* | -h ) - echo "$usage"; exit ;; - -- ) # Stop option processing - shift; break ;; - - ) # Use stdin as input. - break ;; - -* ) - echo "$me: invalid option $1$help" >&2 - exit 1 ;; - * ) - break ;; - esac -done - -if test $# != 0; then - echo "$me: too many arguments$help" >&2 - exit 1 -fi - -trap 'exit 1' 1 2 15 - -# CC_FOR_BUILD -- compiler used by this script. Note that the use of a -# compiler to aid in system detection is discouraged as it requires -# temporary files to be created and, as you can see below, it is a -# headache to deal with in a portable fashion. - -# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still -# use `HOST_CC' if defined, but it is deprecated. - -# Portable tmp directory creation inspired by the Autoconf team. - -set_cc_for_build=' -trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; -trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; -: ${TMPDIR=/tmp} ; - { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || - { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || - { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || - { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; -dummy=$tmp/dummy ; -tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; -case $CC_FOR_BUILD,$HOST_CC,$CC in - ,,) echo "int x;" > $dummy.c ; - for c in cc gcc c89 c99 ; do - if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then - CC_FOR_BUILD="$c"; break ; - fi ; - done ; - if test x"$CC_FOR_BUILD" = x ; then - CC_FOR_BUILD=no_compiler_found ; - fi - ;; - ,,*) CC_FOR_BUILD=$CC ;; - ,*,*) CC_FOR_BUILD=$HOST_CC ;; -esac ;' - -# This is needed to find uname on a Pyramid OSx when run in the BSD universe. -# (ghazi@noc.rutgers.edu 1994-08-24) -if (test -f /.attbin/uname) >/dev/null 2>&1 ; then - PATH=$PATH:/.attbin ; export PATH -fi - -UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown -UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown -UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown -UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown - -# Note: order is significant - the case branches are not exclusive. - -case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in - *:NetBSD:*:*) - # NetBSD (nbsd) targets should (where applicable) match one or - # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, - # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently - # switched to ELF, *-*-netbsd* would select the old - # object file format. This provides both forward - # compatibility and a consistent mechanism for selecting the - # object file format. - # - # Note: NetBSD doesn't particularly care about the vendor - # portion of the name. We always set it to "unknown". - sysctl="sysctl -n hw.machine_arch" - UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ - /usr/sbin/$sysctl 2>/dev/null || echo unknown)` - case "${UNAME_MACHINE_ARCH}" in - armeb) machine=armeb-unknown ;; - arm*) machine=arm-unknown ;; - sh3el) machine=shl-unknown ;; - sh3eb) machine=sh-unknown ;; - *) machine=${UNAME_MACHINE_ARCH}-unknown ;; - esac - # The Operating System including object format, if it has switched - # to ELF recently, or will in the future. - case "${UNAME_MACHINE_ARCH}" in - arm*|i386|m68k|ns32k|sh3*|sparc|vax) - eval $set_cc_for_build - if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ - | grep __ELF__ >/dev/null - then - # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). - # Return netbsd for either. FIX? - os=netbsd - else - os=netbsdelf - fi - ;; - *) - os=netbsd - ;; - esac - # The OS release - # Debian GNU/NetBSD machines have a different userland, and - # thus, need a distinct triplet. However, they do not need - # kernel version information, so it can be replaced with a - # suitable tag, in the style of linux-gnu. - case "${UNAME_VERSION}" in - Debian*) - release='-gnu' - ;; - *) - release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` - ;; - esac - # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: - # contains redundant information, the shorter form: - # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. - echo "${machine}-${os}${release}" - exit ;; - *:OpenBSD:*:*) - UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` - echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} - exit ;; - *:ekkoBSD:*:*) - echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} - exit ;; - macppc:MirBSD:*:*) - echo powerppc-unknown-mirbsd${UNAME_RELEASE} - exit ;; - *:MirBSD:*:*) - echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} - exit ;; - alpha:OSF1:*:*) - case $UNAME_RELEASE in - *4.0) - UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` - ;; - *5.*) - UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` - ;; - esac - # According to Compaq, /usr/sbin/psrinfo has been available on - # OSF/1 and Tru64 systems produced since 1995. I hope that - # covers most systems running today. This code pipes the CPU - # types through head -n 1, so we only detect the type of CPU 0. - ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` - case "$ALPHA_CPU_TYPE" in - "EV4 (21064)") - UNAME_MACHINE="alpha" ;; - "EV4.5 (21064)") - UNAME_MACHINE="alpha" ;; - "LCA4 (21066/21068)") - UNAME_MACHINE="alpha" ;; - "EV5 (21164)") - UNAME_MACHINE="alphaev5" ;; - "EV5.6 (21164A)") - UNAME_MACHINE="alphaev56" ;; - "EV5.6 (21164PC)") - UNAME_MACHINE="alphapca56" ;; - "EV5.7 (21164PC)") - UNAME_MACHINE="alphapca57" ;; - "EV6 (21264)") - UNAME_MACHINE="alphaev6" ;; - "EV6.7 (21264A)") - UNAME_MACHINE="alphaev67" ;; - "EV6.8CB (21264C)") - UNAME_MACHINE="alphaev68" ;; - "EV6.8AL (21264B)") - UNAME_MACHINE="alphaev68" ;; - "EV6.8CX (21264D)") - UNAME_MACHINE="alphaev68" ;; - "EV6.9A (21264/EV69A)") - UNAME_MACHINE="alphaev69" ;; - "EV7 (21364)") - UNAME_MACHINE="alphaev7" ;; - "EV7.9 (21364A)") - UNAME_MACHINE="alphaev79" ;; - esac - # A Pn.n version is a patched version. - # A Vn.n version is a released version. - # A Tn.n version is a released field test version. - # A Xn.n version is an unreleased experimental baselevel. - # 1.2 uses "1.2" for uname -r. - echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` - exit ;; - Alpha\ *:Windows_NT*:*) - # How do we know it's Interix rather than the generic POSIX subsystem? - # Should we change UNAME_MACHINE based on the output of uname instead - # of the specific Alpha model? - echo alpha-pc-interix - exit ;; - 21064:Windows_NT:50:3) - echo alpha-dec-winnt3.5 - exit ;; - Amiga*:UNIX_System_V:4.0:*) - echo m68k-unknown-sysv4 - exit ;; - *:[Aa]miga[Oo][Ss]:*:*) - echo ${UNAME_MACHINE}-unknown-amigaos - exit ;; - *:[Mm]orph[Oo][Ss]:*:*) - echo ${UNAME_MACHINE}-unknown-morphos - exit ;; - *:OS/390:*:*) - echo i370-ibm-openedition - exit ;; - *:z/VM:*:*) - echo s390-ibm-zvmoe - exit ;; - *:OS400:*:*) - echo powerpc-ibm-os400 - exit ;; - arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) - echo arm-acorn-riscix${UNAME_RELEASE} - exit ;; - arm:riscos:*:*|arm:RISCOS:*:*) - echo arm-unknown-riscos - exit ;; - SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) - echo hppa1.1-hitachi-hiuxmpp - exit ;; - Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) - # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. - if test "`(/bin/universe) 2>/dev/null`" = att ; then - echo pyramid-pyramid-sysv3 - else - echo pyramid-pyramid-bsd - fi - exit ;; - NILE*:*:*:dcosx) - echo pyramid-pyramid-svr4 - exit ;; - DRS?6000:unix:4.0:6*) - echo sparc-icl-nx6 - exit ;; - DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) - case `/usr/bin/uname -p` in - sparc) echo sparc-icl-nx7; exit ;; - esac ;; - sun4H:SunOS:5.*:*) - echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit ;; - sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) - echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit ;; - i86pc:SunOS:5.*:*) - echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit ;; - sun4*:SunOS:6*:*) - # According to config.sub, this is the proper way to canonicalize - # SunOS6. Hard to guess exactly what SunOS6 will be like, but - # it's likely to be more like Solaris than SunOS4. - echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit ;; - sun4*:SunOS:*:*) - case "`/usr/bin/arch -k`" in - Series*|S4*) - UNAME_RELEASE=`uname -v` - ;; - esac - # Japanese Language versions have a version number like `4.1.3-JL'. - echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` - exit ;; - sun3*:SunOS:*:*) - echo m68k-sun-sunos${UNAME_RELEASE} - exit ;; - sun*:*:4.2BSD:*) - UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` - test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 - case "`/bin/arch`" in - sun3) - echo m68k-sun-sunos${UNAME_RELEASE} - ;; - sun4) - echo sparc-sun-sunos${UNAME_RELEASE} - ;; - esac - exit ;; - aushp:SunOS:*:*) - echo sparc-auspex-sunos${UNAME_RELEASE} - exit ;; - # The situation for MiNT is a little confusing. The machine name - # can be virtually everything (everything which is not - # "atarist" or "atariste" at least should have a processor - # > m68000). The system name ranges from "MiNT" over "FreeMiNT" - # to the lowercase version "mint" (or "freemint"). Finally - # the system name "TOS" denotes a system which is actually not - # MiNT. But MiNT is downward compatible to TOS, so this should - # be no problem. - atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} - exit ;; - atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} - exit ;; - *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} - exit ;; - milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) - echo m68k-milan-mint${UNAME_RELEASE} - exit ;; - hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) - echo m68k-hades-mint${UNAME_RELEASE} - exit ;; - *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) - echo m68k-unknown-mint${UNAME_RELEASE} - exit ;; - m68k:machten:*:*) - echo m68k-apple-machten${UNAME_RELEASE} - exit ;; - powerpc:machten:*:*) - echo powerpc-apple-machten${UNAME_RELEASE} - exit ;; - RISC*:Mach:*:*) - echo mips-dec-mach_bsd4.3 - exit ;; - RISC*:ULTRIX:*:*) - echo mips-dec-ultrix${UNAME_RELEASE} - exit ;; - VAX*:ULTRIX*:*:*) - echo vax-dec-ultrix${UNAME_RELEASE} - exit ;; - 2020:CLIX:*:* | 2430:CLIX:*:*) - echo clipper-intergraph-clix${UNAME_RELEASE} - exit ;; - mips:*:*:UMIPS | mips:*:*:RISCos) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c -#ifdef __cplusplus -#include <stdio.h> /* for printf() prototype */ - int main (int argc, char *argv[]) { -#else - int main (argc, argv) int argc; char *argv[]; { -#endif - #if defined (host_mips) && defined (MIPSEB) - #if defined (SYSTYPE_SYSV) - printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); - #endif - #if defined (SYSTYPE_SVR4) - printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); - #endif - #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) - printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); - #endif - #endif - exit (-1); - } -EOF - $CC_FOR_BUILD -o $dummy $dummy.c && - dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && - SYSTEM_NAME=`$dummy $dummyarg` && - { echo "$SYSTEM_NAME"; exit; } - echo mips-mips-riscos${UNAME_RELEASE} - exit ;; - Motorola:PowerMAX_OS:*:*) - echo powerpc-motorola-powermax - exit ;; - Motorola:*:4.3:PL8-*) - echo powerpc-harris-powermax - exit ;; - Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) - echo powerpc-harris-powermax - exit ;; - Night_Hawk:Power_UNIX:*:*) - echo powerpc-harris-powerunix - exit ;; - m88k:CX/UX:7*:*) - echo m88k-harris-cxux7 - exit ;; - m88k:*:4*:R4*) - echo m88k-motorola-sysv4 - exit ;; - m88k:*:3*:R3*) - echo m88k-motorola-sysv3 - exit ;; - AViiON:dgux:*:*) - # DG/UX returns AViiON for all architectures - UNAME_PROCESSOR=`/usr/bin/uname -p` - if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] - then - if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ - [ ${TARGET_BINARY_INTERFACE}x = x ] - then - echo m88k-dg-dgux${UNAME_RELEASE} - else - echo m88k-dg-dguxbcs${UNAME_RELEASE} - fi - else - echo i586-dg-dgux${UNAME_RELEASE} - fi - exit ;; - M88*:DolphinOS:*:*) # DolphinOS (SVR3) - echo m88k-dolphin-sysv3 - exit ;; - M88*:*:R3*:*) - # Delta 88k system running SVR3 - echo m88k-motorola-sysv3 - exit ;; - XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) - echo m88k-tektronix-sysv3 - exit ;; - Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) - echo m68k-tektronix-bsd - exit ;; - *:IRIX*:*:*) - echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` - exit ;; - ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. - echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id - exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' - i*86:AIX:*:*) - echo i386-ibm-aix - exit ;; - ia64:AIX:*:*) - if [ -x /usr/bin/oslevel ] ; then - IBM_REV=`/usr/bin/oslevel` - else - IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} - fi - echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} - exit ;; - *:AIX:2:3) - if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #include <sys/systemcfg.h> - - main() - { - if (!__power_pc()) - exit(1); - puts("powerpc-ibm-aix3.2.5"); - exit(0); - } -EOF - if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` - then - echo "$SYSTEM_NAME" - else - echo rs6000-ibm-aix3.2.5 - fi - elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then - echo rs6000-ibm-aix3.2.4 - else - echo rs6000-ibm-aix3.2 - fi - exit ;; - *:AIX:*:[45]) - IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` - if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then - IBM_ARCH=rs6000 - else - IBM_ARCH=powerpc - fi - if [ -x /usr/bin/oslevel ] ; then - IBM_REV=`/usr/bin/oslevel` - else - IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} - fi - echo ${IBM_ARCH}-ibm-aix${IBM_REV} - exit ;; - *:AIX:*:*) - echo rs6000-ibm-aix - exit ;; - ibmrt:4.4BSD:*|romp-ibm:BSD:*) - echo romp-ibm-bsd4.4 - exit ;; - ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and - echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to - exit ;; # report: romp-ibm BSD 4.3 - *:BOSX:*:*) - echo rs6000-bull-bosx - exit ;; - DPX/2?00:B.O.S.:*:*) - echo m68k-bull-sysv3 - exit ;; - 9000/[34]??:4.3bsd:1.*:*) - echo m68k-hp-bsd - exit ;; - hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) - echo m68k-hp-bsd4.4 - exit ;; - 9000/[34678]??:HP-UX:*:*) - HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` - case "${UNAME_MACHINE}" in - 9000/31? ) HP_ARCH=m68000 ;; - 9000/[34]?? ) HP_ARCH=m68k ;; - 9000/[678][0-9][0-9]) - if [ -x /usr/bin/getconf ]; then - sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` - sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` - case "${sc_cpu_version}" in - 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 - 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 - 532) # CPU_PA_RISC2_0 - case "${sc_kernel_bits}" in - 32) HP_ARCH="hppa2.0n" ;; - 64) HP_ARCH="hppa2.0w" ;; - '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 - esac ;; - esac - fi - if [ "${HP_ARCH}" = "" ]; then - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - - #define _HPUX_SOURCE - #include <stdlib.h> - #include <unistd.h> - - int main () - { - #if defined(_SC_KERNEL_BITS) - long bits = sysconf(_SC_KERNEL_BITS); - #endif - long cpu = sysconf (_SC_CPU_VERSION); - - switch (cpu) - { - case CPU_PA_RISC1_0: puts ("hppa1.0"); break; - case CPU_PA_RISC1_1: puts ("hppa1.1"); break; - case CPU_PA_RISC2_0: - #if defined(_SC_KERNEL_BITS) - switch (bits) - { - case 64: puts ("hppa2.0w"); break; - case 32: puts ("hppa2.0n"); break; - default: puts ("hppa2.0"); break; - } break; - #else /* !defined(_SC_KERNEL_BITS) */ - puts ("hppa2.0"); break; - #endif - default: puts ("hppa1.0"); break; - } - exit (0); - } -EOF - (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` - test -z "$HP_ARCH" && HP_ARCH=hppa - fi ;; - esac - if [ ${HP_ARCH} = "hppa2.0w" ] - then - # avoid double evaluation of $set_cc_for_build - test -n "$CC_FOR_BUILD" || eval $set_cc_for_build - - # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating - # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler - # generating 64-bit code. GNU and HP use different nomenclature: - # - # $ CC_FOR_BUILD=cc ./config.guess - # => hppa2.0w-hp-hpux11.23 - # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess - # => hppa64-hp-hpux11.23 - - if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | - grep __LP64__ >/dev/null - then - HP_ARCH="hppa2.0w" - else - HP_ARCH="hppa64" - fi - fi - echo ${HP_ARCH}-hp-hpux${HPUX_REV} - exit ;; - ia64:HP-UX:*:*) - HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` - echo ia64-hp-hpux${HPUX_REV} - exit ;; - 3050*:HI-UX:*:*) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #include <unistd.h> - int - main () - { - long cpu = sysconf (_SC_CPU_VERSION); - /* The order matters, because CPU_IS_HP_MC68K erroneously returns - true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct - results, however. */ - if (CPU_IS_PA_RISC (cpu)) - { - switch (cpu) - { - case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; - case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; - case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; - default: puts ("hppa-hitachi-hiuxwe2"); break; - } - } - else if (CPU_IS_HP_MC68K (cpu)) - puts ("m68k-hitachi-hiuxwe2"); - else puts ("unknown-hitachi-hiuxwe2"); - exit (0); - } -EOF - $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && - { echo "$SYSTEM_NAME"; exit; } - echo unknown-hitachi-hiuxwe2 - exit ;; - 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) - echo hppa1.1-hp-bsd - exit ;; - 9000/8??:4.3bsd:*:*) - echo hppa1.0-hp-bsd - exit ;; - *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) - echo hppa1.0-hp-mpeix - exit ;; - hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) - echo hppa1.1-hp-osf - exit ;; - hp8??:OSF1:*:*) - echo hppa1.0-hp-osf - exit ;; - i*86:OSF1:*:*) - if [ -x /usr/sbin/sysversion ] ; then - echo ${UNAME_MACHINE}-unknown-osf1mk - else - echo ${UNAME_MACHINE}-unknown-osf1 - fi - exit ;; - parisc*:Lites*:*:*) - echo hppa1.1-hp-lites - exit ;; - C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) - echo c1-convex-bsd - exit ;; - C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) - if getsysinfo -f scalar_acc - then echo c32-convex-bsd - else echo c2-convex-bsd - fi - exit ;; - C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) - echo c34-convex-bsd - exit ;; - C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) - echo c38-convex-bsd - exit ;; - C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) - echo c4-convex-bsd - exit ;; - CRAY*Y-MP:*:*:*) - echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit ;; - CRAY*[A-Z]90:*:*:*) - echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ - | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ - -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ - -e 's/\.[^.]*$/.X/' - exit ;; - CRAY*TS:*:*:*) - echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit ;; - CRAY*T3E:*:*:*) - echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit ;; - CRAY*SV1:*:*:*) - echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit ;; - *:UNICOS/mp:*:*) - echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit ;; - F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) - FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` - FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` - FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` - echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" - exit ;; - 5000:UNIX_System_V:4.*:*) - FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` - FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` - echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" - exit ;; - i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) - echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} - exit ;; - sparc*:BSD/OS:*:*) - echo sparc-unknown-bsdi${UNAME_RELEASE} - exit ;; - *:BSD/OS:*:*) - echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} - exit ;; - *:FreeBSD:*:*) - echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` - exit ;; - i*:CYGWIN*:*) - echo ${UNAME_MACHINE}-pc-cygwin - exit ;; - i*:MINGW*:*) - echo ${UNAME_MACHINE}-pc-mingw32 - exit ;; - i*:windows32*:*) - # uname -m includes "-pc" on this system. - echo ${UNAME_MACHINE}-mingw32 - exit ;; - i*:PW*:*) - echo ${UNAME_MACHINE}-pc-pw32 - exit ;; - x86:Interix*:[34]*) - echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//' - exit ;; - [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) - echo i${UNAME_MACHINE}-pc-mks - exit ;; - i*:Windows_NT*:* | Pentium*:Windows_NT*:*) - # How do we know it's Interix rather than the generic POSIX subsystem? - # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we - # UNAME_MACHINE based on the output of uname instead of i386? - echo i586-pc-interix - exit ;; - i*:UWIN*:*) - echo ${UNAME_MACHINE}-pc-uwin - exit ;; - amd64:CYGWIN*:*:*) - echo x86_64-unknown-cygwin - exit ;; - p*:CYGWIN*:*) - echo powerpcle-unknown-cygwin - exit ;; - prep*:SunOS:5.*:*) - echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit ;; - *:GNU:*:*) - # the GNU system - echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` - exit ;; - *:GNU/*:*:*) - # other systems with GNU libc and userland - echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu - exit ;; - i*86:Minix:*:*) - echo ${UNAME_MACHINE}-pc-minix - exit ;; - arm*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - cris:Linux:*:*) - echo cris-axis-linux-gnu - exit ;; - crisv32:Linux:*:*) - echo crisv32-axis-linux-gnu - exit ;; - frv:Linux:*:*) - echo frv-unknown-linux-gnu - exit ;; - ia64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - m32r*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - m68*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - mips:Linux:*:*) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #undef CPU - #undef mips - #undef mipsel - #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) - CPU=mipsel - #else - #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) - CPU=mips - #else - CPU= - #endif - #endif -EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` - test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } - ;; - mips64:Linux:*:*) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #undef CPU - #undef mips64 - #undef mips64el - #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) - CPU=mips64el - #else - #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) - CPU=mips64 - #else - CPU= - #endif - #endif -EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` - test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } - ;; - ppc:Linux:*:*) - echo powerpc-unknown-linux-gnu - exit ;; - ppc64:Linux:*:*) - echo powerpc64-unknown-linux-gnu - exit ;; - alpha:Linux:*:*) - case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in - EV5) UNAME_MACHINE=alphaev5 ;; - EV56) UNAME_MACHINE=alphaev56 ;; - PCA56) UNAME_MACHINE=alphapca56 ;; - PCA57) UNAME_MACHINE=alphapca56 ;; - EV6) UNAME_MACHINE=alphaev6 ;; - EV67) UNAME_MACHINE=alphaev67 ;; - EV68*) UNAME_MACHINE=alphaev68 ;; - esac - objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null - if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi - echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} - exit ;; - parisc:Linux:*:* | hppa:Linux:*:*) - # Look for CPU level - case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in - PA7*) echo hppa1.1-unknown-linux-gnu ;; - PA8*) echo hppa2.0-unknown-linux-gnu ;; - *) echo hppa-unknown-linux-gnu ;; - esac - exit ;; - parisc64:Linux:*:* | hppa64:Linux:*:*) - echo hppa64-unknown-linux-gnu - exit ;; - s390:Linux:*:* | s390x:Linux:*:*) - echo ${UNAME_MACHINE}-ibm-linux - exit ;; - sh64*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - sh*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - sparc:Linux:*:* | sparc64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit ;; - x86_64:Linux:*:*) - echo x86_64-unknown-linux-gnu - exit ;; - i*86:Linux:*:*) - # The BFD linker knows what the default object file format is, so - # first see if it will tell us. cd to the root directory to prevent - # problems with other programs or directories called `ld' in the path. - # Set LC_ALL=C to ensure ld outputs messages in English. - ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ - | sed -ne '/supported targets:/!d - s/[ ][ ]*/ /g - s/.*supported targets: *// - s/ .*// - p'` - case "$ld_supported_targets" in - elf32-i386) - TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" - ;; - a.out-i386-linux) - echo "${UNAME_MACHINE}-pc-linux-gnuaout" - exit ;; - coff-i386) - echo "${UNAME_MACHINE}-pc-linux-gnucoff" - exit ;; - "") - # Either a pre-BFD a.out linker (linux-gnuoldld) or - # one that does not give us useful --help. - echo "${UNAME_MACHINE}-pc-linux-gnuoldld" - exit ;; - esac - # Determine whether the default compiler is a.out or elf - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #include <features.h> - #ifdef __ELF__ - # ifdef __GLIBC__ - # if __GLIBC__ >= 2 - LIBC=gnu - # else - LIBC=gnulibc1 - # endif - # else - LIBC=gnulibc1 - # endif - #else - #ifdef __INTEL_COMPILER - LIBC=gnu - #else - LIBC=gnuaout - #endif - #endif - #ifdef __dietlibc__ - LIBC=dietlibc - #endif -EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=` - test x"${LIBC}" != x && { - echo "${UNAME_MACHINE}-pc-linux-${LIBC}" - exit - } - test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; } - ;; - i*86:DYNIX/ptx:4*:*) - # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. - # earlier versions are messed up and put the nodename in both - # sysname and nodename. - echo i386-sequent-sysv4 - exit ;; - i*86:UNIX_SV:4.2MP:2.*) - # Unixware is an offshoot of SVR4, but it has its own version - # number series starting with 2... - # I am not positive that other SVR4 systems won't match this, - # I just have to hope. -- rms. - # Use sysv4.2uw... so that sysv4* matches it. - echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} - exit ;; - i*86:OS/2:*:*) - # If we were able to find `uname', then EMX Unix compatibility - # is probably installed. - echo ${UNAME_MACHINE}-pc-os2-emx - exit ;; - i*86:XTS-300:*:STOP) - echo ${UNAME_MACHINE}-unknown-stop - exit ;; - i*86:atheos:*:*) - echo ${UNAME_MACHINE}-unknown-atheos - exit ;; - i*86:syllable:*:*) - echo ${UNAME_MACHINE}-pc-syllable - exit ;; - i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) - echo i386-unknown-lynxos${UNAME_RELEASE} - exit ;; - i*86:*DOS:*:*) - echo ${UNAME_MACHINE}-pc-msdosdjgpp - exit ;; - i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) - UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` - if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then - echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} - else - echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} - fi - exit ;; - i*86:*:5:[678]*) - # UnixWare 7.x, OpenUNIX and OpenServer 6. - case `/bin/uname -X | grep "^Machine"` in - *486*) UNAME_MACHINE=i486 ;; - *Pentium) UNAME_MACHINE=i586 ;; - *Pent*|*Celeron) UNAME_MACHINE=i686 ;; - esac - echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} - exit ;; - i*86:*:3.2:*) - if test -f /usr/options/cb.name; then - UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` - echo ${UNAME_MACHINE}-pc-isc$UNAME_REL - elif /bin/uname -X 2>/dev/null >/dev/null ; then - UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` - (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 - (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ - && UNAME_MACHINE=i586 - (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ - && UNAME_MACHINE=i686 - (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ - && UNAME_MACHINE=i686 - echo ${UNAME_MACHINE}-pc-sco$UNAME_REL - else - echo ${UNAME_MACHINE}-pc-sysv32 - fi - exit ;; - pc:*:*:*) - # Left here for compatibility: - # uname -m prints for DJGPP always 'pc', but it prints nothing about - # the processor, so we play safe by assuming i386. - echo i386-pc-msdosdjgpp - exit ;; - Intel:Mach:3*:*) - echo i386-pc-mach3 - exit ;; - paragon:*:*:*) - echo i860-intel-osf1 - exit ;; - i860:*:4.*:*) # i860-SVR4 - if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then - echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 - else # Add other i860-SVR4 vendors below as they are discovered. - echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 - fi - exit ;; - mini*:CTIX:SYS*5:*) - # "miniframe" - echo m68010-convergent-sysv - exit ;; - mc68k:UNIX:SYSTEM5:3.51m) - echo m68k-convergent-sysv - exit ;; - M680?0:D-NIX:5.3:*) - echo m68k-diab-dnix - exit ;; - M68*:*:R3V[5678]*:*) - test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; - 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) - OS_REL='' - test -r /etc/.relid \ - && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && { echo i486-ncr-sysv4.3${OS_REL}; exit; } - /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ - && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; - 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && { echo i486-ncr-sysv4; exit; } ;; - m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) - echo m68k-unknown-lynxos${UNAME_RELEASE} - exit ;; - mc68030:UNIX_System_V:4.*:*) - echo m68k-atari-sysv4 - exit ;; - TSUNAMI:LynxOS:2.*:*) - echo sparc-unknown-lynxos${UNAME_RELEASE} - exit ;; - rs6000:LynxOS:2.*:*) - echo rs6000-unknown-lynxos${UNAME_RELEASE} - exit ;; - PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) - echo powerpc-unknown-lynxos${UNAME_RELEASE} - exit ;; - SM[BE]S:UNIX_SV:*:*) - echo mips-dde-sysv${UNAME_RELEASE} - exit ;; - RM*:ReliantUNIX-*:*:*) - echo mips-sni-sysv4 - exit ;; - RM*:SINIX-*:*:*) - echo mips-sni-sysv4 - exit ;; - *:SINIX-*:*:*) - if uname -p 2>/dev/null >/dev/null ; then - UNAME_MACHINE=`(uname -p) 2>/dev/null` - echo ${UNAME_MACHINE}-sni-sysv4 - else - echo ns32k-sni-sysv - fi - exit ;; - PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort - # says <Richard.M.Bartel@ccMail.Census.GOV> - echo i586-unisys-sysv4 - exit ;; - *:UNIX_System_V:4*:FTX*) - # From Gerald Hewes <hewes@openmarket.com>. - # How about differentiating between stratus architectures? -djm - echo hppa1.1-stratus-sysv4 - exit ;; - *:*:*:FTX*) - # From seanf@swdc.stratus.com. - echo i860-stratus-sysv4 - exit ;; - i*86:VOS:*:*) - # From Paul.Green@stratus.com. - echo ${UNAME_MACHINE}-stratus-vos - exit ;; - *:VOS:*:*) - # From Paul.Green@stratus.com. - echo hppa1.1-stratus-vos - exit ;; - mc68*:A/UX:*:*) - echo m68k-apple-aux${UNAME_RELEASE} - exit ;; - news*:NEWS-OS:6*:*) - echo mips-sony-newsos6 - exit ;; - R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) - if [ -d /usr/nec ]; then - echo mips-nec-sysv${UNAME_RELEASE} - else - echo mips-unknown-sysv${UNAME_RELEASE} - fi - exit ;; - BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. - echo powerpc-be-beos - exit ;; - BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. - echo powerpc-apple-beos - exit ;; - BePC:BeOS:*:*) # BeOS running on Intel PC compatible. - echo i586-pc-beos - exit ;; - SX-4:SUPER-UX:*:*) - echo sx4-nec-superux${UNAME_RELEASE} - exit ;; - SX-5:SUPER-UX:*:*) - echo sx5-nec-superux${UNAME_RELEASE} - exit ;; - SX-6:SUPER-UX:*:*) - echo sx6-nec-superux${UNAME_RELEASE} - exit ;; - Power*:Rhapsody:*:*) - echo powerpc-apple-rhapsody${UNAME_RELEASE} - exit ;; - *:Rhapsody:*:*) - echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} - exit ;; - *:Darwin:*:*) - UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown - case $UNAME_PROCESSOR in - *86) UNAME_PROCESSOR=i686 ;; - unknown) UNAME_PROCESSOR=powerpc ;; - esac - echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} - exit ;; - *:procnto*:*:* | *:QNX:[0123456789]*:*) - UNAME_PROCESSOR=`uname -p` - if test "$UNAME_PROCESSOR" = "x86"; then - UNAME_PROCESSOR=i386 - UNAME_MACHINE=pc - fi - echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} - exit ;; - *:QNX:*:4*) - echo i386-pc-qnx - exit ;; - NSE-?:NONSTOP_KERNEL:*:*) - echo nse-tandem-nsk${UNAME_RELEASE} - exit ;; - NSR-?:NONSTOP_KERNEL:*:*) - echo nsr-tandem-nsk${UNAME_RELEASE} - exit ;; - *:NonStop-UX:*:*) - echo mips-compaq-nonstopux - exit ;; - BS2000:POSIX*:*:*) - echo bs2000-siemens-sysv - exit ;; - DS/*:UNIX_System_V:*:*) - echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} - exit ;; - *:Plan9:*:*) - # "uname -m" is not consistent, so use $cputype instead. 386 - # is converted to i386 for consistency with other x86 - # operating systems. - if test "$cputype" = "386"; then - UNAME_MACHINE=i386 - else - UNAME_MACHINE="$cputype" - fi - echo ${UNAME_MACHINE}-unknown-plan9 - exit ;; - *:TOPS-10:*:*) - echo pdp10-unknown-tops10 - exit ;; - *:TENEX:*:*) - echo pdp10-unknown-tenex - exit ;; - KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) - echo pdp10-dec-tops20 - exit ;; - XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) - echo pdp10-xkl-tops20 - exit ;; - *:TOPS-20:*:*) - echo pdp10-unknown-tops20 - exit ;; - *:ITS:*:*) - echo pdp10-unknown-its - exit ;; - SEI:*:*:SEIUX) - echo mips-sei-seiux${UNAME_RELEASE} - exit ;; - *:DragonFly:*:*) - echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` - exit ;; - *:*VMS:*:*) - UNAME_MACHINE=`(uname -p) 2>/dev/null` - case "${UNAME_MACHINE}" in - A*) echo alpha-dec-vms ; exit ;; - I*) echo ia64-dec-vms ; exit ;; - V*) echo vax-dec-vms ; exit ;; - esac ;; - *:XENIX:*:SysV) - echo i386-pc-xenix - exit ;; - i*86:skyos:*:*) - echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' - exit ;; -esac - -#echo '(No uname command or uname output not recognized.)' 1>&2 -#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 - -eval $set_cc_for_build -cat >$dummy.c <<EOF -#ifdef _SEQUENT_ -# include <sys/types.h> -# include <sys/utsname.h> -#endif -main () -{ -#if defined (sony) -#if defined (MIPSEB) - /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, - I don't know.... */ - printf ("mips-sony-bsd\n"); exit (0); -#else -#include <sys/param.h> - printf ("m68k-sony-newsos%s\n", -#ifdef NEWSOS4 - "4" -#else - "" -#endif - ); exit (0); -#endif -#endif - -#if defined (__arm) && defined (__acorn) && defined (__unix) - printf ("arm-acorn-riscix\n"); exit (0); -#endif - -#if defined (hp300) && !defined (hpux) - printf ("m68k-hp-bsd\n"); exit (0); -#endif - -#if defined (NeXT) -#if !defined (__ARCHITECTURE__) -#define __ARCHITECTURE__ "m68k" -#endif - int version; - version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; - if (version < 4) - printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); - else - printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); - exit (0); -#endif - -#if defined (MULTIMAX) || defined (n16) -#if defined (UMAXV) - printf ("ns32k-encore-sysv\n"); exit (0); -#else -#if defined (CMU) - printf ("ns32k-encore-mach\n"); exit (0); -#else - printf ("ns32k-encore-bsd\n"); exit (0); -#endif -#endif -#endif - -#if defined (__386BSD__) - printf ("i386-pc-bsd\n"); exit (0); -#endif - -#if defined (sequent) -#if defined (i386) - printf ("i386-sequent-dynix\n"); exit (0); -#endif -#if defined (ns32000) - printf ("ns32k-sequent-dynix\n"); exit (0); -#endif -#endif - -#if defined (_SEQUENT_) - struct utsname un; - - uname(&un); - - if (strncmp(un.version, "V2", 2) == 0) { - printf ("i386-sequent-ptx2\n"); exit (0); - } - if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ - printf ("i386-sequent-ptx1\n"); exit (0); - } - printf ("i386-sequent-ptx\n"); exit (0); - -#endif - -#if defined (vax) -# if !defined (ultrix) -# include <sys/param.h> -# if defined (BSD) -# if BSD == 43 - printf ("vax-dec-bsd4.3\n"); exit (0); -# else -# if BSD == 199006 - printf ("vax-dec-bsd4.3reno\n"); exit (0); -# else - printf ("vax-dec-bsd\n"); exit (0); -# endif -# endif -# else - printf ("vax-dec-bsd\n"); exit (0); -# endif -# else - printf ("vax-dec-ultrix\n"); exit (0); -# endif -#endif - -#if defined (alliant) && defined (i860) - printf ("i860-alliant-bsd\n"); exit (0); -#endif - - exit (1); -} -EOF - -$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && - { echo "$SYSTEM_NAME"; exit; } - -# Apollos put the system type in the environment. - -test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } - -# Convex versions that predate uname can use getsysinfo(1) - -if [ -x /usr/convex/getsysinfo ] -then - case `getsysinfo -f cpu_type` in - c1*) - echo c1-convex-bsd - exit ;; - c2*) - if getsysinfo -f scalar_acc - then echo c32-convex-bsd - else echo c2-convex-bsd - fi - exit ;; - c34*) - echo c34-convex-bsd - exit ;; - c38*) - echo c38-convex-bsd - exit ;; - c4*) - echo c4-convex-bsd - exit ;; - esac -fi - -cat >&2 <<EOF -$0: unable to guess system type - -This script, last modified $timestamp, has failed to recognize -the operating system you are using. It is advised that you -download the most up to date version of the config scripts from - - http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess -and - http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub - -If the version you run ($0) is already up to date, please -send the following data and any information you think might be -pertinent to <config-patches@gnu.org> in order to provide the needed -information to handle your system. - -config.guess timestamp = $timestamp - -uname -m = `(uname -m) 2>/dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` - -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null` - -hostinfo = `(hostinfo) 2>/dev/null` -/bin/universe = `(/bin/universe) 2>/dev/null` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` -/bin/arch = `(/bin/arch) 2>/dev/null` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` - -UNAME_MACHINE = ${UNAME_MACHINE} -UNAME_RELEASE = ${UNAME_RELEASE} -UNAME_SYSTEM = ${UNAME_SYSTEM} -UNAME_VERSION = ${UNAME_VERSION} -EOF - -exit 1 - -# Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "timestamp='" -# time-stamp-format: "%:y-%02m-%02d" -# time-stamp-end: "'" -# End: diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/config.pl b/portland/libxdg-vfs/xdg-vfs-kde/admin/config.pl deleted file mode 100644 index c2b0517..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/config.pl +++ /dev/null @@ -1,238 +0,0 @@ -#!/usr/bin/env perl -# a script for use by autoconf to make the Makefiles -# from the Makefile.in's -# -# the original autoconf mechanism first splits all substitutions into groups -# of ca. 90, and than invokes sed for _every_ Makefile.in and every group -# (so around 2-3 times per Makefile.in). So this takes forever, as sed -# has to recompile the regexps every time. -# -# this script does better. It changes all Makefile.ins in one process. -# in kdelibs the time for building Makefile went down from 2:59 min to 13 sec! -# -# written by Michael Matz <matz@kde.org> -# adapted by Dirk Mueller <mueller@kde.org> - -# This file is free software; you can redistribute it and/or -# modify it under the terms of the GNU Library General Public -# License as published by the Free Software Foundation; either -# version 2 of the License, or (at your option) any later version. - -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Library General Public License for more details. - -# You should have received a copy of the GNU Library General Public License -# along with this library; see the file COPYING.LIB. If not, write to -# the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -# Boston, MA 02110-1301, USA. - -use strict; - -use File::Path; - -my $ac_subs=$ARGV[0]; -my $ac_sacfiles = $ARGV[1]; -my $ac_given_srcdir=$ARGV[2]; -my $ac_given_INSTALL=$ARGV[3]; - -my @comp_match; -my @comp_subs; - -#print "ac_subs=$ac_subs\n"; -#print "ac_sacfiles=$ac_sacfiles\n"; -#print "ac_given_srcdir=$ac_given_srcdir\n"; -#print "ac_given_INSTALL=$ac_given_INSTALL\n"; - -my $configure_input; -my ($srcdir, $top_srcdir); -my $INSTALL; -my $bad_perl = ($] < 5.005); -my $created_file_count = 0; - -open(CF, "< $ac_subs") || die "can't open $ac_subs: $!"; -my @subs = <CF>; -my $pat; -close(CF); -chomp @subs; -@comp_match=(); -@comp_subs=(); - -if ($bad_perl) { - print "Using perl older than version 5.005\n"; - foreach $pat (@subs) { - if ( ($pat =~ m/s%([^%]*)%([^%]*)%g/ ) - || ($pat =~ m/s%([^%]*)%([^%]*)%;t/ ) - || ($pat =~ m/s,([^,]*),(.*),;t/) - || ($pat =~ m%s/([^/]*)/([^/]*)/g% ) - || ($pat =~ m%s/([^/]*)/([^/]*)/;t% ) - ) { - # form : s%bla%blubb%g - # or s%bla%blubb%;t t (autoconf > 2.13 and < 2.52 ?) - # or s,bla,blubb,;t t (autoconf 2.52) - my $srch = $1; - my $repl = $2; - $repl =~ s/\\(.)/$1/g; - push @comp_subs, make_closure($srch, $repl); - - } elsif ( ($pat =~ /%([^%]*)%d/ ) - || ($pat =~ m%/([^/]*)/d% ) - ) { - push @comp_subs, make_closure($1, ""); - } else { - die "Uhh. Malformed pattern in $ac_subs ($pat)" - unless ( $pat =~ /^\s*$/ ); # ignore white lines - } - } -} else { - foreach $pat (@subs) { - if ( ($pat =~ /s%([^%]*)%([^%]*)%g/ ) || - ($pat =~ /s%([^%]*)%([^%]*)%;t/ ) || - ($pat =~ /s,([^,]*),(.*),;t/) ) { - # form : s%bla%blubb%g - # or s%bla%blubb%;t t (autoconf > 2.13 and < 2.52 ?) - # or s,bla,blubb,;t t (autoconf 2.52) - my $srch = $1; - my $repl = $2; - push @comp_match, eval "qr/\Q$srch\E/"; # compile match pattern - $repl =~ s/\\(.)/$1/g; - push @comp_subs, $repl; - } elsif ( ($pat =~ /%([^%]*)%d/ ) - || ($pat =~ m%/([^/]*)/d% ) - ) { - push @comp_match, eval "qr/\Q$1\E/"; - push @comp_subs, ""; - } else { - die "Uhh. Malformed pattern in $ac_subs ($pat)" - unless ( $pat =~ /^\s*$/ ); # ignore white lines - } - } -} -undef @subs; - -# read the list of files to be patched, form: -# ./Makefile arts/Makefile arts/examples/Makefile arts/flow/Makefile - -open(CF, "< $ac_sacfiles") || die "can't open $ac_sacfiles: $!"; -my @ac_files = <CF>; -close(CF); -chomp @ac_files; - - -my $ac_file; -foreach $ac_file (@ac_files) { - next if $ac_file =~ /\.\./; - next if $ac_file =~ /^\s*$/; - my $ac_file_in; - my ($ac_dir, $ac_dots, $ac_dir_suffix); - - if ($ac_file =~ /.*:.*/ ) { - ($ac_file_in = $ac_file) =~ s%[^:]*:%%; - $ac_file =~ s%:.*%%; - } else { - $ac_file_in = $ac_file.".in"; - } - -# Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories. - -# Remove last slash and all that follows it. Not all systems have dirname. - ($ac_dir = $ac_file) =~ s%/[^/][^/]*$%%; - if ( ($ac_dir ne $ac_file) && ($ac_dir ne ".")) { -# The file is in a subdirectory. - if (! -d "$ac_dir") { mkpath "$ac_dir", 0, 0777; } - ($ac_dir_suffix = $ac_dir) =~ s%^./%%; - $ac_dir_suffix="/".$ac_dir_suffix; -# A "../" for each directory in $ac_dir_suffix. - ($ac_dots = $ac_dir_suffix) =~ s%/[^/]*%../%g; - } else { - $ac_dir_suffix=""; - $ac_dots=""; - } - - if ($ac_given_srcdir eq ".") { - $srcdir="."; - if ($ac_dots) { - ( $top_srcdir = $ac_dots) =~ s%/$%%; - } else { $top_srcdir="."; } - } elsif ($ac_given_srcdir =~ m%^/%) { - $srcdir=$ac_given_srcdir.$ac_dir_suffix; - $top_srcdir = $ac_given_srcdir; - } else { - $srcdir = $ac_dots.$ac_given_srcdir.$ac_dir_suffix; - $top_srcdir = $ac_dots.$ac_given_srcdir; - } - - if ($ac_given_INSTALL) { - if ($ac_given_INSTALL =~ m%^/% ) { - $INSTALL = $ac_given_INSTALL; - } else { - $INSTALL = $ac_dots.$ac_given_INSTALL; - } - } - - print "fast creating $ac_file\n"; - unlink $ac_file; - my $ac_comsub=""; - my $fname=$ac_file_in; - $fname =~ s%.*/%%; - $configure_input="$ac_file. Generated from $fname by config.pl."; - - my $ac_file_inputs; - ($ac_file_inputs = $ac_file_in) =~ s%^%$ac_given_srcdir/%; - $ac_file_inputs =~ s%:% $ac_given_srcdir/%g; - - patch_file($ac_file, $ac_file_inputs); - ++$created_file_count; -} - -print "config.pl: fast created $created_file_count file(s).\n"; - -sub patch_file { - my ($outf, $infiles) = @_; - my $filedata; - my @infiles=split(' ', $infiles); - my $i=0; - my $name; - - foreach $name (@infiles) { - if (open(CF, "< $name")) { - while (<CF>) { - $filedata .= $_; - } - close(CF); - } else { - print STDERR "can't open $name: $!"."\n"; - } - } - - $filedata =~ s%\@configure_input\@%$configure_input%g; - $filedata =~ s%\@srcdir\@%$srcdir%g; - $filedata =~ s%\@top_srcdir\@%$top_srcdir%g; - $filedata =~ s%\@INSTALL\@%$INSTALL%g; - - if ($bad_perl) { - while ($i <= $#comp_subs) { - my $ref = $comp_subs[$i]; - &$ref(\$filedata); - $i++; - } - } else { - while ($i <= $#comp_match) { - $filedata =~ s/$comp_match[$i]/$comp_subs[$i]/g; - $i++; - } - } - open(CF, "> $outf") || die "can't create $outf: $!"; - print CF $filedata; - close(CF); -} - -sub make_closure { - my ($pat, $sub) = @_; - my $ret = eval "return sub { my \$ref=shift; \$\$ref =~ s%\Q$pat\E%\Q$sub\E%g; }"; - if ($@) { - print "can't create CODE: $@\n"; - } - return $ret; -} diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/config.sub b/portland/libxdg-vfs/xdg-vfs-kde/admin/config.sub deleted file mode 100755 index 2ef2842..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/config.sub +++ /dev/null @@ -1,1575 +0,0 @@ -#! /bin/sh -# Configuration validation subroutine script. -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. - -timestamp='2005-07-01' - -# This file is (in principle) common to ALL GNU software. -# The presence of a machine in this file suggests that SOME GNU software -# can handle that machine. It does not imply ALL GNU software can. -# -# This file is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA -# 02110-1301, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - - -# Please send patches to <config-patches@gnu.org>. Submit a context -# diff and a properly formatted ChangeLog entry. -# -# Configuration subroutine to validate and canonicalize a configuration type. -# Supply the specified configuration type as an argument. -# If it is invalid, we print an error message on stderr and exit with code 1. -# Otherwise, we print the canonical config type on stdout and succeed. - -# This file is supposed to be the same for all GNU packages -# and recognize all the CPU types, system types and aliases -# that are meaningful with *any* GNU software. -# Each package is responsible for reporting which valid configurations -# it does not support. The user should be able to distinguish -# a failure to support a valid configuration from a meaningless -# configuration. - -# The goal of this file is to map all the various variations of a given -# machine specification into a single specification in the form: -# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM -# or in some cases, the newer four-part form: -# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM -# It is wrong to echo any other type of specification. - -me=`echo "$0" | sed -e 's,.*/,,'` - -usage="\ -Usage: $0 [OPTION] CPU-MFR-OPSYS - $0 [OPTION] ALIAS - -Canonicalize a configuration name. - -Operation modes: - -h, --help print this help, then exit - -t, --time-stamp print date of last modification, then exit - -v, --version print version number, then exit - -Report bugs and patches to <config-patches@gnu.org>." - -version="\ -GNU config.sub ($timestamp) - -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 -Free Software Foundation, Inc. - -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." - -help=" -Try \`$me --help' for more information." - -# Parse command line -while test $# -gt 0 ; do - case $1 in - --time-stamp | --time* | -t ) - echo "$timestamp" ; exit ;; - --version | -v ) - echo "$version" ; exit ;; - --help | --h* | -h ) - echo "$usage"; exit ;; - -- ) # Stop option processing - shift; break ;; - - ) # Use stdin as input. - break ;; - -* ) - echo "$me: invalid option $1$help" - exit 1 ;; - - *local*) - # First pass through any local machine types. - echo $1 - exit ;; - - * ) - break ;; - esac -done - -case $# in - 0) echo "$me: missing argument$help" >&2 - exit 1;; - 1) ;; - *) echo "$me: too many arguments$help" >&2 - exit 1;; -esac - -# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). -# Here we must recognize all the valid KERNEL-OS combinations. -maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` -case $maybe_os in - nto-qnx* | linux-gnu* | linux-dietlibc | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \ - kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*) - os=-$maybe_os - basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` - ;; - *) - basic_machine=`echo $1 | sed 's/-[^-]*$//'` - if [ $basic_machine != $1 ] - then os=`echo $1 | sed 's/.*-/-/'` - else os=; fi - ;; -esac - -### Let's recognize common machines as not being operating systems so -### that things like config.sub decstation-3100 work. We also -### recognize some manufacturers as not being operating systems, so we -### can provide default operating systems below. -case $os in - -sun*os*) - # Prevent following clause from handling this invalid input. - ;; - -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ - -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ - -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ - -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ - -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ - -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ - -apple | -axis | -knuth | -cray) - os= - basic_machine=$1 - ;; - -sim | -cisco | -oki | -wec | -winbond) - os= - basic_machine=$1 - ;; - -scout) - ;; - -wrs) - os=-vxworks - basic_machine=$1 - ;; - -chorusos*) - os=-chorusos - basic_machine=$1 - ;; - -chorusrdb) - os=-chorusrdb - basic_machine=$1 - ;; - -hiux*) - os=-hiuxwe2 - ;; - -sco5) - os=-sco3.2v5 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco4) - os=-sco3.2v4 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco3.2.[4-9]*) - os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco3.2v[4-9]*) - # Don't forget version if it is 3.2v4 or newer. - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco*) - os=-sco3.2v2 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -udk*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -isc) - os=-isc2.2 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -clix*) - basic_machine=clipper-intergraph - ;; - -isc*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -lynx*) - os=-lynxos - ;; - -ptx*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` - ;; - -windowsnt*) - os=`echo $os | sed -e 's/windowsnt/winnt/'` - ;; - -psos*) - os=-psos - ;; - -mint | -mint[0-9]*) - basic_machine=m68k-atari - os=-mint - ;; -esac - -# Decode aliases for certain CPU-COMPANY combinations. -case $basic_machine in - # Recognize the basic CPU types without company name. - # Some are omitted here because they have special meanings below. - 1750a | 580 \ - | a29k \ - | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ - | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ - | am33_2.0 \ - | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \ - | bfin \ - | c4x | clipper \ - | d10v | d30v | dlx | dsp16xx \ - | fr30 | frv \ - | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ - | i370 | i860 | i960 | ia64 \ - | ip2k | iq2000 \ - | m32r | m32rle | m68000 | m68k | m88k | maxq | mcore \ - | mips | mipsbe | mipseb | mipsel | mipsle \ - | mips16 \ - | mips64 | mips64el \ - | mips64vr | mips64vrel \ - | mips64orion | mips64orionel \ - | mips64vr4100 | mips64vr4100el \ - | mips64vr4300 | mips64vr4300el \ - | mips64vr5000 | mips64vr5000el \ - | mips64vr5900 | mips64vr5900el \ - | mipsisa32 | mipsisa32el \ - | mipsisa32r2 | mipsisa32r2el \ - | mipsisa64 | mipsisa64el \ - | mipsisa64r2 | mipsisa64r2el \ - | mipsisa64sb1 | mipsisa64sb1el \ - | mipsisa64sr71k | mipsisa64sr71kel \ - | mipstx39 | mipstx39el \ - | mn10200 | mn10300 \ - | ms1 \ - | msp430 \ - | ns16k | ns32k \ - | or32 \ - | pdp10 | pdp11 | pj | pjl \ - | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ - | pyramid \ - | sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \ - | sh64 | sh64le \ - | sparc | sparc64 | sparc64b | sparc86x | sparclet | sparclite \ - | sparcv8 | sparcv9 | sparcv9b \ - | strongarm \ - | tahoe | thumb | tic4x | tic80 | tron \ - | v850 | v850e \ - | we32k \ - | x86 | xscale | xscalee[bl] | xstormy16 | xtensa \ - | z8k) - basic_machine=$basic_machine-unknown - ;; - m32c) - basic_machine=$basic_machine-unknown - ;; - m6811 | m68hc11 | m6812 | m68hc12) - # Motorola 68HC11/12. - basic_machine=$basic_machine-unknown - os=-none - ;; - m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) - ;; - - # We use `pc' rather than `unknown' - # because (1) that's what they normally are, and - # (2) the word "unknown" tends to confuse beginning users. - i*86 | x86_64) - basic_machine=$basic_machine-pc - ;; - # Object if more than one company name word. - *-*-*) - echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 - exit 1 - ;; - # Recognize the basic CPU types with company name. - 580-* \ - | a29k-* \ - | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ - | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ - | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ - | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ - | avr-* \ - | bfin-* | bs2000-* \ - | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ - | clipper-* | craynv-* | cydra-* \ - | d10v-* | d30v-* | dlx-* \ - | elxsi-* \ - | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \ - | h8300-* | h8500-* \ - | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ - | i*86-* | i860-* | i960-* | ia64-* \ - | ip2k-* | iq2000-* \ - | m32r-* | m32rle-* \ - | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ - | m88110-* | m88k-* | maxq-* | mcore-* \ - | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ - | mips16-* \ - | mips64-* | mips64el-* \ - | mips64vr-* | mips64vrel-* \ - | mips64orion-* | mips64orionel-* \ - | mips64vr4100-* | mips64vr4100el-* \ - | mips64vr4300-* | mips64vr4300el-* \ - | mips64vr5000-* | mips64vr5000el-* \ - | mips64vr5900-* | mips64vr5900el-* \ - | mipsisa32-* | mipsisa32el-* \ - | mipsisa32r2-* | mipsisa32r2el-* \ - | mipsisa64-* | mipsisa64el-* \ - | mipsisa64r2-* | mipsisa64r2el-* \ - | mipsisa64sb1-* | mipsisa64sb1el-* \ - | mipsisa64sr71k-* | mipsisa64sr71kel-* \ - | mipstx39-* | mipstx39el-* \ - | mmix-* \ - | ms1-* \ - | msp430-* \ - | none-* | np1-* | ns16k-* | ns32k-* \ - | orion-* \ - | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ - | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ - | pyramid-* \ - | romp-* | rs6000-* \ - | sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \ - | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ - | sparc-* | sparc64-* | sparc64b-* | sparc86x-* | sparclet-* \ - | sparclite-* \ - | sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \ - | tahoe-* | thumb-* \ - | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ - | tron-* \ - | v850-* | v850e-* | vax-* \ - | we32k-* \ - | x86-* | x86_64-* | xps100-* | xscale-* | xscalee[bl]-* \ - | xstormy16-* | xtensa-* \ - | ymp-* \ - | z8k-*) - ;; - m32c-*) - ;; - # 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) - basic_machine=m68000-att - ;; - 3b*) - basic_machine=we32k-att - ;; - a29khif) - basic_machine=a29k-amd - os=-udi - ;; - abacus) - basic_machine=abacus-unknown - ;; - adobe68k) - basic_machine=m68010-adobe - os=-scout - ;; - alliant | fx80) - basic_machine=fx80-alliant - ;; - altos | altos3068) - basic_machine=m68k-altos - ;; - am29k) - basic_machine=a29k-none - os=-bsd - ;; - amd64) - basic_machine=x86_64-pc - ;; - amd64-*) - basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - amdahl) - basic_machine=580-amdahl - os=-sysv - ;; - amiga | amiga-*) - basic_machine=m68k-unknown - ;; - amigaos | amigados) - basic_machine=m68k-unknown - os=-amigaos - ;; - amigaunix | amix) - basic_machine=m68k-unknown - os=-sysv4 - ;; - apollo68) - basic_machine=m68k-apollo - os=-sysv - ;; - apollo68bsd) - basic_machine=m68k-apollo - os=-bsd - ;; - aux) - basic_machine=m68k-apple - os=-aux - ;; - balance) - basic_machine=ns32k-sequent - os=-dynix - ;; - c90) - basic_machine=c90-cray - os=-unicos - ;; - convex-c1) - basic_machine=c1-convex - os=-bsd - ;; - convex-c2) - basic_machine=c2-convex - os=-bsd - ;; - convex-c32) - basic_machine=c32-convex - os=-bsd - ;; - convex-c34) - basic_machine=c34-convex - os=-bsd - ;; - convex-c38) - basic_machine=c38-convex - os=-bsd - ;; - cray | j90) - basic_machine=j90-cray - os=-unicos - ;; - craynv) - basic_machine=craynv-cray - os=-unicosmp - ;; - cr16c) - basic_machine=cr16c-unknown - os=-elf - ;; - crds | unos) - basic_machine=m68k-crds - ;; - crisv32 | crisv32-* | etraxfs*) - basic_machine=crisv32-axis - ;; - cris | cris-* | etrax*) - basic_machine=cris-axis - ;; - crx) - basic_machine=crx-unknown - os=-elf - ;; - da30 | da30-*) - basic_machine=m68k-da30 - ;; - decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) - basic_machine=mips-dec - ;; - decsystem10* | dec10*) - basic_machine=pdp10-dec - os=-tops10 - ;; - decsystem20* | dec20*) - basic_machine=pdp10-dec - os=-tops20 - ;; - delta | 3300 | motorola-3300 | motorola-delta \ - | 3300-motorola | delta-motorola) - basic_machine=m68k-motorola - ;; - delta88) - basic_machine=m88k-motorola - os=-sysv3 - ;; - djgpp) - basic_machine=i586-pc - os=-msdosdjgpp - ;; - dpx20 | dpx20-*) - basic_machine=rs6000-bull - os=-bosx - ;; - dpx2* | dpx2*-bull) - basic_machine=m68k-bull - os=-sysv3 - ;; - ebmon29k) - basic_machine=a29k-amd - os=-ebmon - ;; - elxsi) - basic_machine=elxsi-elxsi - os=-bsd - ;; - encore | umax | mmax) - basic_machine=ns32k-encore - ;; - es1800 | OSE68k | ose68k | ose | OSE) - basic_machine=m68k-ericsson - os=-ose - ;; - fx2800) - basic_machine=i860-alliant - ;; - genix) - basic_machine=ns32k-ns - ;; - gmicro) - basic_machine=tron-gmicro - os=-sysv - ;; - go32) - basic_machine=i386-pc - os=-go32 - ;; - h3050r* | hiux*) - basic_machine=hppa1.1-hitachi - os=-hiuxwe2 - ;; - h8300hms) - basic_machine=h8300-hitachi - os=-hms - ;; - h8300xray) - basic_machine=h8300-hitachi - os=-xray - ;; - h8500hms) - basic_machine=h8500-hitachi - os=-hms - ;; - harris) - basic_machine=m88k-harris - os=-sysv3 - ;; - hp300-*) - basic_machine=m68k-hp - ;; - hp300bsd) - basic_machine=m68k-hp - os=-bsd - ;; - hp300hpux) - basic_machine=m68k-hp - os=-hpux - ;; - hp3k9[0-9][0-9] | hp9[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hp9k2[0-9][0-9] | hp9k31[0-9]) - basic_machine=m68000-hp - ;; - hp9k3[2-9][0-9]) - basic_machine=m68k-hp - ;; - hp9k6[0-9][0-9] | hp6[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hp9k7[0-79][0-9] | hp7[0-79][0-9]) - basic_machine=hppa1.1-hp - ;; - hp9k78[0-9] | hp78[0-9]) - # FIXME: really hppa2.0-hp - basic_machine=hppa1.1-hp - ;; - hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) - # FIXME: really hppa2.0-hp - basic_machine=hppa1.1-hp - ;; - hp9k8[0-9][13679] | hp8[0-9][13679]) - basic_machine=hppa1.1-hp - ;; - hp9k8[0-9][0-9] | hp8[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hppa-next) - os=-nextstep3 - ;; - hppaosf) - basic_machine=hppa1.1-hp - os=-osf - ;; - hppro) - basic_machine=hppa1.1-hp - os=-proelf - ;; - i370-ibm* | ibm*) - basic_machine=i370-ibm - ;; -# I'm not sure what "Sysv32" means. Should this be sysv3.2? - i*86v32) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv32 - ;; - i*86v4*) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv4 - ;; - i*86v) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv - ;; - i*86sol2) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-solaris2 - ;; - i386mach) - basic_machine=i386-mach - os=-mach - ;; - i386-vsta | vsta) - basic_machine=i386-unknown - os=-vsta - ;; - iris | iris4d) - basic_machine=mips-sgi - case $os in - -irix*) - ;; - *) - os=-irix4 - ;; - esac - ;; - isi68 | isi) - basic_machine=m68k-isi - os=-sysv - ;; - m88k-omron*) - basic_machine=m88k-omron - ;; - magnum | m3230) - basic_machine=mips-mips - os=-sysv - ;; - merlin) - basic_machine=ns32k-utek - os=-sysv - ;; - mingw32) - basic_machine=i386-pc - os=-mingw32 - ;; - miniframe) - basic_machine=m68000-convergent - ;; - *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) - basic_machine=m68k-atari - os=-mint - ;; - mips3*-*) - basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` - ;; - mips3*) - basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown - ;; - monitor) - basic_machine=m68k-rom68k - os=-coff - ;; - morphos) - basic_machine=powerpc-unknown - os=-morphos - ;; - msdos) - basic_machine=i386-pc - os=-msdos - ;; - mvs) - basic_machine=i370-ibm - os=-mvs - ;; - ncr3000) - basic_machine=i486-ncr - os=-sysv4 - ;; - netbsd386) - basic_machine=i386-unknown - os=-netbsd - ;; - netwinder) - basic_machine=armv4l-rebel - os=-linux - ;; - news | news700 | news800 | news900) - basic_machine=m68k-sony - os=-newsos - ;; - news1000) - basic_machine=m68030-sony - os=-newsos - ;; - news-3600 | risc-news) - basic_machine=mips-sony - os=-newsos - ;; - necv70) - basic_machine=v70-nec - os=-sysv - ;; - next | m*-next ) - basic_machine=m68k-next - case $os in - -nextstep* ) - ;; - -ns2*) - os=-nextstep2 - ;; - *) - os=-nextstep3 - ;; - esac - ;; - nh3000) - basic_machine=m68k-harris - os=-cxux - ;; - nh[45]000) - basic_machine=m88k-harris - os=-cxux - ;; - nindy960) - basic_machine=i960-intel - os=-nindy - ;; - mon960) - basic_machine=i960-intel - os=-mon960 - ;; - nonstopux) - basic_machine=mips-compaq - os=-nonstopux - ;; - np1) - basic_machine=np1-gould - ;; - nsr-tandem) - basic_machine=nsr-tandem - ;; - op50n-* | op60c-*) - basic_machine=hppa1.1-oki - os=-proelf - ;; - openrisc | openrisc-*) - basic_machine=or32-unknown - ;; - os400) - basic_machine=powerpc-ibm - os=-os400 - ;; - OSE68000 | ose68000) - basic_machine=m68000-ericsson - os=-ose - ;; - os68k) - basic_machine=m68k-none - os=-os68k - ;; - pa-hitachi) - basic_machine=hppa1.1-hitachi - os=-hiuxwe2 - ;; - paragon) - basic_machine=i860-intel - os=-osf - ;; - pbd) - basic_machine=sparc-tti - ;; - pbb) - basic_machine=m68k-tti - ;; - pc532 | pc532-*) - basic_machine=ns32k-pc532 - ;; - pentium | p5 | k5 | k6 | nexgen | viac3) - basic_machine=i586-pc - ;; - pentiumpro | p6 | 6x86 | athlon | athlon_*) - basic_machine=i686-pc - ;; - pentiumii | pentium2 | pentiumiii | pentium3) - basic_machine=i686-pc - ;; - pentium4) - basic_machine=i786-pc - ;; - pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) - basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentiumpro-* | p6-* | 6x86-* | athlon-*) - basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) - basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentium4-*) - basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pn) - basic_machine=pn-gould - ;; - power) basic_machine=power-ibm - ;; - ppc) basic_machine=powerpc-unknown - ;; - ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppcle | powerpclittle | ppc-le | powerpc-little) - basic_machine=powerpcle-unknown - ;; - ppcle-* | powerpclittle-*) - basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppc64) basic_machine=powerpc64-unknown - ;; - ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppc64le | powerpc64little | ppc64-le | powerpc64-little) - basic_machine=powerpc64le-unknown - ;; - ppc64le-* | powerpc64little-*) - basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ps2) - basic_machine=i386-ibm - ;; - pw32) - basic_machine=i586-unknown - os=-pw32 - ;; - rom68k) - basic_machine=m68k-rom68k - os=-coff - ;; - rm[46]00) - basic_machine=mips-siemens - ;; - rtpc | rtpc-*) - basic_machine=romp-ibm - ;; - s390 | s390-*) - basic_machine=s390-ibm - ;; - s390x | s390x-*) - basic_machine=s390x-ibm - ;; - sa29200) - basic_machine=a29k-amd - os=-udi - ;; - sb1) - basic_machine=mipsisa64sb1-unknown - ;; - sb1el) - basic_machine=mipsisa64sb1el-unknown - ;; - sei) - basic_machine=mips-sei - os=-seiux - ;; - sequent) - basic_machine=i386-sequent - ;; - sh) - basic_machine=sh-hitachi - os=-hms - ;; - sh64) - basic_machine=sh64-unknown - ;; - sparclite-wrs | simso-wrs) - basic_machine=sparclite-wrs - os=-vxworks - ;; - sps7) - basic_machine=m68k-bull - os=-sysv2 - ;; - spur) - basic_machine=spur-unknown - ;; - st2000) - basic_machine=m68k-tandem - ;; - stratus) - basic_machine=i860-stratus - os=-sysv4 - ;; - sun2) - basic_machine=m68000-sun - ;; - sun2os3) - basic_machine=m68000-sun - os=-sunos3 - ;; - sun2os4) - basic_machine=m68000-sun - os=-sunos4 - ;; - sun3os3) - basic_machine=m68k-sun - os=-sunos3 - ;; - sun3os4) - basic_machine=m68k-sun - os=-sunos4 - ;; - sun4os3) - basic_machine=sparc-sun - os=-sunos3 - ;; - sun4os4) - basic_machine=sparc-sun - os=-sunos4 - ;; - sun4sol2) - basic_machine=sparc-sun - os=-solaris2 - ;; - sun3 | sun3-*) - basic_machine=m68k-sun - ;; - sun4) - basic_machine=sparc-sun - ;; - sun386 | sun386i | roadrunner) - basic_machine=i386-sun - ;; - sv1) - basic_machine=sv1-cray - os=-unicos - ;; - symmetry) - basic_machine=i386-sequent - os=-dynix - ;; - t3e) - basic_machine=alphaev5-cray - os=-unicos - ;; - t90) - basic_machine=t90-cray - os=-unicos - ;; - tic54x | c54x*) - basic_machine=tic54x-unknown - os=-coff - ;; - tic55x | c55x*) - basic_machine=tic55x-unknown - os=-coff - ;; - tic6x | c6x*) - basic_machine=tic6x-unknown - os=-coff - ;; - tx39) - basic_machine=mipstx39-unknown - ;; - tx39el) - basic_machine=mipstx39el-unknown - ;; - toad1) - basic_machine=pdp10-xkl - os=-tops20 - ;; - tower | tower-32) - basic_machine=m68k-ncr - ;; - tpf) - basic_machine=s390x-ibm - os=-tpf - ;; - udi29k) - basic_machine=a29k-amd - os=-udi - ;; - ultra3) - basic_machine=a29k-nyu - os=-sym1 - ;; - v810 | necv810) - basic_machine=v810-nec - os=-none - ;; - vaxv) - basic_machine=vax-dec - os=-sysv - ;; - vms) - basic_machine=vax-dec - os=-vms - ;; - vpp*|vx|vx-*) - basic_machine=f301-fujitsu - ;; - vxworks960) - basic_machine=i960-wrs - os=-vxworks - ;; - vxworks68) - basic_machine=m68k-wrs - os=-vxworks - ;; - vxworks29k) - basic_machine=a29k-wrs - os=-vxworks - ;; - w65*) - basic_machine=w65-wdc - os=-none - ;; - w89k-*) - basic_machine=hppa1.1-winbond - os=-proelf - ;; - xbox) - basic_machine=i686-pc - os=-mingw32 - ;; - xps | xps100) - basic_machine=xps100-honeywell - ;; - ymp) - basic_machine=ymp-cray - os=-unicos - ;; - z8k-*-coff) - basic_machine=z8k-unknown - os=-sim - ;; - none) - basic_machine=none-none - os=-none - ;; - -# Here we handle the default manufacturer of certain CPU types. It is in -# some cases the only manufacturer, in others, it is the most popular. - w89k) - basic_machine=hppa1.1-winbond - ;; - op50n) - basic_machine=hppa1.1-oki - ;; - op60c) - basic_machine=hppa1.1-oki - ;; - romp) - basic_machine=romp-ibm - ;; - mmix) - basic_machine=mmix-knuth - ;; - rs6000) - basic_machine=rs6000-ibm - ;; - vax) - basic_machine=vax-dec - ;; - pdp10) - # there are many clones, so DEC is not a safe bet - basic_machine=pdp10-unknown - ;; - pdp11) - basic_machine=pdp11-dec - ;; - we32k) - basic_machine=we32k-att - ;; - sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele) - basic_machine=sh-unknown - ;; - sparc | sparcv8 | sparcv9 | sparcv9b) - basic_machine=sparc-sun - ;; - cydra) - basic_machine=cydra-cydrome - ;; - orion) - basic_machine=orion-highlevel - ;; - orion105) - basic_machine=clipper-highlevel - ;; - mac | mpw | mac-mpw) - basic_machine=m68k-apple - ;; - pmac | pmac-mpw) - basic_machine=powerpc-apple - ;; - *-unknown) - # Make sure to match an already-canonicalized machine name. - ;; - *) - echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 - exit 1 - ;; -esac - -# Here we canonicalize certain aliases for manufacturers. -case $basic_machine in - *-digital*) - basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` - ;; - *-commodore*) - basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` - ;; - *) - ;; -esac - -# Decode manufacturer-specific aliases for certain operating systems. - -if [ x"$os" != x"" ] -then -case $os in - # First match some system type aliases - # that might get confused with valid system types. - # -solaris* is a basic system type, with this one exception. - -solaris1 | -solaris1.*) - os=`echo $os | sed -e 's|solaris1|sunos4|'` - ;; - -solaris) - os=-solaris2 - ;; - -svr4*) - os=-sysv4 - ;; - -unixware*) - os=-sysv4.2uw - ;; - -gnu/linux*) - os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` - ;; - # First accept the basic system types. - # The portable systems comes first. - # Each alternative MUST END IN A *, to match a version number. - # -sysv* is not here because it comes later, after sysvr4. - -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ - | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ - | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ - | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ - | -aos* \ - | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ - | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ - | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \ - | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ - | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ - | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ - | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ - | -chorusos* | -chorusrdb* \ - | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ - | -mingw32* | -linux-gnu* | -linux-uclibc* | -uxpv* | -beos* | -mpeix* | -udk* \ - | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ - | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ - | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ - | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ - | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ - | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* | -skyos*) - # Remember, each alternative MUST END IN *, to match a version number. - ;; - -qnx*) - case $basic_machine in - x86-* | i*86-*) - ;; - *) - os=-nto$os - ;; - esac - ;; - -nto-qnx*) - ;; - -nto*) - os=`echo $os | sed -e 's|nto|nto-qnx|'` - ;; - -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ - | -windows* | -osx | -abug | -netware* | -os9* | -beos* \ - | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) - ;; - -mac*) - os=`echo $os | sed -e 's|mac|macos|'` - ;; - -linux-dietlibc) - os=-linux-dietlibc - ;; - -linux*) - os=`echo $os | sed -e 's|linux|linux-gnu|'` - ;; - -sunos5*) - os=`echo $os | sed -e 's|sunos5|solaris2|'` - ;; - -sunos6*) - os=`echo $os | sed -e 's|sunos6|solaris3|'` - ;; - -opened*) - os=-openedition - ;; - -os400*) - os=-os400 - ;; - -wince*) - os=-wince - ;; - -osfrose*) - os=-osfrose - ;; - -osf*) - os=-osf - ;; - -utek*) - os=-bsd - ;; - -dynix*) - os=-bsd - ;; - -acis*) - os=-aos - ;; - -atheos*) - os=-atheos - ;; - -syllable*) - os=-syllable - ;; - -386bsd) - os=-bsd - ;; - -ctix* | -uts*) - os=-sysv - ;; - -nova*) - os=-rtmk-nova - ;; - -ns2 ) - os=-nextstep2 - ;; - -nsk*) - os=-nsk - ;; - # Preserve the version number of sinix5. - -sinix5.*) - os=`echo $os | sed -e 's|sinix|sysv|'` - ;; - -sinix*) - os=-sysv4 - ;; - -tpf*) - os=-tpf - ;; - -triton*) - os=-sysv3 - ;; - -oss*) - os=-sysv3 - ;; - -svr4) - os=-sysv4 - ;; - -svr3) - os=-sysv3 - ;; - -sysvr4) - os=-sysv4 - ;; - # This must come after -sysvr4. - -sysv*) - ;; - -ose*) - os=-ose - ;; - -es1800*) - os=-ose - ;; - -xenix) - os=-xenix - ;; - -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) - os=-mint - ;; - -aros*) - os=-aros - ;; - -kaos*) - os=-kaos - ;; - -zvmoe) - os=-zvmoe - ;; - -none) - ;; - *) - # Get rid of the `-' at the beginning of $os. - os=`echo $os | sed 's/[^-]*-//'` - echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 - exit 1 - ;; -esac -else - -# Here we handle the default operating systems that come with various machines. -# The value should be what the vendor currently ships out the door with their -# machine or put another way, the most popular os provided with the machine. - -# Note that if you're going to try to match "-MANUFACTURER" here (say, -# "-sun"), then you have to tell the case statement up towards the top -# that MANUFACTURER isn't an operating system. Otherwise, code above -# will signal an error saying that MANUFACTURER isn't an operating -# system, and we'll never get to this point. - -case $basic_machine in - *-acorn) - os=-riscix1.2 - ;; - arm*-rebel) - os=-linux - ;; - arm*-semi) - os=-aout - ;; - c4x-* | tic4x-*) - os=-coff - ;; - # This must come before the *-dec entry. - pdp10-*) - os=-tops20 - ;; - pdp11-*) - os=-none - ;; - *-dec | vax-*) - os=-ultrix4.2 - ;; - m68*-apollo) - os=-domain - ;; - i386-sun) - os=-sunos4.0.2 - ;; - m68000-sun) - os=-sunos3 - # This also exists in the configure program, but was not the - # default. - # os=-sunos4 - ;; - m68*-cisco) - os=-aout - ;; - mips*-cisco) - os=-elf - ;; - mips*-*) - os=-elf - ;; - or32-*) - os=-coff - ;; - *-tti) # must be before sparc entry or we get the wrong os. - os=-sysv3 - ;; - sparc-* | *-sun) - os=-sunos4.1.1 - ;; - *-be) - os=-beos - ;; - *-ibm) - os=-aix - ;; - *-knuth) - os=-mmixware - ;; - *-wec) - os=-proelf - ;; - *-winbond) - os=-proelf - ;; - *-oki) - os=-proelf - ;; - *-hp) - os=-hpux - ;; - *-hitachi) - os=-hiux - ;; - i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) - os=-sysv - ;; - *-cbm) - os=-amigaos - ;; - *-dg) - os=-dgux - ;; - *-dolphin) - os=-sysv3 - ;; - m68k-ccur) - os=-rtu - ;; - m88k-omron*) - os=-luna - ;; - *-next ) - os=-nextstep - ;; - *-sequent) - os=-ptx - ;; - *-crds) - os=-unos - ;; - *-ns) - os=-genix - ;; - i370-*) - os=-mvs - ;; - *-next) - os=-nextstep3 - ;; - *-gould) - os=-sysv - ;; - *-highlevel) - os=-bsd - ;; - *-encore) - os=-bsd - ;; - *-sgi) - os=-irix - ;; - *-siemens) - os=-sysv4 - ;; - *-masscomp) - os=-rtu - ;; - f30[01]-fujitsu | f700-fujitsu) - os=-uxpv - ;; - *-rom68k) - os=-coff - ;; - *-*bug) - os=-coff - ;; - *-apple) - os=-macos - ;; - *-atari*) - os=-mint - ;; - *) - os=-none - ;; -esac -fi - -# Here we handle the case where we know the os, and the CPU type, but not the -# manufacturer. We pick the logical manufacturer. -vendor=unknown -case $basic_machine in - *-unknown) - case $os in - -riscix*) - vendor=acorn - ;; - -sunos*) - vendor=sun - ;; - -aix*) - vendor=ibm - ;; - -beos*) - vendor=be - ;; - -hpux*) - vendor=hp - ;; - -mpeix*) - vendor=hp - ;; - -hiux*) - vendor=hitachi - ;; - -unos*) - vendor=crds - ;; - -dgux*) - vendor=dg - ;; - -luna*) - vendor=omron - ;; - -genix*) - vendor=ns - ;; - -mvs* | -opened*) - vendor=ibm - ;; - -os400*) - vendor=ibm - ;; - -ptx*) - vendor=sequent - ;; - -tpf*) - vendor=ibm - ;; - -vxsim* | -vxworks* | -windiss*) - vendor=wrs - ;; - -aux*) - vendor=apple - ;; - -hms*) - vendor=hitachi - ;; - -mpw* | -macos*) - vendor=apple - ;; - -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) - vendor=atari - ;; - -vos*) - vendor=stratus - ;; - esac - basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` - ;; -esac - -echo $basic_machine$os -exit - -# Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "timestamp='" -# time-stamp-format: "%:y-%02m-%02d" -# time-stamp-end: "'" -# End: diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/configure.in.bot.end b/portland/libxdg-vfs/xdg-vfs-kde/admin/configure.in.bot.end deleted file mode 100644 index 1bc030b..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/configure.in.bot.end +++ /dev/null @@ -1,45 +0,0 @@ -# Check if KDE_SET_PREFIX was called, and --prefix was passed to configure -if test -n "$kde_libs_prefix" -a -n "$given_prefix"; then - # And if so, warn when they don't match - if test "$kde_libs_prefix" != "$given_prefix"; then - # And if kde doesn't know about the prefix yet - echo ":"`kde-config --path exe`":" | grep ":$given_prefix/bin/:" 2>&1 >/dev/null - if test $? -ne 0; then - echo "" - echo "Warning: you chose to install this package in $given_prefix," - echo "but KDE was found in $kde_libs_prefix." - echo "For this to work, you will need to tell KDE about the new prefix, by ensuring" - echo "that KDEDIRS contains it, e.g. export KDEDIRS=$given_prefix:$kde_libs_prefix" - echo "Then restart KDE." - echo "" - fi - fi -fi - -if test x$GXX = "xyes" -a x$kde_have_gcc_visibility = "xyes" -a x$kde_cv_val_qt_gcc_visibility_patched = "xno"; then - echo "" - echo "Your GCC supports symbol visibility, but the patch for Qt supporting visibility" - echo "was not included. Therefore, GCC symbol visibility support remains disabled." - echo "" - echo "For better performance, consider including the Qt visibility supporting patch" - echo "located at:" - echo "" - echo "http://bugs.kde.org/show_bug.cgi?id=109386" - echo "" - echo "and recompile all of Qt and KDE. Note, this is entirely optional and" - echo "everything will continue to work just fine without it." - echo "" -fi - -if test "$all_tests" = "bad"; then - if test ! "$cache_file" = "/dev/null"; then - echo "" - echo "Please remove the file $cache_file after changing your setup" - echo "so that configure will find the changes next time." - echo "" - fi -else - echo "" - echo "Good - your configure finished. Start make now" - echo "" -fi diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/configure.in.min b/portland/libxdg-vfs/xdg-vfs-kde/admin/configure.in.min deleted file mode 100644 index 0dfe378..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/configure.in.min +++ /dev/null @@ -1,57 +0,0 @@ -dnl This file is part of the KDE libraries/packages -dnl Copyright (C) 2001 Stephan Kulow (coolo@kde.org) - -dnl This file is free software; you can redistribute it and/or -dnl modify it under the terms of the GNU Library General Public -dnl License as published by the Free Software Foundation; either -dnl version 2 of the License, or (at your option) any later version. - -dnl This library is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -dnl Library General Public License for more details. - -dnl You should have received a copy of the GNU Library General Public License -dnl along with this library; see the file COPYING.LIB. If not, write to -dnl the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -dnl Boston, MA 02110-1301, USA. - -# Original Author was Kalle@kde.org -# I lifted it in some mater. (Stephan Kulow) -# I used much code from Janos Farkas - -dnl Process this file with autoconf to produce a configure script. - -AC_INIT(acinclude.m4) dnl a source file from your sub dir - -dnl This is so we can use kde-common -AC_CONFIG_AUX_DIR(admin) - -dnl This ksh/zsh feature conflicts with `cd blah ; pwd` -unset CDPATH - -dnl Checking host/target/build systems, for make, install etc. -AC_CANONICAL_SYSTEM -dnl Perform program name transformation -AC_ARG_PROGRAM - -dnl Automake doc recommends to do this only here. (Janos) -AM_INIT_AUTOMAKE(@MODULENAME@, @VERSION@) dnl searches for some needed programs - -KDE_SET_PREFIX - -dnl generate the config header -AM_CONFIG_HEADER(config.h) dnl at the distribution this done - -dnl Checks for programs. -AC_CHECK_COMPILERS -AC_ENABLE_SHARED(yes) -AC_ENABLE_STATIC(no) -KDE_PROG_LIBTOOL - -dnl for NLS support. Call them in this order! -dnl WITH_NLS is for the po files -AM_KDE_WITH_NLS - -dnl KDE_USE_QT -AC_PATH_KDE diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/cvs.sh b/portland/libxdg-vfs/xdg-vfs-kde/admin/cvs.sh deleted file mode 100644 index 875b9f3..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/cvs.sh +++ /dev/null @@ -1,661 +0,0 @@ -#! /bin/sh -# -# cvs.sh -# -# This file contains support code from Makefile.common -# It defines a shell function for each known target -# and then does a case to call the correct function. - -unset MAKEFLAGS - -call_and_fix_autoconf() -{ - $AUTOCONF || exit 1 - if test -r configure.in.in ; then - perl -pi -e "print \"if test \\\"x\\\$with_fast_perl\\\" = \\\"xyes\\\"; then\ - \\n perl -i.bak \\\$ac_aux_dir/conf.change.pl \\\$CONFIG_STATUS\ - \\\\\\n || mv \\\$CONFIG_STATUS.bak \\\$CONFIG_STATUS\ - \\n rm -f \\\$CONFIG_STATUS.bak\\nfi\ - \\n\" if /^\\s*chmod\\s+.*\\+x\\s+.*CONFIG_STATUS/; s,^#line.*LINENO.*\$,/* \$& */, ;" configure - fi -} - -strip_makefile() -{ - if test ! -f $makefile_wo; then - perl -e '$in=0; while ( <> ) { $in = 1 if ($_ =~ m/^if / ); print $_ unless ($in || $_ =~ m/^include /); $in = 0 if ($_ =~ m/^endif/); }' < $makefile_am > $makefile_wo - fi -} - -check_autotool_versions() -{ -required_autoconf_version="2.53 or newer" -AUTOCONF_VERSION=`$AUTOCONF --version | head -n 1` -case $AUTOCONF_VERSION in - Autoconf*2.5* | autoconf*2.5* ) : ;; - "" ) - echo "*** AUTOCONF NOT FOUND!." - echo "*** KDE requires autoconf $required_autoconf_version" - exit 1 - ;; - * ) - echo "*** YOU'RE USING $AUTOCONF_VERSION." - echo "*** KDE requires autoconf $required_autoconf_version" - exit 1 - ;; -esac - -AUTOHEADER_VERSION=`$AUTOHEADER --version | head -n 1` -case $AUTOHEADER_VERSION in - Autoconf*2.5* | autoheader*2.5* ) : ;; - "" ) - echo "*** AUTOHEADER NOT FOUND!." - echo "*** KDE requires autoheader $required_autoconf_version" - exit 1 - ;; - * ) - echo "*** YOU'RE USING $AUTOHEADER_VERSION." - echo "*** KDE requires autoheader $required_autoconf_version" - exit 1 - ;; -esac - -AUTOMAKE_STRING=`$AUTOMAKE --version | head -n 1` -required_automake_version="1.6.1 or newer" -case $AUTOMAKE_STRING in - automake*1.5d* | automake*1.5* | automake*1.5-* ) - echo "*** YOU'RE USING $AUTOMAKE_STRING." - echo "*** KDE requires automake $required_automake_version" - exit 1 - ;; - automake*1.6.* | automake*1.7* | automake*1.8* | automake*1.9*) - echo "*** $AUTOMAKE_STRING found." - UNSERMAKE=no - ;; - "" ) - echo "*** AUTOMAKE NOT FOUND!." - echo "*** KDE requires automake $required_automake_version" - exit 1 - ;; - *unsermake* ) : - echo "*** YOU'RE USING UNSERMAKE." - echo "*** GOOD LUCK!! :)" - UNSERMAKE=unsermake - ;; - * ) - echo "*** YOU'RE USING $AUTOMAKE_STRING." - echo "*** KDE requires automake $required_automake_version" - exit 1 - ;; -esac -unset required_automake_version -} - -cvs() -{ -check_autotool_versions -acinclude_m4 - -### Make new subdirs and configure.in. -### The make calls could be optimized away here, -### with a little thought. -if test -r configure.in.in; then - rm -f configure.in - echo "*** Creating list of subdirectories" - create_subdirs - - if test -r Makefile.am.in; then - echo "*** Creating Makefile.am" - if grep '\$(top_srcdir)/Makefile.am:' $makefile_am >/dev/null; then - strip_makefile - $MAKE -f $makefile_wo top_srcdir=. ./Makefile.am || exit 1 - else - Makefile_am - fi - fi - configure_files - echo "*** Creating configure.in" - if grep '\$(top_srcdir)/configure.in:' $makefile_am >/dev/null; then - strip_makefile - $MAKE -f $makefile_wo top_srcdir=. ./configure.in || exit 1 - else - configure_in - fi -fi - -echo "*** Creating aclocal.m4" -$ACLOCAL $ACLOCALFLAGS || exit 1 -echo "*** Creating configure" -call_and_fix_autoconf - -if egrep "^AM_CONFIG_HEADER" configure.in >/dev/null 2>&1; then - echo "*** Creating config.h template" - $AUTOHEADER || exit 1 - touch config.h.in -fi - -echo "*** Creating Makefile templates" -$AUTOMAKE || exit 1 - -if test "$UNSERMAKE" = no; then - echo "*** Postprocessing Makefile templates" - perl -w admin/am_edit || exit 1 -fi - -if egrep "^cvs-local:" $makefile_am >/dev/null; then \ - strip_makefile - $MAKE -f $makefile_wo cvs-local top_srcdir=. || exit 1 -fi - -echo "*** Creating date/time stamp" -touch stamp-h.in - -echo "*** Finished" -echo " Don't forget to run ./configure" -echo " If you haven't done so in a while, run ./configure --help" -} - -dist() -{ -check_autotool_versions - -### -### First build all of the files necessary to do just "make" -### -acinclude_m4 -if test -r configure.in.in; then - rm -f configure.in - create_subdirs - - if test -r Makefile.am.in; then - if grep '\$(top_srcdir)/Makefile.am:' $makefile_am >/dev/null; then - strip_makefile - $MAKE -f $makefile_wo top_srcdir=. ./Makefile.am || exit 1 - else - Makefile_am - fi - fi - configure_files - if grep '\$(top_srcdir)/configure.in:' $makefile_am >/dev/null; then - strip_makefile - $MAKE -f $makefile_wo top_srcdir=. ./configure.in || exit 1 - else - configure_in - fi -fi -$ACLOCAL $ACLOCALFLAGS -if egrep "^AM_CONFIG_HEADER" configure.in >/dev/null 2>&1; then - echo "*** Creating config.h template" - $AUTOHEADER || exit 1 - touch config.h.in -fi -$AUTOMAKE --foreign || exit 1 -if test "$UNSERMAKE" = no; then - echo "*** Postprocessing Makefile templates" - perl -w admin/am_edit || exit 1 -fi -call_and_fix_autoconf -touch stamp-h.in -if grep "^cvs-local:" $makefile_am >/dev/null; then - strip_makefile - $MAKE -f $makefile_wo cvs-local top_srcdir=. -fi - -### -### Then make messages -### -if test -d po; then - LIST=`find ./po -name "*.po"` - for i in $LIST; do - file2=`echo $i | sed -e "s#\.po#\.gmo#"` - msgfmt -o $file2 $i || touch $file2 - done -fi -if grep "^cvs-dist-local:" $makefile_am >/dev/null; then - strip_makefile - $MAKE -f $makefile_wo cvs-dist-local top_srcdir=. -fi -} - -subdir_dist() -{ -$ACLOCAL $ACLOCALFLAGS -$AUTOHEADER -touch config.h.in -$AUTOMAKE -AUTOMAKE_STRING=`$AUTOMAKE --version | head -n 1` -case $AUTOMAKE_STRING in - *unsermake* ) : - ;; - *) - perl -w ../admin/am_edit --path=../admin -esac -call_and_fix_autoconf -touch stamp-h.in -} - -configure_in() -{ -rm -f configure.in configure.in.new -kde_use_qt_param= -test -f configure.files || { echo "need configure.files for configure.in"; exit 1; } -list=`fgrep -v "configure.in.bot" < configure.files | fgrep -v "configure.in.mid"` -: > configure.in.new -for file in $list; do - echo "dnl =======================================================" >> configure.in.new - echo "dnl FILE: $file" >> configure.in.new - echo "dnl =======================================================" >> configure.in.new - echo "" >> configure.in.new - cat $file >> configure.in.new -done -echo "KDE_CREATE_SUBDIRSLIST" >> configure.in.new -if test -f Makefile.am.in; then - subdirs=`cat subdirs` - for dir in $subdirs; do - vdir=`echo $dir | sed -e 's,[-+.@],_,g'` - echo "AM_CONDITIONAL($vdir""_SUBDIR_included, test \"x\$$vdir""_SUBDIR_included\" = xyes)" >> configure.in.new - if test -f "$dir/configure.in"; then - echo "if test \"x\$$vdir""_SUBDIR_included\" = xyes; then " >> configure.in.new - echo " AC_CONFIG_SUBDIRS($dir)" >> configure.in.new - echo "fi" >> configure.in.new - fi - done -fi - -echo "AC_CONFIG_FILES([ Makefile ])" >> configure.in.new - -if test -f inst-apps; then - topleveldirs=`cat inst-apps` -else - topleveldirs= - for dir in `ls -1d * | sort`; do - if test "$dir" != "debian" && test -d $dir; then - topleveldirs="$topleveldirs $dir" - fi - done -fi - -for topleveldir in $topleveldirs; do - if test -f $topleveldir/configure.in; then - continue - fi - if test -f $topleveldir/Makefile.am; then :; else - continue - fi - - mfs=`find $topleveldir -follow -name Makefile.am -print | fgrep -v "/." | \ - sed -e 's#\./##; s#/Makefile.am$##' | sort | sed -e 's#$#/Makefile#'` - for i in $mfs; do - echo "AC_CONFIG_FILES([ $i ])" >> configure.in.new - done -done - -files=`cat configure.files` -list=`egrep '^dnl AC_OUTPUT\(.*\)' $files | sed -e "s#^.*dnl AC_OUTPUT(\(.*\))#\1#"` -for file in $list; do - echo "AC_CONFIG_FILES([ $file ])" >> configure.in.new -done - -midfiles=`cat configure.files | fgrep "configure.in.mid"` -test -n "$midfiles" && cat $midfiles >> configure.in.new - -echo "AC_OUTPUT" >> configure.in.new -modulename= -if test -f configure.in.in; then - if head -n 2 configure.in.in | egrep "^#MIN_CONFIG\(.*\)$" > /dev/null; then - kde_use_qt_param=`cat configure.in.in | sed -n -e "s/#MIN_CONFIG(\(.*\))/\1/p"` - fi - if head -n 2 configure.in.in | egrep "^#MIN_CONFIG" > /dev/null; then - line=`grep "^AM_INIT_AUTOMAKE(" configure.in.in` - if test -n "$line"; then - modulename=`echo $line | sed -e "s#AM_INIT_AUTOMAKE(\([^,]*\),.*#\1#"` - VERSION=`echo $line | sed -e "s#AM_INIT_AUTOMAKE([^,]*, *\([^)]*\)).*#\1#"` - fi - sed -e "s#AM_INIT_AUTOMAKE([^@].*#dnl PACKAGE set before#" \ - configure.in.new > configure.in && mv configure.in configure.in.new - fi -fi -if test -z "$VERSION" || test "$VERSION" = "@VERSION@"; then - VERSION="\"3.5.1\"" -fi -if test -z "$modulename" || test "$modulename" = "@MODULENAME@"; then - modulename=`pwd`; - modulename=`basename $modulename` - esc_VERSION=`echo $VERSION | sed -e "s#[^.0-9a-zA-Z]##g"` - modulename=`echo $modulename | sed -e "s#-$esc_VERSION##"` - -fi -if test -n "$kde_use_qt_param"; then - sed -e "s#^dnl KDE_USE_QT#KDE_USE_QT($kde_use_qt_param)#" \ - configure.in.new > configure.in && mv configure.in configure.in.new -fi -sed -e "s#@MODULENAME@#$modulename#" configure.in.new | - sed -e "s#@VERSION@#$VERSION#" > configure.in -botfiles=`cat configure.files | egrep "configure.in.bot"` -test -n "$botfiles" && cat $botfiles >> configure.in -cat $admindir/configure.in.bot.end >> configure.in -rm -f configure.in.new -} - -configure_files() -{ -echo "*** Creating configure.files" -admindir=NO -for i in . .. ../.. ../../..; do - if test -x $i/admin; then admindir=$i/admin; break; fi -done -rm -f configure.files -touch configure.files -if test -f configure.in.in && head -n 2 configure.in.in | grep "^#MIN_CONFIG" > /dev/null; then - echo $admindir/configure.in.min >> configure.files -fi -test -f configure.in.in && echo configure.in.in >> configure.files -# we collect files in the subdirs and do some sorting tricks, so subsubdirs come after subdirs -if test -f inst-apps; then - inst=`cat inst-apps` - list="" - for i in $inst; do - list="$list `find $i/ -follow -name "configure.in.in" -o -name "configure.in.bot" -o -name "configure.in.mid" | \ - sed -e "s,/configure,/aaaconfigure," | sort | sed -e "s,/aaaconfigure,/configure,"`" - done -else - list=`find . -follow -name "configure.in.in" -o -name "configure.in.bot" -o -name "configure.in.mid" | \ - sed -e "s,/configure,/aaaconfigure," | sort | sed -e "s,/aaaconfigure,/configure,"` -fi -for i in $list; do if test -f $i && test `dirname $i` != "." ; then - echo $i >> configure.files -fi; done -test -f configure.in.mid && echo configure.in.mid >> configure.files -test -f configure.in.bot && echo configure.in.bot >> configure.files -if test ! -s configure.files; then - echo "There are no files to build a configure. Please check your checkout." - exit 1 -fi -} - -create_subdirs() -{ -if grep '\$(top_srcdir)/subdirs:' $makefile_am >/dev/null; then - # as many modules contain rules to create subdirs without any - # dependencies make won't create it unless there is no file. - # so we check if that's a dummy rule or one that works - rm -f subdirs.cvs.sh.$$ - if test -f subdirs; then - mv subdirs subdirs.cvs.sh.$$ - fi - strip_makefile - $MAKE -f $makefile_wo top_srcdir=. ./subdirs || exit 1 - if test -f subdirs.cvs.sh.$$; then - if test -s subdirs; then - rm subdirs.cvs.sh.$$ - else - mv subdirs.cvs.sh.$$ subdirs - fi - fi -else - subdirs -fi -} - -subdirs() -{ -dirs= -idirs= -if test -f inst-apps; then - idirs=`cat inst-apps` -else - idirs=`ls -1 | sort` -fi - -compilefirst=`sed -ne 's#^COMPILE_FIRST[ ]*=[ ]*##p' $makefile_am | head -n 1` -compilelast=`sed -ne 's#^COMPILE_LAST[ ]*=[ ]*##p' $makefile_am | head -n 1` -for i in $idirs; do - if test -f $i/Makefile.am; then - case " $compilefirst $compilelast " in - *" $i "*) ;; - *) dirs="$dirs $i" - esac - fi -done - -: > ./_SUBDIRS - -for d in $compilefirst; do - echo $d >> ./_SUBDIRS -done - -(for d in $dirs; do - list=`sed -ne "s#^COMPILE_BEFORE_$d""[ ]*=[ ]*##p" $makefile_am | head -n 1` - for s in $list; do - echo $s $d - done - list=`sed -ne "s#^COMPILE_AFTER_$d""[ ]*=[ ]*##p" $makefile_am | head -n 1` - for s in $list; do - echo $d $s - done - echo $d $d -done ) | tsort >> ./_SUBDIRS - -for d in $compilelast; do - echo $d >> ./_SUBDIRS -done - -if test -r subdirs && cmp -s subdirs _SUBDIRS; then - rm -f _SUBDIRS -fi -test -r _SUBDIRS && mv _SUBDIRS subdirs || true -} - -Makefile_am() -{ -if test -f Makefile.am.in; then - compilefirst=`sed -ne 's#^COMPILE_FIRST[ ]*=[ ]*##p' $makefile_am | head -n 1` - compilelast=`sed -ne 's#^COMPILE_LAST[ ]*=[ ]*##p' $makefile_am | head -n 1` - - idirs= - dirs= - if test -f inst-apps; then - idirs=`cat inst-apps` - else - idirs=`cat subdirs` - fi - for i in $idirs; do - case " $compilefirst $compilelast " in - *" $i "*) ;; - *) dirs="$dirs $i" - esac - done - - adds=`fgrep '$(top_srcdir)/acinclude.m4:' Makefile.am.in | sed -e 's,^[^:]*: *,,; s,\$(top_srcdir)/,,g'` - if echo "$adds" | fgrep "*" >/dev/null ; then - adds=`ls -d -1 $adds 2>/dev/null` - fgrep -v '$(top_srcdir)/acinclude.m4:' Makefile.am.in > Makefile.am.in.adds - str='$(top_srcdir)/acinclude.m4:' - for add in $adds; do - str="$str \$(top_srcdir)/$add" - done - echo $str >> Makefile.am.in.adds - else - cat Makefile.am.in > Makefile.am.in.adds - fi - - cat Makefile.am.in.adds | \ - sed -e 's,^\s*\(COMPILE_BEFORE.*\),# \1,' | \ - sed -e 's,^\s*\(COMPILE_AFTER.*\),# \1,' > Makefile.am - echo "SUBDIRS="'$(TOPSUBDIRS)' >> Makefile.am - rm Makefile.am.in.adds -fi -} - -acinclude_m4() -{ - echo "*** Creating acinclude.m4" - adds= - if grep '\$(top_srcdir)/acinclude.m4:' $makefile_am >/dev/null; then - strip_makefile - rm -f acinclude.m4 - adds=`grep '\$(top_srcdir)/acinclude.m4:' $makefile_wo | sed -e 's,^[^:]*: *,,; s,\$(top_srcdir),.,g'` - if echo $adds | fgrep "*" >/dev/null ; then - adds=`ls -d -1 $adds 2>/dev/null` - else - $MAKE -f $makefile_wo top_srcdir=. ./acinclude.m4 || exit 1 - fi - else - rm -f acinclude.m4 - fi - # if it wasn't created up to now, then we do it better - if test ! -f acinclude.m4; then - cat admin/acinclude.m4.in admin/libtool.m4.in admin/pkg.m4.in $adds > acinclude.m4 - fi -} - -package_merge() -{ -catalogs=$POFILES -for cat in $catalogs; do - msgmerge -o $cat.new $cat $PACKAGE.pot - if test -s $cat.new; then - grep -v "\"POT-Creation" $cat.new > $cat.new.2 - grep -v "\"POT-Creation" $cat >> $cat.new.1 - if diff $cat.new.1 $cat.new.2; then - rm $cat.new - else - mv $cat.new $cat - fi - rm -f $cat.new.1 $cat.new.2 - fi -done -} - -extract_messages() -{ -podir=${podir:-$PWD/po} -files=`find . -name Makefile.am | xargs egrep -l '^messages:' ` -dirs=`for i in $files; do echo \`dirname $i\`; done` -tmpname="$PWD/messages.log" -if test -z "$EXTRACTRC"; then EXTRACTRC=extractrc ; fi -if test -z "$PREPARETIPS"; then PREPARETIPS=preparetips ; fi -export EXTRACTRC PREPARETIPS - -for subdir in $dirs; do - test -z "$VERBOSE" || echo "Making messages in $subdir" - (cd $subdir - if test -n "`grep -e '^messages:.*rc.cpp' Makefile.am`"; then - $EXTRACTRC *.rc *.ui *.kcfg > rc.cpp - else - candidates=`ls -1 *.rc *.ui *.kcfg 2>/dev/null` - if test -n "$candidates"; then - echo "$subdir has *.rc, *.ui or *.kcfg files, but not correct messages line" - fi - fi - if find . -name \*.c\* -o -name \*.h\* | fgrep -v ".svn" | xargs fgrep -s -q KAboutData ; then - echo -e 'i18n("_: NAME OF TRANSLATORS\\n"\n"Your names")\ni18n("_: EMAIL OF TRANSLATORS\\n"\n"Your emails")' > _translatorinfo.cpp - else echo " " > _translatorinfo.cpp - fi - perl -e '$mes=0; while (<STDIN>) { next if (/^(if\s|else\s|endif)/); if (/^messages:/) { $mes=1; print $_; next; } if ($mes) { if (/$\\(XGETTEXT\)/ && / -o/) { s/ -o \$\(podir\)/ _translatorinfo.cpp -o \$\(podir\)/ } print $_; } else { print $_; } }' < Makefile.am | egrep -v '^include ' > _transMakefile - - kdepotpath=${includedir:-`kde-config --expandvars --install include`}/kde.pot - if ! test -f $kdepotpath; then - kdepotpath=`kde-config --expandvars --prefix`/include/kde.pot - fi - - $MAKE -s -f _transMakefile podir=$podir EXTRACTRC="$EXTRACTRC" PREPARETIPS="$PREPARETIPS" srcdir=. \ - XGETTEXT="${XGETTEXT:-xgettext} --foreign-user -C -ci18n -ki18n -ktr2i18n -kI18N_NOOP -kI18N_NOOP2 -kaliasLocale -x $kdepotpath" messages - exit_code=$? - if test "$exit_code" != 0; then - echo "make exit code: $exit_code" - fi - ) 2>&1 | grep -v '^make\[1\]' > $tmpname - test -s $tmpname && { echo $subdir ; cat "$tmpname"; } - test -f $subdir/rc.cpp && rm -f $subdir/rc.cpp - rm -f $subdir/_translatorinfo.cpp - rm -f $subdir/_transMakefile -done -rm -f $tmpname -} - -package_messages() -{ -rm -rf po.backup -mkdir po.backup - -for i in `ls -1 po/*.pot 2>/dev/null | sed -e "s#po/##"`; do - egrep -v '^#[^,]' po/$i | egrep '^.*[^ ]+.*$' | grep -v "\"POT-Creation" > po.backup/$i - cat po/$i > po.backup/backup_$i - touch -r po/$i po.backup/backup_$i - rm po/$i -done - -extract_messages - -for i in `ls -1 po.backup/*.pot 2>/dev/null | sed -e "s#po.backup/##" | egrep -v '^backup_'`; do - test -f po/$i || echo "disappeared: $i" -done -for i in `ls -1 po/*.pot 2>/dev/null | sed -e "s#po/##"`; do - sed -e 's,^"Content-Type: text/plain; charset=CHARSET\\n"$,"Content-Type: text/plain; charset=UTF-8\\n",' po/$i > po/$i.new && mv po/$i.new po/$i - #msgmerge -q -o po/$i po/$i po/$i - egrep -v '^#[^,]' po/$i | egrep '^.*[^ ]+.*$' | grep -v "\"POT-Creation" > temp.pot - if test -f po.backup/$i && ! cmp -s temp.pot po.backup/$i; then - echo "will update $i" - else - if test -f po.backup/backup_$i; then - test -z "$VERBOSE" || echo "I'm restoring $i" - mv po.backup/backup_$i po/$i - rm po.backup/$i - else - echo "will add $i" - fi - fi -done -rm -f temp.pot -rm -rf po.backup -} - -# Make sure that sorting is always done the same way -LC_ALL=C -export LC_ALL -unset LANG || : -unset LC_CTYPE || : -unset LANGUAGE || : - -unset CDPATH || : -admindir=`echo "$0" | sed 's%[\\/][^\\/][^\\/]*$%%'` -test "x$admindir" = "x$0" && admindir=. - -test "x$MAKE" = x && MAKE=make -makefile_am=Makefile.am -makefile_wo=Makefile.am.wo -if test -f Makefile.am.in; then - makefile_am=Makefile.am.in - makefile_wo=Makefile.am.in.wo - rm -f $makefile_wo -fi - -# Call script to find autoconf and friends. Uses eval since the script outputs -# sh-compatible code. -eval `$admindir/detect-autoconf.pl` - -### -### Main -### - -arg=`echo $1 | tr .- __` -case $arg in - cvs | dist | subdir_dist | configure_in | configure_files | subdirs | \ - cvs_clean | package_merge | package_messages | Makefile_am | acinclude_m4 | extract_messages ) $arg ;; - configure ) call_and_fix_autoconf ;; - * ) echo "Usage: cvs.sh <target>" - echo "Target can be one of:" - echo " cvs svn dist" - echo " configure.in configure.files" - echo " package-merge package-messages" - echo "" - echo "Usage: anything but $1" - exit 1 ;; -esac - -if test -f $makefile_wo; then - rm $makefile_wo -fi - -exit 0 diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/debianrules b/portland/libxdg-vfs/xdg-vfs-kde/admin/debianrules deleted file mode 100755 index 25897f2..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/debianrules +++ /dev/null @@ -1,43 +0,0 @@ -#!/usr/bin/perl -w - -use Shell qw(mv cp mkdir rm) ; -use File::Find; -use Cwd; - -$origPwd = `pwd`; -chomp $origPwd; - -$kde_prefix = "/usr"; -$sysconfdir = "/etc"; -$kde_includedir = "$kde_prefix/include/kde"; -$infodir = "$kde_prefix/share/info"; -$mandir = "$kde_prefix/share/man"; -$qtdir = "/usr/share/qt3"; - -$kde_cgidir = "$kde_prefix/lib/cgi-bin"; -$kde_confdir = "$sysconfdir/kde3"; -$kde_htmldir = "$kde_prefix/share/doc/kde/HTML"; - -if (defined $ENV{DEB_BUILD_OPTIONS} && - $ENV{DEB_BUILD_OPTIONS} =~ /\bnostrip\b/) { - $enable_debug="--enable-debug=full"; -} else { - $enable_debug="--disable-debug"; -} - -if (@ARGV && $ARGV[0] eq 'echodirs') { - print STDOUT "export kde_prefix=$kde_prefix\n"; - print STDOUT "export sysconfdir=$sysconfdir\n"; - print STDOUT "export kde_includedir=$kde_includedir\n"; - print STDOUT "export infodir=$infodir\n"; - print STDOUT "export mandir=$mandir\n"; - print STDOUT "export qtdir=$qtdir\n"; - - print STDOUT "export kde_cgidir=$kde_cgidir\n"; - print STDOUT "export kde_confdir=$kde_confdir\n"; - print STDOUT "export kde_htmldir=$kde_htmldir\n"; - - print STDOUT "configkde=$enable_debug --disable-rpath --prefix=\$(kde_prefix) --sysconfdir=\$(sysconfdir) --includedir=\$(kde_includedir) --infodir=\$(infodir) --mandir=\$(mandir) --with-qt-dir=\$(qtdir)\n"; - - exit -} diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/depcomp b/portland/libxdg-vfs/xdg-vfs-kde/admin/depcomp deleted file mode 100755 index 88b3a13..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/depcomp +++ /dev/null @@ -1,529 +0,0 @@ -#! /bin/sh -# depcomp - compile a program generating dependencies as side-effects - -scriptversion=2005-05-14.22 - -# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -# 02110-1301, USA. - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>. - -case $1 in - '') - echo "$0: No command. Try \`$0 --help' for more information." 1>&2 - exit 1; - ;; - -h | --h*) - cat <<\EOF -Usage: depcomp [--help] [--version] PROGRAM [ARGS] - -Run PROGRAMS ARGS to compile a file, generating dependencies -as side-effects. - -Environment variables: - depmode Dependency tracking mode. - source Source file read by `PROGRAMS ARGS'. - object Object file output by `PROGRAMS ARGS'. - DEPDIR directory where to store dependencies. - depfile Dependency file to output. - tmpdepfile Temporary file to use when outputing dependencies. - libtool Whether libtool is used (yes/no). - -Report bugs to <bug-automake@gnu.org>. -EOF - exit $? - ;; - -v | --v*) - echo "depcomp $scriptversion" - exit $? - ;; -esac - -if test -z "$depmode" || test -z "$source" || test -z "$object"; then - echo "depcomp: Variables source, object and depmode must be set" 1>&2 - exit 1 -fi - -# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po. -depfile=${depfile-`echo "$object" | - sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`} -tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} - -rm -f "$tmpdepfile" - -# Some modes work just like other modes, but use different flags. We -# parameterize here, but still list the modes in the big case below, -# to make depend.m4 easier to write. Note that we *cannot* use a case -# here, because this file can only contain one case statement. -if test "$depmode" = hp; then - # HP compiler uses -M and no extra arg. - gccflag=-M - depmode=gcc -fi - -if test "$depmode" = dashXmstdout; then - # This is just like dashmstdout with a different argument. - dashmflag=-xM - depmode=dashmstdout -fi - -case "$depmode" in -gcc3) -## gcc 3 implements dependency tracking that does exactly what -## we want. Yay! Note: for some reason libtool 1.4 doesn't like -## it if -MD -MP comes after the -MF stuff. Hmm. - "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" - stat=$? - if test $stat -eq 0; then : - else - rm -f "$tmpdepfile" - exit $stat - fi - mv "$tmpdepfile" "$depfile" - ;; - -gcc) -## There are various ways to get dependency output from gcc. Here's -## why we pick this rather obscure method: -## - Don't want to use -MD because we'd like the dependencies to end -## up in a subdir. Having to rename by hand is ugly. -## (We might end up doing this anyway to support other compilers.) -## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like -## -MM, not -M (despite what the docs say). -## - Using -M directly means running the compiler twice (even worse -## than renaming). - if test -z "$gccflag"; then - gccflag=-MD, - fi - "$@" -Wp,"$gccflag$tmpdepfile" - stat=$? - if test $stat -eq 0; then : - else - rm -f "$tmpdepfile" - exit $stat - fi - rm -f "$depfile" - echo "$object : \\" > "$depfile" - alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz -## The second -e expression handles DOS-style file names with drive letters. - sed -e 's/^[^:]*: / /' \ - -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" -## This next piece of magic avoids the `deleted header file' problem. -## The problem is that when a header file which appears in a .P file -## is deleted, the dependency causes make to die (because there is -## typically no way to rebuild the header). We avoid this by adding -## dummy dependencies for each header file. Too bad gcc doesn't do -## this for us directly. - tr ' ' ' -' < "$tmpdepfile" | -## Some versions of gcc put a space before the `:'. On the theory -## that the space means something, we add a space to the output as -## well. -## Some versions of the HPUX 10.20 sed can't process this invocation -## correctly. Breaking it into two sed invocations is a workaround. - sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -hp) - # This case exists only to let depend.m4 do its work. It works by - # looking at the text of this script. This case will never be run, - # since it is checked for above. - exit 1 - ;; - -sgi) - if test "$libtool" = yes; then - "$@" "-Wp,-MDupdate,$tmpdepfile" - else - "$@" -MDupdate "$tmpdepfile" - fi - stat=$? - if test $stat -eq 0; then : - else - rm -f "$tmpdepfile" - exit $stat - fi - rm -f "$depfile" - - if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files - echo "$object : \\" > "$depfile" - - # Clip off the initial element (the dependent). Don't try to be - # clever and replace this with sed code, as IRIX sed won't handle - # lines with more than a fixed number of characters (4096 in - # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; - # the IRIX cc adds comments like `#:fec' to the end of the - # dependency line. - tr ' ' ' -' < "$tmpdepfile" \ - | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ - tr ' -' ' ' >> $depfile - echo >> $depfile - - # The second pass generates a dummy entry for each header file. - tr ' ' ' -' < "$tmpdepfile" \ - | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ - >> $depfile - else - # The sourcefile does not contain any dependencies, so just - # store a dummy comment line, to avoid errors with the Makefile - # "include basename.Plo" scheme. - echo "#dummy" > "$depfile" - fi - rm -f "$tmpdepfile" - ;; - -aix) - # The C for AIX Compiler uses -M and outputs the dependencies - # in a .u file. In older versions, this file always lives in the - # current directory. Also, the AIX compiler puts `$object:' at the - # start of each line; $object doesn't have directory information. - # Version 6 uses the directory in both cases. - stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'` - tmpdepfile="$stripped.u" - if test "$libtool" = yes; then - "$@" -Wc,-M - else - "$@" -M - fi - stat=$? - - if test -f "$tmpdepfile"; then : - else - stripped=`echo "$stripped" | sed 's,^.*/,,'` - tmpdepfile="$stripped.u" - fi - - if test $stat -eq 0; then : - else - rm -f "$tmpdepfile" - exit $stat - fi - - if test -f "$tmpdepfile"; then - outname="$stripped.o" - # Each line is of the form `foo.o: dependent.h'. - # Do two passes, one to just change these to - # `$object: dependent.h' and one to simply `dependent.h:'. - sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile" - sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile" - else - # The sourcefile does not contain any dependencies, so just - # store a dummy comment line, to avoid errors with the Makefile - # "include basename.Plo" scheme. - echo "#dummy" > "$depfile" - fi - rm -f "$tmpdepfile" - ;; - -icc) - # Intel's C compiler understands `-MD -MF file'. However on - # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c - # ICC 7.0 will fill foo.d with something like - # foo.o: sub/foo.c - # foo.o: sub/foo.h - # which is wrong. We want: - # sub/foo.o: sub/foo.c - # sub/foo.o: sub/foo.h - # sub/foo.c: - # sub/foo.h: - # ICC 7.1 will output - # foo.o: sub/foo.c sub/foo.h - # and will wrap long lines using \ : - # foo.o: sub/foo.c ... \ - # sub/foo.h ... \ - # ... - - "$@" -MD -MF "$tmpdepfile" - stat=$? - if test $stat -eq 0; then : - else - rm -f "$tmpdepfile" - exit $stat - fi - rm -f "$depfile" - # Each line is of the form `foo.o: dependent.h', - # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'. - # Do two passes, one to just change these to - # `$object: dependent.h' and one to simply `dependent.h:'. - sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile" - # Some versions of the HPUX 10.20 sed can't process this invocation - # correctly. Breaking it into two sed invocations is a workaround. - sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" | - sed -e 's/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -tru64) - # The Tru64 compiler uses -MD to generate dependencies as a side - # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'. - # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put - # dependencies in `foo.d' instead, so we check for that too. - # Subdirectories are respected. - dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` - test "x$dir" = "x$object" && dir= - base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` - - if test "$libtool" = yes; then - # With Tru64 cc, shared objects can also be used to make a - # static library. This mecanism is used in libtool 1.4 series to - # handle both shared and static libraries in a single compilation. - # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d. - # - # With libtool 1.5 this exception was removed, and libtool now - # generates 2 separate objects for the 2 libraries. These two - # compilations output dependencies in in $dir.libs/$base.o.d and - # in $dir$base.o.d. We have to check for both files, because - # one of the two compilations can be disabled. We should prefer - # $dir$base.o.d over $dir.libs/$base.o.d because the latter is - # automatically cleaned when .libs/ is deleted, while ignoring - # the former would cause a distcleancheck panic. - tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4 - tmpdepfile2=$dir$base.o.d # libtool 1.5 - tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5 - tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504 - "$@" -Wc,-MD - else - tmpdepfile1=$dir$base.o.d - tmpdepfile2=$dir$base.d - tmpdepfile3=$dir$base.d - tmpdepfile4=$dir$base.d - "$@" -MD - fi - - stat=$? - if test $stat -eq 0; then : - else - rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" - exit $stat - fi - - for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" - do - test -f "$tmpdepfile" && break - done - if test -f "$tmpdepfile"; then - sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" - # That's a tab and a space in the []. - sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" - else - echo "#dummy" > "$depfile" - fi - rm -f "$tmpdepfile" - ;; - -#nosideeffect) - # This comment above is used by automake to tell side-effect - # dependency tracking mechanisms from slower ones. - -dashmstdout) - # Important note: in order to support this mode, a compiler *must* - # always write the preprocessed file to stdout, regardless of -o. - "$@" || exit $? - - # Remove the call to Libtool. - if test "$libtool" = yes; then - while test $1 != '--mode=compile'; do - shift - done - shift - fi - - # Remove `-o $object'. - IFS=" " - for arg - do - case $arg in - -o) - shift - ;; - $object) - shift - ;; - *) - set fnord "$@" "$arg" - shift # fnord - shift # $arg - ;; - esac - done - - test -z "$dashmflag" && dashmflag=-M - # Require at least two characters before searching for `:' - # in the target name. This is to cope with DOS-style filenames: - # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise. - "$@" $dashmflag | - sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile" - rm -f "$depfile" - cat < "$tmpdepfile" > "$depfile" - tr ' ' ' -' < "$tmpdepfile" | \ -## Some versions of the HPUX 10.20 sed can't process this invocation -## correctly. Breaking it into two sed invocations is a workaround. - sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -dashXmstdout) - # This case only exists to satisfy depend.m4. It is never actually - # run, as this mode is specially recognized in the preamble. - exit 1 - ;; - -makedepend) - "$@" || exit $? - # Remove any Libtool call - if test "$libtool" = yes; then - while test $1 != '--mode=compile'; do - shift - done - shift - fi - # X makedepend - shift - cleared=no - for arg in "$@"; do - case $cleared in - no) - set ""; shift - cleared=yes ;; - esac - case "$arg" in - -D*|-I*) - set fnord "$@" "$arg"; shift ;; - # Strip any option that makedepend may not understand. Remove - # the object too, otherwise makedepend will parse it as a source file. - -*|$object) - ;; - *) - set fnord "$@" "$arg"; shift ;; - esac - done - obj_suffix="`echo $object | sed 's/^.*\././'`" - touch "$tmpdepfile" - ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" - rm -f "$depfile" - cat < "$tmpdepfile" > "$depfile" - sed '1,2d' "$tmpdepfile" | tr ' ' ' -' | \ -## Some versions of the HPUX 10.20 sed can't process this invocation -## correctly. Breaking it into two sed invocations is a workaround. - sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" "$tmpdepfile".bak - ;; - -cpp) - # Important note: in order to support this mode, a compiler *must* - # always write the preprocessed file to stdout. - "$@" || exit $? - - # Remove the call to Libtool. - if test "$libtool" = yes; then - while test $1 != '--mode=compile'; do - shift - done - shift - fi - - # Remove `-o $object'. - IFS=" " - for arg - do - case $arg in - -o) - shift - ;; - $object) - shift - ;; - *) - set fnord "$@" "$arg" - shift # fnord - shift # $arg - ;; - esac - done - - "$@" -E | - sed -n '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' | - sed '$ s: \\$::' > "$tmpdepfile" - rm -f "$depfile" - echo "$object : \\" > "$depfile" - cat < "$tmpdepfile" >> "$depfile" - sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -msvisualcpp) - # Important note: in order to support this mode, a compiler *must* - # always write the preprocessed file to stdout, regardless of -o, - # because we must use -o when running libtool. - "$@" || exit $? - IFS=" " - for arg - do - case "$arg" in - "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") - set fnord "$@" - shift - shift - ;; - *) - set fnord "$@" "$arg" - shift - shift - ;; - esac - done - "$@" -E | - sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile" - rm -f "$depfile" - echo "$object : \\" > "$depfile" - . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" - echo " " >> "$depfile" - . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -none) - exec "$@" - ;; - -*) - echo "Unknown depmode $depmode" 1>&2 - exit 1 - ;; -esac - -exit 0 - -# Local Variables: -# mode: shell-script -# sh-indentation: 2 -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" -# End: diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/deps.am b/portland/libxdg-vfs/xdg-vfs-kde/admin/deps.am deleted file mode 100644 index e8f5015..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/deps.am +++ /dev/null @@ -1,19 +0,0 @@ -$(top_srcdir)/acinclude.m4: $(top_srcdir)/admin/acinclude.m4.in $(top_srcdir)/admin/libtool.m4.in $(top_srcdir)/admin/cvs.sh $(top_srcdir)/admin/pkg.m4.in - @cd $(top_srcdir) && $(SHELL) admin/cvs.sh acinclude_m4 - -$(top_srcdir)/configure.in: $(top_srcdir)/subdirs $(top_srcdir)/configure.files $(top_srcdir)/admin/cvs.sh - @cd $(top_srcdir) && $(SHELL) admin/cvs.sh configure_in - -$(top_srcdir)/configure.files: $(top_srcdir)/subdirs $(CONF_FILES) - @cd $(top_srcdir) && $(SHELL) admin/cvs.sh configure.files $(top_srcdir)/admin/cvs.sh - -$(top_srcdir)/Makefile.am: $(top_srcdir)/Makefile.am.in $(top_srcdir)/subdirs $(top_srcdir)/admin/cvs.sh - @cd $(top_srcdir) && $(SHELL) admin/cvs.sh Makefile_am - -$(top_srcdir)/subdirs: $(top_srcdir)/Makefile.am.in $(top_srcdir)/admin/cvs.sh - @cd $(top_srcdir) && $(SHELL) admin/cvs.sh subdirs - -# defining default rules for files that may not be present -$(top_srcdir)/Makefile.am.in: -$(CONF_FILES): - diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/detect-autoconf.pl b/portland/libxdg-vfs/xdg-vfs-kde/admin/detect-autoconf.pl deleted file mode 100755 index 7166bce..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/detect-autoconf.pl +++ /dev/null @@ -1,173 +0,0 @@ -#!/usr/bin/env perl - -# Try to locate best version of auto* -# By Michael Pyne <michael.pyne@kdemail.net> -# -# Copyright (c) 2005. -# This code is public domain. You may use it however you like (including -# relicensing). - -# Emulate the 'which' program. -sub which -{ - my $prog = shift; - my @paths = split(/:/, $ENV{'PATH'}); - - for $path (@paths) - { - return "$path/$prog" if -x "$path/$prog"; - } - - return ""; -} - -# Subroutine to determine the highest installed version of the given program, -# searching from the given paths. -sub findBest -{ - my ($program, @paths) = @_; - my $best_version_found = '0'; # Deliberately a string. - my %versions; - my %minimumVersions = ( - 'autoconf' => '2.5', - 'automake' => '1.6', - ); - - # Allow user to use environment variable to override search. - return $ENV{uc $program} if $ENV{uc $program}; - - for $prefix (@paths) - { - @files = glob "$prefix/$program*"; - for $file (@files) - { - # Don't check non-executable scripts. - next unless -x $file; - - ($version) = $file =~ /$prefix\/$program-?(.*)$/; - $version =~ s/-|\.//g; - - # Special case some programs to make sure it has a minimum version. - if (not $version and exists $minimumVersions{$program}) - { - my $min_version = $minimumVersions{$program}; - my $versionOutput = `$program --version 2>/dev/null | head -n 1`; - - # If we can't run the script to get the version it likely won't work later. - next unless $versionOutput; - - # Use number.number for version (we don't need the excess in general). - ($versionOutput) = ($versionOutput =~ /(\d\.\d)/); - - # Use lt to do lexicographical comparison of strings (which should be - # equivalent and doesn't involve issues with floating point conversions). - if (not $versionOutput or $versionOutput lt $min_version) - { - next; - } - } - - # If no version suffix then use it in favor of a versioned autotool - # since the ever-popular WANT_AUTOFOO should then work (in theory). - return $file unless $version; - - # Emulate 'which', and abort if we've already seen this version. - next if exists $versions{$version}; - - # Save filename of program. - $versions{$version} = $file; - - # Use string comparison so that e.g. 253a will be > 253 but < 254. - if ($version gt $best_version_found) - { - $best_version_found = $version; - } - } - } - - return $versions{$best_version_found}; -} - -# Find an appropriate "which" program for later use by the shell script calling -# us. -sub findWhich -{ - for $candidate ('type -p', 'which', 'type') - { - $test = `$candidate sh 2>/dev/null`; - chomp $test; - - return $candidate if -x $test; - } -} - -# Uses which() to find a program unless the user provided its path in the -# environment (the upper case program name is searched). -sub findProgram -{ - $suffix = ""; # For use if @_ has only one param. - my ($program, $suffix) = @_; - - return $ENV{uc $program} if $ENV{uc $program}; - return which("$program$suffix"); -} - -# SCRIPT STARTS. - -# Search in path. -@paths = split(/:/, $ENV{'PATH'}); - -# Make sure at least /usr/bin and /usr/local/bin are in this search. -unshift @paths, '/usr/local/bin' unless grep $_ eq '/usr/local/bin', @paths; -unshift @paths, '/usr/bin' unless grep $_ eq '/usr/bin', @paths; - -$autoconf = findBest('autoconf', @paths); -($autoconf_suffix) = $autoconf =~ /.*autoconf(.*)$/; - -# Find matching autoconf companions. -$autoheader = findProgram('autoheader', $autoconf_suffix); -$autom4te = findProgram('autom4te', $autoconf_suffix); - -# Get best automake, and look for unsermake to possibly override it. -$automake = findBest('automake', @paths); -$unsermake = ""; -# backward compatible: if $UNSERMAKE points to a path, use it -$unsermake = findProgram('unsermake') if (defined($ENV{'UNSERMAKE'}) and $ENV{'UNSERMAKE'} =~ /\//); -# new compatible: if it says 'yes', use the one from path -$unsermake = which('unsermake') if ($ENV{'UNSERMAKE'} ne 'no'); - -($automake_suffix) = $automake =~ /.*automake(.*)$/; - -# Use unsermake if we found it. -$automake = "$unsermake -c" if $unsermake; - -# Find matching automake companions. -$aclocal = findProgram('aclocal', $automake_suffix); - -$which = findWhich(); - -# Make sure we have all of the needed programs. -for $i (qw'autoconf autoheader autom4te automake aclocal') -{ - unless(${$i}) - { - print "# Unable to find $i!!\n"; - exit 1; - } -} - -# Print results in eval-able form. -print <<EOF; -AUTOCONF="$autoconf" -AUTOHEADER="$autoheader" -AUTOM4TE="$autom4te" - -AUTOMAKE="$automake" -ACLOCAL="$aclocal" - -WHICH="$which" - -export AUTOCONF AUTOHEADER AUTOM4TE AUTOMAKE ACLOCAL WHICH -EOF - -exit 0; diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/doxygen.sh b/portland/libxdg-vfs/xdg-vfs-kde/admin/doxygen.sh deleted file mode 100644 index 98cb9ba..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/doxygen.sh +++ /dev/null @@ -1,872 +0,0 @@ -#! /bin/sh -# -# doxygen.sh Copyright (C) 2005 by Adriaan de Groot -# Based on some code from Doxyfile.am, among other things. -# License: GPL version 2. -# See file COPYING in kdelibs for details. - -echo "*** doxygen.sh" - -# Recurse handling is a little complicated, since normally -# subdir (given on the command-line) processing doesn't recurse -# but you can force it to do so. -recurse=1 -recurse_given=NO -use_modulename=1 -cleanup=YES - -while test -n "$1" ; do -case "x$1" in -"x--no-cleanup" ) - cleanup=NO - ;; -"x--no-recurse" ) - recurse=0 - recurse_given=YES - ;; -"x--recurse" ) - recurse=1 - recurse_given=YES - ;; -"x--no-modulename" ) - use_modulename=0 - ;; -"x--modulename" ) - use_modulename=1 - ;; -"x--help" ) - echo "doxygen.sh usage:" - echo "doxygen.sh [--no-recurse] [--no-modulename] <srcdir> [<subdir>]" - exit 2 - ;; -x--doxdatadir=* ) - DOXDATA=`echo $1 | sed -e 's+--doxdatadir=++'` - ;; -x--installdir=*) - PREFIX=`echo $1 | sed -e 's+--installdir=++'` - ;; -x--* ) - echo "Unknown option: $1" - exit 1 - ;; -* ) - top_srcdir="$1" - break - ;; -esac -shift -done - - -### Sanity check the mandatory "top srcdir" argument. -if test -z "$top_srcdir" ; then - echo "Usage: doxygen.sh <top_srcdir>" - exit 1 -fi -if ! test -d "$top_srcdir" ; then - echo "top_srcdir ($top_srcdir) is not a directory." - exit 1 -fi - -### Normalize top_srcdir so it is an absolute path. -if ! expr "x$top_srcdir" : "x/" > /dev/null ; then - top_srcdir=`cd "$top_srcdir" 2> /dev/null && pwd` - if ! test -d "$top_srcdir" ; then - echo "top_srcdir ($top_srcdir) is not a directory." - exit 1 - fi -fi - - - -### Sanity check and guess QTDOCDIR. -if test -z "$QTDOCDIR" ; then - if test -z "$QTDIR" ; then - for i in /usr/X11R6/share/doc/qt/html - do - QTDOCDIR="$i" - test -d "$QTDOCDIR" && break - done - else - for i in share/doc/qt/html doc/html - do - QTDOCDIR="$QTDIR/$i" - test -d "$QTDOCDIR" && break - done - fi -fi -if test -z "$QTDOCDIR" || test \! -d "$QTDOCDIR" ; then - if test -z "$QTDOCDIR" ; then - echo "* QTDOCDIR could not be guessed." - else - echo "* QTDOCDIR does not name a directory." - fi - if test -z "$QTDOCTAG" ; then - echo "* QTDOCDIR set to \"\"" - QTDOCDIR="" - else - echo "* But I'll use $QTDOCDIR anyway because of QTDOCTAG." - fi -fi - -### Get the "top srcdir", also its name, and handle the case that subdir "." -### is given (which would be top_srcdir then, so it's equal to none-given -### but no recursion either). -### -# top_srcdir="$1" # Already set by options processing -module_name=`basename "$top_srcdir"` -subdir="$2" -if test "x." = "x$subdir" ; then - subdir="" - if test "x$recurse_given" = "xNO" ; then - recurse=0 - fi -fi -if test "x" != "x$subdir" ; then - # If no recurse option given explicitly, default to - # no recurse when processing subdirs given on the command-line. - if test "x$recurse_given" = "xNO" ; then - recurse=0 - fi -fi - -if test -z "$DOXDATA" || test ! -d "$DOXDATA" ; then - if test -n "$DOXDATA" ; then - echo "* \$DOXDATA is '$DOXDATA' which does not name a directory" - fi - DOXDATA="$top_srcdir/doc/common" -fi - -if ! test -d "$DOXDATA" ; then - echo "* \$DOXDATA does not name a directory ( or is unset ), tried \"$DOXDATA\"" - exit 1 -fi - -if test -n "$PREFIX" && test ! -d "$PREFIX" ; then - echo "* \$PREFIX does not name a directory, tried \"$PREFIX\"" - echo "* \$PREFIX is disabled." - PREFIX="" -fi - -### We need some values from top-level files, which -### are not preserved between invocations of this -### script, so factor it out for easy use. -create_doxyfile_in() -{ - eval `grep 'VERSION="' "$top_srcdir/admin/cvs.sh"` - echo "PROJECT_NUMBER = $VERSION" > Doxyfile.in - grep ^KDE_INIT_DOXYGEN "$top_srcdir/configure.in.in" | \ - sed -e 's+[^[]*\[\([^]]*\)+PROJECT_NAME = "\1"+' \ - -e 's+].*++' >> Doxyfile.in -} - -apidoxdir="$module_name"-apidocs -test "x$use_modulename" = "x0" && apidoxdir="apidocs" - -### If we're making the top subdir, create the structure -### for the apidox and initialize it. Otherwise, just use the -### structure assumed to be there. -if test -z "$subdir" ; then - if ! test -d "$apidoxdir" ; then - mkdir "$apidoxdir" > /dev/null 2>&1 - fi - if ! cd "$apidoxdir" > /dev/null 2>&1 ; then - echo "Cannot create and cd into $apidoxdir" - exit 1 - fi - - test -f "Doxyfile.in" || create_doxyfile_in - - # Copy in logos and the like - for i in "favicon.ico" "kde_gear_64.png" - do - cp "$DOXDATA/$i" . > /dev/null 2> /dev/null - done - for i in "$top_srcdir/doc/api/Dox-"*.png - do - T=`basename "$i" | sed -e 's+Dox-++'` - test -f "$i" && cp "$i" "./$T" > /dev/null 2> /dev/null - done - - top_builddir="." - srcdir="$1" - subdir="." -else - if ! cd "$apidoxdir" > /dev/null 2>&1 ; then - echo "Cannot cd into $apidoxdir -- maybe you need to" - echo "build the top-level dox first." - exit 1 - fi - - if test "x1" = "x$recurse" ; then - # OK, so --recurse was requested - if ! test -f "subdirs.top" ; then - echo "* No subdirs.top available in the $apidoxdir." - echo "* The --recurse option will be ignored." - recurse=0 - fi - fi -fi - -### Read a single line (TODO: support \ continuations) from the Makefile.am. -### Used to extract variable assignments from it. -extract_line() -{ - file="$2" ; test -z "$file" && file="$srcdir/Makefile.am" - pattern=`echo "$1" | tr + .` - grep "^$1" "$file" | \ - sed -e "s+$pattern.*=\s*++" -} - -### Handle the COMPILE_{FIRST,LAST,BEFORE,AFTER} part of Makefile.am -### in the toplevel. Copied from admin/cvs.sh. Licence presumed LGPL). -create_subdirs() -{ -echo "* Sorting top-level subdirs" -dirs= -idirs= -if test -f "$top_srcdir/inst-apps"; then - idirs=`cat "$top_srcdir/"inst-apps` -else - idirs=`cd "$top_srcdir" && ls -1 | sort` -fi - -compilefirst="" -compilelast="" -if test -f "$top_srcdir/"Makefile.am.in ; then - compilefirst=`sed -ne 's#^COMPILE_FIRST[ ]*=[ ]*##p' "$top_srcdir/"Makefile.am.in | head -n 1` - compilelast=`sed -ne 's#^COMPILE_LAST[ ]*=[ ]*##p' "$top_srcdir/"Makefile.am.in | head -n 1` -fi -for i in $idirs; do - if test -f "$top_srcdir/$i"/Makefile.am; then - case " $compilefirst $compilelast " in - *" $i "*) ;; - *) dirs="$dirs $i" - esac - fi -done - -: > ./_SUBDIRS - -for d in $compilefirst; do - echo $d >> ./_SUBDIRS -done - -(for d in $dirs; do - list="" - if test -f "$top_srcdir/"Makefile.am.in ; then - list=`sed -ne "s#^COMPILE_BEFORE_$d""[ ]*=[ ]*##p" "$top_srcdir/"Makefile.am.in | head -n 1` - fi - for s in $list; do - echo $s $d - done - list="" - if test -f "$top_srcdir/"Makefile.am.in ; then - list=`sed -ne "s#^COMPILE_AFTER_$d""[ ]*=[ ]*##p" "$top_srcdir/"Makefile.am.in | head -n 1` - fi - for s in $list; do - echo $d $s - done - echo $d $d -done ) | tsort >> ./_SUBDIRS - -for d in $compilelast; do - echo $d >> ./_SUBDIRS -done - -test -r _SUBDIRS && mv _SUBDIRS subdirs.top || true -} - - -### Add HTML header, footer, CSS tags to Doxyfile. -### Assumes $subdir is set. Argument is a string -### to stick in front of the file if needed. -apidox_htmlfiles() -{ - dox_header="$top_srcdir/doc/api/$1header.html" - dox_footer="$top_srcdir/doc/api/$1footer.html" - dox_css="$top_srcdir/doc/api/doxygen.css" - test -f "$dox_header" || dox_header="$DOXDATA/$1header.html" - test -f "$dox_footer" || dox_footer="$DOXDATA/$1footer.html" - test -f "$dox_css" || dox_css="$DOXDATA/doxygen.css" - - echo "HTML_HEADER = $dox_header" >> "$subdir/Doxyfile" ; \ - echo "HTML_FOOTER = $dox_footer" >> "$subdir/Doxyfile" ; \ - echo "HTML_STYLESHEET = $dox_css" >> "$subdir/Doxyfile" -} - -apidox_specials() -{ - line=`extract_line DOXYGEN_PROJECTNAME "$1"` - test -n "$line" && echo "PROJECT_NAME = \"$line\"" >> "$2" -} - -apidox_local() -{ - for i in "$top_srcdir/doc/api/Doxyfile.local" - do - if test -f "$i" ; then - cat "$i" >> "$subdir/Doxyfile" - break - fi - done -} - -### Post-process HTML files by substituting in the menu files -# -# In non-top directories, both <!-- menu --> and <!-- gmenu --> -# are calculated and replaced. Top directories get an empty <!-- menu --> -# if any. -doxyndex() -{ - # Special case top-level to have an empty MENU. - if test "x$subdir" = "x." ; then - MENU="" - htmldir="." - htmltop="$top_builddir" # Just ., presumably - echo "* Post-processing top-level files" - else - MENU="<ul>" - htmldir="$subdir/html" - htmltop="$top_builddir.." # top_builddir ends with / - echo "* Post-processing files in $htmldir" - - # Build a little PHP file that maps class names to file - # names, for the quick-class-picker functionality. - # (The quick-class-picker is disabled due to styling - # problems in IE & FF). - ( - echo "<?php \$map = array("; \ - for htmlfile in `find $htmldir/ -type f -name "class[A-Z]*.html" | grep -v "\-members.html$"`; do - classname=`echo $htmlfile | sed -e "s,.*/class\\(.*\\).html,\1," -e "s,_1_1,::,g" -e "s,_01, ,g" -e "s,_4,>,g" -e "s+_00+,+g" -e "s+_3+<+g" | tr "[A-Z]" "[a-z]"` - echo " \"$classname\" => \"$htmlfile\"," - done | sort ; \ - echo ") ?>" - ) > "$subdir/classmap.inc" - - # This is a list of pairs, with / separators so we can use - # basename and dirname (a crude shell hack) to split them - # into parts. For each, if the file part exists (as a html - # file) tack it onto the MENU variable as a <li> with link. - for i in "Main Page/index" \ - "Modules/modules" \ - "Namespace List/namespaces" \ - "Class Hierarchy/hierarchy" \ - "Alphabetical List/classes" \ - "Class List/annotated" \ - "File List/files" \ - "Directories/dirs" \ - "Namespace Members/namespacemembers" \ - "Class Members/functions" \ - "Related Pages/pages" - do - NAME=`dirname "$i"` - FILE=`basename "$i"` - test -f "$htmldir/$FILE.html" && MENU="$MENU<li><a href=\"$FILE.html\">$NAME</a></li>" - done - - MENU="$MENU</ul>" - fi - - - # Get the list of global Menu entries. - GMENU=`cat subdirs | tr -d '\n'` - - PMENU=`grep '<!-- pmenu' "$htmldir/index.html" | sed -e 's+.*pmenu *++' -e 's+ *-->++' | awk '{ c=split($0,a,"/"); for (j=1; j<=c; j++) { printf " / <a href=\""; if (j==c) { printf("."); } for (k=j; k<c; k++) { printf "../"; } if (j<c) { printf("../html/index.html"); } printf "\">%s</a>\n" , a[j]; } }' | tr -d '\n'` - - # Map the PHP file into HTML options so that - # it can be substituted in for the quick-class-picker. - CMENU="" - # For now, leave the CMENU disabled - CMENUBEGIN="<!--" - CMENUEND="-->" - - if test "x$subdir" = "x." ; then - # Disable CMENU on toplevel anyway - CMENUBEGIN="<!--" - CMENUEND="-->" - else - test -f "$subdir/classmap.inc" && \ - CMENU=`grep '=>' "$subdir/classmap.inc" | sed -e 's+"\([^"]*\)" => "'"$subdir/html/"'\([^"]*\)"+<option value="\2">\1<\/option>+' | tr -d '\n'` - - if ! test -f "$subdir/classmap.inc" || ! grep "=>" "$subdir/classmap.inc" > /dev/null 2>&1 ; then - CMENUBEGIN="<!--" - CMENUEND="-->" - fi - fi - - # Now substitute in the MENU in every file. This depends - # on HTML_HEADER (ie. header.html) containing the - # <!-- menu --> comment. - for i in "$htmldir"/*.html - do - if test -f "$i" ; then - sed -e "s+<!-- menu -->+$MENU+" \ - -e "s+<!-- gmenu -->+$GMENU+" \ - -e "s+<!-- pmenu.*-->+$PMENU+" \ - -e "s+<!-- cmenu.begin -->+$CMENUBEGIN+" \ - -e "s+<!-- cmenu.end -->+$CMENUEND+" \ - < "$i" | sed -e "s+@topdir@+$htmltop+g" > "$i.new" && mv "$i.new" "$i" - sed -e "s+<!-- cmenu -->+$CMENU+" < "$i" > "$i.new" - test -s "$i.new" && mv "$i.new" "$i" - fi - done -} - - - - - - -### Handle the Doxygen processing of a toplevel directory. -apidox_toplevel() -{ - echo "" - echo "*** Creating API documentation main page for $module_name" - echo "*" - rm -f "Doxyfile" - for i in "$top_srcdir/doc/api/Doxyfile.global" \ - "$top_srcdir/admin/Doxyfile.global" \ - "$DOXDATA/Doxyfile.global" - do - if test -f "$i" ; then - cp "$i" Doxyfile - break - fi - done - - if test ! -f "Doxyfile" ; then - echo "* Cannot create Doxyfile." - exit 1 - fi - - cat "$top_builddir/Doxyfile.in" >> Doxyfile - - - echo "INPUT = $top_srcdir" >> Doxyfile - echo "OUTPUT_DIRECTORY = $top_builddir" >> Doxyfile ; \ - echo "FILE_PATTERNS = *.dox" >> Doxyfile ; \ - echo "RECURSIVE = NO" >> Doxyfile ; \ - echo "ALPHABETICAL_INDEX = NO" >> Doxyfile ; \ - echo "HTML_OUTPUT = ." >> Doxyfile ; \ - apidox_htmlfiles "main" - - # KDevelop has a top-level Makefile.am with settings. - for i in "$top_srcdir/Makefile.am.in" "$top_srcdir/Makefile.am" - do - if test -f "$i" ; then - grep '^DOXYGEN_SET_' "$i" | \ - sed -e 's+DOXYGEN_SET_++' -e "s+@topdir@+$top_srcdir+" >> Doxyfile - apidox_specials "$srcdir/Makefile.am" "$subdir/Doxyfile" - - break - fi - done - - apidox_local - - doxygen Doxyfile - - ( cd "$top_srcdir" && grep -l ^include.*Doxyfile.am `find . -name Makefile.am` ) | sed -e 's+/Makefile.am$++' -e 's+^\./++' | sort > subdirs.in - for i in `cat subdirs.in` - do - test "x." = "x$i" && continue; - - dir=`dirname "$i"` - file=`basename "$i"` - if test "x." = "x$dir" ; then - dir="" - else - dir="$dir/" - fi - indent=`echo "$dir" | sed -e 's+[^/]*/+\ \ +g' | sed -e 's+&+\\\&+g'` - entryname=`extract_line DOXYGEN_SET_PROJECT_NAME "$top_srcdir/$dir/$file/Makefile.am"` - test -z "$entryname" && entryname="$file" - - if grep DOXYGEN_EMPTY "$top_srcdir/$dir/$file/Makefile.am" > /dev/null 2>&1 ; then - echo "<li>$indent$file</li>" - else - echo "<li>$indent<a href=\"@topdir@/$dir$file/html/index.html\">$entryname</a></li>" - fi - done > subdirs - - doxyndex -} - -### Handle the Doxygen processing of a non-toplevel directory. -apidox_subdir() -{ - echo "" - echo "*** Creating apidox in $subdir" - echo "*" - rm -f "$subdir/Doxyfile" - if ! test -d "$top_srcdir/$subdir" ; then - echo "* No source (sub)directory $subdir" - return - fi - for i in "$top_srcdir/doc/api/Doxyfile.global" \ - "$top_srcdir/admin/Doxyfile.global" \ - "$DOXDATA/Doxyfile.global" - do - if test -f "$i" ; then - cp "$i" "$subdir/Doxyfile" - break - fi - done - - - test -f "Doxyfile.in" || create_doxyfile_in - cat "Doxyfile.in" >> "$subdir/Doxyfile" - - echo "PROJECT_NAME = \"$subdir\"" >> "$subdir/Doxyfile" - echo "INPUT = $srcdir" >> "$subdir/Doxyfile" - echo "OUTPUT_DIRECTORY = ." >> "$subdir/Doxyfile" - if grep -l "$subdir/" subdirs.in > /dev/null 2>&1 ; then - echo "RECURSIVE = NO" >> "$subdir/Doxyfile" - fi - echo "HTML_OUTPUT = $subdir/html" >> "$subdir/Doxyfile" - echo "GENERATE_TAGFILE = $subdir/$subdirname.tag" >> "$subdir/Doxyfile" - test -d "$top_srcdir/doc/api" && \ - echo "IMAGE_PATH = $top_srcdir/doc/api" >> "$subdir/Doxyfile" - - apidox_htmlfiles "" - - # Makefile.ams may contain overrides to our settings, - # so copy them in. - grep '^DOXYGEN_SET_' "$srcdir/Makefile.am" | \ - sed -e 's+DOXYGEN_SET_++' >> "$subdir/Doxyfile" - apidox_specials "$srcdir/Makefile.am" "$subdir/Doxyfile" - - excludes=`extract_line DOXYGEN_EXCLUDE` - if test -n "$excludes"; then - patterns="" - dirs="" - for item in `echo "$excludes"`; do - if test -d "$top_srcdir/$subdir/$item"; then - dirs="$dirs $top_srcdir/$subdir/$item/" - else - patterns="$patterns $item" - fi - done - echo "EXCLUDE_PATTERNS += $patterns" >> "$subdir/Doxyfile" - echo "EXCLUDE += $dirs" >> "$subdir/Doxyfile" - fi - - echo "TAGFILES = \\" >> "$subdir/Doxyfile" - ## For now, don't support \ continued references lines - tags=`extract_line DOXYGEN_REFERENCES` - for i in $tags qt ; do - tagsubdir=`dirname $i` ; tag=`basename $i` - tagpath="" - not_found="" - - if test "x$tagsubdir" = "x." ; then - tagsubdir="" - else - tagsubdir="$tagsubdir/" - fi - - # Find location of tag file - if test -f "$tagsubdir$tag/$tag.tag" ; then - file="$tagsubdir$tag/$tag.tag" - loc="$tagsubdir$tag/html" - else - # This checks for dox built with_out_ --no-modulename - # in the same build dir as this dox run was started in. - file=`ls -1 ../*-apidocs/"$tagsubdir$tag/$tag.tag" 2> /dev/null` - - if test -n "$file" ; then - loc=`echo "$file" | sed -e "s/$tag.tag\$/html/"` - else - # If the tag file doesn't exist yet, but should - # because we have the right dirs here, queue - # this directory for re-processing later. - if test -d "$top_srcdir/$tagsubdir$tag" ; then - echo "* Need to re-process $subdir for tag $i" - echo "$subdir" >> "subdirs.later" - else - # Re-check in $PREFIX if needed. - test -n "$PREFIX" && \ - file=`cd "$PREFIX" && \ - ls -1 *-apidocs/"$tagsubdir$tag/$tag.tag" 2> /dev/null` - - # If something is found, patch it up. The location must be - # relative to the installed location of the dox and the - # file must be absolute. - if test -n "$file" ; then - loc=`echo "../$file" | sed -e "s/$tag.tag\$/html/"` - file="$PREFIX/$file" - echo "* Tags for $tagsubdir$tag will only work when installed." - not_found="YES" - fi - fi - fi - fi - if test "$tag" = "qt" ; then - if test -z "$QTDOCDIR" ; then - echo " $file" >> "$subdir/Doxyfile" - else - if test -z "$file" ; then - # Really no Qt tags - echo "" >> "$subdir/Doxyfile" - else - echo " $file=$QTDOCDIR" >> "$subdir/Doxyfile" - fi - fi - else - if test -n "$file" ; then - test -z "$not_found" && echo "* Found tag $file" - echo " $file=../$top_builddir$loc \\" >> "$subdir/Doxyfile" - fi - fi - done - - apidox_local - - if ! grep '^DOXYGEN_EMPTY' "$srcdir/Makefile.am" > /dev/null 2>&1 ; then - doxygen "$subdir/Doxyfile" - doxyndex - fi -} - -### Run a given subdir by setting up global variables first. -do_subdir() -{ - subdir=`echo "$1" | sed -e 's+/$++'` - srcdir="$top_srcdir/$subdir" - subdirname=`basename "$subdir"` - mkdir -p "$subdir" 2> /dev/null - if ! test -d "$subdir" ; then - echo "Can't create dox subdirectory $subdir" - return - fi - top_builddir=`echo "/$subdir" | sed -e 's+/[^/]*+../+g'` - apidox_subdir -} - - -### Create installdox-slow in the toplevel -create_installdox() -{ -# Fix up the installdox script so it accepts empty args -# -# This code is copied from the installdox generated by Doxygen, -# copyright by Dimitri van Heesch and released under the GPL. -# This does a _slow_ update of the dox, because it loops -# over the given substitutions instead of assuming all the -# needed ones are given. -# -cat <<\EOF -#! /usr/bin/env perl - -%subst = () ; -$quiet = 0; - -if (open(F,"search.cfg")) -{ - $_=<F> ; s/[ \t\n]*$//g ; $subst{"_doc"} = $_; - $_=<F> ; s/[ \t\n]*$//g ; $subst{"_cgi"} = $_; -} - -while ( @ARGV ) { - $_ = shift @ARGV; - if ( s/^-// ) { - if ( /^l(.*)/ ) { - $v = ($1 eq "") ? shift @ARGV : $1; - ($v =~ /\/$/) || ($v .= "/"); - $_ = $v; - if ( /(.+)\@(.+)/ ) { - $subst{$1} = $2; - } else { - print STDERR "Argument $_ is invalid for option -l\n"; - &usage(); - } - } - elsif ( /^q/ ) { - $quiet = 1; - } - elsif ( /^\?|^h/ ) { - &usage(); - } - else { - print STDERR "Illegal option -$_\n"; - &usage(); - } - } - else { - push (@files, $_ ); - } -} - - -if ( ! @files ) { - if (opendir(D,".")) { - foreach $file ( readdir(D) ) { - $match = ".html"; - next if ( $file =~ /^\.\.?$/ ); - ($file =~ /$match/) && (push @files, $file); - ($file =~ "tree.js") && (push @files, $file); - } - closedir(D); - } -} - -if ( ! @files ) { - print STDERR "Warning: No input files given and none found!\n"; -} - -foreach $f (@files) -{ - if ( ! $quiet ) { - print "Editing: $f...\n"; - } - $oldf = $f; - $f .= ".bak"; - unless (rename $oldf,$f) { - print STDERR "Error: cannot rename file $oldf\n"; - exit 1; - } - if (open(F,"<$f")) { - unless (open(G,">$oldf")) { - print STDERR "Error: opening file $oldf for writing\n"; - exit 1; - } - if ($oldf ne "tree.js") { - while (<F>) { - foreach $sub (keys %subst) { - s/doxygen\=\"$sub\:([^ \"\t\>\<]*)\" (href|src)=\"\1/doxygen\=\"$sub:$subst{$sub}\" \2=\"$subst{$sub}/g; - print G "$_"; - } - } - } - else { - while (<F>) { - foreach $sub (keys %subst) { - s/\"$sub\:([^ \"\t\>\<]*)\", \"\1/\"$sub:$subst{$sub}\" ,\"$subst{$sub}/g; - print G "$_"; - } - } - } - } - else { - print STDERR "Warning file $f does not exist\n"; - } - unlink $f; -} - -sub usage { - print STDERR "Usage: installdox [options] [html-file [html-file ...]]\n"; - print STDERR "Options:\n"; - print STDERR " -l tagfile\@linkName tag file + URL or directory \n"; - print STDERR " -q Quiet mode\n\n"; - exit 1; -} -EOF -} - -# Do only the subdirs that match the RE passed in as $1 -do_subdirs_re() -{ - RE=`echo "$1" | sed -e 's+/$++'` - - # Here's a queue of dirs to re-process later when - # all the rest have been done already. - > subdirs.later - - # subdirs.top lists _all_ subdirs of top in the order they - # should be handled; subdirs.in lists those dirs that contain - # dox. So the intersection of the two is the ordered list - # of top-level subdirs that contain dox. - # - # subdirs.top also doesn't contain ".", so that special - # case can be ignored in the loop. - - - ( - for i in `grep "^$RE" subdirs.top` - do - if test "x$i" = "x." ; then - continue - fi - # Calculate intersection of this element and the - # set of dox dirs. - if grep "^$i\$" subdirs.in > /dev/null 2>&1 ; then - echo "$i" - mkdir -p "$i" 2> /dev/null - - # Handle the subdirs of this one - for j in `grep "$i/" subdirs.in` - do - echo "$j" - mkdir -p "$j" 2> /dev/null - done - fi - done - - # Now we still need to handle whatever is left - for i in `cat subdirs.in` - do - test -d "$i" || echo "$i" - mkdir -p "$i" 2> /dev/null - done - ) > subdirs.sort - for i in `cat subdirs.sort` - do - do_subdir "$i" - done - - if test -s "subdirs.later" ; then - sort subdirs.later | uniq > subdirs.sort - for i in `cat subdirs.sort` - do - : > subdirs.later - echo "*** Reprocessing $i" - do_subdir "$i" - test -s "subdirs.later" && echo "* Some tag files were still not found." - done - fi -} - -if test "x." = "x$top_builddir" ; then - apidox_toplevel - create_subdirs - create_installdox > installdox-slow - if test "x$recurse" = "x1" ; then - if test "x$module_name" = "xkdelibs" ; then - if test -z "$QTDOCTAG" && test -d "$QTDOCDIR" && \ - test ! -f "qt/qt.tag" ; then - # Special case: create a qt tag file. - echo "*** Creating a tag file for the Qt library:" - mkdir qt - doxytag -t qt/qt.tag "$QTDOCDIR" > /dev/null 2>&1 - fi - fi - if test -n "$QTDOCTAG" && test -r "$QTDOCTAG" ; then - echo "*** Copying tag file for the Qt library:" - mkdir qt - cp "$QTDOCTAG" qt/qt.tag - fi - - do_subdirs_re "." - - fi -else - if test "x$recurse" = "x1" ; then - do_subdirs_re "$subdir" - else - do_subdir "$subdir" - fi -fi - - -# At the end of a run, clean up stuff. -if test "YES" = "$cleanup" ; then - rm -f subdirs.in subdirs.later subdirs.sort subdirs.top Doxyfile.in - rm -f `find . -name Doxyfile` - rm -f qt/qt.tag - rmdir qt > /dev/null 2>&1 -fi - - -exit 0 - diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/install-sh b/portland/libxdg-vfs/xdg-vfs-kde/admin/install-sh deleted file mode 100755 index 4d4a951..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/install-sh +++ /dev/null @@ -1,323 +0,0 @@ -#!/bin/sh -# install - install a program, script, or datafile - -scriptversion=2005-05-14.22 - -# This originates from X11R5 (mit/util/scripts/install.sh), which was -# later released in X11R6 (xc/config/util/install.sh) with the -# following copyright and license. -# -# Copyright (C) 1994 X Consortium -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to -# deal in the Software without restriction, including without limitation the -# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -# sell copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN -# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- -# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -# -# Except as contained in this notice, the name of the X Consortium shall not -# be used in advertising or otherwise to promote the sale, use or other deal- -# ings in this Software without prior written authorization from the X Consor- -# tium. -# -# -# FSF changes to this file are in the public domain. -# -# Calling this script install-sh is preferred over install.sh, to prevent -# `make' implicit rules from creating a file called install from it -# when there is no Makefile. -# -# This script is compatible with the BSD install script, but was written -# from scratch. It can only install one file at a time, a restriction -# shared with many OS's install programs. - -# set DOITPROG to echo to test this script - -# Don't use :- since 4.3BSD and earlier shells don't like it. -doit="${DOITPROG-}" - -# put in absolute paths if you don't have them in your path; or use env. vars. - -mvprog="${MVPROG-mv}" -cpprog="${CPPROG-cp}" -chmodprog="${CHMODPROG-chmod}" -chownprog="${CHOWNPROG-chown}" -chgrpprog="${CHGRPPROG-chgrp}" -stripprog="${STRIPPROG-strip}" -rmprog="${RMPROG-rm}" -mkdirprog="${MKDIRPROG-mkdir}" - -chmodcmd="$chmodprog 0755" -chowncmd= -chgrpcmd= -stripcmd= -rmcmd="$rmprog -f" -mvcmd="$mvprog" -src= -dst= -dir_arg= -dstarg= -no_target_directory= - -usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE - or: $0 [OPTION]... SRCFILES... DIRECTORY - or: $0 [OPTION]... -t DIRECTORY SRCFILES... - or: $0 [OPTION]... -d DIRECTORIES... - -In the 1st form, copy SRCFILE to DSTFILE. -In the 2nd and 3rd, copy all SRCFILES to DIRECTORY. -In the 4th, create DIRECTORIES. - -Options: --c (ignored) --d create directories instead of installing files. --g GROUP $chgrpprog installed files to GROUP. --m MODE $chmodprog installed files to MODE. --o USER $chownprog installed files to USER. --s $stripprog installed files. --t DIRECTORY install into DIRECTORY. --T report an error if DSTFILE is a directory. ---help display this help and exit. ---version display version info and exit. - -Environment variables override the default commands: - CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG -" - -while test -n "$1"; do - case $1 in - -c) shift - continue;; - - -d) dir_arg=true - shift - continue;; - - -g) chgrpcmd="$chgrpprog $2" - shift - shift - continue;; - - --help) echo "$usage"; exit $?;; - - -m) chmodcmd="$chmodprog $2" - shift - shift - continue;; - - -o) chowncmd="$chownprog $2" - shift - shift - continue;; - - -s) stripcmd=$stripprog - shift - continue;; - - -t) dstarg=$2 - shift - shift - continue;; - - -T) no_target_directory=true - shift - continue;; - - --version) echo "$0 $scriptversion"; exit $?;; - - *) # When -d is used, all remaining arguments are directories to create. - # When -t is used, the destination is already specified. - test -n "$dir_arg$dstarg" && break - # Otherwise, the last argument is the destination. Remove it from $@. - for arg - do - if test -n "$dstarg"; then - # $@ is not empty: it contains at least $arg. - set fnord "$@" "$dstarg" - shift # fnord - fi - shift # arg - dstarg=$arg - done - break;; - esac -done - -if test -z "$1"; then - if test -z "$dir_arg"; then - echo "$0: no input file specified." >&2 - exit 1 - fi - # It's OK to call `install-sh -d' without argument. - # This can happen when creating conditional directories. - exit 0 -fi - -for src -do - # Protect names starting with `-'. - case $src in - -*) src=./$src ;; - esac - - if test -n "$dir_arg"; then - dst=$src - src= - - if test -d "$dst"; then - mkdircmd=: - chmodcmd= - else - mkdircmd=$mkdirprog - fi - else - # Waiting for this to be detected by the "$cpprog $src $dsttmp" command - # might cause directories to be created, which would be especially bad - # if $src (and thus $dsttmp) contains '*'. - if test ! -f "$src" && test ! -d "$src"; then - echo "$0: $src does not exist." >&2 - exit 1 - fi - - if test -z "$dstarg"; then - echo "$0: no destination specified." >&2 - exit 1 - fi - - dst=$dstarg - # Protect names starting with `-'. - case $dst in - -*) dst=./$dst ;; - esac - - # If destination is a directory, append the input filename; won't work - # if double slashes aren't ignored. - if test -d "$dst"; then - if test -n "$no_target_directory"; then - echo "$0: $dstarg: Is a directory" >&2 - exit 1 - fi - dst=$dst/`basename "$src"` - fi - fi - - # This sed command emulates the dirname command. - dstdir=`echo "$dst" | sed -e 's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'` - - # Make sure that the destination directory exists. - - # Skip lots of stat calls in the usual case. - if test ! -d "$dstdir"; then - defaultIFS=' - ' - IFS="${IFS-$defaultIFS}" - - oIFS=$IFS - # Some sh's can't handle IFS=/ for some reason. - IFS='%' - set x `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'` - shift - IFS=$oIFS - - pathcomp= - - while test $# -ne 0 ; do - pathcomp=$pathcomp$1 - shift - if test ! -d "$pathcomp"; then - $mkdirprog "$pathcomp" - # mkdir can fail with a `File exist' error in case several - # install-sh are creating the directory concurrently. This - # is OK. - test -d "$pathcomp" || exit - fi - pathcomp=$pathcomp/ - done - fi - - if test -n "$dir_arg"; then - $doit $mkdircmd "$dst" \ - && { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \ - && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \ - && { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \ - && { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; } - - else - dstfile=`basename "$dst"` - - # Make a couple of temp file names in the proper directory. - dsttmp=$dstdir/_inst.$$_ - rmtmp=$dstdir/_rm.$$_ - - # Trap to clean up those temp files at exit. - trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 - trap '(exit $?); exit' 1 2 13 15 - - # Copy the file name to the temp name. - $doit $cpprog "$src" "$dsttmp" && - - # and set any options; do chmod last to preserve setuid bits. - # - # If any of these fail, we abort the whole thing. If we want to - # ignore errors from any of these, just make sure not to ignore - # errors from the above "$doit $cpprog $src $dsttmp" command. - # - { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \ - && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \ - && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } \ - && { test -z "$chmodcmd" || $doit $chmodcmd "$dsttmp"; } && - - # Now rename the file to the real destination. - { $doit $mvcmd -f "$dsttmp" "$dstdir/$dstfile" 2>/dev/null \ - || { - # The rename failed, perhaps because mv can't rename something else - # to itself, or perhaps because mv is so ancient that it does not - # support -f. - - # Now remove or move aside any old file at destination location. - # We try this two ways since rm can't unlink itself on some - # systems and the destination file might be busy for other - # reasons. In this case, the final cleanup might fail but the new - # file should still install successfully. - { - if test -f "$dstdir/$dstfile"; then - $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \ - || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \ - || { - echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2 - (exit 1); exit 1 - } - else - : - fi - } && - - # Now rename the file to the real destination. - $doit $mvcmd "$dsttmp" "$dstdir/$dstfile" - } - } - fi || { (exit 1); exit 1; } -done - -# The final little trick to "correctly" pass the exit status to the exit trap. -{ - (exit 0); exit 0 -} - -# Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" -# End: diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/libtool.m4.in b/portland/libxdg-vfs/xdg-vfs-kde/admin/libtool.m4.in deleted file mode 100644 index ce9f5ab..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/libtool.m4.in +++ /dev/null @@ -1,5891 +0,0 @@ -# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- -## Copyright 1996, 1997, 1998, 1999, 2000, 2001 -## Free Software Foundation, Inc. -## Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996 -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of the GNU General Public License as published by -## the Free Software Foundation; either version 2 of the License, or -## (at your option) any later version. -## -## This program is distributed in the hope that it will be useful, but -## WITHOUT ANY WARRANTY; without even the implied warranty of -## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -## General Public License for more details. -## -## You should have received a copy of the GNU General Public License -## along with this program; if not, write to the Free Software -## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -## -## As a special exception to the GNU General Public License, if you -## distribute this file as part of a program that contains a -## configuration script generated by Autoconf, you may include it under -## the same distribution terms that you use for the rest of that program. - -# serial 47 AC_PROG_LIBTOOL - - -# AC_PROVIDE_IFELSE(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED) -# ----------------------------------------------------------- -# If this macro is not defined by Autoconf, define it here. -m4_ifdef([AC_PROVIDE_IFELSE], - [], - [m4_define([AC_PROVIDE_IFELSE], - [m4_ifdef([AC_PROVIDE_$1], - [$2], [$3])])]) - - -# AC_PROG_LIBTOOL -# --------------- -AC_DEFUN([AC_PROG_LIBTOOL], -[AC_REQUIRE([_AC_PROG_LIBTOOL])dnl -dnl If AC_PROG_CXX has already been expanded, run AC_LIBTOOL_CXX -dnl immediately, otherwise, hook it in at the end of AC_PROG_CXX. - AC_PROVIDE_IFELSE([AC_PROG_CXX], - [AC_LIBTOOL_CXX], - [define([AC_PROG_CXX], defn([AC_PROG_CXX])[AC_LIBTOOL_CXX - ])]) -dnl And a similar setup for Fortran 77 support - AC_PROVIDE_IFELSE([AC_PROG_F77], - [AC_LIBTOOL_F77], - [define([AC_PROG_F77], defn([AC_PROG_F77])[AC_LIBTOOL_F77 -])]) - -dnl Quote A][M_PROG_GCJ so that aclocal doesn't bring it in needlessly. -dnl If either AC_PROG_GCJ or A][M_PROG_GCJ have already been expanded, run -dnl AC_LIBTOOL_GCJ immediately, otherwise, hook it in at the end of both. - AC_PROVIDE_IFELSE([AC_PROG_GCJ], - [AC_LIBTOOL_GCJ], - [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], - [AC_LIBTOOL_GCJ], - [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ], - [AC_LIBTOOL_GCJ], - [ifdef([AC_PROG_GCJ], - [define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[AC_LIBTOOL_GCJ])]) - ifdef([A][M_PROG_GCJ], - [define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[AC_LIBTOOL_GCJ])]) - ifdef([LT_AC_PROG_GCJ], - [define([LT_AC_PROG_GCJ], - defn([LT_AC_PROG_GCJ])[AC_LIBTOOL_GCJ])])])]) -])])# AC_PROG_LIBTOOL - - -# _AC_PROG_LIBTOOL -# ---------------- -AC_DEFUN([_AC_PROG_LIBTOOL], -[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl -AC_BEFORE([$0],[AC_LIBTOOL_CXX])dnl -AC_BEFORE([$0],[AC_LIBTOOL_F77])dnl -AC_BEFORE([$0],[AC_LIBTOOL_GCJ])dnl - -# This can be used to rebuild libtool when needed -LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh" - -# Always use our own libtool. -LIBTOOL='$(SHELL) $(top_builddir)/libtool --silent' -AC_SUBST(LIBTOOL)dnl - -# Prevent multiple expansion -define([AC_PROG_LIBTOOL], []) -])# _AC_PROG_LIBTOOL - - -# AC_LIBTOOL_SETUP -# ---------------- -AC_DEFUN([AC_LIBTOOL_SETUP], -[AC_PREREQ(2.50)dnl -AC_REQUIRE([AC_ENABLE_SHARED])dnl -AC_REQUIRE([AC_ENABLE_STATIC])dnl -AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl -AC_REQUIRE([AC_CANONICAL_HOST])dnl -AC_REQUIRE([AC_CANONICAL_BUILD])dnl -AC_REQUIRE([AC_PROG_CC])dnl -AC_REQUIRE([AC_PROG_LD])dnl -AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl -AC_REQUIRE([AC_PROG_NM])dnl - -AC_REQUIRE([AC_PROG_LN_S])dnl -AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl -# Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers! -AC_REQUIRE([AC_OBJEXT])dnl -AC_REQUIRE([AC_EXEEXT])dnl -dnl - -AC_LIBTOOL_SYS_MAX_CMD_LEN -AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE -AC_LIBTOOL_OBJDIR - -AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl -_LT_AC_PROG_ECHO_BACKSLASH - -case $host_os in -aix3*) - # AIX sometimes has problems with the GCC collect2 program. For some - # reason, if we set the COLLECT_NAMES environment variable, the problems - # vanish in a puff of smoke. - if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES - fi - ;; -esac - -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -Xsed='sed -e s/^X//' -[sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g'] - -# 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 avoid accidental globbing in evaled expressions -no_glob_subst='s/\*/\\\*/g' - -# Constants: -rm="rm -f" - -# Global variables: -default_ofile=libtool -can_build_shared=yes - -# All known linkers require a `.a' archive for static linking (except M$VC, -# which needs '.lib'). -libext=a -ltmain="$ac_aux_dir/ltmain.sh" -ofile="$default_ofile" -with_gnu_ld="$lt_cv_prog_gnu_ld" - -AC_CHECK_TOOL(AR, ar, false) -AC_CHECK_TOOL(RANLIB, ranlib, :) -AC_CHECK_TOOL(STRIP, strip, :) - -old_CC="$CC" -old_CFLAGS="$CFLAGS" - -# Set sane defaults for various variables -test -z "$AR" && AR=ar -test -z "$AR_FLAGS" && AR_FLAGS=cru -test -z "$AS" && AS=as -test -z "$CC" && CC=cc -test -z "$LTCC" && LTCC=$CC -test -z "$DLLTOOL" && DLLTOOL=dlltool -test -z "$LD" && LD=ld -test -z "$LN_S" && LN_S="ln -s" -test -z "$MAGIC_CMD" && MAGIC_CMD=file -test -z "$NM" && NM=nm -test -z "$SED" && SED=sed -test -z "$OBJDUMP" && OBJDUMP=objdump -test -z "$RANLIB" && RANLIB=: -test -z "$STRIP" && STRIP=: -test -z "$ac_objext" && ac_objext=o - -# Determine commands to create old-style static archives. -old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs' -old_postinstall_cmds='chmod 644 $oldlib' -old_postuninstall_cmds= - -if test -n "$RANLIB"; then - case $host_os in - openbsd*) - old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds" - ;; - *) - old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds" - ;; - esac - old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" -fi - -# Only perform the check for file, if the check method requires it -case $deplibs_check_method in -file_magic*) - if test "$file_magic_cmd" = '$MAGIC_CMD'; then - AC_PATH_MAGIC - fi - ;; -esac - -AC_PROVIDE_IFELSE([AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no) -AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL], -enable_win32_dll=yes, enable_win32_dll=no) - -AC_ARG_ENABLE([libtool-lock], - [AC_HELP_STRING([--disable-libtool-lock], - [avoid locking (might break parallel builds)])]) -test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes - -AC_ARG_WITH([pic], - [AC_HELP_STRING([--with-pic], - [try to use only PIC/non-PIC objects @<:@default=use both@:>@])], - [pic_mode="$withval"], - [pic_mode=default]) -test -z "$pic_mode" && pic_mode=default - -# Use C for the default configuration in the libtool script -tagname= -AC_LIBTOOL_LANG_C_CONFIG -_LT_AC_TAGCONFIG -])# AC_LIBTOOL_SETUP - - -# _LT_AC_SYS_COMPILER -# ------------------- -AC_DEFUN([_LT_AC_SYS_COMPILER], -[AC_REQUIRE([AC_PROG_CC])dnl - -# If no C compiler was specified, use CC. -LTCC=${LTCC-"$CC"} - -# Allow CC to be a program name with arguments. -compiler=$CC -])# _LT_AC_SYS_COMPILER - - -# _LT_AC_SYS_LIBPATH_AIX -# ---------------------- -# Links a minimal program and checks the executable -# for the system default hardcoded library path. In most cases, -# this is /usr/lib:/lib, but when the MPI compilers are used -# the location of the communication and MPI libs are included too. -# If we don't find anything, use the default library path according -# to the aix ld manual. -AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX], -[AC_LINK_IFELSE(AC_LANG_PROGRAM,[ -aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } -}'` -# Check for a 64-bit object if we didn't find anything. -if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } -}'`; fi],[]) -if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi -])# _LT_AC_SYS_LIBPATH_AIX - - -# _LT_AC_SHELL_INIT(ARG) -# ---------------------- -AC_DEFUN([_LT_AC_SHELL_INIT], -[ifdef([AC_DIVERSION_NOTICE], - [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)], - [AC_DIVERT_PUSH(NOTICE)]) -$1 -AC_DIVERT_POP -])# _LT_AC_SHELL_INIT - - -# _LT_AC_PROG_ECHO_BACKSLASH -# -------------------------- -# Add some code to the start of the generated configure script which -# will find an echo command which doesn't interpret backslashes. -AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH], -[_LT_AC_SHELL_INIT([ -# Check that we are running under the correct shell. -SHELL=${CONFIG_SHELL-/bin/sh} - -case X$ECHO in -X*--fallback-echo) - # Remove one level of quotation (which was required for Make). - ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','` - ;; -esac - -echo=${ECHO-echo} -if test "X[$]1" = X--no-reexec; then - # Discard the --no-reexec flag, and continue. - shift -elif test "X[$]1" = X--fallback-echo; then - # Avoid inline document here, it may be left over - : -elif test "X`($echo '\t') 2>/dev/null`" = 'X\t' ; then - # Yippee, $echo works! - : -else - # Restart under the correct shell. - exec $SHELL "[$]0" --no-reexec ${1+"[$]@"} -fi - -if test "X[$]1" = X--fallback-echo; then - # used as fallback echo - shift - cat <<EOF -[$]* -EOF - exit 0 -fi - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi - -if test -z "$ECHO"; then -if test "X${echo_test_string+set}" != Xset; then -# find a string as large as possible, as long as the shell can cope with it - for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do - # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ... - if (echo_test_string="`eval $cmd`") 2>/dev/null && - echo_test_string="`eval $cmd`" && - (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null - then - break - fi - done -fi - -if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - : -else - # The Solaris, AIX, and Digital Unix default echo programs unquote - # backslashes. This makes it impossible to quote backslashes using - # echo "$something" | sed 's/\\/\\\\/g' - # - # So, first we look for a working echo in the user's PATH. - - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for dir in $PATH /usr/ucb; do - IFS="$lt_save_ifs" - if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && - test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - echo="$dir/echo" - break - fi - done - IFS="$lt_save_ifs" - - if test "X$echo" = Xecho; then - # We didn't find a better echo, so look for alternatives. - if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - # This shell has a builtin print -r that does the trick. - echo='print -r' - elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) && - test "X$CONFIG_SHELL" != X/bin/ksh; then - # If we have ksh, try running configure again with it. - ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} - export ORIGINAL_CONFIG_SHELL - CONFIG_SHELL=/bin/ksh - export CONFIG_SHELL - exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"} - else - # Try using printf. - echo='printf %s\n' - if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - # Cool, printf works - : - elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && - test "X$echo_testing_string" = 'X\t' && - echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL - export CONFIG_SHELL - SHELL="$CONFIG_SHELL" - export SHELL - echo="$CONFIG_SHELL [$]0 --fallback-echo" - elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && - test "X$echo_testing_string" = 'X\t' && - echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - echo="$CONFIG_SHELL [$]0 --fallback-echo" - else - # maybe with a smaller string... - prev=: - - for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do - if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null - then - break - fi - prev="$cmd" - done - - if test "$prev" != 'sed 50q "[$]0"'; then - echo_test_string=`eval $prev` - export echo_test_string - exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"} - else - # Oops. We lost completely, so just stick with echo. - echo=echo - fi - fi - fi - fi -fi -fi - -# Copy echo and quote the copy suitably for passing to libtool from -# the Makefile, instead of quoting the original, which is used later. -ECHO=$echo -if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then - ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo" -fi - -AC_SUBST(ECHO) -])])# _LT_AC_PROG_ECHO_BACKSLASH - - -# _LT_AC_LOCK -# ----------- -AC_DEFUN([_LT_AC_LOCK], -[AC_ARG_ENABLE([libtool-lock], - [AC_HELP_STRING([--disable-libtool-lock], - [avoid locking (might break parallel builds)])]) -test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes - -# Some flags need to be propagated to the compiler or linker for good -# libtool support. -case $host in -ia64-*-hpux*) - # Find out which ABI we are using. - echo 'int i;' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then - case `/usr/bin/file conftest.$ac_objext` in - *ELF-32*) - HPUX_IA64_MODE="32" - ;; - *ELF-64*) - HPUX_IA64_MODE="64" - ;; - esac - fi - rm -rf conftest* - ;; -*-*-irix6*) - # Find out which ABI we are using. - echo '[#]line __oline__ "configure"' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then - if test "$lt_cv_prog_gnu_ld" = yes; then - case `/usr/bin/file conftest.$ac_objext` in - *32-bit*) - LD="${LD-ld} -melf32bsmip" - ;; - *N32*) - LD="${LD-ld} -melf32bmipn32" - ;; - *64-bit*) - LD="${LD-ld} -melf64bmip" - ;; - esac - else - case `/usr/bin/file conftest.$ac_objext` in - *32-bit*) - LD="${LD-ld} -32" - ;; - *N32*) - LD="${LD-ld} -n32" - ;; - *64-bit*) - LD="${LD-ld} -64" - ;; - esac - fi - fi - rm -rf conftest* - ;; - -x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*) - # Find out which ABI we are using. - echo 'int i;' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then - case "`/usr/bin/file conftest.o`" in - *32-bit*) - LINUX_64_MODE="32" - case $host in - x86_64-*linux*) - LD="${LD-ld} -m elf_i386" - ;; - ppc64-*linux*) - LD="${LD-ld} -m elf32ppclinux" - ;; - s390x-*linux*) - LD="${LD-ld} -m elf_s390" - ;; - sparc64-*linux*) - LD="${LD-ld} -m elf32_sparc" - ;; - esac - ;; - *64-bit*) - LINUX_64_MODE="64" - case $host in - x86_64-*linux*) - LD="${LD-ld} -m elf_x86_64" - ;; - ppc*-*linux*|powerpc*-*linux*) - LD="${LD-ld} -m elf64ppc" - ;; - s390*-*linux*) - LD="${LD-ld} -m elf64_s390" - ;; - sparc*-*linux*) - LD="${LD-ld} -m elf64_sparc" - ;; - esac - ;; - esac - fi - rm -rf conftest* - ;; - -*-*-sco3.2v5*) - # On SCO OpenServer 5, we need -belf to get full-featured binaries. - SAVE_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -belf" - AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, - [AC_LANG_PUSH(C) - AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) - AC_LANG_POP]) - if test x"$lt_cv_cc_needs_belf" != x"yes"; then - # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf - CFLAGS="$SAVE_CFLAGS" - fi - ;; -AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL], -[*-*-cygwin* | *-*-mingw* | *-*-pw32*) - AC_CHECK_TOOL(DLLTOOL, dlltool, false) - AC_CHECK_TOOL(AS, as, false) - AC_CHECK_TOOL(OBJDUMP, objdump, false) - ;; - ]) -esac - -need_locks="$enable_libtool_lock" - -])# _LT_AC_LOCK - - -# AC_LIBTOOL_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, -# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE]) -# ---------------------------------------------------------------- -# Check whether the given compiler option works -AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], -[AC_REQUIRE([LT_AC_PROG_SED]) -AC_CACHE_CHECK([$1], [$2], - [$2=no - ifelse([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4]) - printf "$lt_simple_compile_test_code" > conftest.$ac_ext - lt_compiler_flag="$3" - # Insert the option either (1) after the last *FLAGS variable, or - # (2) before a word containing "conftest.", or (3) at the end. - # Note that $ac_compile itself does not contain backslashes and begins - # with a dollar sign (not a hyphen), so the echo should work correctly. - # The option is referenced via a variable to avoid confusing sed. - lt_compile=`echo "$ac_compile" | $SED \ - -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ - -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD) - (eval "$lt_compile" 2>conftest.err) - ac_status=$? - cat conftest.err >&AS_MESSAGE_LOG_FD - echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD - if (exit $ac_status) && test -s "$ac_outfile"; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test ! -s conftest.err; then - $2=yes - fi - fi - $rm conftest* -]) - -if test x"[$]$2" = xyes; then - ifelse([$5], , :, [$5]) -else - ifelse([$6], , :, [$6]) -fi -])# AC_LIBTOOL_COMPILER_OPTION - - -# AC_LIBTOOL_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, -# [ACTION-SUCCESS], [ACTION-FAILURE]) -# ------------------------------------------------------------ -# Check whether the given compiler option works -AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], -[AC_CACHE_CHECK([$1], [$2], - [$2=no - save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS $3" - printf "$lt_simple_link_test_code" > conftest.$ac_ext - if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s conftest.err; then - # Append any errors to the config.log. - cat conftest.err 1>&AS_MESSAGE_LOG_FD - else - $2=yes - fi - fi - $rm conftest* - LDFLAGS="$save_LDFLAGS" -]) - -if test x"[$]$2" = xyes; then - ifelse([$4], , :, [$4]) -else - ifelse([$5], , :, [$5]) -fi -])# AC_LIBTOOL_LINKER_OPTION - - -# AC_LIBTOOL_SYS_MAX_CMD_LEN -# -------------------------- -AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], -[# 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 - testring="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; - ;; - - cygwin* | mingw*) - # On Win9x/ME, this test blows up -- it succeeds, but takes - # about 5 minutes as the teststring grows exponentially. - # Worse, since 9x/ME are not pre-emptively multitasking, - # you end up with a "frozen" computer, even though with patience - # the test eventually succeeds (with a max line length of 256k). - # Instead, let's just punt: use the minimum linelength reported by - # all of the supported platforms: 8192 (on NT/2K/XP). - lt_cv_sys_max_cmd_len=8192; - ;; - - *) - # If test is not a shell built-in, we'll probably end up computing a - # maximum length that is only half of the actual maximum length, but - # we can't tell. - while (test "X"`$CONFIG_SHELL [$]0 --fallback-echo "X$testring" 2>/dev/null` \ - = "XX$testring") >/dev/null 2>&1 && - new_result=`expr "X$testring" : ".*" 2>&1` && - lt_cv_sys_max_cmd_len=$new_result && - test $i != 17 # 1/2 MB should be enough - do - i=`expr $i + 1` - testring=$testring$testring - done - testring= - # Add a significant safety factor because C++ compilers can tack on massive - # amounts of additional arguments before passing them to the linker. - # It appears as though 1/2 is a usable value. - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` - ;; - esac -]) -if test -n $lt_cv_sys_max_cmd_len ; then - AC_MSG_RESULT($lt_cv_sys_max_cmd_len) -else - AC_MSG_RESULT(none) -fi -])# AC_LIBTOOL_SYS_MAX_CMD_LEN - - -# _LT_AC_CHECK_DLFCN -# -------------------- -AC_DEFUN([_LT_AC_CHECK_DLFCN], -[AC_CHECK_HEADERS(dlfcn.h)dnl -])# _LT_AC_CHECK_DLFCN - - -# _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, -# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) -# ------------------------------------------------------------------ -AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF], -[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl -if test "$cross_compiling" = yes; then : - [$4] -else - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext <<EOF -[#line __oline__ "configure" -#include "confdefs.h" - -#if HAVE_DLFCN_H -#include <dlfcn.h> -#endif - -#include <stdio.h> - -#ifdef RTLD_GLOBAL -# define LT_DLGLOBAL RTLD_GLOBAL -#else -# ifdef DL_GLOBAL -# define LT_DLGLOBAL DL_GLOBAL -# else -# define LT_DLGLOBAL 0 -# endif -#endif - -/* We may have to define LT_DLLAZY_OR_NOW in the command line if we - find out it does not work in some platform. */ -#ifndef LT_DLLAZY_OR_NOW -# ifdef RTLD_LAZY -# define LT_DLLAZY_OR_NOW RTLD_LAZY -# else -# ifdef DL_LAZY -# define LT_DLLAZY_OR_NOW DL_LAZY -# else -# ifdef RTLD_NOW -# define LT_DLLAZY_OR_NOW RTLD_NOW -# else -# ifdef DL_NOW -# define LT_DLLAZY_OR_NOW DL_NOW -# else -# define LT_DLLAZY_OR_NOW 0 -# endif -# endif -# endif -# endif -#endif - -#ifdef __cplusplus -extern "C" void exit (int); -#endif - -void fnord() { int i=42;} -int main () -{ - void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); - int status = $lt_dlunknown; - - if (self) - { - if (dlsym (self,"fnord")) status = $lt_dlno_uscore; - else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; - /* dlclose (self); */ - } - - exit (status); -}] -EOF - if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then - (./conftest; exit; ) 2>/dev/null - lt_status=$? - case x$lt_status in - x$lt_dlno_uscore) $1 ;; - x$lt_dlneed_uscore) $2 ;; - x$lt_unknown|x*) $3 ;; - esac - else : - # compilation failed - $3 - fi -fi -rm -fr conftest* -])# _LT_AC_TRY_DLOPEN_SELF - - -# AC_LIBTOOL_DLOPEN_SELF -# ------------------- -AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], -[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl -if test "x$enable_dlopen" != xyes; then - enable_dlopen=unknown - enable_dlopen_self=unknown - enable_dlopen_self_static=unknown -else - lt_cv_dlopen=no - lt_cv_dlopen_libs= - - case $host_os in - beos*) - lt_cv_dlopen="load_add_on" - lt_cv_dlopen_libs= - lt_cv_dlopen_self=yes - ;; - - mingw* | pw32*) - lt_cv_dlopen="LoadLibrary" - lt_cv_dlopen_libs= - ;; - - cygwin*) - lt_cv_dlopen="dlopen" - lt_cv_dlopen_libs= - ;; - - darwin*) - # if libdl is installed we need to link against it - AC_CHECK_LIB([dl], [dlopen], - [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[ - lt_cv_dlopen="dyld" - lt_cv_dlopen_libs= - lt_cv_dlopen_self=yes - ]) - ;; - - *) - AC_CHECK_FUNC([shl_load], - [lt_cv_dlopen="shl_load"], - [AC_CHECK_LIB([dld], [shl_load], - [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"], - [AC_CHECK_FUNC([dlopen], - [lt_cv_dlopen="dlopen"], - [AC_CHECK_LIB([dl], [dlopen], - [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"], - [AC_CHECK_LIB([svld], [dlopen], - [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"], - [AC_CHECK_LIB([dld], [dld_link], - [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"]) - ]) - ]) - ]) - ]) - ]) - ;; - esac - - if test "x$lt_cv_dlopen" != xno; then - enable_dlopen=yes - else - enable_dlopen=no - fi - - case $lt_cv_dlopen in - dlopen) - save_CPPFLAGS="$CPPFLAGS" - test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" - - save_LDFLAGS="$LDFLAGS" - eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" - - save_LIBS="$LIBS" - LIBS="$lt_cv_dlopen_libs $LIBS" - - AC_CACHE_CHECK([whether a program can dlopen itself], - lt_cv_dlopen_self, [dnl - _LT_AC_TRY_DLOPEN_SELF( - lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, - lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) - ]) - - if test "x$lt_cv_dlopen_self" = xyes; then - LDFLAGS="$LDFLAGS $link_static_flag" - AC_CACHE_CHECK([whether a statically linked program can dlopen itself], - lt_cv_dlopen_self_static, [dnl - _LT_AC_TRY_DLOPEN_SELF( - lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, - lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) - ]) - fi - - CPPFLAGS="$save_CPPFLAGS" - LDFLAGS="$save_LDFLAGS" - LIBS="$save_LIBS" - ;; - esac - - case $lt_cv_dlopen_self in - yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; - *) enable_dlopen_self=unknown ;; - esac - - case $lt_cv_dlopen_self_static in - yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; - *) enable_dlopen_self_static=unknown ;; - esac -fi -])# AC_LIBTOOL_DLOPEN_SELF - - -# AC_LIBTOOL_PROG_CC_C_O([TAGNAME]) -# --------------------------------- -# Check to see if options -c and -o are simultaneously supported by compiler -AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O], -[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl -AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext], - [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)], - [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no - $rm -r conftest 2>/dev/null - mkdir conftest - cd conftest - mkdir out - printf "$lt_simple_compile_test_code" > conftest.$ac_ext - - # According to Tom Tromey, Ian Lance Taylor reported there are C compilers - # that will create temporary files in the current directory regardless of - # the output directory. Thus, making CWD read-only will cause this test - # to fail, enabling locking or at least warning the user not to do parallel - # builds. - chmod -w . - - lt_compiler_flag="-o out/conftest2.$ac_objext" - # Insert the option either (1) after the last *FLAGS variable, or - # (2) before a word containing "conftest.", or (3) at the end. - # Note that $ac_compile itself does not contain backslashes and begins - # with a dollar sign (not a hyphen), so the echo should work correctly. - lt_compile=`echo "$ac_compile" | $SED \ - -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ - -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD) - (eval "$lt_compile" 2>out/conftest.err) - ac_status=$? - cat out/conftest.err >&AS_MESSAGE_LOG_FD - echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD - if (exit $ac_status) && test -s out/conftest2.$ac_objext - then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test ! -s out/conftest.err; then - _LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes - fi - fi - chmod u+w . - $rm conftest* out/* - rmdir out - cd .. - rmdir conftest - $rm conftest* -]) -])# AC_LIBTOOL_PROG_CC_C_O - - -# AC_LIBTOOL_SYS_HARD_LINK_LOCKS([TAGNAME]) -# ----------------------------------------- -# Check to see if we can do hard links to lock some files if needed -AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], -[AC_REQUIRE([_LT_AC_LOCK])dnl - -hard_links="nottested" -if test "$_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then - # do not overwrite the value of need_locks provided by the user - AC_MSG_CHECKING([if we can lock with hard links]) - hard_links=yes - $rm conftest* - ln conftest.a conftest.b 2>/dev/null && hard_links=no - touch conftest.a - ln conftest.a conftest.b 2>&5 || hard_links=no - ln conftest.a conftest.b 2>/dev/null && hard_links=no - AC_MSG_RESULT([$hard_links]) - if test "$hard_links" = no; then - AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe]) - need_locks=warn - fi -else - need_locks=no -fi -])# AC_LIBTOOL_SYS_HARD_LINK_LOCKS - - -# AC_LIBTOOL_OBJDIR -# ----------------- -AC_DEFUN([AC_LIBTOOL_OBJDIR], -[AC_CACHE_CHECK([for objdir], [lt_cv_objdir], -[rm -f .libs 2>/dev/null -mkdir .libs 2>/dev/null -if test -d .libs; then - lt_cv_objdir=.libs -else - # MS-DOS does not allow filenames that begin with a dot. - lt_cv_objdir=_libs -fi -rmdir .libs 2>/dev/null]) -objdir=$lt_cv_objdir -])# AC_LIBTOOL_OBJDIR - - -# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH([TAGNAME]) -# ---------------------------------------------- -# Check hardcoding attributes. -AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], -[AC_MSG_CHECKING([how to hardcode library paths into programs]) -_LT_AC_TAGVAR(hardcode_action, $1)= -if test -n "$_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)" || \ - test -n "$_LT_AC_TAGVAR(runpath_var $1)" || \ - test "X$_LT_AC_TAGVAR(hardcode_automatic, $1)"="Xyes" ; then - - # We can hardcode non-existant directories. - if test "$_LT_AC_TAGVAR(hardcode_direct, $1)" != no && - # If the only mechanism to avoid hardcoding is shlibpath_var, we - # have to relink, otherwise we might link with an installed library - # when we should be linking with a yet-to-be-installed one - ## test "$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)" != no && - test "$_LT_AC_TAGVAR(hardcode_minus_L, $1)" != no; then - # Linking always hardcodes the temporary library directory. - _LT_AC_TAGVAR(hardcode_action, $1)=relink - else - # We can link without hardcoding, and we can hardcode nonexisting dirs. - _LT_AC_TAGVAR(hardcode_action, $1)=immediate - fi -else - # We cannot hardcode anything, or else we can only hardcode existing - # directories. - _LT_AC_TAGVAR(hardcode_action, $1)=unsupported -fi -AC_MSG_RESULT([$_LT_AC_TAGVAR(hardcode_action, $1)]) - -if test "$_LT_AC_TAGVAR(hardcode_action, $1)" = relink; then - # Fast installation is not supported - enable_fast_install=no -elif test "$shlibpath_overrides_runpath" = yes || - test "$enable_shared" = no; then - # Fast installation is not necessary - enable_fast_install=needless -fi -])# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH - - -# AC_LIBTOOL_SYS_LIB_STRIP -# ------------------------ -AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP], -[striplib= -old_striplib= -AC_MSG_CHECKING([whether stripping libraries is possible]) -if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then - test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" - test -z "$striplib" && striplib="$STRIP --strip-unneeded" - AC_MSG_RESULT([yes]) -else -# FIXME - insert some real tests, host_os isn't really good enough - case $host_os in - darwin*) - if test -n "$STRIP" ; then - striplib="$STRIP -x" - AC_MSG_RESULT([yes]) - else - AC_MSG_RESULT([no]) -fi - ;; - *) - AC_MSG_RESULT([no]) - ;; - esac -fi -])# AC_LIBTOOL_SYS_LIB_STRIP - - -# AC_LIBTOOL_SYS_DYNAMIC_LINKER -# ----------------------------- -# PORTME Fill in your ld.so characteristics -AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER], -[AC_MSG_CHECKING([dynamic linker characteristics]) -library_names_spec= -libname_spec='lib$name' -soname_spec= -shrext=".so" -postinstall_cmds= -postuninstall_cmds= -finish_cmds= -finish_eval= -shlibpath_var= -shlibpath_overrides_runpath=unknown -version_type=none -dynamic_linker="$host_os ld.so" -sys_lib_dlsearch_path_spec="/lib /usr/lib" -sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" -need_lib_prefix=unknown -hardcode_into_libs=no - -# when you set need_version to no, make sure it does not cause -set_version -# flags to be left without arguments -need_version=unknown - -case $host_os in -aix3*) - version_type=linux - library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' - shlibpath_var=LIBPATH - - # AIX 3 has no versioning support, so we append a major version to the name. - soname_spec='${libname}${release}${shared_ext}$major' - ;; - -aix4* | aix5*) - version_type=linux - need_lib_prefix=no - need_version=no - hardcode_into_libs=yes - if test "$host_cpu" = ia64; then - # AIX 5 supports IA64 - library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' - shlibpath_var=LD_LIBRARY_PATH - else - # With GCC up to 2.95.x, collect2 would create an import file - # for dependence libraries. The import file would start with - # the line `#! .'. This would cause the generated library to - # depend on `.', always an invalid library. This was fixed in - # development snapshots of GCC prior to 3.0. - case $host_os in - aix4 | aix4.[[01]] | aix4.[[01]].*) - if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' - echo ' yes ' - echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then - : - else - can_build_shared=no - fi - ;; - esac - # AIX (on Power*) has no versioning support, so currently we can not hardcode correct - # soname into executable. Probably we can add versioning support to - # collect2, so additional links can be useful in future. - if test "$aix_use_runtimelinking" = yes; then - # If using run time linking (on AIX 4.2 or later) use lib<name>.so - # instead of lib<name>.a to let people know that these are not - # typical AIX shared libraries. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - else - # We preserve .a as extension for shared libraries through AIX4.2 - # and later when we are not doing run time linking. - library_names_spec='${libname}${release}.a $libname.a' - soname_spec='${libname}${release}${shared_ext}$major' - fi - shlibpath_var=LIBPATH - fi - ;; - -amigaos*) - library_names_spec='$libname.ixlibrary $libname.a' - # Create ${libname}_ixlibrary.a entries in /sys/libs. - finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done' - ;; - -beos*) - library_names_spec='${libname}${shared_ext}' - dynamic_linker="$host_os ld.so" - shlibpath_var=LIBRARY_PATH - ;; - -bsdi4*) - version_type=linux - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" - sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" - # the default ld.so.conf also contains /usr/contrib/lib and - # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow - # libtool to hard-code these into programs - ;; - -cygwin* | mingw* | pw32*) - version_type=windows - shrext=".dll" - need_version=no - need_lib_prefix=no - - case $GCC,$host_os in - yes,cygwin* | yes,mingw* | yes,pw32*) - library_names_spec='$libname.dll.a' - # DLL is installed to $(libdir)/../bin by postinstall_cmds - postinstall_cmds='base_file=`basename \${file}`~ - dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~ - dldir=$destdir/`dirname \$dlpath`~ - test -d \$dldir || mkdir -p \$dldir~ - $install_prog $dir/$dlname \$dldir/$dlname' - postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ - dlpath=$dir/\$dldll~ - $rm \$dlpath' - shlibpath_overrides_runpath=yes - - case $host_os in - cygwin*) - # Cygwin DLLs use 'cyg' prefix rather than 'lib' - soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' - sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib" - ;; - mingw*) - # MinGW DLLs use traditional 'lib' prefix - soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' - sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` - if echo "$sys_lib_search_path_spec" | [grep ';[c-zC-Z]:/' >/dev/null]; then - # It is most probably a Windows format PATH printed by - # mingw gcc, but we are running on Cygwin. Gcc prints its search - # path with ; separators, and with drive letters. We can handle the - # drive letters (cygwin fileutils understands them), so leave them, - # especially as we might pass files found there to a mingw objdump, - # which wouldn't understand a cygwinified path. Ahh. - sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` - else - sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` - fi - ;; - pw32*) - # pw32 DLLs use 'pw' prefix rather than 'lib' - library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' - ;; - esac - ;; - - *) - library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib' - ;; - esac - dynamic_linker='Win32 ld.exe' - # FIXME: first we should search . and the directory the executable is in - shlibpath_var=PATH - ;; - -darwin* | rhapsody*) - dynamic_linker="$host_os dyld" - version_type=darwin - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${versuffix}$shared_ext ${libname}${release}${major}$shared_ext ${libname}$shared_ext' - soname_spec='${libname}${release}${major}$shared_ext' - shlibpath_overrides_runpath=yes - shlibpath_var=DYLD_LIBRARY_PATH - shrext='$(test .$module = .yes && echo .so || echo .dylib)' - # Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same. - if test "$GCC" = yes; then - sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"` - else - sys_lib_search_path_spec='/lib /usr/lib /usr/local/lib' - fi - sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' - ;; - -dgux*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -freebsd1*) - dynamic_linker=no - ;; - -kfreebsd*-gnu*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - dynamic_linker='GNU ld.so' - ;; - -freebsd*) - objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` - version_type=freebsd-$objformat - case $version_type in - freebsd-elf*) - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' - need_version=no - need_lib_prefix=no - ;; - freebsd-*) - library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' - need_version=yes - ;; - esac - shlibpath_var=LD_LIBRARY_PATH - case $host_os in - freebsd2*) - shlibpath_overrides_runpath=yes - ;; - freebsd3.[01]* | freebsdelf3.[01]*) - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - *) # from 3.2 on - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - esac - ;; - -gnu*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - hardcode_into_libs=yes - ;; - -hpux9* | hpux10* | hpux11*) - # Give a soname corresponding to the major version so that dld.sl refuses to - # link against other versions. - version_type=sunos - need_lib_prefix=no - need_version=no - case "$host_cpu" in - ia64*) - shrext='.so' - hardcode_into_libs=yes - dynamic_linker="$host_os dld.so" - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - if test "X$HPUX_IA64_MODE" = X32; then - sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" - else - sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" - fi - sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec - ;; - hppa*64*) - shrext='.sl' - hardcode_into_libs=yes - dynamic_linker="$host_os dld.sl" - shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH - shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" - sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec - ;; - *) - shrext='.sl' - dynamic_linker="$host_os dld.sl" - shlibpath_var=SHLIB_PATH - shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - ;; - esac - # HP-UX runs *really* slowly unless shared libraries are mode 555. - postinstall_cmds='chmod 555 $lib' - ;; - -irix5* | irix6* | nonstopux*) - case $host_os in - nonstopux*) version_type=nonstopux ;; - *) - if test "$lt_cv_prog_gnu_ld" = yes; then - version_type=linux - else - version_type=irix - fi ;; - esac - need_lib_prefix=no - need_version=no - soname_spec='${libname}${release}${shared_ext}$major' - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}' - case $host_os in - irix5* | nonstopux*) - libsuff= shlibsuff= - ;; - *) - case $LD in # libtool.m4 will add one of these switches to LD - *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") - libsuff= shlibsuff= libmagic=32-bit;; - *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") - libsuff=32 shlibsuff=N32 libmagic=N32;; - *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") - libsuff=64 shlibsuff=64 libmagic=64-bit;; - *) libsuff= shlibsuff= libmagic=never-match;; - esac - ;; - esac - shlibpath_var=LD_LIBRARY${shlibsuff}_PATH - shlibpath_overrides_runpath=no - sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" - sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" - hardcode_into_libs=yes - ;; - -# No shared lib support for Linux oldld, aout, or coff. -linux*oldld* | linux*aout* | linux*coff*) - dynamic_linker=no - ;; - -# This must be Linux ELF. -linux*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' - libsuff= - if test "x$LINUX_64_MODE" = x64; then - # Some platforms are per default 64-bit, so there's no /lib64 - if test -d /lib64; then - libsuff=64 - fi - fi - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff}" - sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" - # This implies no fast_install, which is unacceptable. - # Some rework will be needed to allow for fast_install - # before this can be enabled. - hardcode_into_libs=yes - - # We used to test for /lib/ld.so.1 and disable shared libraries on - # powerpc, because MkLinux only supported shared libraries with the - # GNU dynamic linker. Since this was broken with cross compilers, - # most powerpc-linux boxes support dynamic linking these days and - # people can always --disable-shared, the test was removed, and we - # assume the GNU/Linux dynamic linker is in use. - dynamic_linker='GNU/Linux ld.so' - ;; - -netbsd*) - version_type=sunos - need_lib_prefix=no - need_version=no - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - dynamic_linker='NetBSD (a.out) ld.so' - else - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - dynamic_linker='NetBSD ld.elf_so' - fi - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - -newsos6) - version_type=linux - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - ;; - -nto-qnx*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - ;; - -openbsd*) - version_type=sunos - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - shlibpath_var=LD_LIBRARY_PATH - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - case $host_os in - openbsd2.[[89]] | openbsd2.[[89]].*) - shlibpath_overrides_runpath=no - ;; - *) - shlibpath_overrides_runpath=yes - ;; - esac - else - shlibpath_overrides_runpath=yes - fi - ;; - -os2*) - libname_spec='$name' - shrext=".dll" - need_lib_prefix=no - library_names_spec='$libname${shared_ext} $libname.a' - dynamic_linker='OS/2 ld.exe' - shlibpath_var=LIBPATH - ;; - -osf3* | osf4* | osf5*) - version_type=osf - need_lib_prefix=no - need_version=no - soname_spec='${libname}${release}${shared_ext}$major' - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" - sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" - ;; - -sco3.2v5*) - version_type=osf - soname_spec='${libname}${release}${shared_ext}$major' - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - shlibpath_var=LD_LIBRARY_PATH - ;; - -solaris*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - # ldd complains unless libraries are executable - postinstall_cmds='chmod +x $lib' - ;; - -sunos4*) - version_type=sunos - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' - finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - if test "$with_gnu_ld" = yes; then - need_lib_prefix=no - fi - need_version=yes - ;; - -sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - version_type=linux - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - case $host_vendor in - sni) - shlibpath_overrides_runpath=no - need_lib_prefix=no - export_dynamic_flag_spec='${wl}-Blargedynsym' - runpath_var=LD_RUN_PATH - ;; - siemens) - need_lib_prefix=no - ;; - motorola) - need_lib_prefix=no - need_version=no - shlibpath_overrides_runpath=no - sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' - ;; - esac - ;; - -sysv4*MP*) - if test -d /usr/nec ;then - version_type=linux - library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' - soname_spec='$libname${shared_ext}.$major' - shlibpath_var=LD_LIBRARY_PATH - fi - ;; - -uts4*) - version_type=linux - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -*) - dynamic_linker=no - ;; -esac -AC_MSG_RESULT([$dynamic_linker]) -test "$dynamic_linker" = no && can_build_shared=no -])# AC_LIBTOOL_SYS_DYNAMIC_LINKER - - -# _LT_AC_TAGCONFIG -# ---------------- -AC_DEFUN([_LT_AC_TAGCONFIG], -[AC_ARG_WITH([tags], - [AC_HELP_STRING([--with-tags@<:@=TAGS@:>@], - [include additional configurations @<:@automatic@:>@])], - [tagnames="$withval"]) - -if test -f "$ltmain" && test -n "$tagnames"; then - if test ! -f "${ofile}"; then - AC_MSG_WARN([output file `$ofile' does not exist]) - fi - - if test -z "$LTCC"; then - eval "`$SHELL ${ofile} --config | grep '^LTCC='`" - if test -z "$LTCC"; then - AC_MSG_WARN([output file `$ofile' does not look like a libtool script]) - else - AC_MSG_WARN([using `LTCC=$LTCC', extracted from `$ofile']) - fi - fi - - # Extract list of available tagged configurations in $ofile. - # Note that this assumes the entire list is on one line. - available_tags=`grep "^available_tags=" "${ofile}" | $SED -e 's/available_tags=\(.*$\)/\1/' -e 's/\"//g'` - - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," - for tagname in $tagnames; do - IFS="$lt_save_ifs" - # Check whether tagname contains only valid characters - case `$echo "X$tagname" | $Xsed -e 's:[[-_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890,/]]::g'` in - "") ;; - *) AC_MSG_ERROR([invalid tag name: $tagname]) - ;; - esac - - if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "${ofile}" > /dev/null - then - AC_MSG_ERROR([tag name \"$tagname\" already exists]) - fi - - # Update the list of available tags. - if test -n "$tagname"; then - echo appending configuration tag \"$tagname\" to $ofile - - case $tagname in - CXX) - if test -n "$CXX" && test "X$CXX" != "Xno"; then - AC_LIBTOOL_LANG_CXX_CONFIG - else - tagname="" - fi - ;; - - F77) - if test -n "$F77" && test "X$F77" != "Xno"; then - AC_LIBTOOL_LANG_F77_CONFIG - else - tagname="" - fi - ;; - - GCJ) - if test -n "$GCJ" && test "X$GCJ" != "Xno"; then - AC_LIBTOOL_LANG_GCJ_CONFIG - else - tagname="" - fi - ;; - - RC) - AC_LIBTOOL_LANG_RC_CONFIG - ;; - - *) - AC_MSG_ERROR([Unsupported tag name: $tagname]) - ;; - esac - - # Append the new tag name to the list of available tags. - if test -n "$tagname" ; then - available_tags="$available_tags $tagname" - fi - fi - done - IFS="$lt_save_ifs" - - # Now substitute the updated list of available tags. - if eval "sed -e 's/^available_tags=.*\$/available_tags=\"$available_tags\"/' \"$ofile\" > \"${ofile}T\""; then - mv "${ofile}T" "$ofile" - chmod +x "$ofile" - else - rm -f "${ofile}T" - AC_MSG_ERROR([unable to update list of available tagged configurations.]) - fi -fi -])# _LT_AC_TAGCONFIG - - -# AC_LIBTOOL_DLOPEN -# ----------------- -# enable checks for dlopen support -AC_DEFUN([AC_LIBTOOL_DLOPEN], - [AC_BEFORE([$0],[AC_LIBTOOL_SETUP]) -])# AC_LIBTOOL_DLOPEN - - -# AC_LIBTOOL_WIN32_DLL -# -------------------- -# declare package support for building win32 dll's -AC_DEFUN([AC_LIBTOOL_WIN32_DLL], -[AC_BEFORE([$0], [AC_LIBTOOL_SETUP]) -])# AC_LIBTOOL_WIN32_DLL - - -# AC_ENABLE_SHARED([DEFAULT]) -# --------------------------- -# implement the --enable-shared flag -# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. -AC_DEFUN([AC_ENABLE_SHARED], -[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl -AC_ARG_ENABLE([shared], - [AC_HELP_STRING([--enable-shared@<:@=PKGS@:>@], - [build shared libraries @<:@default=]AC_ENABLE_SHARED_DEFAULT[@:>@])], - [p=${PACKAGE-default} - case $enableval in - yes) enable_shared=yes ;; - no) enable_shared=no ;; - *) - enable_shared=no - # Look at the argument we got. We use all the common list separators. - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," - for pkg in $enableval; do - IFS="$lt_save_ifs" - if test "X$pkg" = "X$p"; then - enable_shared=yes - fi - done - IFS="$lt_save_ifs" - ;; - esac], - [enable_shared=]AC_ENABLE_SHARED_DEFAULT) -])# AC_ENABLE_SHARED - - -# AC_DISABLE_SHARED -# ----------------- -#- set the default shared flag to --disable-shared -AC_DEFUN([AC_DISABLE_SHARED], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -AC_ENABLE_SHARED(no) -])# AC_DISABLE_SHARED - - -# AC_ENABLE_STATIC([DEFAULT]) -# --------------------------- -# implement the --enable-static flag -# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. -AC_DEFUN([AC_ENABLE_STATIC], -[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl -AC_ARG_ENABLE([static], - [AC_HELP_STRING([--enable-static@<:@=PKGS@:>@], - [build static libraries @<:@default=]AC_ENABLE_STATIC_DEFAULT[@:>@])], - [p=${PACKAGE-default} - case $enableval in - yes) enable_static=yes ;; - no) enable_static=no ;; - *) - enable_static=no - # Look at the argument we got. We use all the common list separators. - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," - for pkg in $enableval; do - IFS="$lt_save_ifs" - if test "X$pkg" = "X$p"; then - enable_static=yes - fi - done - IFS="$lt_save_ifs" - ;; - esac], - [enable_static=]AC_ENABLE_STATIC_DEFAULT) -])# AC_ENABLE_STATIC - - -# AC_DISABLE_STATIC -# ----------------- -# set the default static flag to --disable-static -AC_DEFUN([AC_DISABLE_STATIC], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -AC_ENABLE_STATIC(no) -])# AC_DISABLE_STATIC - - -# AC_ENABLE_FAST_INSTALL([DEFAULT]) -# --------------------------------- -# implement the --enable-fast-install flag -# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. -AC_DEFUN([AC_ENABLE_FAST_INSTALL], -[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl -AC_ARG_ENABLE([fast-install], - [AC_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@], - [optimize for fast installation @<:@default=]AC_ENABLE_FAST_INSTALL_DEFAULT[@:>@])], - [p=${PACKAGE-default} - case $enableval in - yes) enable_fast_install=yes ;; - no) enable_fast_install=no ;; - *) - enable_fast_install=no - # Look at the argument we got. We use all the common list separators. - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," - for pkg in $enableval; do - IFS="$lt_save_ifs" - if test "X$pkg" = "X$p"; then - enable_fast_install=yes - fi - done - IFS="$lt_save_ifs" - ;; - esac], - [enable_fast_install=]AC_ENABLE_FAST_INSTALL_DEFAULT) -])# AC_ENABLE_FAST_INSTALL - - -# AC_DISABLE_FAST_INSTALL -# ----------------------- -# set the default to --disable-fast-install -AC_DEFUN([AC_DISABLE_FAST_INSTALL], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -AC_ENABLE_FAST_INSTALL(no) -])# AC_DISABLE_FAST_INSTALL - - -# AC_LIBTOOL_PICMODE([MODE]) -# -------------------------- -# implement the --with-pic flag -# MODE is either `yes' or `no'. If omitted, it defaults to `both'. -AC_DEFUN([AC_LIBTOOL_PICMODE], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -pic_mode=ifelse($#,1,$1,default) -])# AC_LIBTOOL_PICMODE - - -# AC_PROG_EGREP -# ------------- -# This is predefined starting with Autoconf 2.54, so this conditional -# definition can be removed once we require Autoconf 2.54 or later. -m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP], -[AC_CACHE_CHECK([for egrep], [ac_cv_prog_egrep], - [if echo a | (grep -E '(a|b)') >/dev/null 2>&1 - then ac_cv_prog_egrep='grep -E' - else ac_cv_prog_egrep='egrep' - fi]) - EGREP=$ac_cv_prog_egrep - AC_SUBST([EGREP]) -])]) - - -# AC_PATH_TOOL_PREFIX -# ------------------- -# find a file program which can recognise shared library -AC_DEFUN([AC_PATH_TOOL_PREFIX], -[AC_REQUIRE([AC_PROG_EGREP])dnl -AC_MSG_CHECKING([for $1]) -AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, -[case $MAGIC_CMD in -[[\\/*] | ?:[\\/]*]) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. - ;; -*) - lt_save_MAGIC_CMD="$MAGIC_CMD" - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR -dnl $ac_dummy forces splitting on constant user-supplied paths. -dnl POSIX.2 word splitting is done only on the output of word expansions, -dnl not every word. This closes a longstanding sh security hole. - ac_dummy="ifelse([$2], , $PATH, [$2])" - for ac_dir in $ac_dummy; do - IFS="$lt_save_ifs" - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$1; then - lt_cv_path_MAGIC_CMD="$ac_dir/$1" - if test -n "$file_magic_test_file"; then - case $deplibs_check_method in - "file_magic "*) - file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" - MAGIC_CMD="$lt_cv_path_MAGIC_CMD" - if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | - $EGREP "$file_magic_regex" > /dev/null; then - : - else - cat <<EOF 1>&2 - -*** Warning: the command libtool uses to detect shared libraries, -*** $file_magic_cmd, produces output that libtool cannot recognize. -*** The result is that libtool may fail to recognize shared libraries -*** as such. This will affect the creation of libtool libraries that -*** depend on shared libraries, but programs linked with such libtool -*** libraries will work regardless of this problem. Nevertheless, you -*** may want to report the problem to your system manager and/or to -*** bug-libtool@gnu.org - -EOF - fi ;; - esac - fi - break - fi - done - IFS="$lt_save_ifs" - MAGIC_CMD="$lt_save_MAGIC_CMD" - ;; -esac]) -MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -if test -n "$MAGIC_CMD"; then - AC_MSG_RESULT($MAGIC_CMD) -else - AC_MSG_RESULT(no) -fi -])# AC_PATH_TOOL_PREFIX - - -# AC_PATH_MAGIC -# ------------- -# find a file program which can recognise a shared library -AC_DEFUN([AC_PATH_MAGIC], -[AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH) -if test -z "$lt_cv_path_MAGIC_CMD"; then - if test -n "$ac_tool_prefix"; then - AC_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH) - else - MAGIC_CMD=: - fi -fi -])# AC_PATH_MAGIC - - -# AC_PROG_LD -# ---------- -# find the pathname to the GNU or non-GNU linker -AC_DEFUN([AC_PROG_LD], -[AC_ARG_WITH([gnu-ld], - [AC_HELP_STRING([--with-gnu-ld], - [assume the C compiler uses GNU ld @<:@default=no@:>@])], - [test "$withval" = no || with_gnu_ld=yes], - [with_gnu_ld=no]) -AC_REQUIRE([LT_AC_PROG_SED])dnl -AC_REQUIRE([AC_PROG_CC])dnl -AC_REQUIRE([AC_CANONICAL_HOST])dnl -AC_REQUIRE([AC_CANONICAL_BUILD])dnl -ac_prog=ld -if test "$GCC" = yes; then - # Check if gcc -print-prog-name=ld gives a path. - AC_MSG_CHECKING([for ld used by $CC]) - case $host in - *-*-mingw*) - # gcc leaves a trailing carriage return which upsets mingw - ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; - *) - ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; - esac - case $ac_prog in - # Accept absolute paths. - [[\\/]]* | ?:[[\\/]]*) - re_direlt='/[[^/]][[^/]]*/\.\./' - # Canonicalize the pathname of ld - ac_prog=`echo $ac_prog| $SED 's%\\\\%/%g'` - while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do - ac_prog=`echo $ac_prog| $SED "s%$re_direlt%/%"` - done - test -z "$LD" && LD="$ac_prog" - ;; - "") - # If it fails, then pretend we aren't using GCC. - ac_prog=ld - ;; - *) - # If it is relative, then search for the first ld in PATH. - with_gnu_ld=unknown - ;; - esac -elif test "$with_gnu_ld" = yes; then - AC_MSG_CHECKING([for GNU ld]) -else - AC_MSG_CHECKING([for non-GNU ld]) -fi -AC_CACHE_VAL(lt_cv_path_LD, -[if test -z "$LD"; then - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - IFS="$lt_save_ifs" - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - lt_cv_path_LD="$ac_dir/$ac_prog" - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some GNU ld's only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. - case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in - *GNU* | *'with BFD'*) - test "$with_gnu_ld" != no && break - ;; - *) - test "$with_gnu_ld" != yes && break - ;; - esac - fi - done - IFS="$lt_save_ifs" -else - lt_cv_path_LD="$LD" # Let the user override the test with a path. -fi]) -LD="$lt_cv_path_LD" -if test -n "$LD"; then - AC_MSG_RESULT($LD) -else - AC_MSG_RESULT(no) -fi -test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) -AC_PROG_LD_GNU -])# AC_PROG_LD - - -# AC_PROG_LD_GNU -# -------------- -AC_DEFUN([AC_PROG_LD_GNU], -[AC_REQUIRE([AC_PROG_EGREP])dnl -AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, -[# I'd rather use --version here, but apparently some GNU ld's only accept -v. -case `$LD -v 2>&1 </dev/null` in -*GNU* | *'with BFD'*) - lt_cv_prog_gnu_ld=yes - ;; -*) - lt_cv_prog_gnu_ld=no - ;; -esac]) -with_gnu_ld=$lt_cv_prog_gnu_ld -])# AC_PROG_LD_GNU - - -# AC_PROG_LD_RELOAD_FLAG -# ---------------------- -# find reload flag for linker -# -- PORTME Some linkers may need a different reload flag. -AC_DEFUN([AC_PROG_LD_RELOAD_FLAG], -[AC_CACHE_CHECK([for $LD option to reload object files], - lt_cv_ld_reload_flag, - [lt_cv_ld_reload_flag='-r']) -reload_flag=$lt_cv_ld_reload_flag -case $reload_flag in -"" | " "*) ;; -*) reload_flag=" $reload_flag" ;; -esac -reload_cmds='$LD$reload_flag -o $output$reload_objs' -])# AC_PROG_LD_RELOAD_FLAG - - -# AC_DEPLIBS_CHECK_METHOD -# ----------------------- -# how to check for library dependencies -# -- PORTME fill in with the dynamic library characteristics -AC_DEFUN([AC_DEPLIBS_CHECK_METHOD], -[AC_CACHE_CHECK([how to recognise dependent libraries], -lt_cv_deplibs_check_method, -[lt_cv_file_magic_cmd='$MAGIC_CMD' -lt_cv_file_magic_test_file= -lt_cv_deplibs_check_method='unknown' -# Need to set the preceding variable on all platforms that support -# interlibrary dependencies. -# 'none' -- dependencies not supported. -# `unknown' -- same as none, but documents that we really don't know. -# 'pass_all' -- all dependencies passed with no checks. -# 'test_compile' -- check by making test program. -# 'file_magic [[regex]]' -- check by looking for files in library path -# which responds to the $file_magic_cmd with a given extended regex. -# If you have `file' or equivalent on your system and you're not sure -# whether `pass_all' will *always* work, you probably want this one. - -case $host_os in -aix4* | aix5*) - lt_cv_deplibs_check_method=pass_all - ;; - -beos*) - lt_cv_deplibs_check_method=pass_all - ;; - -bsdi4*) - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)' - lt_cv_file_magic_cmd='/usr/bin/file -L' - lt_cv_file_magic_test_file=/shlib/libc.so - ;; - -cygwin*) - lt_cv_deplibs_check_method=pass_all - ;; - -mingw* | pw32*) - # win32_libid is a shell function defined in ltmain.sh - lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' - lt_cv_file_magic_cmd='win32_libid' - ;; - -darwin* | rhapsody*) - # this will be overwritten by pass_all, but leave it in just in case - lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library' - lt_cv_file_magic_cmd='/usr/bin/file -L' - case "$host_os" in - rhapsody* | darwin1.[[012]]) - lt_cv_file_magic_test_file=`/System/Library/Frameworks/System.framework/System` - ;; - *) # Darwin 1.3 on - lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib' - ;; - esac - lt_cv_deplibs_check_method=pass_all - ;; - -freebsd* | kfreebsd*-gnu) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - case $host_cpu in - i*86 ) - # Not sure whether the presence of OpenBSD here was a mistake. - # Let's accept both of them until this is cleared up. - lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[[3-9]]86 (compact )?demand paged shared library' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` - ;; - esac - else - lt_cv_deplibs_check_method=pass_all - fi - ;; - -gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - -hpux10.20* | hpux11*) - lt_cv_file_magic_cmd=/usr/bin/file - case "$host_cpu" in - ia64*) - lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64' - lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so - ;; - hppa*64*) - [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]'] - lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl - ;; - *) - lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library' - lt_cv_file_magic_test_file=/usr/lib/libc.sl - ;; - esac - ;; - -irix5* | irix6* | nonstopux*) - case $host_os in - irix5* | nonstopux*) - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" - ;; - *) - case $LD in - *-32|*"-32 ") libmagic=32-bit;; - *-n32|*"-n32 ") libmagic=N32;; - *-64|*"-64 ") libmagic=64-bit;; - *) libmagic=never-match;; - esac - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[[1234]] dynamic lib MIPS - version 1" - ;; - esac - lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` - lt_cv_deplibs_check_method=pass_all - ;; - -# This must be Linux ELF. -linux*) - case $host_cpu in - alpha* | hppa* | i*86 | ia64* | m68* | mips* | powerpc* | sparc* | s390* | sh* | x86_64* ) - lt_cv_deplibs_check_method=pass_all ;; - # the debian people say, arm and glibc 2.3.1 works for them with pass_all - arm* ) - lt_cv_deplibs_check_method=pass_all ;; - *) - # glibc up to 2.1.1 does not perform some relocations on ARM - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;; - esac - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' - else - lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$' - fi - ;; - -newos6*) - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=/usr/lib/libnls.so - ;; - -nto-qnx*) - lt_cv_deplibs_check_method=unknown - ;; - -openbsd*) - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB shared object' - else - lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library' - fi - ;; - -osf3* | osf4* | osf5*) - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' - lt_cv_file_magic_test_file=/shlib/libc.so - lt_cv_deplibs_check_method=pass_all - ;; - -sco3.2v5*) - lt_cv_deplibs_check_method=pass_all - ;; - -solaris*) - lt_cv_deplibs_check_method=pass_all - lt_cv_file_magic_test_file=/lib/libc.so - ;; - -sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - case $host_vendor in - motorola) - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]' - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` - ;; - ncr) - lt_cv_deplibs_check_method=pass_all - ;; - sequent) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' - ;; - sni) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" - lt_cv_file_magic_test_file=/lib/libc.so - ;; - siemens) - lt_cv_deplibs_check_method=pass_all - ;; - esac - ;; - -sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7* | sysv4*uw2*) - lt_cv_deplibs_check_method=pass_all - ;; -esac -]) -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 -])# AC_DEPLIBS_CHECK_METHOD - - -# AC_PROG_NM -# ---------- -# find the pathname to a BSD-compatible name lister -AC_DEFUN([AC_PROG_NM], -[AC_CACHE_CHECK([for BSD-compatible nm], lt_cv_path_NM, -[if test -n "$NM"; then - # Let the user override the test. - lt_cv_path_NM="$NM" -else - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do - IFS="$lt_save_ifs" - test -z "$ac_dir" && ac_dir=. - tmp_nm="$ac_dir/${ac_tool_prefix}nm" - if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then - # Check to see if the nm accepts a BSD-compat flag. - # Adding the `sed 1q' prevents false positives on HP-UX, which says: - # nm: unknown option "B" ignored - # Tru64's nm complains that /dev/null is an invalid object file - case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in - */dev/null* | *'Invalid file or object type'*) - lt_cv_path_NM="$tmp_nm -B" - break - ;; - *) - case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in - */dev/null*) - lt_cv_path_NM="$tmp_nm -p" - break - ;; - *) - lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but - continue # so that we can try to find one that supports BSD flags - ;; - esac - esac - fi - done - IFS="$lt_save_ifs" - test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm -fi]) -NM="$lt_cv_path_NM" -])# AC_PROG_NM - - -# AC_CHECK_LIBM -# ------------- -# check for math library -AC_DEFUN([AC_CHECK_LIBM], -[AC_REQUIRE([AC_CANONICAL_HOST])dnl -LIBM= -case $host in -*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*) - # These system don't have libm, or don't need it - ;; -*-ncr-sysv4.3*) - AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") - AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") - ;; -*) - AC_CHECK_LIB(m, cos, LIBM="-lm") - ;; -esac -])# AC_CHECK_LIBM - - -# AC_LIBLTDL_CONVENIENCE([DIRECTORY]) -# ----------------------------------- -# sets LIBLTDL to the link flags for the libltdl convenience library and -# LTDLINCL to the include flags for the libltdl header and adds -# --enable-ltdl-convenience to the configure arguments. Note that LIBLTDL -# and LTDLINCL are not AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If -# DIRECTORY is not provided, it is assumed to be `libltdl'. LIBLTDL will -# be prefixed with '${top_builddir}/' and LTDLINCL will be prefixed with -# '${top_srcdir}/' (note the single quotes!). If your package is not -# flat and you're not using automake, define top_builddir and -# top_srcdir appropriately in the Makefiles. -AC_DEFUN([AC_LIBLTDL_CONVENIENCE], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - case $enable_ltdl_convenience in - no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; - "") enable_ltdl_convenience=yes - ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; - esac - LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la - LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) - # For backwards non-gettext consistent compatibility... - INCLTDL="$LTDLINCL" -])# AC_LIBLTDL_CONVENIENCE - - -# AC_LIBLTDL_INSTALLABLE([DIRECTORY]) -# ----------------------------------- -# sets LIBLTDL to the link flags for the libltdl installable library and -# LTDLINCL to the include flags for the libltdl header and adds -# --enable-ltdl-install to the configure arguments. Note that LIBLTDL -# and LTDLINCL are not AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If -# DIRECTORY is not provided and an installed libltdl is not found, it is -# assumed to be `libltdl'. LIBLTDL will be prefixed with '${top_builddir}/' -# and LTDLINCL will be prefixed with '${top_srcdir}/' (note the single -# quotes!). If your package is not flat and you're not using automake, -# define top_builddir and top_srcdir appropriately in the Makefiles. -# In the future, this macro may have to be called after AC_PROG_LIBTOOL. -AC_DEFUN([AC_LIBLTDL_INSTALLABLE], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - AC_CHECK_LIB(ltdl, lt_dlinit, - [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no], - [if test x"$enable_ltdl_install" = xno; then - AC_MSG_WARN([libltdl not installed, but installation disabled]) - else - enable_ltdl_install=yes - fi - ]) - if test x"$enable_ltdl_install" = x"yes"; then - ac_configure_args="$ac_configure_args --enable-ltdl-install" - LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la - LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) - else - ac_configure_args="$ac_configure_args --enable-ltdl-install=no" - LIBLTDL="-lltdl" - LTDLINCL= - fi - # For backwards non-gettext consistent compatibility... - INCLTDL="$LTDLINCL" -])# AC_LIBLTDL_INSTALLABLE - - -# AC_LIBTOOL_CXX -# -------------- -# enable support for C++ libraries -AC_DEFUN([AC_LIBTOOL_CXX], -[AC_REQUIRE([_LT_AC_LANG_CXX]) -])# AC_LIBTOOL_CXX - - -# _LT_AC_LANG_CXX -# --------------- -AC_DEFUN([_LT_AC_LANG_CXX], -[AC_REQUIRE([AC_PROG_CXX]) -AC_REQUIRE([AC_PROG_CXXCPP]) -_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}CXX]) -])# _LT_AC_LANG_CXX - - -# AC_LIBTOOL_F77 -# -------------- -# enable support for Fortran 77 libraries -AC_DEFUN([AC_LIBTOOL_F77], -[AC_REQUIRE([_LT_AC_LANG_F77]) -])# AC_LIBTOOL_F77 - - -# _LT_AC_LANG_F77 -# --------------- -AC_DEFUN([_LT_AC_LANG_F77], -[AC_REQUIRE([AC_PROG_F77]) -_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}F77]) -])# _LT_AC_LANG_F77 - - -# AC_LIBTOOL_GCJ -# -------------- -# enable support for GCJ libraries -AC_DEFUN([AC_LIBTOOL_GCJ], -[AC_REQUIRE([_LT_AC_LANG_GCJ]) -])# AC_LIBTOOL_GCJ - - -# _LT_AC_LANG_GCJ -# --------------- -AC_DEFUN([_LT_AC_LANG_GCJ], -[AC_PROVIDE_IFELSE([AC_PROG_GCJ],[], - [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[], - [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[], - [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])], - [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])], - [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])]) -_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}GCJ]) -])# _LT_AC_LANG_GCJ - - -# AC_LIBTOOL_RC -# -------------- -# enable support for Windows resource files -AC_DEFUN([AC_LIBTOOL_RC], -[AC_REQUIRE([LT_AC_PROG_RC]) -_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}RC]) -])# AC_LIBTOOL_RC - - -# AC_LIBTOOL_LANG_C_CONFIG -# ------------------------ -# Ensure that the configuration vars for the C compiler are -# suitably defined. Those variables are subsequently used by -# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. -AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG], [_LT_AC_LANG_C_CONFIG]) -AC_DEFUN([_LT_AC_LANG_C_CONFIG], -[lt_save_CC="$CC" -AC_LANG_PUSH(C) - -# Source file extension for C test sources. -ac_ext=c - -# Object file extension for compiled C test sources. -objext=o -_LT_AC_TAGVAR(objext, $1)=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code="int some_variable = 0;\n" - -# Code to be used in simple link tests -lt_simple_link_test_code='int main(){return(0);}\n' - -_LT_AC_SYS_COMPILER - -# -# Check for any special shared library compilation flags. -# -_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)= -if test "$GCC" = no; then - case $host_os in - sco3.2v5*) - _LT_AC_TAGVAR(lt_prog_cc_shlib, $1)='-belf' - ;; - esac -fi -if test -n "$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)"; then - AC_MSG_WARN([`$CC' requires `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to build shared libraries]) - if echo "$old_CC $old_CFLAGS " | grep "[[ ]]$]_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)[[[ ]]" >/dev/null; then : - else - AC_MSG_WARN([add `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to the CC or CFLAGS env variable and reconfigure]) - _LT_AC_TAGVAR(lt_cv_prog_cc_can_build_shared, $1)=no - fi -fi - - -# -# Check to make sure the static flag actually works. -# -AC_LIBTOOL_LINKER_OPTION([if $compiler static flag $_LT_AC_TAGVAR(lt_prog_compiler_static, $1) works], - _LT_AC_TAGVAR(lt_prog_compiler_static_works, $1), - $_LT_AC_TAGVAR(lt_prog_compiler_static, $1), - [], - [_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=]) - - -## CAVEAT EMPTOR: -## There is no encapsulation within the following macros, do not change -## the running order or otherwise move them around unless you know exactly -## what you are doing... -AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1) -AC_LIBTOOL_PROG_COMPILER_PIC($1) -AC_LIBTOOL_PROG_CC_C_O($1) -AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) -AC_LIBTOOL_PROG_LD_SHLIBS($1) -AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) -AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) -AC_LIBTOOL_SYS_LIB_STRIP -AC_LIBTOOL_DLOPEN_SELF($1) - -# Report which librarie types wil actually be built -AC_MSG_CHECKING([if libtool supports shared libraries]) -AC_MSG_RESULT([$can_build_shared]) - -AC_MSG_CHECKING([whether to build shared libraries]) -test "$can_build_shared" = "no" && enable_shared=no - -# On AIX, shared libraries and static libraries use the same namespace, and -# are all built from PIC. -case "$host_os" in -aix3*) - test "$enable_shared" = yes && enable_static=no - if test -n "$RANLIB"; then - archive_cmds="$archive_cmds~\$RANLIB \$lib" - postinstall_cmds='$RANLIB $lib' - fi - ;; - -aix4*) - if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then - test "$enable_shared" = yes && enable_static=no - fi - ;; - darwin* | rhapsody*) - if test "$GCC" = yes; then - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - case "$host_os" in - rhapsody* | darwin1.[[012]]) - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,suppress' - ;; - *) # Darwin 1.3 on - if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress' - else - case ${MACOSX_DEPLOYMENT_TARGET} in - 10.[012]) - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress' - ;; - 10.*) - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,dynamic_lookup' - ;; - esac - fi - ;; - esac - output_verbose_link_cmd='echo' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring' - _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs' - # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - _LT_AC_TAGVAR(hardcode_direct, $1)=no - _LT_AC_TAGVAR(hardcode_automatic, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience' - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - else - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; -esac -AC_MSG_RESULT([$enable_shared]) - -AC_MSG_CHECKING([whether to build static libraries]) -# Make sure either enable_shared or enable_static is yes. -test "$enable_shared" = yes || enable_static=yes -AC_MSG_RESULT([$enable_static]) - -AC_LIBTOOL_CONFIG($1) - -AC_LANG_POP -CC="$lt_save_CC" -])# AC_LIBTOOL_LANG_C_CONFIG - - -# AC_LIBTOOL_LANG_CXX_CONFIG -# -------------------------- -# Ensure that the configuration vars for the C compiler are -# suitably defined. Those variables are subsequently used by -# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. -AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG], [_LT_AC_LANG_CXX_CONFIG(CXX)]) -AC_DEFUN([_LT_AC_LANG_CXX_CONFIG], -[AC_LANG_PUSH(C++) -AC_REQUIRE([AC_PROG_CXX]) -AC_REQUIRE([AC_PROG_CXXCPP]) - -_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no -_LT_AC_TAGVAR(allow_undefined_flag, $1)= -_LT_AC_TAGVAR(always_export_symbols, $1)=no -_LT_AC_TAGVAR(archive_expsym_cmds, $1)= -_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)= -_LT_AC_TAGVAR(hardcode_direct, $1)=no -_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= -_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= -_LT_AC_TAGVAR(hardcode_libdir_separator, $1)= -_LT_AC_TAGVAR(hardcode_minus_L, $1)=no -_LT_AC_TAGVAR(hardcode_automatic, $1)=no -_LT_AC_TAGVAR(module_cmds, $1)= -_LT_AC_TAGVAR(module_expsym_cmds, $1)= -_LT_AC_TAGVAR(link_all_deplibs, $1)=unknown -_LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds -_LT_AC_TAGVAR(no_undefined_flag, $1)= -_LT_AC_TAGVAR(whole_archive_flag_spec, $1)= -_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no - -# Dependencies to place before and after the object being linked: -_LT_AC_TAGVAR(predep_objects, $1)= -_LT_AC_TAGVAR(postdep_objects, $1)= -_LT_AC_TAGVAR(predeps, $1)= -_LT_AC_TAGVAR(postdeps, $1)= -_LT_AC_TAGVAR(compiler_lib_search_path, $1)= - -# Source file extension for C++ test sources. -ac_ext=cc - -# Object file extension for compiled C++ test sources. -objext=o -_LT_AC_TAGVAR(objext, $1)=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code="int some_variable = 0;\n" - -# Code to be used in simple link tests -lt_simple_link_test_code='int main(int, char *[]) { return(0); }\n' - -# ltmain only uses $CC for tagged configurations so make sure $CC is set. -_LT_AC_SYS_COMPILER - -# Allow CC to be a program name with arguments. -lt_save_CC=$CC -lt_save_LD=$LD -lt_save_GCC=$GCC -GCC=$GXX -lt_save_with_gnu_ld=$with_gnu_ld -lt_save_path_LD=$lt_cv_path_LD -if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then - lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx -else - unset lt_cv_prog_gnu_ld -fi -if test -n "${lt_cv_path_LDCXX+set}"; then - lt_cv_path_LD=$lt_cv_path_LDCXX -else - unset lt_cv_path_LD -fi -test -z "${LDCXX+set}" || LD=$LDCXX -CC=${CXX-"c++"} -compiler=$CC -_LT_AC_TAGVAR(compiler, $1)=$CC -cc_basename=`$echo X"$compiler" | $Xsed -e 's%^.*/%%'` - -# We don't want -fno-exception wen compiling C++ code, so set the -# no_builtin_flag separately -if test "$GXX" = yes; then - _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' -else - _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= -fi - -if test "$GXX" = yes; then - # Set up default GNU C++ configuration - - AC_PROG_LD - - # Check if GNU C++ uses GNU ld as the underlying linker, since the - # archiving commands below assume that GNU ld is being used. - if test "$with_gnu_ld" = yes; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - - # If archive_cmds runs LD, not CC, wlarc should be empty - # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to - # investigate it a little bit more. (MM) - wlarc='${wl}' - - # ancient GNU ld didn't support --whole-archive et. al. - if eval "`$CC -print-prog-name=ld` --help 2>&1" | \ - grep 'no-whole-archive' > /dev/null; then - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' - else - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= - fi - else - with_gnu_ld=no - wlarc= - - # A generic and very simple default shared library creation - # command for GNU C++ for the case where it uses the native - # linker, instead of GNU ld. If possible, this setting should - # overridden to take advantage of the native linker features on - # the platform it is being used on. - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -o $lib' - fi - - # 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 "\-L"' - -else - GXX=no - with_gnu_ld=no - wlarc= -fi - -# PORTME: fill in a description of your system's C++ link characteristics -AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) -_LT_AC_TAGVAR(ld_shlibs, $1)=yes -case $host_os in - aix3*) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - aix4* | aix5*) - if test "$host_cpu" = ia64; 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 - # KDE requires run time linking. Make it the default. - aix_use_runtimelinking=yes - exp_sym_flag='-bexport' - no_entry_flag='-bnoentry' - fi - - # When large executables or shared objects are built, AIX ld can - # have problems creating the table of contents. If linking a library - # or program results in "error TOC overflow" add -mminimal-toc to - # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not - # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. - - _LT_AC_TAGVAR(archive_cmds, $1)='' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':' - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - - if test "$GXX" = yes; then - case $host_os in aix4.[012]|aix4.[012].*) - # We only want to do this on AIX 4.2 and lower, the check - # below for broken collect2 doesn't work under 4.3+ - collect2name=`${CC} -print-prog-name=collect2` - if test -f "$collect2name" && \ - strings "$collect2name" | grep resolve_lib_name >/dev/null - then - # We have reworked collect2 - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - else - # We have old collect2 - _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported - # It fails to find uninstalled libraries when the uninstalled - # path is not listed in the libpath. Setting hardcode_minus_L - # to unsupported forces relinking - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)= - fi - esac - shared_flag='-shared' - else - # not using gcc - if test "$host_cpu" = ia64; then - # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release - # chokes on -Wl,-G. The following line is correct: - shared_flag='-G' - else - if test "$aix_use_runtimelinking" = yes; then - shared_flag='-qmkshrobj ${wl}-G' - else - shared_flag='-qmkshrobj' - fi - fi - fi - - # Let the compiler handle the export list. - _LT_AC_TAGVAR(always_export_symbols, $1)=no - if test "$aix_use_runtimelinking" = yes; then - # Warning - without using the other runtime loading flags (-brtl), - # -berok will link without error, but may produce a broken library. - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok' - # Determine the default libpath from the value encoded in an empty executable. - _LT_AC_SYS_LIBPATH_AIX - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" - - _LT_AC_TAGVAR(archive_cmds, $1)="\$CC"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '" $shared_flag" - _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" - else - if test "$host_cpu" = ia64; then - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' - _LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs" - _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" - else - # Determine the default libpath from the value encoded in an empty executable. - _LT_AC_SYS_LIBPATH_AIX - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" - # Warning - without using the other run time loading flags, - # -berok will link without error, but may produce a broken library. - _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' - # -bexpall does not export symbols beginning with underscore (_) - _LT_AC_TAGVAR(always_export_symbols, $1)=yes - # Exported symbols can be pulled into shared objects from archives - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' ' - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes - # This is similar to how AIX traditionally builds it's shared libraries. - _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' - fi - fi - ;; - chorus*) - case $cc_basename in - *) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - - cygwin* | mingw* | pw32*) - # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, - # as there is no search path for DLLs. - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(allow_undefined_flag, $1)=no - _LT_AC_TAGVAR(always_export_symbols, $1)=no - _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - - if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib' - # If the export-symbols file already is a .def file (1st line - # is EXPORTS), use it as is; otherwise, prepend... - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then - cp $export_symbols $output_objdir/$soname.def; - else - echo EXPORTS > $output_objdir/$soname.def; - cat $export_symbols >> $output_objdir/$soname.def; - fi~ - $CC -shared -nostdlib $output_objdir/$soname.def $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib' - else - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - darwin* | rhapsody*) - if test "$GXX" = yes; then - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - case "$host_os" in - rhapsody* | darwin1.[[012]]) - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,suppress' - ;; - *) # Darwin 1.3 on - if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress' - else - case ${MACOSX_DEPLOYMENT_TARGET} in - 10.[012]) - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress' - ;; - 10.*) - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,dynamic_lookup' - ;; - esac - fi - ;; - esac - lt_int_apple_cc_single_mod=no - output_verbose_link_cmd='echo' - if $CC -dumpspecs 2>&1 | grep 'single_module' >/dev/null ; then - lt_int_apple_cc_single_mod=yes - fi - if test "X$lt_int_apple_cc_single_mod" = Xyes ; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring' - else - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $compiler_flags $deplibs -install_name $rpath/$soname $verstring' - fi - _LT_AC_TAGVAR(module_cmds, $1)='$CC ${wl}-bind_at_load $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs' - - # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's - if test "X$lt_int_apple_cc_single_mod" = Xyes ; then - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - else - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $compiler_flags $deplibs -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - fi - _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - _LT_AC_TAGVAR(hardcode_direct, $1)=no - _LT_AC_TAGVAR(hardcode_automatic, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience' - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - else - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - dgux*) - case $cc_basename in - ec++) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - ghcx) - # Green Hills C++ Compiler - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - freebsd[12]*) - # C++ shared libraries reported to be fairly broken before switch to ELF - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - freebsd-elf*) - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - ;; - freebsd* | kfreebsd*-gnu) - # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF - # conventions - _LT_AC_TAGVAR(ld_shlibs, $1)=yes - ;; - gnu*) - ;; - hpux9*) - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, - # but as the default - # location of the library. - - case $cc_basename in - CC) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - aCC) - _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | egrep "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - ;; - *) - if test "$GXX" = yes; then - _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' - else - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - ;; - hpux10*|hpux11*) - if test $with_gnu_ld = no; then - case "$host_cpu" in - hppa*64*) - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - ;; - ia64*) - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - ;; - *) - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - ;; - esac - fi - case "$host_cpu" in - hppa*64*) - _LT_AC_TAGVAR(hardcode_direct, $1)=no - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - ia64*) - _LT_AC_TAGVAR(hardcode_direct, $1)=no - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, - # but as the default - # location of the library. - ;; - *) - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, - # but as the default - # location of the library. - ;; - esac - - case $cc_basename in - CC) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - aCC) - case "$host_cpu" in - hppa*64*|ia64*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs' - ;; - *) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects' - ;; - esac - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | grep "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - ;; - *) - if test "$GXX" = yes; then - if test $with_gnu_ld = no; then - case "$host_cpu" in - ia64*|hppa*64*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs' - ;; - *) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects' - ;; - esac - fi - else - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - ;; - irix5* | irix6*) - case $cc_basename in - CC) - # SGI C++ - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' - - # Archives containing C++ object files must be created using - # "CC -ar", where "CC" is the IRIX C++ compiler. This is - # necessary to make sure instantiated templates are included - # in the archive. - _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs' - ;; - *) - if test "$GXX" = yes; then - if test "$with_gnu_ld" = no; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' - else - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` -o $lib' - fi - fi - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - ;; - esac - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - ;; - linux*) - case $cc_basename in - KCC) - # Kuck and Associates, Inc. (KAI) C++ Compiler - - # KCC will only create a shared library if the output file - # ends with ".so" (or ".sl" for HP-UX), so rename the library - # to its proper name (with version) after linking. - _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects --soname $soname -o \$templib; mv \$templib $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib' - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | grep "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath,$libdir' - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - - # Archives containing C++ object files must be created using - # "CC -Bstatic", where "CC" is the KAI C++ compiler. - _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' - ;; - icpc) - # Intel C++ - with_gnu_ld=yes - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' - ;; - cxx) - # Compaq C++ - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols' - - runpath_var=LD_RUN_PATH - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # 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=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - ;; - esac - ;; - lynxos*) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - m88k*) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - mvs*) - case $cc_basename in - cxx) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' - wlarc= - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - fi - # Workaround some broken pre-1.5 toolchains - output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"' - ;; - osf3*) - case $cc_basename in - KCC) - # Kuck and Associates, Inc. (KAI) C++ Compiler - - # KCC will only create a shared library if the output file - # ends with ".so" (or ".sl" for HP-UX), so rename the library - # to its proper name (with version) after linking. - _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects --soname $soname -o \$templib; mv \$templib $lib' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - - # Archives containing C++ object files must be created using - # "CC -Bstatic", where "CC" is the KAI C++ compiler. - _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' - - ;; - RCC) - # Rational C++ 2.4.1 - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - cxx) - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $soname `test -n "$verstring" && echo ${wl}-set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # 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" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - ;; - *) - if test "$GXX" = yes && test "$with_gnu_ld" = no; then - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - - # 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 "\-L"' - - else - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - ;; - osf4* | osf5*) - case $cc_basename in - KCC) - # Kuck and Associates, Inc. (KAI) C++ Compiler - - # KCC will only create a shared library if the output file - # ends with ".so" (or ".sl" for HP-UX), so rename the library - # to its proper name (with version) after linking. - _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects --soname $soname -o \$templib; mv \$templib $lib' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - - # Archives containing C++ object files must be created using - # the KAI C++ compiler. - _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' - ;; - RCC) - # Rational C++ 2.4.1 - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - cxx) - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ - echo "-hidden">> $lib.exp~ - $CC -shared$allow_undefined_flag $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -msym -soname $soname -Wl,-input -Wl,$lib.exp `test -n "$verstring" && echo -set_version $verstring` -update_registry $objdir/so_locations -o $lib~ - $rm $lib.exp' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # 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" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - ;; - *) - if test "$GXX" = yes && test "$with_gnu_ld" = no; then - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - - # 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 "\-L"' - - else - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - ;; - psos*) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - sco*) - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - case $cc_basename in - CC) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - sunos4*) - case $cc_basename in - CC) - # Sun C++ 4.x - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - lcc) - # Lucid - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - solaris*) - case $cc_basename in - CC) - # Sun C++ 4.2, 5.x and Centerline C++ - _LT_AC_TAGVAR(no_undefined_flag, $1)=' -zdefs' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -nolib -h$soname -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects' - _LT_AC_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} -nolib ${wl}-M ${wl}$lib.exp -h$soname -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~$rm $lib.exp' - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - case $host_os in - solaris2.[0-5] | solaris2.[0-5].*) ;; - *) - # The C++ compiler is used as linker so we must use $wl - # flag to pass the commands to the underlying system - # linker. - # Supported since Solaris 2.6 (maybe 2.5.1?) - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' - ;; - esac - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep "\-[[LR]]"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - - # Archives containing C++ object files must be created using - # "CC -xar", where "CC" is the Sun C++ compiler. This is - # necessary to make sure instantiated templates are included - # in the archive. - _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' - ;; - gcx) - # Green Hills C++ Compiler - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-h $wl$soname -o $lib' - - # The C++ compiler must be used to create the archive. - _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs' - ;; - *) - # GNU C++ compiler with Solaris linker - if test "$GXX" = yes && test "$with_gnu_ld" = no; then - _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs' - if $CC --version | grep -v '^2\.7' > /dev/null; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-h $wl$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~$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 \"\-L\"" - else - # g++ 2.7 appears to require `-G' NOT `-shared' on this - # platform. - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-h $wl$soname -o $lib' - _LT_AC_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 -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~$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 \"\-L\"" - fi - - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir' - fi - ;; - esac - ;; - sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7*) - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - ;; - tandem*) - case $cc_basename in - NCC) - # NonStop-UX NCC 3.20 - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - vxworks*) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; -esac -AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)]) -test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no - -_LT_AC_TAGVAR(GCC, $1)="$GXX" -_LT_AC_TAGVAR(LD, $1)="$LD" - -## CAVEAT EMPTOR: -## There is no encapsulation within the following macros, do not change -## the running order or otherwise move them around unless you know exactly -## what you are doing... -AC_LIBTOOL_POSTDEP_PREDEP($1) -AC_LIBTOOL_PROG_COMPILER_PIC($1) -AC_LIBTOOL_PROG_CC_C_O($1) -AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) -AC_LIBTOOL_PROG_LD_SHLIBS($1) -AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) -AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) -AC_LIBTOOL_SYS_LIB_STRIP -AC_LIBTOOL_DLOPEN_SELF($1) - -AC_LIBTOOL_CONFIG($1) - -AC_LANG_POP -CC=$lt_save_CC -LDCXX=$LD -LD=$lt_save_LD -GCC=$lt_save_GCC -with_gnu_ldcxx=$with_gnu_ld -with_gnu_ld=$lt_save_with_gnu_ld -lt_cv_path_LDCXX=$lt_cv_path_LD -lt_cv_path_LD=$lt_save_path_LD -lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld -lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld -])# AC_LIBTOOL_LANG_CXX_CONFIG - -# AC_LIBTOOL_POSTDEP_PREDEP([TAGNAME]) -# ------------------------ -# Figure out "hidden" library dependencies from verbose -# compiler output when linking a shared library. -# Parse the compiler output and extract the necessary -# objects, libraries and library flags. -AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP],[ -dnl we can't use the lt_simple_compile_test_code here, -dnl because it contains code intended for an executable, -dnl not a library. It's possible we should let each -dnl tag define a new lt_????_link_test_code variable, -dnl but it's only used here... -ifelse([$1],[],[cat > conftest.$ac_ext <<EOF -int a; -void foo (void) { a = 0; } -EOF -],[$1],[CXX],[cat > conftest.$ac_ext <<EOF -class Foo -{ -public: - Foo (void) { a = 0; } -private: - int a; -}; -EOF -],[$1],[F77],[cat > conftest.$ac_ext <<EOF - subroutine foo - implicit none - integer*4 a - a=0 - return - end -EOF -],[$1],[GCJ],[cat > conftest.$ac_ext <<EOF -public class foo { - private int a; - public void bar (void) { - a = 0; - } -}; -EOF -]) -dnl Parse the compiler output and extract the necessary -dnl objects, libraries and library flags. -if AC_TRY_EVAL(ac_compile); then - # Parse the compiler output and extract the necessary - # objects, libraries and library flags. - - # Sentinel used to keep track of whether or not we are before - # the conftest object file. - pre_test_object_deps_done=no - - # The `*' in the case matches for architectures that use `case' in - # $output_verbose_cmd can trigger glob expansion during the loop - # eval without this substitution. - output_verbose_link_cmd="`$echo \"X$output_verbose_link_cmd\" | $Xsed -e \"$no_glob_subst\"`" - - for p in `eval $output_verbose_link_cmd`; do - case $p in - - -L* | -R* | -l*) - # Some compilers place space between "-{L,R}" and the path. - # Remove the space. - if test $p = "-L" \ - || test $p = "-R"; then - prev=$p - continue - else - prev= - fi - - if test "$pre_test_object_deps_done" = no; then - case $p in - -L* | -R*) - # Internal compiler library paths should come after those - # provided the user. The postdeps already come after the - # user supplied libs so there is no need to process them. - if test -z "$_LT_AC_TAGVAR(compiler_lib_search_path, $1)"; then - _LT_AC_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}" - else - _LT_AC_TAGVAR(compiler_lib_search_path, $1)="${_LT_AC_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}" - fi - ;; - # The "-l" case would never come before the object being - # linked, so don't bother handling this case. - esac - else - if test -z "$_LT_AC_TAGVAR(postdeps, $1)"; then - _LT_AC_TAGVAR(postdeps, $1)="${prev}${p}" - else - _LT_AC_TAGVAR(postdeps, $1)="${_LT_AC_TAGVAR(postdeps, $1)} ${prev}${p}" - fi - fi - ;; - - *.$objext|*.$libext) - # This assumes that the test object file only shows up - # once in the compiler output. - if test "$p" = "conftest.$objext"; then - pre_test_object_deps_done=yes - continue - fi - - if test "$pre_test_object_deps_done" = no; then - if test -z "$_LT_AC_TAGVAR(predep_objects, $1)"; then - _LT_AC_TAGVAR(predep_objects, $1)="$p" - else - _LT_AC_TAGVAR(predep_objects, $1)="$_LT_AC_TAGVAR(predep_objects, $1) $p" - fi - else - if test -z "$_LT_AC_TAGVAR(postdep_objects, $1)"; then - _LT_AC_TAGVAR(postdep_objects, $1)="$p" - else - _LT_AC_TAGVAR(postdep_objects, $1)="$_LT_AC_TAGVAR(postdep_objects, $1) $p" - fi - fi - ;; - - *) ;; # Ignore the rest. - - esac - done - - # Clean up. - rm -f a.out a.exe -else - echo "libtool.m4: error: problem compiling $1 test program" -fi - -$rm -f confest.$objext - -case " $_LT_AC_TAGVAR(postdeps, $1) " in -*" -lc "*) _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no ;; -esac -])# AC_LIBTOOL_POSTDEP_PREDEP - -# AC_LIBTOOL_LANG_F77_CONFIG -# ------------------------ -# Ensure that the configuration vars for the C compiler are -# suitably defined. Those variables are subsequently used by -# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. -AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG], [_LT_AC_LANG_F77_CONFIG(F77)]) -AC_DEFUN([_LT_AC_LANG_F77_CONFIG], -[AC_REQUIRE([AC_PROG_F77]) -AC_LANG_PUSH(Fortran 77) - -_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no -_LT_AC_TAGVAR(allow_undefined_flag, $1)= -_LT_AC_TAGVAR(always_export_symbols, $1)=no -_LT_AC_TAGVAR(archive_expsym_cmds, $1)= -_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)= -_LT_AC_TAGVAR(hardcode_direct, $1)=no -_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= -_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= -_LT_AC_TAGVAR(hardcode_libdir_separator, $1)= -_LT_AC_TAGVAR(hardcode_minus_L, $1)=no -_LT_AC_TAGVAR(hardcode_automatic, $1)=no -_LT_AC_TAGVAR(module_cmds, $1)= -_LT_AC_TAGVAR(module_expsym_cmds, $1)= -_LT_AC_TAGVAR(link_all_deplibs, $1)=unknown -_LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds -_LT_AC_TAGVAR(no_undefined_flag, $1)= -_LT_AC_TAGVAR(whole_archive_flag_spec, $1)= -_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no - -# Source file extension for f77 test sources. -ac_ext=f - -# Object file extension for compiled f77 test sources. -objext=o -_LT_AC_TAGVAR(objext, $1)=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code=" subroutine t\n return\n end\n" - -# Code to be used in simple link tests -lt_simple_link_test_code=" program t\n end\n" - -# ltmain only uses $CC for tagged configurations so make sure $CC is set. -_LT_AC_SYS_COMPILER - -# Allow CC to be a program name with arguments. -lt_save_CC="$CC" -CC=${F77-"f77"} -compiler=$CC -_LT_AC_TAGVAR(compiler, $1)=$CC -cc_basename=`$echo X"$compiler" | $Xsed -e 's%^.*/%%'` - -AC_MSG_CHECKING([if libtool supports shared libraries]) -AC_MSG_RESULT([$can_build_shared]) - -AC_MSG_CHECKING([whether to build shared libraries]) -test "$can_build_shared" = "no" && enable_shared=no - -# On AIX, shared libraries and static libraries use the same namespace, and -# are all built from PIC. -case "$host_os" in -aix3*) - test "$enable_shared" = yes && enable_static=no - if test -n "$RANLIB"; then - archive_cmds="$archive_cmds~\$RANLIB \$lib" - postinstall_cmds='$RANLIB $lib' - fi - ;; -aix4*) - test "$enable_shared" = yes && enable_static=no - ;; -esac -AC_MSG_RESULT([$enable_shared]) - -AC_MSG_CHECKING([whether to build static libraries]) -# Make sure either enable_shared or enable_static is yes. -test "$enable_shared" = yes || enable_static=yes -AC_MSG_RESULT([$enable_static]) - -test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no - -_LT_AC_TAGVAR(GCC, $1)="$G77" -_LT_AC_TAGVAR(LD, $1)="$LD" - -AC_LIBTOOL_PROG_COMPILER_PIC($1) -AC_LIBTOOL_PROG_CC_C_O($1) -AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) -AC_LIBTOOL_PROG_LD_SHLIBS($1) -AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) -AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) -AC_LIBTOOL_SYS_LIB_STRIP - - -AC_LIBTOOL_CONFIG($1) - -AC_LANG_POP -CC="$lt_save_CC" -])# AC_LIBTOOL_LANG_F77_CONFIG - - -# AC_LIBTOOL_LANG_GCJ_CONFIG -# -------------------------- -# Ensure that the configuration vars for the C compiler are -# suitably defined. Those variables are subsequently used by -# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. -AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG], [_LT_AC_LANG_GCJ_CONFIG(GCJ)]) -AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG], -[AC_LANG_SAVE - -# Source file extension for Java test sources. -ac_ext=java - -# Object file extension for compiled Java test sources. -objext=o -_LT_AC_TAGVAR(objext, $1)=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code="class foo {}\n" - -# Code to be used in simple link tests -lt_simple_link_test_code='public class conftest { public static void main(String[] argv) {}; }\n' - -# ltmain only uses $CC for tagged configurations so make sure $CC is set. -_LT_AC_SYS_COMPILER - -# Allow CC to be a program name with arguments. -lt_save_CC="$CC" -CC=${GCJ-"gcj"} -compiler=$CC -_LT_AC_TAGVAR(compiler, $1)=$CC - -# GCJ did not exist at the time GCC didn't implicitly link libc in. -_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - -## CAVEAT EMPTOR: -## There is no encapsulation within the following macros, do not change -## the running order or otherwise move them around unless you know exactly -## what you are doing... -AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1) -AC_LIBTOOL_PROG_COMPILER_PIC($1) -AC_LIBTOOL_PROG_CC_C_O($1) -AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) -AC_LIBTOOL_PROG_LD_SHLIBS($1) -AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) -AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) -AC_LIBTOOL_SYS_LIB_STRIP -AC_LIBTOOL_DLOPEN_SELF($1) - -AC_LIBTOOL_CONFIG($1) - -AC_LANG_RESTORE -CC="$lt_save_CC" -])# AC_LIBTOOL_LANG_GCJ_CONFIG - - -# AC_LIBTOOL_LANG_RC_CONFIG -# -------------------------- -# Ensure that the configuration vars for the Windows resource compiler are -# suitably defined. Those variables are subsequently used by -# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. -AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG], [_LT_AC_LANG_RC_CONFIG(RC)]) -AC_DEFUN([_LT_AC_LANG_RC_CONFIG], -[AC_LANG_SAVE - -# Source file extension for RC test sources. -ac_ext=rc - -# Object file extension for compiled RC test sources. -objext=o -_LT_AC_TAGVAR(objext, $1)=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }\n' - -# Code to be used in simple link tests -lt_simple_link_test_code="$lt_simple_compile_test_code" - -# ltmain only uses $CC for tagged configurations so make sure $CC is set. -_LT_AC_SYS_COMPILER - -# Allow CC to be a program name with arguments. -lt_save_CC="$CC" -CC=${RC-"windres"} -compiler=$CC -_LT_AC_TAGVAR(compiler, $1)=$CC -_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes - -AC_LIBTOOL_CONFIG($1) - -AC_LANG_RESTORE -CC="$lt_save_CC" -])# AC_LIBTOOL_LANG_RC_CONFIG - - -# AC_LIBTOOL_CONFIG([TAGNAME]) -# ---------------------------- -# If TAGNAME is not passed, then create an initial libtool script -# with a default configuration from the untagged config vars. Otherwise -# add code to config.status for appending the configuration named by -# TAGNAME from the matching tagged config vars. -AC_DEFUN([AC_LIBTOOL_CONFIG], -[# The else clause should only fire when bootstrapping the -# libtool distribution, otherwise you forgot to ship ltmain.sh -# with your package, and you will get complaints that there are -# no rules to generate ltmain.sh. -if test -f "$ltmain"; then - # See if we are running on zsh, and set the options which allow our commands through - # without removal of \ escapes. - if test -n "${ZSH_VERSION+set}" ; then - setopt NO_GLOB_SUBST - fi - # Now quote all the things that may contain metacharacters while being - # careful not to overquote the AC_SUBSTed values. We take copies of the - # variables and quote the copies for generation of the libtool script. - for var in echo old_CC old_CFLAGS AR AR_FLAGS EGREP RANLIB LN_S LTCC NM SED SHELL \ - libname_spec library_names_spec soname_spec extract_expsyms_cmds \ - old_striplib striplib file_magic_cmd finish_cmds finish_eval \ - deplibs_check_method reload_flag reload_cmds need_locks \ - lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl \ - lt_cv_sys_global_symbol_to_c_name_address \ - sys_lib_search_path_spec sys_lib_dlsearch_path_spec \ - old_postinstall_cmds old_postuninstall_cmds \ - _LT_AC_TAGVAR(compiler, $1) \ - _LT_AC_TAGVAR(CC, $1) \ - _LT_AC_TAGVAR(LD, $1) \ - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1) \ - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1) \ - _LT_AC_TAGVAR(lt_prog_compiler_static, $1) \ - _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) \ - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1) \ - _LT_AC_TAGVAR(thread_safe_flag_spec, $1) \ - _LT_AC_TAGVAR(whole_archive_flag_spec, $1) \ - _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1) \ - _LT_AC_TAGVAR(old_archive_cmds, $1) \ - _LT_AC_TAGVAR(old_archive_from_new_cmds, $1) \ - _LT_AC_TAGVAR(predep_objects, $1) \ - _LT_AC_TAGVAR(postdep_objects, $1) \ - _LT_AC_TAGVAR(predeps, $1) \ - _LT_AC_TAGVAR(postdeps, $1) \ - _LT_AC_TAGVAR(compiler_lib_search_path, $1) \ - _LT_AC_TAGVAR(archive_cmds, $1) \ - _LT_AC_TAGVAR(archive_expsym_cmds, $1) \ - _LT_AC_TAGVAR(postinstall_cmds, $1) \ - _LT_AC_TAGVAR(postuninstall_cmds, $1) \ - _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) \ - _LT_AC_TAGVAR(allow_undefined_flag, $1) \ - _LT_AC_TAGVAR(no_undefined_flag, $1) \ - _LT_AC_TAGVAR(export_symbols_cmds, $1) \ - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) \ - _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1) \ - _LT_AC_TAGVAR(hardcode_libdir_separator, $1) \ - _LT_AC_TAGVAR(hardcode_automatic, $1) \ - _LT_AC_TAGVAR(module_cmds, $1) \ - _LT_AC_TAGVAR(module_expsym_cmds, $1) \ - _LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1) \ - _LT_AC_TAGVAR(exclude_expsyms, $1) \ - _LT_AC_TAGVAR(include_expsyms, $1); do - - case $var in - _LT_AC_TAGVAR(old_archive_cmds, $1) | \ - _LT_AC_TAGVAR(old_archive_from_new_cmds, $1) | \ - _LT_AC_TAGVAR(archive_cmds, $1) | \ - _LT_AC_TAGVAR(archive_expsym_cmds, $1) | \ - _LT_AC_TAGVAR(module_cmds, $1) | \ - _LT_AC_TAGVAR(module_expsym_cmds, $1) | \ - _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) | \ - _LT_AC_TAGVAR(export_symbols_cmds, $1) | \ - extract_expsyms_cmds | reload_cmds | finish_cmds | \ - postinstall_cmds | postuninstall_cmds | \ - old_postinstall_cmds | old_postuninstall_cmds | \ - sys_lib_search_path_spec | sys_lib_dlsearch_path_spec) - # Double-quote double-evaled strings. - eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" - ;; - *) - eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" - ;; - esac - done - - case $lt_echo in - *'\[$]0 --fallback-echo"') - lt_echo=`$echo "X$lt_echo" | $Xsed -e 's/\\\\\\\[$]0 --fallback-echo"[$]/[$]0 --fallback-echo"/'` - ;; - esac - -ifelse([$1], [], - [cfgfile="${ofile}T" - trap "$rm \"$cfgfile\"; exit 1" 1 2 15 - $rm -f "$cfgfile" - AC_MSG_NOTICE([creating $ofile])], - [cfgfile="$ofile"]) - - cat <<__EOF__ >> "$cfgfile" -ifelse([$1], [], -[#! $SHELL - -# `$echo "$cfgfile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) -# NOTE: Changes made to this file will be lost: look at ltmain.sh. -# -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 -# Free Software Foundation, Inc. -# -# This file is part of GNU Libtool: -# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996 -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# A sed program that does not truncate output. -SED=$lt_SED - -# Sed that helps us avoid accidentally triggering echo(1) options like -n. -Xsed="$SED -e s/^X//" - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi - -# The names of the tagged configurations supported by this script. -available_tags= - -# ### BEGIN LIBTOOL CONFIG], -[# ### BEGIN LIBTOOL TAG CONFIG: $tagname]) - -# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: - -# Shell to use when invoking shell scripts. -SHELL=$lt_SHELL - -# Whether or not to build shared libraries. -build_libtool_libs=$enable_shared - -# Whether or not to build static libraries. -build_old_libs=$enable_static - -# Whether or not to add -lc for building shared libraries. -build_libtool_need_lc=$_LT_AC_TAGVAR(archive_cmds_need_lc, $1) - -# Whether or not to disallow shared libs when runtime libs are static -allow_libtool_libs_with_static_runtimes=$_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1) - -# Whether or not to optimize for fast installation. -fast_install=$enable_fast_install - -# The host system. -host_alias=$host_alias -host=$host - -# An echo program that does not interpret backslashes. -echo=$lt_echo - -# The archiver. -AR=$lt_AR -AR_FLAGS=$lt_AR_FLAGS - -# A C compiler. -LTCC=$lt_LTCC - -# A language-specific compiler. -CC=$lt_[]_LT_AC_TAGVAR(compiler, $1) - -# Is the compiler the GNU C compiler? -with_gcc=$_LT_AC_TAGVAR(GCC, $1) - -# An ERE matcher. -EGREP=$lt_EGREP - -# The linker used to build libraries. -LD=$lt_[]_LT_AC_TAGVAR(LD, $1) - -# Whether we need hard or soft links. -LN_S=$lt_LN_S - -# A BSD-compatible nm program. -NM=$lt_NM - -# A symbol stripping program -STRIP=$STRIP - -# Used to examine libraries when file_magic_cmd begins "file" -MAGIC_CMD=$MAGIC_CMD - -# Used on cygwin: DLL creation program. -DLLTOOL="$DLLTOOL" - -# Used on cygwin: object dumper. -OBJDUMP="$OBJDUMP" - -# Used on cygwin: assembler. -AS="$AS" - -# The name of the directory that contains temporary libtool files. -objdir=$objdir - -# How to create reloadable object files. -reload_flag=$lt_reload_flag -reload_cmds=$lt_reload_cmds - -# How to pass a linker flag through the compiler. -wl=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) - -# Object file suffix (normally "o"). -objext="$ac_objext" - -# Old archive suffix (normally "a"). -libext="$libext" - -# Shared library suffix (normally ".so"). -shrext='$shrext' - -# Executable file suffix (normally ""). -exeext="$exeext" - -# Additional compiler flags for building library objects. -pic_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) -pic_mode=$pic_mode - -# What is the maximum length of a command? -max_cmd_len=$lt_cv_sys_max_cmd_len - -# Does compiler simultaneously support -c and -o options? -compiler_c_o=$lt_[]_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1) - -# Must we lock files when doing compilation ? -need_locks=$lt_need_locks - -# Do we need the lib prefix for modules? -need_lib_prefix=$need_lib_prefix - -# Do we need a version for libraries? -need_version=$need_version - -# Whether dlopen is supported. -dlopen_support=$enable_dlopen - -# Whether dlopen of programs is supported. -dlopen_self=$enable_dlopen_self - -# Whether dlopen of statically linked programs is supported. -dlopen_self_static=$enable_dlopen_self_static - -# Compiler flag to prevent dynamic linking. -link_static_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_static, $1) - -# Compiler flag to turn off builtin functions. -no_builtin_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) - -# Compiler flag to allow reflexive dlopens. -export_dynamic_flag_spec=$lt_[]_LT_AC_TAGVAR(export_dynamic_flag_spec, $1) - -# Compiler flag to generate shared objects directly from archives. -whole_archive_flag_spec=$lt_[]_LT_AC_TAGVAR(whole_archive_flag_spec, $1) - -# Compiler flag to generate thread-safe objects. -thread_safe_flag_spec=$lt_[]_LT_AC_TAGVAR(thread_safe_flag_spec, $1) - -# Library versioning type. -version_type=$version_type - -# Format of library name prefix. -libname_spec=$lt_libname_spec - -# List of archive names. First name is the real one, the rest are links. -# The last name is the one that the linker finds with -lNAME. -library_names_spec=$lt_library_names_spec - -# The coded name of the library, if different from the real name. -soname_spec=$lt_soname_spec - -# Commands used to build and install an old-style archive. -RANLIB=$lt_RANLIB -old_archive_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_cmds, $1) -old_postinstall_cmds=$lt_old_postinstall_cmds -old_postuninstall_cmds=$lt_old_postuninstall_cmds - -# Create an old-style archive from a shared archive. -old_archive_from_new_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_new_cmds, $1) - -# Create a temporary old-style archive to link instead of a shared archive. -old_archive_from_expsyms_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) - -# Commands used to build and install a shared archive. -archive_cmds=$lt_[]_LT_AC_TAGVAR(archive_cmds, $1) -archive_expsym_cmds=$lt_[]_LT_AC_TAGVAR(archive_expsym_cmds, $1) -postinstall_cmds=$lt_postinstall_cmds -postuninstall_cmds=$lt_postuninstall_cmds - -# Commands used to build a loadable module (assumed same as above if empty) -module_cmds=$lt_[]_LT_AC_TAGVAR(module_cmds, $1) -module_expsym_cmds=$lt_[]_LT_AC_TAGVAR(module_expsym_cmds, $1) - -# Commands to strip libraries. -old_striplib=$lt_old_striplib -striplib=$lt_striplib - -# Dependencies to place before the objects being linked to create a -# shared library. -predep_objects=$lt_[]_LT_AC_TAGVAR(predep_objects, $1) - -# Dependencies to place after the objects being linked to create a -# shared library. -postdep_objects=$lt_[]_LT_AC_TAGVAR(postdep_objects, $1) - -# Dependencies to place before the objects being linked to create a -# shared library. -predeps=$lt_[]_LT_AC_TAGVAR(predeps, $1) - -# Dependencies to place after the objects being linked to create a -# shared library. -postdeps=$lt_[]_LT_AC_TAGVAR(postdeps, $1) - -# The library search path used internally by the compiler when linking -# a shared library. -compiler_lib_search_path=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1) - -# 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 - -# Flag that allows shared libraries with undefined symbols to be built. -allow_undefined_flag=$lt_[]_LT_AC_TAGVAR(allow_undefined_flag, $1) - -# Flag that forces no undefined symbols. -no_undefined_flag=$lt_[]_LT_AC_TAGVAR(no_undefined_flag, $1) - -# Commands used to finish a libtool library installation in a directory. -finish_cmds=$lt_finish_cmds - -# Same as above, but a single script fragment to be evaled but not shown. -finish_eval=$lt_finish_eval - -# 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 in a C name address pair -global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address - -# This is the shared library runtime path variable. -runpath_var=$runpath_var - -# This is the shared library path variable. -shlibpath_var=$shlibpath_var - -# Is shlibpath searched before the hard-coded library search path? -shlibpath_overrides_runpath=$shlibpath_overrides_runpath - -# How to hardcode a shared library path into an executable. -hardcode_action=$_LT_AC_TAGVAR(hardcode_action, $1) - -# Whether we should hardcode library paths into libraries. -hardcode_into_libs=$hardcode_into_libs - -# Flag to hardcode \$libdir into a binary during linking. -# This must work even if \$libdir does not exist. -hardcode_libdir_flag_spec=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) - -# If ld is used when linking, flag to hardcode \$libdir into -# a binary during linking. This must work even if \$libdir does -# not exist. -hardcode_libdir_flag_spec_ld=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1) - -# Whether we need a single -rpath flag with a separated argument. -hardcode_libdir_separator=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_separator, $1) - -# Set to yes if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the -# resulting binary. -hardcode_direct=$_LT_AC_TAGVAR(hardcode_direct, $1) - -# Set to yes if using the -LDIR flag during linking hardcodes DIR into the -# resulting binary. -hardcode_minus_L=$_LT_AC_TAGVAR(hardcode_minus_L, $1) - -# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into -# the resulting binary. -hardcode_shlibpath_var=$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1) - -# Set to yes if building a shared library automatically hardcodes DIR into the library -# and all subsequent libraries and executables linked against it. -hardcode_automatic=$_LT_AC_TAGVAR(hardcode_automatic, $1) - -# Variables whose values should be saved in libtool wrapper scripts and -# restored at relink time. -variables_saved_for_relink="$variables_saved_for_relink" - -# Whether libtool must link a program against all its dependency libraries. -link_all_deplibs=$_LT_AC_TAGVAR(link_all_deplibs, $1) - -# Compile-time system search path for libraries -sys_lib_search_path_spec=$lt_sys_lib_search_path_spec - -# Run-time system search path for libraries -sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec - -# Fix the shell variable \$srcfile for the compiler. -fix_srcfile_path="$_LT_AC_TAGVAR(fix_srcfile_path, $1)" - -# Set to yes if exported symbols are required. -always_export_symbols=$_LT_AC_TAGVAR(always_export_symbols, $1) - -# The commands to list exported symbols. -export_symbols_cmds=$lt_[]_LT_AC_TAGVAR(export_symbols_cmds, $1) - -# The commands to extract the exported symbol list from a shared archive. -extract_expsyms_cmds=$lt_extract_expsyms_cmds - -# Symbols that should not be listed in the preloaded symbols. -exclude_expsyms=$lt_[]_LT_AC_TAGVAR(exclude_expsyms, $1) - -# Symbols that must always be exported. -include_expsyms=$lt_[]_LT_AC_TAGVAR(include_expsyms, $1) - -ifelse([$1],[], -[# ### END LIBTOOL CONFIG], -[# ### END LIBTOOL TAG CONFIG: $tagname]) - -__EOF__ - -ifelse([$1],[], [ - case $host_os in - aix3*) - cat <<\EOF >> "$cfgfile" - -# AIX sometimes has problems with the GCC collect2 program. For some -# reason, if we set the COLLECT_NAMES environment variable, the problems -# vanish in a puff of smoke. -if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES -fi -EOF - ;; - esac - - # We use sed instead of cat because bash on DJGPP gets confused if - # if finds mixed CR/LF and LF-only lines. Since sed operates in - # text mode, it properly converts lines to CR/LF. This bash problem - # is reportedly fixed, but why not run on old versions too? - sed '$q' "$ltmain" >> "$cfgfile" || (rm -f "$cfgfile"; exit 1) - - mv -f "$cfgfile" "$ofile" || \ - (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") - chmod +x "$ofile" -]) -else - # If there is no Makefile yet, we rely on a make rule to execute - # `config.status --recheck' to rerun these tests and create the - # libtool script then. - test -f Makefile && make "$ltmain" -fi -])# AC_LIBTOOL_CONFIG - - -# AC_LIBTOOL_PROG_COMPILER_NO_RTTI([TAGNAME]) -# ------------------------------------------- -AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], -[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl - -_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= - -if test "$GCC" = yes; then - _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' - - AC_LIBTOOL_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions], - lt_cv_prog_compiler_rtti_exceptions, - [-fno-rtti -fno-exceptions], [], - [_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"]) -fi -])# AC_LIBTOOL_PROG_COMPILER_NO_RTTI - - -# AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE -# --------------------------------- -AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], -[AC_REQUIRE([AC_CANONICAL_HOST]) -AC_REQUIRE([AC_PROG_NM]) -AC_REQUIRE([AC_OBJEXT]) -# 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]]*\)' - -# Transform the above into a raw symbol and a C symbol. -symxfrm='\1 \2\3 \3' - -# Transform an extracted symbol line into a proper C declaration -lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern int \1;/p'" - -# Transform an extracted symbol line into symbol name and symbol address -lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" - -# Define system-specific variables. -case $host_os in -aix*) - symcode='[[BCDT]]' - ;; -cygwin* | mingw* | pw32*) - symcode='[[ABCDGISTW]]' - ;; -hpux*) # Its linker distinguishes data from code symbols - if test "$host_cpu" = ia64; then - symcode='[[ABCDEGRST]]' - fi - lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" - lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" - ;; -irix* | nonstopux*) - symcode='[[BCDEGRST]]' - ;; -osf*) - symcode='[[BCDEGQRST]]' - ;; -solaris* | sysv5*) - symcode='[[BDT]]' - ;; -sysv4) - symcode='[[DFNSTU]]' - ;; -esac - -# 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 - ;; -esac - -# If we're using GNU nm, then use its standard symbol codes. -case `$NM -V 2>&1` in -*GNU* | *'with BFD'*) - symcode='[[ABCDGISTW]]' ;; -esac - -# Try without a prefix undercore, then with it. -for ac_symprfx in "" "_"; do - - # Write the raw and C identifiers. - lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'" - - # Check to see that the pipe works correctly. - pipe_works=no - - rm -f conftest* - cat > conftest.$ac_ext <<EOF -#ifdef __cplusplus -extern "C" { -#endif -char nm_test_var; -void nm_test_func(){} -#ifdef __cplusplus -} -#endif -int main(){nm_test_var='a';nm_test_func();return(0);} -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 - cat <<EOF > conftest.$ac_ext -#ifdef __cplusplus -extern "C" { -#endif - -EOF - # Now generate the symbol file. - eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | grep -v main >> conftest.$ac_ext' - - cat <<EOF >> conftest.$ac_ext -#if defined (__STDC__) && __STDC__ -# define lt_ptr_t void * -#else -# define lt_ptr_t char * -# define const -#endif - -/* The mapping between symbol names and symbols. */ -const struct { - const char *name; - lt_ptr_t address; -} -lt_preloaded_symbols[[]] = -{ -EOF - $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr_t) \&\2},/" < "$nlist" | grep -v main >> conftest.$ac_ext - cat <<\EOF >> conftest.$ac_ext - {0, (lt_ptr_t) 0} -}; - -#ifdef __cplusplus -} -#endif -EOF - # Now try linking the two files. - mv conftest.$ac_objext conftstm.$ac_objext - lt_save_LIBS="$LIBS" - lt_save_CFLAGS="$CFLAGS" - LIBS="conftstm.$ac_objext" - CFLAGS="$CFLAGS$_LT_AC_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_save_LIBS" - CFLAGS="$lt_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 -f conftest* conftst* - - # Do not use the global_symbol_pipe unless it works. - if test "$pipe_works" = yes; 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 -]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE - - -# AC_LIBTOOL_PROG_COMPILER_PIC([TAGNAME]) -# --------------------------------------- -AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC], -[_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)= -_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= -_LT_AC_TAGVAR(lt_prog_compiler_static, $1)= - -AC_MSG_CHECKING([for $compiler option to produce PIC]) - ifelse([$1],[CXX],[ - # C++ specific cases for pic, static, wl, etc. - if test "$GXX" = yes; then - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' - - case $host_os in - aix*) - # All AIX code is PIC. - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - fi - ;; - amigaos*) - # FIXME: we need at least 68020 code to build shared libraries, but - # adding the `-m68020' flag to GCC prevents building anything better, - # like `-m68040'. - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' - ;; - beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) - # PIC is the default for these OSes. - ;; - mingw* | os2* | pw32*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT' - ;; - darwin* | rhapsody*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' - ;; - *djgpp*) - # DJGPP does not support shared libraries at all - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= - ;; - sysv4*MP*) - if test -d /usr/nec; then - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic - fi - ;; - hpux*) - # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but - # not for PA HP-UX. - case "$host_cpu" in - hppa*64*|ia64*) - ;; - *) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - esac - ;; - *) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - esac - else - case $host_os in - aix4* | aix5*) - # All AIX code is PIC. - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - else - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' - fi - ;; - chorus*) - case $cc_basename in - cxch68) - # Green Hills C++ Compiler - # _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a" - ;; - esac - ;; - dgux*) - case $cc_basename in - ec++) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - ;; - ghcx) - # Green Hills C++ Compiler - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - ;; - *) - ;; - esac - ;; - freebsd* | kfreebsd*-gnu) - # FreeBSD uses GNU C++ - ;; - hpux9* | hpux10* | hpux11*) - case $cc_basename in - CC) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive" - if test "$host_cpu" != ia64; then - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z' - fi - ;; - aCC) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive" - case "$host_cpu" in - hppa*64*|ia64*) - # +Z the default - ;; - *) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z' - ;; - esac - ;; - *) - ;; - esac - ;; - irix5* | irix6* | nonstopux*) - case $cc_basename in - CC) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - # CC pic flag -KPIC is the default. - ;; - *) - ;; - esac - ;; - linux*) - case $cc_basename in - KCC) - # KAI C++ Compiler - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - icpc) - # Intel C++ - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' - ;; - cxx) - # Compaq C++ - # Make sure the PIC flag is empty. It appears that all Alpha - # Linux and Compaq Tru64 Unix objects are PIC. - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - *) - ;; - esac - ;; - lynxos*) - ;; - m88k*) - ;; - mvs*) - case $cc_basename in - cxx) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall' - ;; - *) - ;; - esac - ;; - netbsd*) - ;; - osf3* | osf4* | osf5*) - case $cc_basename in - KCC) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' - ;; - RCC) - # Rational C++ 2.4.1 - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - ;; - cxx) - # Digital/Compaq C++ - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # Make sure the PIC flag is empty. It appears that all Alpha - # Linux and Compaq Tru64 Unix objects are PIC. - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - *) - ;; - esac - ;; - psos*) - ;; - sco*) - case $cc_basename in - CC) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - *) - ;; - esac - ;; - solaris*) - case $cc_basename in - CC) - # Sun C++ 4.2, 5.x and Centerline C++ - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' - ;; - gcx) - # Green Hills C++ Compiler - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' - ;; - *) - ;; - esac - ;; - sunos4*) - case $cc_basename in - CC) - # Sun C++ 4.x - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - lcc) - # Lucid - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - ;; - *) - ;; - esac - ;; - tandem*) - case $cc_basename in - NCC) - # NonStop-UX NCC 3.20 - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - ;; - *) - ;; - esac - ;; - unixware*) - ;; - vxworks*) - ;; - *) - _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no - ;; - esac - fi -], -[ - if test "$GCC" = yes; then - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' - - case $host_os in - aix*) - # All AIX code is PIC. - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - fi - ;; - - amigaos*) - # FIXME: we need at least 68020 code to build shared libraries, but - # adding the `-m68020' flag to GCC prevents building anything better, - # like `-m68040'. - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' - ;; - - beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) - # PIC is the default for these OSes. - ;; - - mingw* | pw32* | os2*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT' - ;; - - darwin* | rhapsody*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' - ;; - - msdosdjgpp*) - # Just because we use GCC doesn't mean we suddenly get shared libraries - # on systems that don't support them. - _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no - enable_shared=no - ;; - - sysv4*MP*) - if test -d /usr/nec; then - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic - fi - ;; - - hpux*) - # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but - # not for PA HP-UX. - case "$host_cpu" in - hppa*64*|ia64*) - # +Z the default - ;; - *) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - esac - ;; - - *) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - esac - else - # PORTME Check for flag to pass linker flags through the system compiler. - case $host_os in - aix*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - else - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' - fi - ;; - - mingw* | pw32* | os2*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT' - ;; - - hpux9* | hpux10* | hpux11*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but - # not for PA HP-UX. - case "$host_cpu" in - hppa*64*|ia64*) - # +Z the default - ;; - *) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z' - ;; - esac - # Is there a better lt_prog_compiler_static that works with the bundled CC? - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' - ;; - - irix5* | irix6* | nonstopux*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # PIC (with -KPIC) is the default. - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - - newsos6) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - linux*) - case $CC in - icc* | ecc*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' - ;; - ccc*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # All Alpha code is PIC. - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - esac - ;; - - osf3* | osf4* | osf5*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # All OSF/1 code is PIC. - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - - sco3.2v5*) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-Kpic' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-dn' - ;; - - solaris*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - sunos4*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - sysv4*MP*) - if test -d /usr/nec ;then - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - fi - ;; - - uts4*) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - *) - _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no - ;; - esac - fi -]) -AC_MSG_RESULT([$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)]) - -# -# Check to make sure the PIC flag actually works. -# -if test -n "$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)"; then - AC_LIBTOOL_COMPILER_OPTION([if $compiler PIC flag $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) works], - _LT_AC_TAGVAR(lt_prog_compiler_pic_works, $1), - [$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])], [], - [case $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) in - "" | " "*) ;; - *) _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)" ;; - esac], - [_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= - _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no]) -fi -case "$host_os" in - # For platforms which do not support PIC, -DPIC is meaningless: - *djgpp*) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= - ;; - *) - _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])" - ;; -esac -]) - - -# AC_LIBTOOL_PROG_LD_SHLIBS([TAGNAME]) -# ------------------------------------ -# See if the linker supports building shared libraries. -AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS], -[AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) -ifelse([$1],[CXX],[ - _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' - case $host_os in - aix4* | aix5*) - # 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 - if $NM -V 2>&1 | grep 'GNU' > /dev/null; then - _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols' - else - _LT_AC_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_AC_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds" - ;; - cygwin* | mingw*) - _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGS]] /s/.* \([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols' - ;; - *) - _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' - ;; - esac -],[ - runpath_var= - _LT_AC_TAGVAR(allow_undefined_flag, $1)= - _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no - _LT_AC_TAGVAR(archive_cmds, $1)= - _LT_AC_TAGVAR(archive_expsym_cmds, $1)= - _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)= - _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1)= - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)= - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= - _LT_AC_TAGVAR(thread_safe_flag_spec, $1)= - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= - _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)= - _LT_AC_TAGVAR(hardcode_direct, $1)=no - _LT_AC_TAGVAR(hardcode_minus_L, $1)=no - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported - _LT_AC_TAGVAR(link_all_deplibs, $1)=unknown - _LT_AC_TAGVAR(hardcode_automatic, $1)=no - _LT_AC_TAGVAR(module_cmds, $1)= - _LT_AC_TAGVAR(module_expsym_cmds, $1)= - _LT_AC_TAGVAR(always_export_symbols, $1)=no - _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' - # include_expsyms should be a list of space-separated symbols to be *always* - # included in the symbol list - _LT_AC_TAGVAR(include_expsyms, $1)= - # exclude_expsyms can be an extended regexp of symbols to exclude - # it will be wrapped by ` (' and `)$', so one must not match beginning or - # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', - # as well as any symbol that contains `d'. - _LT_AC_TAGVAR(exclude_expsyms, $1)="_GLOBAL_OFFSET_TABLE_" - # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out - # platforms (ab)use it in PIC code, but their linkers get confused if - # the symbol is explicitly referenced. Since portable code cannot - # rely on this symbol name, it's probably fine to never include it in - # preloaded symbol tables. - extract_expsyms_cmds= - - case $host_os in - cygwin* | mingw* | pw32*) - # FIXME: the MSVC++ port hasn't been tested in a loooong time - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - if test "$GCC" != yes; then - with_gnu_ld=no - fi - ;; - openbsd*) - with_gnu_ld=no - ;; - esac - - _LT_AC_TAGVAR(ld_shlibs, $1)=yes - if test "$with_gnu_ld" = yes; then - # If archive_cmds runs LD, not CC, wlarc should be empty - wlarc='${wl}' - - # See if GNU ld supports shared libraries. - case $host_os in - aix3* | aix4* | aix5*) - # On AIX/PPC, the GNU linker is very broken - if test "$host_cpu" != ia64; then - _LT_AC_TAGVAR(ld_shlibs, $1)=no - cat <<EOF 1>&2 - -*** Warning: the GNU linker, at least up to release 2.9.1, is reported -*** to be unable to reliably create shared libraries on AIX. -*** Therefore, libtool is disabling shared libraries support. If you -*** really care for shared libraries, you may want to modify your PATH -*** so that a non-GNU linker is found, and then restart. - -EOF - fi - ;; - - amigaos*) - _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - - # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports - # that the semantics of dynamic libraries on AmigaOS, at least up - # to version 4, is to share data among multiple programs linked - # with the same dynamic library. Since this doesn't match the - # behavior of shared libraries on other platforms, we can't use - # them. - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - - beos*) - if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported - # Joseph Beckenbach <jrb3@best.com> says some releases of gcc - # support --undefined. This deserves some investigation. FIXME - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -nostart $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname -o $lib' - else - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - cygwin* | mingw* | pw32*) - # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, - # as there is no search path for DLLs. - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(allow_undefined_flag, $1)=no - _LT_AC_TAGVAR(always_export_symbols, $1)=no - _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGS]] /s/.* \([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols' - - if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib' - # If the export-symbols file already is a .def file (1st line - # is EXPORTS), use it as is; otherwise, prepend... - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then - cp $export_symbols $output_objdir/$soname.def; - else - echo EXPORTS > $output_objdir/$soname.def; - cat $export_symbols >> $output_objdir/$soname.def; - fi~ - $CC -shared $output_objdir/$soname.def $compiler_flags $libobjs $deplibs -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib' - else - ld_shlibs=no - fi - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' - wlarc= - else - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - fi - ;; - - solaris* | sysv5*) - if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then - _LT_AC_TAGVAR(ld_shlibs, $1)=no - cat <<EOF 1>&2 - -*** Warning: The releases 2.8.* of the GNU linker cannot reliably -*** create shared libraries on Solaris systems. Therefore, libtool -*** is disabling shared libraries support. We urge you to upgrade GNU -*** binutils to release 2.9.1 or newer. Another option is to modify -*** your PATH or compiler configuration so that the native linker is -*** used, and then restart. - -EOF - elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - sunos4*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' - wlarc= - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - *) - if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - - if test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = yes; then - runpath_var=LD_RUN_PATH - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' - # ancient GNU ld didn't support --whole-archive et. al. - if $LD --help 2>&1 | grep 'no-whole-archive' > /dev/null; then - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' - else - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= - fi - fi - else - # PORTME fill in a description of your system's linker (not GNU ld) - case $host_os in - aix3*) - _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported - _LT_AC_TAGVAR(always_export_symbols, $1)=yes - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' - # Note: this linker hardcodes the directories in LIBPATH if there - # are no directories specified by -L. - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - if test "$GCC" = yes && test -z "$link_static_flag"; then - # Neither direct hardcoding nor static linking is supported with a - # broken collect2. - _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported - fi - ;; - - aix4* | aix5*) - if test "$host_cpu" = ia64; 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 - if $NM -V 2>&1 | grep 'GNU' > /dev/null; then - _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols' - else - _LT_AC_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 - - # KDE requires run time linking. Make it the default. - aix_use_runtimelinking=yes - exp_sym_flag='-bexport' - no_entry_flag='-bnoentry' - fi - - # When large executables or shared objects are built, AIX ld can - # have problems creating the table of contents. If linking a library - # or program results in "error TOC overflow" add -mminimal-toc to - # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not - # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. - - _LT_AC_TAGVAR(archive_cmds, $1)='' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':' - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - - if test "$GCC" = yes; then - case $host_os in aix4.[012]|aix4.[012].*) - # We only want to do this on AIX 4.2 and lower, the check - # below for broken collect2 doesn't work under 4.3+ - collect2name=`${CC} -print-prog-name=collect2` - if test -f "$collect2name" && \ - strings "$collect2name" | grep resolve_lib_name >/dev/null - then - # We have reworked collect2 - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - else - # We have old collect2 - _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported - # It fails to find uninstalled libraries when the uninstalled - # path is not listed in the libpath. Setting hardcode_minus_L - # to unsupported forces relinking - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)= - fi - esac - shared_flag='-shared' - else - # not using gcc - if test "$host_cpu" = ia64; then - # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release - # chokes on -Wl,-G. The following line is correct: - shared_flag='-G' - else - if test "$aix_use_runtimelinking" = yes; then - shared_flag='-qmkshrobj ${wl}-G' - else - shared_flag='-qmkshrobj' - fi - fi - fi - - # Let the compiler handle the export list. - _LT_AC_TAGVAR(always_export_symbols, $1)=no - if test "$aix_use_runtimelinking" = yes; then - # Warning - without using the other runtime loading flags (-brtl), - # -berok will link without error, but may produce a broken library. - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok' - # Determine the default libpath from the value encoded in an empty executable. - _LT_AC_SYS_LIBPATH_AIX - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" - _LT_AC_TAGVAR(archive_cmds, $1)="\$CC"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '" $shared_flag" - _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" - else - if test "$host_cpu" = ia64; then - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' - _LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs" - _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" - else - # Determine the default libpath from the value encoded in an empty executable. - _LT_AC_SYS_LIBPATH_AIX - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" - # Warning - without using the other run time loading flags, - # -berok will link without error, but may produce a broken library. - _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' - # -bexpall does not export symbols beginning with underscore (_) - _LT_AC_TAGVAR(always_export_symbols, $1)=yes - # Exported symbols can be pulled into shared objects from archives - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' ' - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes - # This is similar to how AIX traditionally builds it's shared libraries. - _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' - fi - fi - ;; - - amigaos*) - _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - # see comment about different semantics on the GNU ld section - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - - bsdi4*) - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic - ;; - - cygwin* | mingw* | pw32*) - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' - _LT_AC_TAGVAR(allow_undefined_flag, $1)=no - # Tell ltmain to make .lib files, not .a files. - libext=lib - # Tell ltmain to make .dll files, not .so files. - shrext=".dll" - # FIXME: Setting linknames here is a bad hack. - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -o $lib $compiler_flags $libobjs `echo "$deplibs" | $SED -e '\''s/ -lc$//'\''` -link -dll~linknames=' - # The linker will automatically build a .lib file if we build a DLL. - _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='true' - # FIXME: Should let the user specify the lib program. - _LT_AC_TAGVAR(old_archive_cmds, $1)='lib /OUT:$oldlib$oldobjs$old_deplibs' - fix_srcfile_path='`cygpath -w "$srcfile"`' - _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - ;; - - darwin* | rhapsody*) - if test "$GXX" = yes ; then - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - case "$host_os" in - rhapsody* | darwin1.[[012]]) - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,suppress' - ;; - *) # Darwin 1.3 on - if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress' - else - case ${MACOSX_DEPLOYMENT_TARGET} in - 10.[012]) - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress' - ;; - 10.*) - _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,dynamic_lookup' - ;; - esac - fi - ;; - esac - lt_int_apple_cc_single_mod=no - output_verbose_link_cmd='echo' - if $CC -dumpspecs 2>&1 | grep 'single_module' >/dev/null ; then - lt_int_apple_cc_single_mod=yes - fi - if test "X$lt_int_apple_cc_single_mod" = Xyes ; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring' - else - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $compiler_flags $deplibs -install_name $rpath/$soname $verstring' - fi - _LT_AC_TAGVAR(module_cmds, $1)='$CC ${wl}-bind_at_load $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs' - # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's - if test "X$lt_int_apple_cc_single_mod" = Xyes ; then - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - else - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $compiler_flags $deplibs -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - fi - _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' - _LT_AC_TAGVAR(hardcode_direct, $1)=no - _LT_AC_TAGVAR(hardcode_automatic, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience' - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - else - _LT_AC_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - dgux*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - freebsd1*) - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - - # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor - # support. Future versions do this automatically, but an explicit c++rt0.o - # does not break anything, and helps significantly (at the cost of a little - # extra space). - freebsd2.2*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - # Unfortunately, older versions of FreeBSD 2 do not have this feature. - freebsd2*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - # FreeBSD 3 and greater uses gcc -shared to do shared libraries. - freebsd* | kfreebsd*-gnu) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $compiler_flags $libobjs $deplibs' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - hpux9*) - if test "$GCC" = yes; then - _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $compiler_flags $libobjs $deplibs~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' - else - _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' - fi - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - ;; - - hpux10* | hpux11*) - if test "$GCC" = yes -a "$with_gnu_ld" = no; then - case "$host_cpu" in - hppa*64*|ia64*) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $compiler_flags $libobjs $deplibs' - ;; - *) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $compiler_flags $libobjs $deplibs' - ;; - esac - else - case "$host_cpu" in - hppa*64*|ia64*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $libobjs $deplibs $linker_flags' - ;; - *) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' - ;; - esac - fi - if test "$with_gnu_ld" = no; then - case "$host_cpu" in - hppa*64*) - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_AC_TAGVAR(hardcode_direct, $1)=no - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - ia64*) - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_direct, $1)=no - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - ;; - *) - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - ;; - esac - fi - ;; - - irix5* | irix6* | nonstopux*) - if test "$GCC" = yes; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - else - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir' - fi - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out - else - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF - fi - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - newsos6) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - openbsd*) - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $compiler_flags $libobjs $deplibs' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' - else - case $host_os in - openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - ;; - *) - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $compiler_flags $libobjs $deplibs' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' - ;; - esac - fi - ;; - - os2*) - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported - _LT_AC_TAGVAR(archive_cmds, $1)='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $compiler_flags $libobjs $deplibs$output_objdir/$libname.def' - _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' - ;; - - osf3*) - if test "$GCC" = yes; then - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $compiler_flags $libobjs $deplibs ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - else - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - fi - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - ;; - - osf4* | osf5*) # as osf3* with the addition of -msym flag - if test "$GCC" = yes; then - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $compiler_flags $libobjs $deplibs ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' - else - _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~ - $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp' - - # Both c and cxx compiler support -rpath directly - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' - fi - _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: - ;; - - sco3.2v5*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - ;; - - solaris*) - _LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text' - if test "$GCC" = yes; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o $lib $compiler_flags $libobjs $deplibs' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $CC -shared ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $compiler_flags $libobjs $deplibs~$rm $lib.exp' - else - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_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' - fi - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - case $host_os in - solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; - *) # Supported since Solaris 2.6 (maybe 2.5.1?) - _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' ;; - esac - _LT_AC_TAGVAR(link_all_deplibs, $1)=yes - ;; - - sunos4*) - if test "x$host_vendor" = xsequent; then - # Use $CC to link under sequent, because it throws in some extra .o - # files that make .init and .fini sections work. - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $compiler_flags $libobjs $deplibs' - else - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' - fi - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - sysv4) - case $host_vendor in - sni) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes # is this really true??? - ;; - siemens) - ## LD is ld it makes a PLAMLIB - ## CC just makes a GrossModule. - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs' - _LT_AC_TAGVAR(hardcode_direct, $1)=no - ;; - motorola) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie - ;; - esac - runpath_var='LD_RUN_PATH' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - sysv4.3*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport' - ;; - - sysv4*MP*) - if test -d /usr/nec; then - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - _LT_AC_TAGVAR(ld_shlibs, $1)=yes - fi - ;; - - sysv4.2uw2*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_direct, $1)=yes - _LT_AC_TAGVAR(hardcode_minus_L, $1)=no - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - hardcode_runpath_var=yes - runpath_var=LD_RUN_PATH - ;; - - sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7*) - _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z ${wl}text' - if test "$GCC" = yes; then - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o $lib $compiler_flags $libobjs $deplibs' - else - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h ${wl}$soname -o $lib $compiler_flags $libobjs $deplibs' - fi - runpath_var='LD_RUN_PATH' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - sysv5*) - _LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text' - # $CC -shared without GNU ld will not create a library from C++ - # object files and a static libstdc++, better avoid it by now - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_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' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - runpath_var='LD_RUN_PATH' - ;; - - uts4*) - _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - *) - _LT_AC_TAGVAR(ld_shlibs, $1)=no - ;; - esac - fi -]) -AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)]) -test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no - -variables_saved_for_relink="PATH $shlibpath_var $runpath_var" -if test "$GCC" = yes; then - variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" -fi - -# -# Do we need to explicitly link libc? -# -case "x$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)" in -x|xyes) - # Assume -lc should be added - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes - - if test "$enable_shared" = yes && test "$GCC" = yes; then - case $_LT_AC_TAGVAR(archive_cmds, $1) in - *'~'*) - # FIXME: we may have to deal with multi-command sequences. - ;; - '$CC '*) - # Test whether the compiler implicitly links with -lc since on some - # systems, -lgcc has to come before -lc. If gcc already passes -lc - # to ld, don't add -lc before -lgcc. - AC_MSG_CHECKING([whether -lc should be explicitly linked in]) - $rm conftest* - printf "$lt_simple_compile_test_code" > conftest.$ac_ext - - if AC_TRY_EVAL(ac_compile) 2>conftest.err; then - soname=conftest - lib=conftest - libobjs=conftest.$ac_objext - deplibs= - wl=$_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) - compiler_flags=-v - linker_flags=-v - verstring= - output_objdir=. - libname=conftest - lt_save_allow_undefined_flag=$_LT_AC_TAGVAR(allow_undefined_flag, $1) - _LT_AC_TAGVAR(allow_undefined_flag, $1)= - if AC_TRY_EVAL(_LT_AC_TAGVAR(archive_cmds, $1) 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) - then - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - else - _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes - fi - _LT_AC_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag - else - cat conftest.err 1>&5 - fi - $rm conftest* - AC_MSG_RESULT([$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)]) - ;; - esac - fi - ;; -esac -])# AC_LIBTOOL_PROG_LD_SHLIBS - - -# _LT_AC_FILE_LTDLL_C -# ------------------- -# Be careful that the start marker always follows a newline. -AC_DEFUN([_LT_AC_FILE_LTDLL_C], [ -# /* ltdll.c starts here */ -# #define WIN32_LEAN_AND_MEAN -# #include <windows.h> -# #undef WIN32_LEAN_AND_MEAN -# #include <stdio.h> -# -# #ifndef __CYGWIN__ -# # ifdef __CYGWIN32__ -# # define __CYGWIN__ __CYGWIN32__ -# # endif -# #endif -# -# #ifdef __cplusplus -# extern "C" { -# #endif -# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved); -# #ifdef __cplusplus -# } -# #endif -# -# #ifdef __CYGWIN__ -# #include <cygwin/cygwin_dll.h> -# DECLARE_CYGWIN_DLL( DllMain ); -# #endif -# HINSTANCE __hDllInstance_base; -# -# BOOL APIENTRY -# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved) -# { -# __hDllInstance_base = hInst; -# return TRUE; -# } -# /* ltdll.c ends here */ -])# _LT_AC_FILE_LTDLL_C - - -# _LT_AC_TAGVAR(VARNAME, [TAGNAME]) -# --------------------------------- -AC_DEFUN([_LT_AC_TAGVAR], [ifelse([$2], [], [$1], [$1_$2])]) - - -# old names -AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL]) -AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) -AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) -AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) -AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) -AC_DEFUN([AM_PROG_LD], [AC_PROG_LD]) -AC_DEFUN([AM_PROG_NM], [AC_PROG_NM]) - -# This is just to silence aclocal about the macro not being used -ifelse([AC_DISABLE_FAST_INSTALL]) - -AC_DEFUN([LT_AC_PROG_GCJ], -[AC_CHECK_TOOL(GCJ, gcj, no) - test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" - AC_SUBST(GCJFLAGS) -]) - -AC_DEFUN([LT_AC_PROG_RC], -[AC_CHECK_TOOL(RC, windres, no) -]) - -############################################################ -# NOTE: This macro has been submitted for inclusion into # -# GNU Autoconf as AC_PROG_SED. When it is available in # -# a released version of Autoconf we should remove this # -# macro and use it instead. # -############################################################ -# LT_AC_PROG_SED -# -------------- -# Check for a fully-functional sed program, that truncates -# as few characters as possible. Prefer GNU sed if found. -AC_DEFUN([LT_AC_PROG_SED], -[AC_MSG_CHECKING([for a sed that does not truncate output]) -AC_CACHE_VAL(lt_cv_path_SED, -[# Loop through the user's path and test for sed and gsed. -# Then use that list of sed's as ones to test for truncation. -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for lt_ac_prog in sed gsed; do - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then - lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext" - fi - done - done -done -lt_ac_max=0 -lt_ac_count=0 -# Add /usr/xpg4/bin/sed as it is typically found on Solaris -# along with /bin/sed that truncates output. -for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do - test ! -f $lt_ac_sed && break - cat /dev/null > conftest.in - lt_ac_count=0 - echo $ECHO_N "0123456789$ECHO_C" >conftest.in - # Check for GNU sed and select it if it is found. - if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then - lt_cv_path_SED=$lt_ac_sed - break - fi - while true; do - cat conftest.in conftest.in >conftest.tmp - mv conftest.tmp conftest.in - cp conftest.in conftest.nl - echo >>conftest.nl - $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break - cmp -s conftest.out conftest.nl || break - # 10000 chars as input seems more than enough - test $lt_ac_count -gt 10 && break - lt_ac_count=`expr $lt_ac_count + 1` - if test $lt_ac_count -gt $lt_ac_max; then - lt_ac_max=$lt_ac_count - lt_cv_path_SED=$lt_ac_sed - fi - done -done -]) -SED=$lt_cv_path_SED -AC_MSG_RESULT([$SED]) -]) diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/ltmain.sh b/portland/libxdg-vfs/xdg-vfs-kde/admin/ltmain.sh deleted file mode 100644 index 27ee8c4..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/ltmain.sh +++ /dev/null @@ -1,6389 +0,0 @@ -# ltmain.sh - Provide generalized library-building support services. -# NOTE: Changing this file will not affect anything until you rerun configure. -# -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003 -# Free Software Foundation, Inc. -# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996 -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# Check that we have a working $echo. -if test "X$1" = X--no-reexec; then - # Discard the --no-reexec flag, and continue. - shift -elif test "X$1" = X--fallback-echo; then - # Avoid inline document here, it may be left over - : -elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then - # Yippee, $echo works! - : -else - # Restart under the correct shell, and then maybe $echo will work. - exec $SHELL "$0" --no-reexec ${1+"$@"} -fi - -if test "X$1" = X--fallback-echo; then - # used as fallback echo - shift - cat <<EOF -$* -EOF - exit 0 -fi - -# The name of this program. -progname=`$echo "$0" | ${SED} 's%^.*/%%'` -modename="$progname" - -# Constants. -PROGRAM=ltmain.sh -PACKAGE=libtool -VERSION=1.5a -TIMESTAMP=" (1.1240 2003/06/26 06:55:19)" - -default_mode= -help="Try \`$progname --help' for more information." -magic="%%%MAGIC variable%%%" -mkdir="mkdir" -mv="mv -f" -rm="rm -f" - -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -Xsed="${SED}"' -e 1s/^X//' -sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g' -# test EBCDIC or ASCII -case `echo A|tr A '\301'` in - A) # EBCDIC based system - SP2NL="tr '\100' '\n'" - NL2SP="tr '\r\n' '\100\100'" - ;; - *) # Assume ASCII based system - SP2NL="tr '\040' '\012'" - NL2SP="tr '\015\012' '\040\040'" - ;; -esac - -# NLS nuisances. -# Only set LANG and LC_ALL to C if already set. -# These must not be set unconditionally because not all systems understand -# e.g. LANG=C (notably SCO). -# We save the old values to restore during execute mode. -if test "${LC_ALL+set}" = set; then - save_LC_ALL="$LC_ALL"; LC_ALL=C; export LC_ALL -fi -if test "${LANG+set}" = set; then - save_LANG="$LANG"; LANG=C; export LANG -fi - -# Make sure IFS has a sensible default -: ${IFS=" "} - -if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then - $echo "$modename: not configured to build any kind of library" 1>&2 - $echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 - exit 1 -fi - -# Global variables. -mode=$default_mode -nonopt= -prev= -prevopt= -run= -show="$echo" -show_help= -execute_dlfiles= -lo2o="s/\\.lo\$/.${objext}/" -o2lo="s/\\.${objext}\$/.lo/" - -##################################### -# Shell function definitions: -# This seems to be the best place for them - -# 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. -win32_libid () { - win32_libid_type="unknown" - win32_fileres=`file -L $1 2>/dev/null` - case $win32_fileres in - *ar\ archive\ import\ library*) # definitely import - win32_libid_type="x86 archive import" - ;; - *ar\ archive*) # could be an import, or static - if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | \ - grep -E 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then - win32_nmres=`eval $NM -f posix -A $1 | \ - sed -n -e '1,100{/ I /{x;/import/!{s/^/import/;h;p;};x;};}'` - if test "X$win32_nmres" = "Ximport" ; then - win32_libid_type="x86 archive import" - else - win32_libid_type="x86 archive static" - fi - fi - ;; - *DLL*) - win32_libid_type="x86 DLL" - ;; - *executable*) # but shell scripts are "executable" too... - case $win32_fileres in - *MS\ Windows\ PE\ Intel*) - win32_libid_type="x86 DLL" - ;; - esac - ;; - esac - $echo $win32_libid_type -} - -# End of Shell function definitions -##################################### - -# Parse our command line options once, thoroughly. -while test "$#" -gt 0 -do - arg="$1" - shift - - case $arg in - -*=*) optarg=`$echo "X$arg" | $Xsed -e 's/[-_a-zA-Z0-9]*=//'` ;; - *) optarg= ;; - esac - - # If the previous option needs an argument, assign it. - if test -n "$prev"; then - case $prev in - execute_dlfiles) - execute_dlfiles="$execute_dlfiles $arg" - ;; - tag) - tagname="$arg" - - # Check whether tagname contains only valid characters - case $tagname in - *[!-_A-Za-z0-9,/]*) - $echo "$progname: invalid tag name: $tagname" 1>&2 - exit 1 - ;; - esac - - case $tagname in - CC) - # Don't test for the "default" C tag, as we know, it's there, but - # not specially marked. - ;; - *) - if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "$0" > /dev/null; then - taglist="$taglist $tagname" - # Evaluate the configuration. - eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$tagname'$/,/^# ### END LIBTOOL TAG CONFIG: '$tagname'$/p' < $0`" - else - $echo "$progname: ignoring unknown tag $tagname" 1>&2 - fi - ;; - esac - ;; - *) - eval "$prev=\$arg" - ;; - esac - - prev= - prevopt= - continue - fi - - # Have we seen a non-optional argument yet? - case $arg in - --help) - show_help=yes - ;; - - --version) - $echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP" - $echo - $echo "Copyright (C) 2003 Free Software Foundation, Inc." - $echo "This is free software; see the source for copying conditions. There is NO" - $echo "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." - exit 0 - ;; - - --config) - ${SED} -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $0 - # Now print the configurations for the tags. - for tagname in $taglist; do - ${SED} -n -e "/^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$/,/^# ### END LIBTOOL TAG CONFIG: $tagname$/p" < "$0" - done - exit 0 - ;; - - --debug) - $echo "$progname: enabling shell trace mode" - set -x - ;; - - --dry-run | -n) - run=: - ;; - - --features) - $echo "host: $host" - if test "$build_libtool_libs" = yes; then - $echo "enable shared libraries" - else - $echo "disable shared libraries" - fi - if test "$build_old_libs" = yes; then - $echo "enable static libraries" - else - $echo "disable static libraries" - fi - exit 0 - ;; - - --finish) mode="finish" ;; - - --mode) prevopt="--mode" prev=mode ;; - --mode=*) mode="$optarg" ;; - - --preserve-dup-deps) duplicate_deps="yes" ;; - - --quiet | --silent) - show=: - ;; - - --tag) prevopt="--tag" prev=tag ;; - --tag=*) - set tag "$optarg" ${1+"$@"} - shift - prev=tag - ;; - - -dlopen) - prevopt="-dlopen" - prev=execute_dlfiles - ;; - - -*) - $echo "$modename: unrecognized option \`$arg'" 1>&2 - $echo "$help" 1>&2 - exit 1 - ;; - - *) - nonopt="$arg" - break - ;; - esac -done - -if test -n "$prevopt"; then - $echo "$modename: option \`$prevopt' requires an argument" 1>&2 - $echo "$help" 1>&2 - exit 1 -fi - -# If this variable is set in any of the actions, the command in it -# will be execed at the end. This prevents here-documents from being -# left over by shells. -exec_cmd= - -if test -z "$show_help"; then - - # Infer the operation mode. - if test -z "$mode"; then - $echo "*** Warning: inferring the mode of operation is deprecated." 1>&2 - $echo "*** Future versions of Libtool will require -mode=MODE be specified." 1>&2 - case $nonopt in - *cc | cc* | *++ | gcc* | *-gcc* | g++* | xlc*) - mode=link - for arg - do - case $arg in - -c) - mode=compile - break - ;; - esac - done - ;; - *db | *dbx | *strace | *truss) - mode=execute - ;; - *install*|cp|mv) - mode=install - ;; - *rm) - mode=uninstall - ;; - *) - # If we have no mode, but dlfiles were specified, then do execute mode. - test -n "$execute_dlfiles" && mode=execute - - # Just use the default operation mode. - if test -z "$mode"; then - if test -n "$nonopt"; then - $echo "$modename: warning: cannot infer operation mode from \`$nonopt'" 1>&2 - else - $echo "$modename: warning: cannot infer operation mode without MODE-ARGS" 1>&2 - fi - fi - ;; - esac - fi - - # Only execute mode is allowed to have -dlopen flags. - if test -n "$execute_dlfiles" && test "$mode" != execute; then - $echo "$modename: unrecognized option \`-dlopen'" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - # Change the help message to a mode-specific one. - generic_help="$help" - help="Try \`$modename --help --mode=$mode' for more information." - - # These modes are in order of execution frequency so that they run quickly. - case $mode in - # libtool compile mode - compile) - modename="$modename: compile" - # Get the compilation command and the source file. - base_compile= - srcfile="$nonopt" # always keep a non-empty value in "srcfile" - suppress_output= - arg_mode=normal - libobj= - - for arg - do - case "$arg_mode" in - arg ) - # do not "continue". Instead, add this to base_compile - lastarg="$arg" - arg_mode=normal - ;; - - target ) - libobj="$arg" - arg_mode=normal - continue - ;; - - normal ) - # Accept any command-line options. - case $arg in - -o) - if test -n "$libobj" ; then - $echo "$modename: you cannot specify \`-o' more than once" 1>&2 - exit 1 - fi - arg_mode=target - continue - ;; - - -static) - build_old_libs=yes - continue - ;; - - -prefer-pic) - pic_mode=yes - continue - ;; - - -prefer-non-pic) - pic_mode=no - continue - ;; - - -Xcompiler) - arg_mode=arg # the next one goes into the "base_compile" arg list - continue # The current "srcfile" will either be retained or - ;; # replaced later. I would guess that would be a bug. - - -Wc,*) - args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"` - lastarg= - save_ifs="$IFS"; IFS=',' - for arg in $args; do - IFS="$save_ifs" - - # Double-quote args containing other shell metacharacters. - # Many Bourne shells cannot handle close brackets correctly - # in scan sets, so we specify it separately. - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - arg="\"$arg\"" - ;; - esac - lastarg="$lastarg $arg" - done - IFS="$save_ifs" - lastarg=`$echo "X$lastarg" | $Xsed -e "s/^ //"` - - # Add the arguments to base_compile. - base_compile="$base_compile $lastarg" - continue - ;; - - * ) - # Accept the current argument as the source file. - # The previous "srcfile" becomes the current argument. - # - lastarg="$srcfile" - srcfile="$arg" - ;; - esac # case $arg - ;; - esac # case $arg_mode - - # Aesthetically quote the previous argument. - lastarg=`$echo "X$lastarg" | $Xsed -e "$sed_quote_subst"` - - case $lastarg in - # Double-quote args containing other shell metacharacters. - # Many Bourne shells cannot handle close brackets correctly - # in scan sets, so we specify it separately. - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - lastarg="\"$lastarg\"" - ;; - esac - - base_compile="$base_compile $lastarg" - done # for arg - - case $arg_mode in - arg) - $echo "$modename: you must specify an argument for -Xcompile" - exit 1 - ;; - target) - $echo "$modename: you must specify a target with \`-o'" 1>&2 - exit 1 - ;; - *) - # Get the name of the library object. - [ -z "$libobj" ] && libobj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%'` - ;; - esac - - # Recognize several different file suffixes. - # If the user specifies -o file.o, it is replaced with file.lo - xform='[cCFSifmso]' - case $libobj in - *.ada) xform=ada ;; - *.adb) xform=adb ;; - *.ads) xform=ads ;; - *.asm) xform=asm ;; - *.c++) xform=c++ ;; - *.cc) xform=cc ;; - *.ii) xform=ii ;; - *.class) xform=class ;; - *.cpp) xform=cpp ;; - *.cxx) xform=cxx ;; - *.f90) xform=f90 ;; - *.for) xform=for ;; - *.java) xform=java ;; - esac - - libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"` - - case $libobj in - *.lo) obj=`$echo "X$libobj" | $Xsed -e "$lo2o"` ;; - *) - $echo "$modename: cannot determine name of library object from \`$libobj'" 1>&2 - exit 1 - ;; - esac - - # Infer tagged configuration to use if any are available and - # if one wasn't chosen via the "--tag" command line option. - # Only attempt this if the compiler in the base compile - # command doesn't match the default compiler. - if test -n "$available_tags" && test -z "$tagname"; then - case $base_compile in - # Blanks in the command may have been stripped by the calling shell, - # but not from the CC environment variable when configure was run. - " $CC "* | "$CC "* | " `$echo $CC` "* | "`$echo $CC` "*) ;; - # Blanks at the start of $base_compile will cause this to fail - # if we don't check for them as well. - *) - for z in $available_tags; do - if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$0" > /dev/null; then - # Evaluate the configuration. - eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $0`" - case "$base_compile " in - "$CC "* | " $CC "* | "`$echo $CC` "* | " `$echo $CC` "*) - # The compiler in the base compile command matches - # the one in the tagged configuration. - # Assume this is the tagged configuration we want. - tagname=$z - break - ;; - esac - fi - done - # If $tagname still isn't set, then no tagged configuration - # was found and let the user know that the "--tag" command - # line option must be used. - if test -z "$tagname"; then - $echo "$modename: unable to infer tagged configuration" - $echo "$modename: specify a tag with \`--tag'" 1>&2 - exit 1 -# else -# $echo "$modename: using $tagname tagged configuration" - fi - ;; - esac - fi - - objname=`$echo "X$obj" | $Xsed -e 's%^.*/%%'` - xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'` - if test "X$xdir" = "X$obj"; then - xdir= - else - xdir=$xdir/ - fi - lobj=${xdir}$objdir/$objname - - if test -z "$base_compile"; then - $echo "$modename: you must specify a compilation command" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - # Delete any leftover library objects. - if test "$build_old_libs" = yes; then - removelist="$obj $lobj $libobj ${libobj}T" - else - removelist="$lobj $libobj ${libobj}T" - fi - - $run $rm $removelist - trap "$run $rm $removelist; exit 1" 1 2 15 - - # On Cygwin there's no "real" PIC flag so we must build both object types - case $host_os in - cygwin* | mingw* | pw32* | os2*) - pic_mode=default - ;; - esac - if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then - # non-PIC code in shared libraries is not supported - pic_mode=default - fi - - # Calculate the filename of the output object if compiler does - # not support -o with -c - if test "$compiler_c_o" = no; then - output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext} - lockfile="$output_obj.lock" - removelist="$removelist $output_obj $lockfile" - trap "$run $rm $removelist; exit 1" 1 2 15 - else - output_obj= - need_locks=no - lockfile= - fi - - # Lock this critical section if it is needed - # We use this script file to make the link, it avoids creating a new file - if test "$need_locks" = yes; then - until $run ln "$0" "$lockfile" 2>/dev/null; do - $show "Waiting for $lockfile to be removed" - sleep 2 - done - elif test "$need_locks" = warn; then - if test -f "$lockfile"; then - $echo "\ -*** ERROR, $lockfile exists and contains: -`cat $lockfile 2>/dev/null` - -This indicates that another process is trying to use the same -temporary object file, and libtool could not work around it because -your compiler does not support \`-c' and \`-o' together. If you -repeat this compilation, it may succeed, by chance, but you had better -avoid parallel builds (make -j) in this platform, or get a better -compiler." - - $run $rm $removelist - exit 1 - fi - $echo $srcfile > "$lockfile" - fi - - if test -n "$fix_srcfile_path"; then - eval srcfile=\"$fix_srcfile_path\" - fi - - $run $rm "$libobj" "${libobj}T" - - # Create a libtool object file (analogous to a ".la" file), - # but don't create it if we're doing a dry run. - test -z "$run" && cat > ${libobj}T <<EOF -# $libobj - a libtool object file -# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP -# -# Please DO NOT delete this file! -# It is necessary for linking the library. - -# Name of the PIC object. -EOF - - # Only build a PIC object if we are building libtool libraries. - if test "$build_libtool_libs" = yes; then - # Without this assignment, base_compile gets emptied. - fbsd_hideous_sh_bug=$base_compile - - if test "$pic_mode" != no; then - command="$base_compile $srcfile $pic_flag" - else - # Don't build PIC code - command="$base_compile $srcfile" - fi - - if test ! -d "${xdir}$objdir"; then - $show "$mkdir ${xdir}$objdir" - $run $mkdir ${xdir}$objdir - status=$? - if test "$status" -ne 0 && test ! -d "${xdir}$objdir"; then - exit $status - fi - fi - - if test -z "$output_obj"; then - # Place PIC objects in $objdir - command="$command -o $lobj" - fi - - $run $rm "$lobj" "$output_obj" - - $show "$command" - if $run eval "$command"; then : - else - test -n "$output_obj" && $run $rm $removelist - exit 1 - fi - - if test "$need_locks" = warn && - test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then - $echo "\ -*** ERROR, $lockfile contains: -`cat $lockfile 2>/dev/null` - -but it should contain: -$srcfile - -This indicates that another process is trying to use the same -temporary object file, and libtool could not work around it because -your compiler does not support \`-c' and \`-o' together. If you -repeat this compilation, it may succeed, by chance, but you had better -avoid parallel builds (make -j) in this platform, or get a better -compiler." - - $run $rm $removelist - exit 1 - fi - - # Just move the object if needed, then go on to compile the next one - if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then - $show "$mv $output_obj $lobj" - if $run $mv $output_obj $lobj; then : - else - error=$? - $run $rm $removelist - exit $error - fi - fi - - # Append the name of the PIC object to the libtool object file. - test -z "$run" && cat >> ${libobj}T <<EOF -pic_object='$objdir/$objname' - -EOF - - # Allow error messages only from the first compilation. - suppress_output=' >/dev/null 2>&1' - else - # No PIC object so indicate it doesn't exist in the libtool - # object file. - test -z "$run" && cat >> ${libobj}T <<EOF -pic_object=none - -EOF - fi - - # Only build a position-dependent object if we build old libraries. - if test "$build_old_libs" = yes; then - if test "$pic_mode" != yes; then - # Don't build PIC code - command="$base_compile $srcfile" - else - command="$base_compile $srcfile $pic_flag" - fi - if test "$compiler_c_o" = yes; then - command="$command -o $obj" - fi - - # Suppress compiler output if we already did a PIC compilation. - command="$command$suppress_output" - $run $rm "$obj" "$output_obj" - $show "$command" - if $run eval "$command"; then : - else - $run $rm $removelist - exit 1 - fi - - if test "$need_locks" = warn && - test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then - $echo "\ -*** ERROR, $lockfile contains: -`cat $lockfile 2>/dev/null` - -but it should contain: -$srcfile - -This indicates that another process is trying to use the same -temporary object file, and libtool could not work around it because -your compiler does not support \`-c' and \`-o' together. If you -repeat this compilation, it may succeed, by chance, but you had better -avoid parallel builds (make -j) in this platform, or get a better -compiler." - - $run $rm $removelist - exit 1 - fi - - # Just move the object if needed - if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then - $show "$mv $output_obj $obj" - if $run $mv $output_obj $obj; then : - else - error=$? - $run $rm $removelist - exit $error - fi - fi - - # Append the name of the non-PIC object the libtool object file. - # Only append if the libtool object file exists. - test -z "$run" && cat >> ${libobj}T <<EOF -# Name of the non-PIC object. -non_pic_object='$objname' - -EOF - else - # Append the name of the non-PIC object the libtool object file. - # Only append if the libtool object file exists. - test -z "$run" && cat >> ${libobj}T <<EOF -# Name of the non-PIC object. -non_pic_object=none - -EOF - fi - - $run $mv "${libobj}T" "${libobj}" - - # Unlock the critical section if it was locked - if test "$need_locks" != no; then - $run $rm "$lockfile" - fi - - exit 0 - ;; - - # libtool link mode - link | relink) - modename="$modename: link" - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) - # It is impossible to link a dll without this setting, and - # we shouldn't force the makefile maintainer to figure out - # which system we are compiling for in order to pass an extra - # flag for every libtool invocation. - # allow_undefined=no - - # FIXME: Unfortunately, there are problems with the above when trying - # to make a dll which has undefined symbols, in which case not - # even a static library is built. For now, we need to specify - # -no-undefined on the libtool link line when we can be certain - # that all symbols are satisfied, otherwise we get a static library. - allow_undefined=yes - ;; - *) - allow_undefined=yes - ;; - esac - libtool_args="$nonopt" - base_compile="$nonopt" - compile_command="$nonopt" - finalize_command="$nonopt" - - compile_rpath= - finalize_rpath= - compile_shlibpath= - finalize_shlibpath= - convenience= - old_convenience= - deplibs= - old_deplibs= - add_flags= - compiler_flags= - linker_flags= - dllsearchpath= - lib_search_path=`pwd` - inst_prefix_dir= - - avoid_version=no - dlfiles= - dlprefiles= - dlself=no - export_dynamic=no - export_symbols= - export_symbols_regex= - generated= - libobjs= - ltlibs= - module=no - no_install=no - objs= - non_pic_objects= - prefer_static_libs=no - preload=no - prev= - prevarg= - release= - rpath= - xrpath= - perm_rpath= - temp_rpath= - thread_safe=no - vinfo= - vinfo_number=no - - # We need to know -static, to get the right output filenames. - for arg - do - case $arg in - -all-static | -static) - if test "X$arg" = "X-all-static"; then - if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then - $echo "$modename: warning: complete static linking is impossible in this configuration" 1>&2 - fi - if test -n "$link_static_flag"; then - dlopen_self=$dlopen_self_static - fi - else - if test -z "$pic_flag" && test -n "$link_static_flag"; then - dlopen_self=$dlopen_self_static - fi - fi - build_libtool_libs=no - build_old_libs=yes - prefer_static_libs=yes - break - ;; - esac - done - - # See if our shared archives depend on static archives. - test -n "$old_archive_from_new_cmds" && build_old_libs=yes - - # Go through the arguments, transforming them on the way. - while test "$#" -gt 0; do - arg="$1" - base_compile="$base_compile $arg" - shift - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - qarg=\"`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`\" ### testsuite: skip nested quoting test - ;; - *) qarg=$arg ;; - esac - libtool_args="$libtool_args $qarg" - - # If the previous option needs an argument, assign it. - if test -n "$prev"; then - case $prev in - output) - compile_command="$compile_command @OUTPUT@" - finalize_command="$finalize_command @OUTPUT@" - ;; - esac - - case $prev in - dlfiles|dlprefiles) - if test "$preload" = no; then - # Add the symbol object into the linking commands. - compile_command="$compile_command @SYMFILE@" - finalize_command="$finalize_command @SYMFILE@" - preload=yes - fi - case $arg in - *.la | *.lo) ;; # We handle these cases below. - force) - if test "$dlself" = no; then - dlself=needless - export_dynamic=yes - fi - prev= - continue - ;; - self) - if test "$prev" = dlprefiles; then - dlself=yes - elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then - dlself=yes - else - dlself=needless - export_dynamic=yes - fi - prev= - continue - ;; - *) - if test "$prev" = dlfiles; then - dlfiles="$dlfiles $arg" - else - dlprefiles="$dlprefiles $arg" - fi - prev= - continue - ;; - esac - ;; - expsyms) - export_symbols="$arg" - if test ! -f "$arg"; then - $echo "$modename: symbol file \`$arg' does not exist" - exit 1 - fi - prev= - continue - ;; - expsyms_regex) - export_symbols_regex="$arg" - prev= - continue - ;; - inst_prefix) - inst_prefix_dir="$arg" - prev= - continue - ;; - release) - release="-$arg" - prev= - continue - ;; - objectlist) - if test -f "$arg"; then - save_arg=$arg - moreargs= - for fil in `cat $save_arg` - do -# moreargs="$moreargs $fil" - arg=$fil - # A libtool-controlled object. - - # Check to see that this really is a libtool object. - if (${SED} -e '2q' $arg | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - pic_object= - non_pic_object= - - # Read the .lo file - # If there is no directory component, then add one. - case $arg in - */* | *\\*) . $arg ;; - *) . ./$arg ;; - esac - - if test -z "$pic_object" || \ - test -z "$non_pic_object" || - test "$pic_object" = none && \ - test "$non_pic_object" = none; then - $echo "$modename: cannot find name of object for \`$arg'" 1>&2 - exit 1 - fi - - # Extract subdirectory from the argument. - xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` - if test "X$xdir" = "X$arg"; then - xdir= - else - xdir="$xdir/" - fi - - if test "$pic_object" != none; then - # Prepend the subdirectory the object is found in. - pic_object="$xdir$pic_object" - - if test "$prev" = dlfiles; then - if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then - dlfiles="$dlfiles $pic_object" - prev= - continue - else - # If libtool objects are unsupported, then we need to preload. - prev=dlprefiles - fi - fi - - # CHECK ME: I think I busted this. -Ossama - if test "$prev" = dlprefiles; then - # Preload the old-style object. - dlprefiles="$dlprefiles $pic_object" - prev= - fi - - # A PIC object. - libobjs="$libobjs $pic_object" - arg="$pic_object" - fi - - # Non-PIC object. - if test "$non_pic_object" != none; then - # Prepend the subdirectory the object is found in. - non_pic_object="$xdir$non_pic_object" - - # A standard non-PIC object - non_pic_objects="$non_pic_objects $non_pic_object" - if test -z "$pic_object" || test "$pic_object" = none ; then - arg="$non_pic_object" - fi - fi - else - # Only an error if not doing a dry-run. - if test -z "$run"; then - $echo "$modename: \`$arg' is not a valid libtool object" 1>&2 - exit 1 - else - # Dry-run case. - - # Extract subdirectory from the argument. - xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` - if test "X$xdir" = "X$arg"; then - xdir= - else - xdir="$xdir/" - fi - - pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"` - non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"` - libobjs="$libobjs $pic_object" - non_pic_objects="$non_pic_objects $non_pic_object" - fi - fi - done - else - $echo "$modename: link input file \`$save_arg' does not exist" - exit 1 - fi - arg=$save_arg - prev= - continue - ;; - rpath | xrpath) - # We need an absolute path. - case $arg in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - $echo "$modename: only absolute run-paths are allowed" 1>&2 - exit 1 - ;; - esac - if test "$prev" = rpath; then - case "$rpath " in - *" $arg "*) ;; - *) rpath="$rpath $arg" ;; - esac - else - case "$xrpath " in - *" $arg "*) ;; - *) xrpath="$xrpath $arg" ;; - esac - fi - prev= - continue - ;; - xcompiler) - compiler_flags="$compiler_flags $qarg" - prev= - compile_command="$compile_command $qarg" - finalize_command="$finalize_command $qarg" - continue - ;; - xlinker) - linker_flags="$linker_flags $qarg" - compiler_flags="$compiler_flags $wl$qarg" - prev= - compile_command="$compile_command $wl$qarg" - finalize_command="$finalize_command $wl$qarg" - continue - ;; - xcclinker) - linker_flags="$linker_flags $qarg" - compiler_flags="$compiler_flags $qarg" - prev= - compile_command="$compile_command $qarg" - finalize_command="$finalize_command $qarg" - continue - ;; - framework) - case $host in - *-*-darwin*) - case "$deplibs " in - *" $qarg.ltframework "*) ;; - *) deplibs="$deplibs $qarg.ltframework" # this is fixed later - ;; - esac - ;; - esac - prev= - continue - ;; - *) - eval "$prev=\"\$arg\"" - prev= - continue - ;; - esac - fi # test -n "$prev" - - prevarg="$arg" - - case $arg in - -all-static) - if test -n "$link_static_flag"; then - compile_command="$compile_command $link_static_flag" - finalize_command="$finalize_command $link_static_flag" - fi - continue - ;; - - -allow-undefined) - # FIXME: remove this flag sometime in the future. - $echo "$modename: \`-allow-undefined' is deprecated because it is the default" 1>&2 - continue - ;; - - -avoid-version) - avoid_version=yes - continue - ;; - - -dlopen) - prev=dlfiles - continue - ;; - - -dlpreopen) - prev=dlprefiles - continue - ;; - - -export-dynamic) - export_dynamic=yes - continue - ;; - - -export-symbols | -export-symbols-regex) - if test -n "$export_symbols" || test -n "$export_symbols_regex"; then - $echo "$modename: more than one -exported-symbols argument is not allowed" - exit 1 - fi - if test "X$arg" = "X-export-symbols"; then - prev=expsyms - else - prev=expsyms_regex - fi - continue - ;; - - -inst-prefix-dir) - prev=inst_prefix - continue - ;; - - # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:* - # so, if we see these flags be careful not to treat them like -L - -L[A-Z][A-Z]*:*) - case $with_gcc/$host in - no/*-*-irix* | /*-*-irix*) - compile_command="$compile_command $arg" - finalize_command="$finalize_command $arg" - ;; - esac - continue - ;; - - -L*) - dir=`$echo "X$arg" | $Xsed -e 's/^-L//'` - # We need an absolute path. - case $dir in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - absdir=`cd "$dir" && pwd` - if test -z "$absdir"; then - $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2 - exit 1 - fi - dir="$absdir" - ;; - esac - case "$deplibs " in - *" -L$dir "*) ;; - *) - deplibs="$deplibs -L$dir" - lib_search_path="$lib_search_path $dir" - ;; - esac - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) - case :$dllsearchpath: in - *":$dir:"*) ;; - *) dllsearchpath="$dllsearchpath:$dir";; - esac - ;; - esac - continue - ;; - - -l*) - if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then - case $host in - *-*-cygwin* | *-*-pw32* | *-*-beos*) - # These systems don't actually have a C or math library (as such) - continue - ;; - *-*-mingw* | *-*-os2*) - # These systems don't actually have a C library (as such) - test "X$arg" = "X-lc" && continue - ;; - *-*-openbsd* | *-*-freebsd*) - # Do not include libc due to us having libc/libc_r. - test "X$arg" = "X-lc" && continue - ;; - *-*-rhapsody* | *-*-darwin1.[012]) - # Rhapsody C and math libraries are in the System framework - deplibs="$deplibs System.ltframework" - continue - esac - elif test "X$arg" = "X-lc_r"; then - case $host in - *-*-openbsd*) - # Do not include libc_r directly, use -pthread flag. - continue - ;; - esac - fi - deplibs="$deplibs $arg" - continue - ;; - - -module) - module=yes - continue - ;; - - # gcc -m* arguments should be passed to the linker via $compiler_flags - # in order to pass architecture information to the linker - # (e.g. 32 vs 64-bit). This may also be accomplished via -Wl,-mfoo - # but this is not reliable with gcc because gcc may use -mfoo to - # select a different linker, different libraries, etc, while - # -Wl,-mfoo simply passes -mfoo to the linker. - -m*) - # Unknown arguments in both finalize_command and compile_command need - # to be aesthetically quoted because they are evaled later. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - arg="\"$arg\"" - ;; - esac - compile_command="$compile_command $arg" - finalize_command="$finalize_command $arg" - if test "$with_gcc" = "yes" ; then - compiler_flags="$compiler_flags $arg" - fi - continue - ;; - - -shrext) - prev=shrext - continue - ;; - - -no-fast-install) - fast_install=no - continue - ;; - - -no-install) - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) - # The PATH hackery in wrapper scripts is required on Windows - # in order for the loader to find any dlls it needs. - $echo "$modename: warning: \`-no-install' is ignored for $host" 1>&2 - $echo "$modename: warning: assuming \`-no-fast-install' instead" 1>&2 - fast_install=no - ;; - *) no_install=yes ;; - esac - continue - ;; - - -no-undefined) - allow_undefined=no - continue - ;; - - -objectlist) - prev=objectlist - continue - ;; - - -o) prev=output ;; - - -release) - prev=release - continue - ;; - - -rpath) - prev=rpath - continue - ;; - - -R) - prev=xrpath - continue - ;; - - -R*) - dir=`$echo "X$arg" | $Xsed -e 's/^-R//'` - # We need an absolute path. - case $dir in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - $echo "$modename: only absolute run-paths are allowed" 1>&2 - exit 1 - ;; - esac - case "$xrpath " in - *" $dir "*) ;; - *) xrpath="$xrpath $dir" ;; - esac - continue - ;; - - -static) - # The effects of -static are defined in a previous loop. - # We used to do the same as -all-static on platforms that - # didn't have a PIC flag, but the assumption that the effects - # would be equivalent was wrong. It would break on at least - # Digital Unix and AIX. - continue - ;; - - -thread-safe) - thread_safe=yes - continue - ;; - - -version-info) - prev=vinfo - continue - ;; - -version-number) - prev=vinfo - vinfo_number=yes - continue - ;; - - -Wc,*) - args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wc,//'` - arg= - save_ifs="$IFS"; IFS=',' - for flag in $args; do - IFS="$save_ifs" - case $flag in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - flag="\"$flag\"" - ;; - esac - arg="$arg $wl$flag" - compiler_flags="$compiler_flags $flag" - done - IFS="$save_ifs" - arg=`$echo "X$arg" | $Xsed -e "s/^ //"` - ;; - - -Wl,*) - args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'` - arg= - save_ifs="$IFS"; IFS=',' - for flag in $args; do - IFS="$save_ifs" - case $flag in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - flag="\"$flag\"" - ;; - esac - arg="$arg $wl$flag" - compiler_flags="$compiler_flags $wl$flag" - linker_flags="$linker_flags $flag" - done - IFS="$save_ifs" - arg=`$echo "X$arg" | $Xsed -e "s/^ //"` - ;; - - -Xcompiler) - prev=xcompiler - continue - ;; - - -Xlinker) - prev=xlinker - continue - ;; - - -XCClinker) - prev=xcclinker - continue - ;; - - -framework) - prev=framework - continue - ;; - - # Some other compiler flag. - -* | +*) - # Unknown arguments in both finalize_command and compile_command need - # to be aesthetically quoted because they are evaled later. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - arg="\"$arg\"" - ;; - esac - add_flags="$add_flags $arg" - ;; - - *.$objext) - # A standard object. - objs="$objs $arg" - ;; - - *.lo) - # A libtool-controlled object. - - # Check to see that this really is a libtool object. - if (${SED} -e '2q' $arg | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - pic_object= - non_pic_object= - - # Read the .lo file - # If there is no directory component, then add one. - case $arg in - */* | *\\*) . $arg ;; - *) . ./$arg ;; - esac - - if test -z "$pic_object" || \ - test -z "$non_pic_object" || - test "$pic_object" = none && \ - test "$non_pic_object" = none; then - $echo "$modename: cannot find name of object for \`$arg'" 1>&2 - exit 1 - fi - - # Extract subdirectory from the argument. - xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` - if test "X$xdir" = "X$arg"; then - xdir= - else - xdir="$xdir/" - fi - - if test "$pic_object" != none; then - # Prepend the subdirectory the object is found in. - pic_object="$xdir$pic_object" - - if test "$prev" = dlfiles; then - if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then - dlfiles="$dlfiles $pic_object" - prev= - continue - else - # If libtool objects are unsupported, then we need to preload. - prev=dlprefiles - fi - fi - - # CHECK ME: I think I busted this. -Ossama - if test "$prev" = dlprefiles; then - # Preload the old-style object. - dlprefiles="$dlprefiles $pic_object" - prev= - fi - - # A PIC object. - libobjs="$libobjs $pic_object" - arg="$pic_object" - fi - - # Non-PIC object. - if test "$non_pic_object" != none; then - # Prepend the subdirectory the object is found in. - non_pic_object="$xdir$non_pic_object" - - # A standard non-PIC object - non_pic_objects="$non_pic_objects $non_pic_object" - if test -z "$pic_object" || test "$pic_object" = none ; then - arg="$non_pic_object" - fi - fi - else - # Only an error if not doing a dry-run. - if test -z "$run"; then - $echo "$modename: \`$arg' is not a valid libtool object" 1>&2 - exit 1 - else - # Dry-run case. - - # Extract subdirectory from the argument. - xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` - if test "X$xdir" = "X$arg"; then - xdir= - else - xdir="$xdir/" - fi - - pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"` - non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"` - libobjs="$libobjs $pic_object" - non_pic_objects="$non_pic_objects $non_pic_object" - fi - fi - ;; - - *.$libext) - # An archive. - deplibs="$deplibs $arg" - old_deplibs="$old_deplibs $arg" - continue - ;; - - *.la) - # A libtool-controlled library. - - if test "$prev" = dlfiles; then - # This library was specified with -dlopen. - dlfiles="$dlfiles $arg" - prev= - elif test "$prev" = dlprefiles; then - # The library was specified with -dlpreopen. - dlprefiles="$dlprefiles $arg" - prev= - else - deplibs="$deplibs $arg" - fi - continue - ;; - - # Some other compiler argument. - *) - # Unknown arguments in both finalize_command and compile_command need - # to be aesthetically quoted because they are evaled later. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - arg="\"$arg\"" - ;; - esac - add_flags="$add_flags $arg" - ;; - esac # arg - - # Now actually substitute the argument into the commands. - if test -n "$arg"; then - compile_command="$compile_command $arg" - finalize_command="$finalize_command $arg" - fi - done # argument parsing loop - - if test -n "$prev"; then - $echo "$modename: the \`$prevarg' option requires an argument" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - # Infer tagged configuration to use if any are available and - # if one wasn't chosen via the "--tag" command line option. - # Only attempt this if the compiler in the base link - # command doesn't match the default compiler. - if test -n "$available_tags" && test -z "$tagname"; then - case $base_compile in - # Blanks in the command may have been stripped by the calling shell, - # but not from the CC environment variable when configure was run. - "$CC "* | " $CC "* | "`$echo $CC` "* | " `$echo $CC` "*) ;; - # Blanks at the start of $base_compile will cause this to fail - # if we don't check for them as well. - *) - for z in $available_tags; do - if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$0" > /dev/null; then - # Evaluate the configuration. - eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $0`" - case $base_compile in - "$CC "* | " $CC "* | "`$echo $CC` "* | " `$echo $CC` "*) - # The compiler in $compile_command matches - # the one in the tagged configuration. - # Assume this is the tagged configuration we want. - tagname=$z - break - ;; - esac - fi - done - # If $tagname still isn't set, then no tagged configuration - # was found and let the user know that the "--tag" command - # line option must be used. - if test -z "$tagname"; then - $echo "$modename: unable to infer tagged configuration" - $echo "$modename: specify a tag with \`--tag'" 1>&2 - exit 1 -# else -# $echo "$modename: using $tagname tagged configuration" - fi - ;; - esac - fi - - if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then - eval arg=\"$export_dynamic_flag_spec\" - compile_command="$compile_command $arg" - finalize_command="$finalize_command $arg" - fi - - oldlibs= - # calculate the name of the file, without its directory - outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'` - libobjs_save="$libobjs" - - if test -n "$shlibpath_var"; then - # get the directories listed in $shlibpath_var - eval shlib_search_path=\`\$echo \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\` - else - shlib_search_path= - fi - eval sys_lib_search_path=\"$sys_lib_search_path_spec\" - eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" - - output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'` - if test "X$output_objdir" = "X$output"; then - output_objdir="$objdir" - else - output_objdir="$output_objdir/$objdir" - fi - # Create the object directory. - if test ! -d "$output_objdir"; then - $show "$mkdir $output_objdir" - $run $mkdir $output_objdir - status=$? - if test "$status" -ne 0 && test ! -d "$output_objdir"; then - exit $status - fi - fi - - # Determine the type of output - case $output in - "") - $echo "$modename: you must specify an output file" 1>&2 - $echo "$help" 1>&2 - exit 1 - ;; - *.$libext) linkmode=oldlib ;; - *.lo | *.$objext) linkmode=obj ;; - *.la) linkmode=lib ;; - *) linkmode=prog ;; # Anything else should be a program. - esac - - case $host in - *cygwin* | *mingw* | *pw32*) - # don't eliminate duplcations in $postdeps and $predeps - duplicate_compiler_generated_deps=yes - ;; - *) - duplicate_compiler_generated_deps=$duplicate_deps - ;; - esac - specialdeplibs= - - libs= - # Find all interdependent deplibs by searching for libraries - # that are linked more than once (e.g. -la -lb -la) - for deplib in $deplibs; do - if test "X$duplicate_deps" = "Xyes" ; then - case "$libs " in - *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; - esac - fi - libs="$libs $deplib" - done - - if test "$linkmode" = lib; then - libs="$predeps $libs $compiler_lib_search_path $postdeps" - - # Compute libraries that are listed more than once in $predeps - # $postdeps and mark them as special (i.e., whose duplicates are - # not to be eliminated). - pre_post_deps= - if test "X$duplicate_compiler_generated_deps" = "Xyes" ; then - for pre_post_dep in $predeps $postdeps; do - case "$pre_post_deps " in - *" $pre_post_dep "*) specialdeplibs="$specialdeplibs $pre_post_deps" ;; - esac - pre_post_deps="$pre_post_deps $pre_post_dep" - done - fi - pre_post_deps= - fi - - deplibs= - newdependency_libs= - newlib_search_path= - need_relink=no # whether we're linking any uninstalled libtool libraries - notinst_deplibs= # not-installed libtool libraries - notinst_path= # paths that contain not-installed libtool libraries - case $linkmode in - lib) - passes="conv link" - for file in $dlfiles $dlprefiles; do - case $file in - *.la) ;; - *) - $echo "$modename: libraries can \`-dlopen' only libtool libraries: $file" 1>&2 - exit 1 - ;; - esac - done - ;; - prog) - compile_deplibs= - finalize_deplibs= - alldeplibs=no - newdlfiles= - newdlprefiles= - passes="conv scan dlopen dlpreopen link" - ;; - *) passes="conv" - ;; - esac - for pass in $passes; do - if test "$linkmode,$pass" = "lib,link" || - test "$linkmode,$pass" = "prog,scan"; then - libs="$deplibs" - deplibs= - fi - if test "$linkmode" = prog; then - case $pass in - dlopen) libs="$dlfiles" ;; - dlpreopen) libs="$dlprefiles" ;; - link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; - esac - fi - if test "$pass" = dlopen; then - # Collect dlpreopened libraries - save_deplibs="$deplibs" - deplibs= - fi - for deplib in $libs; do - lib= - found=no - case $deplib in - -l*) - if test "$linkmode" != lib && test "$linkmode" != prog; then - $echo "$modename: warning: \`-l' is ignored for archives/objects" 1>&2 - continue - fi - if test "$pass" = conv && test "$allow_undefined" = yes; then - deplibs="$deplib $deplibs" - continue - fi - name=`$echo "X$deplib" | $Xsed -e 's/^-l//'` - for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do - for search_ext in .la $shrext .so .a; do - # Search the libtool library - lib="$searchdir/lib${name}${search_ext}" - if test -f "$lib"; then - if test "$search_ext" = ".la"; then - found=yes - else - found=no - fi - break 2 - fi - done - done - if test "$found" != yes; then - # deplib doesn't seem to be a libtool library - if test "$linkmode,$pass" = "prog,link"; then - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - else - deplibs="$deplib $deplibs" - test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" - fi - continue - else # deplib is a libtool library - # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib, - # We need to do some special things here, and not later. - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then - case " $predeps $postdeps " in - *" $deplib "*) - if (${SED} -e '2q' $lib | - grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - library_names= - old_library= - case $lib in - */* | *\\*) . $lib ;; - *) . ./$lib ;; - esac - for l in $old_library $library_names; do - ll="$l" - done - if test "X$ll" = "X$old_library" ; then # only static version available - found=no - ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'` - test "X$ladir" = "X$lib" && ladir="." - lib=$ladir/$old_library - if test "$linkmode,$pass" = "prog,link"; then - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - else - deplibs="$deplib $deplibs" - test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" - fi - continue - fi - fi - ;; - *) ;; - esac - fi - fi - ;; # -l - *.ltframework) - if test "$linkmode,$pass" = "prog,link"; then - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - else - deplibs="$deplib $deplibs" - if test "$linkmode" = lib ; then - newdependency_libs="$deplib $newdependency_libs" - fi - fi - continue - ;; - -L*) - case $linkmode in - lib) - deplibs="$deplib $deplibs" - test "$pass" = conv && continue - newdependency_libs="$deplib $newdependency_libs" - newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` - ;; - prog) - if test "$pass" = conv; then - deplibs="$deplib $deplibs" - continue - fi - if test "$pass" = scan; then - deplibs="$deplib $deplibs" - newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` - else - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - fi - ;; - *) - $echo "$modename: warning: \`-L' is ignored for archives/objects" 1>&2 - ;; - esac # linkmode - continue - ;; # -L - -R*) - if test "$pass" = link; then - dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'` - # Make sure the xrpath contains only unique directories. - case "$xrpath " in - *" $dir "*) ;; - *) xrpath="$xrpath $dir" ;; - esac - fi - deplibs="$deplib $deplibs" - continue - ;; - *.la) lib="$deplib" ;; - *.$libext) - if test "$pass" = conv; then - deplibs="$deplib $deplibs" - continue - fi - case $linkmode in - lib) - if test "$deplibs_check_method" != pass_all; then - $echo - $echo "*** Warning: Trying to link with static lib archive $deplib." - $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" - $echo "*** because the file extensions .$libext of this argument makes me believe" - $echo "*** that it is just a static archive that I should not used here." - else - $echo - $echo "*** Warning: Linking the shared library $output against the" - $echo "*** static library $deplib is not portable!" - deplibs="$deplib $deplibs" - fi - continue - ;; - prog) - if test "$pass" != link; then - deplibs="$deplib $deplibs" - else - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - fi - continue - ;; - esac # linkmode - ;; # *.$libext - *.lo | *.$objext) - if test "$pass" = conv; then - deplibs="$deplib $deplibs" - elif test "$linkmode" = prog; then - if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then - # If there is no dlopen support or we're linking statically, - # we need to preload. - newdlprefiles="$newdlprefiles $deplib" - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - else - newdlfiles="$newdlfiles $deplib" - fi - fi - continue - ;; - %DEPLIBS%) - alldeplibs=yes - continue - ;; - esac # case $deplib - if test "$found" = yes || test -f "$lib"; then : - else - $echo "$modename: cannot find the library \`$lib'" 1>&2 - exit 1 - fi - - # Check to see that this really is a libtool archive. - if (${SED} -e '2q' $lib | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : - else - $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 - exit 1 - fi - - ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'` - test "X$ladir" = "X$lib" && ladir="." - - dlname= - dlopen= - dlpreopen= - libdir= - library_names= - old_library= - # If the library was installed with an old release of libtool, - # it will not redefine variables installed, or shouldnotlink - installed=yes - shouldnotlink=no - - # Read the .la file - case $lib in - */* | *\\*) . $lib ;; - *) . ./$lib ;; - esac - - case $host in - *-*-darwin*) - # Convert "-framework foo" to "foo.ltframework" in dependency_libs - test -n "$dependency_libs" && dependency_libs=`$echo "X$dependency_libs" | $Xsed -e 's/-framework \([^ $]*\)/\1.ltframework/g'` - ;; - esac - - if test "$linkmode,$pass" = "lib,link" || - test "$linkmode,$pass" = "prog,scan" || - { test "$linkmode" != prog && test "$linkmode" != lib; }; then - test -n "$dlopen" && dlfiles="$dlfiles $dlopen" - test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen" - fi - - if test "$pass" = conv; then - # Only check for convenience libraries - deplibs="$lib $deplibs" - tmp_libs= - for deplib in $dependency_libs; do - #echo "Adding $deplib to \$deplibs" - deplibs="$deplib $deplibs" - if test "X$duplicate_deps" = "Xyes" ; then - case "$tmp_libs " in - *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; - esac - fi - tmp_libs="$tmp_libs $deplib" - done - if test -z "$libdir"; then - if test -z "$old_library"; then - $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 - exit 1 - fi - # It is a libtool convenience library, so add in its objects. - convenience="$convenience $ladir/$objdir/$old_library" - old_convenience="$old_convenience $ladir/$objdir/$old_library" - elif test "$linkmode" != prog && test "$linkmode" != lib; then - $echo "$modename: \`$lib' is not a convenience library" 1>&2 - exit 1 - fi - continue - fi # $pass = conv - - - # Get the name of the library we link against. - linklib= - for l in $old_library $library_names; do - linklib="$l" - done - if test -z "$linklib"; then - $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 - exit 1 - fi - - # This library was specified with -dlopen. - if test "$pass" = dlopen; then - if test -z "$libdir"; then - $echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2 - exit 1 - fi - if test -z "$dlname" || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then - # If there is no dlname, no dlopen support or we're linking - # statically, we need to preload. We also need to preload any - # dependent libraries so libltdl's deplib preloader doesn't - # bomb out in the load deplibs phase. - dlprefiles="$dlprefiles $lib $dependency_libs" - else - newdlfiles="$newdlfiles $lib" - fi - continue - fi # $pass = dlopen - - # We need an absolute path. - case $ladir in - [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;; - *) - abs_ladir=`cd "$ladir" && pwd` - if test -z "$abs_ladir"; then - $echo "$modename: warning: cannot determine absolute directory name of \`$ladir'" 1>&2 - $echo "$modename: passing it literally to the linker, although it might fail" 1>&2 - abs_ladir="$ladir" - fi - ;; - esac - laname=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` - - # Find the relevant object directory and library name. - if test "X$installed" = Xyes; then - if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then - $echo "$modename: warning: library \`$lib' was moved." 1>&2 - dir="$ladir" - absdir="$abs_ladir" - libdir="$abs_ladir" - else - dir="$libdir" - absdir="$libdir" - fi - else - dir="$ladir/$objdir" - absdir="$abs_ladir/$objdir" - # Remove this search path later - notinst_path="$notinst_path $abs_ladir" - fi # $installed = yes - name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'` - - # This library was specified with -dlpreopen. - if test "$pass" = dlpreopen; then - if test -z "$libdir"; then - $echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2 - exit 1 - fi - # Prefer using a static library (so that no silly _DYNAMIC symbols - # are required to link). - if test -n "$old_library"; then - newdlprefiles="$newdlprefiles $dir/$old_library" - # Otherwise, use the dlname, so that lt_dlopen finds it. - elif test -n "$dlname"; then - newdlprefiles="$newdlprefiles $dir/$dlname" - else - newdlprefiles="$newdlprefiles $dir/$linklib" - fi - fi # $pass = dlpreopen - - if test -z "$libdir"; then - # Link the convenience library - if test "$linkmode" = lib; then - deplibs="$dir/$old_library $deplibs" - elif test "$linkmode,$pass" = "prog,link"; then - compile_deplibs="$dir/$old_library $compile_deplibs" - finalize_deplibs="$dir/$old_library $finalize_deplibs" - else - deplibs="$lib $deplibs" # used for prog,scan pass - fi - continue - fi - - - if test "$linkmode" = prog && test "$pass" != link; then - newlib_search_path="$newlib_search_path $ladir" - deplibs="$lib $deplibs" - - linkalldeplibs=no - if test "$link_all_deplibs" != no || test -z "$library_names" || - test "$build_libtool_libs" = no; then - linkalldeplibs=yes - fi - - tmp_libs= - for deplib in $dependency_libs; do - case $deplib in - -L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test - esac - # Need to link against all dependency_libs? - if test "$linkalldeplibs" = yes; then - deplibs="$deplib $deplibs" - else - # Need to hardcode shared library paths - # or/and link against static libraries - newdependency_libs="$deplib $newdependency_libs" - fi - if test "X$duplicate_deps" = "Xyes" ; then - case "$tmp_libs " in - *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; - esac - fi - tmp_libs="$tmp_libs $deplib" - done # for deplib - continue - fi # $linkmode = prog... - - if test "$linkmode,$pass" = "prog,link"; then - if test -n "$library_names" && - { test "$prefer_static_libs" = no || test -z "$old_library"; }; then - # We need to hardcode the library path - if test -n "$shlibpath_var"; then - # Make sure the rpath contains only unique directories. - case "$temp_rpath " in - *" $dir "*) ;; - *" $absdir "*) ;; - *) temp_rpath="$temp_rpath $dir" ;; - esac - fi - - # Hardcode the library path. - # Skip directories that are in the system default run-time - # search path. - case " $sys_lib_dlsearch_path " in - *" $absdir "*) ;; - *) - case "$compile_rpath " in - *" $absdir "*) ;; - *) compile_rpath="$compile_rpath $absdir" - esac - ;; - esac - case " $sys_lib_dlsearch_path " in - *" $libdir "*) ;; - *) - case "$finalize_rpath " in - *" $libdir "*) ;; - *) finalize_rpath="$finalize_rpath $libdir" - esac - ;; - esac - fi # $linkmode,$pass = prog,link... - - if test "$alldeplibs" = yes && - { test "$deplibs_check_method" = pass_all || - { test "$build_libtool_libs" = yes && - test -n "$library_names"; }; }; then - # We only need to search for static libraries - continue - fi - fi - - link_static=no # Whether the deplib will be linked statically - if test -n "$library_names" && - { test "$prefer_static_libs" = no || test -z "$old_library"; }; then - if test "$installed" = no; then - notinst_deplibs="$notinst_deplibs $lib" - need_relink=yes - fi - # This is a shared library - - # Warn about portability, can't link against -module's on some systems (darwin) - if test "$shouldnotlink" = yes && test "$pass" = link ; then - $echo - if test "$linkmode" = prog; then - $echo "*** Warning: Linking the executable $output against the loadable module" - else - $echo "*** Warning: Linking the shared library $output against the loadable module" - fi - $echo "*** $linklib is not portable!" - fi - if test "$linkmode" = lib && - test "$hardcode_into_libs" = yes; then - # Hardcode the library path. - # Skip directories that are in the system default run-time - # search path. - case " $sys_lib_dlsearch_path " in - *" $absdir "*) ;; - *) - case "$compile_rpath " in - *" $absdir "*) ;; - *) compile_rpath="$compile_rpath $absdir" - esac - ;; - esac - case " $sys_lib_dlsearch_path " in - *" $libdir "*) ;; - *) - case "$finalize_rpath " in - *" $libdir "*) ;; - *) finalize_rpath="$finalize_rpath $libdir" - esac - ;; - esac - fi - - if test -n "$old_archive_from_expsyms_cmds"; then - # figure out the soname - set dummy $library_names - realname="$2" - shift; shift - libname=`eval \\$echo \"$libname_spec\"` - # use dlname if we got it. it's perfectly good, no? - if test -n "$dlname"; then - soname="$dlname" - elif test -n "$soname_spec"; then - # bleh windows - case $host in - *cygwin* | mingw*) - major=`expr $current - $age` - versuffix="-$major" - ;; - esac - eval soname=\"$soname_spec\" - else - soname="$realname" - fi - - # Make a new name for the extract_expsyms_cmds to use - soroot="$soname" - soname=`$echo $soroot | ${SED} -e 's/^.*\///'` - newlib="libimp-`$echo $soname | ${SED} 's/^lib//;s/\.dll$//'`.a" - - # If the library has no export list, then create one now - if test -f "$output_objdir/$soname-def"; then : - else - $show "extracting exported symbol list from \`$soname'" - save_ifs="$IFS"; IFS='~' - eval cmds=\"$extract_expsyms_cmds\" - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - fi - - # Create $newlib - if test -f "$output_objdir/$newlib"; then :; else - $show "generating import library for \`$soname'" - save_ifs="$IFS"; IFS='~' - eval cmds=\"$old_archive_from_expsyms_cmds\" - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - fi - # make sure the library variables are pointing to the new library - dir=$output_objdir - linklib=$newlib - fi # test -n "$old_archive_from_expsyms_cmds" - - if test "$linkmode" = prog || test "$mode" != relink; then - add_shlibpath= - add_dir= - add= - lib_linked=yes - case $hardcode_action in - immediate | unsupported) - if test "$hardcode_direct" = no; then - add="$dir/$linklib" - case $host in - *-*-sco3.2v5* ) add_dir="-L$dir" ;; - *-*-darwin* ) - # if the lib is a module then we can not link against it, someone - # is ignoring the new warnings I added - if /usr/bin/file -L $add 2> /dev/null | grep "bundle" >/dev/null ; then - $echo "** Warning, lib $linklib is a module, not a shared library" - if test -z "$old_library" ; then - $echo - $echo "** And there doesn't seem to be a static archive available" - $echo "** The link will probably fail, sorry" - else - add="$dir/$old_library" - fi - fi - esac - elif test "$hardcode_minus_L" = no; then - case $host in - *-*-sunos*) add_shlibpath="$dir" ;; - esac - add_dir="-L$dir" - add="-l$name" - elif test "$hardcode_shlibpath_var" = no; then - add_shlibpath="$dir" - add="-l$name" - else - lib_linked=no - fi - ;; - relink) - if test "$hardcode_direct" = yes; then - add="$dir/$linklib" - elif test "$hardcode_minus_L" = yes; then - add_dir="-L$dir" - # Try looking first in the location we're being installed to. - if test -n "$inst_prefix_dir"; then - case "$libdir" in - [\\/]*) - add_dir="-L$inst_prefix_dir$libdir $add_dir" - ;; - esac - fi - add="-l$name" - elif test "$hardcode_shlibpath_var" = yes; then - add_shlibpath="$dir" - add="-l$name" - else - lib_linked=no - fi - ;; - *) lib_linked=no ;; - esac - - if test "$lib_linked" != yes; then - $echo "$modename: configuration error: unsupported hardcode properties" - exit 1 - fi - - if test -n "$add_shlibpath"; then - case :$compile_shlibpath: in - *":$add_shlibpath:"*) ;; - *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;; - esac - fi - if test "$linkmode" = prog; then - test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" - test -n "$add" && compile_deplibs="$add $compile_deplibs" - else - test -n "$add_dir" && deplibs="$add_dir $deplibs" - test -n "$add" && deplibs="$add $deplibs" - if test "$hardcode_direct" != yes && \ - test "$hardcode_minus_L" != yes && \ - test "$hardcode_shlibpath_var" = yes; then - case :$finalize_shlibpath: in - *":$libdir:"*) ;; - *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; - esac - fi - fi - fi - - if test "$linkmode" = prog || test "$mode" = relink; then - add_shlibpath= - add_dir= - add= - # Finalize command for both is simple: just hardcode it. - if test "$hardcode_direct" = yes; then - add="$libdir/$linklib" - elif test "$hardcode_minus_L" = yes; then - add_dir="-L$libdir" - add="-l$name" - elif test "$hardcode_shlibpath_var" = yes; then - case :$finalize_shlibpath: in - *":$libdir:"*) ;; - *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; - esac - add="-l$name" - elif test "$hardcode_automatic" = yes; then - if test -n "$inst_prefix_dir" && test -f "$inst_prefix_dir$libdir/$linklib" ; then - add="$inst_prefix_dir$libdir/$linklib" - else - add="$libdir/$linklib" - fi - else - # We cannot seem to hardcode it, guess we'll fake it. - add_dir="-L$libdir" - # Try looking first in the location we're being installed to. - if test -n "$inst_prefix_dir"; then - case "$libdir" in - [\\/]*) - add_dir="-L$inst_prefix_dir$libdir $add_dir" - ;; - esac - fi - add="-l$name" - fi - - if test "$linkmode" = prog; then - test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" - test -n "$add" && finalize_deplibs="$add $finalize_deplibs" - else - test -n "$add_dir" && deplibs="$add_dir $deplibs" - test -n "$add" && deplibs="$add $deplibs" - fi - fi - elif test "$linkmode" = prog; then - # Here we assume that one of hardcode_direct or hardcode_minus_L - # is not unsupported. This is valid on all known static and - # shared platforms. - if test "$hardcode_direct" != unsupported; then - test -n "$old_library" && linklib="$old_library" - compile_deplibs="$dir/$linklib $compile_deplibs" - finalize_deplibs="$dir/$linklib $finalize_deplibs" - else - compile_deplibs="-l$name -L$dir $compile_deplibs" - finalize_deplibs="-l$name -L$dir $finalize_deplibs" - fi - elif test "$build_libtool_libs" = yes; then - # Not a shared library - if test "$deplibs_check_method" != pass_all; then - # We're trying link a shared library against a static one - # but the system doesn't support it. - - # Just print a warning and add the library to dependency_libs so - # that the program can be linked against the static library. - $echo - $echo "*** Warning: This system can not 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 "$module" = yes; 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 "$build_old_libs" = no; then - build_libtool_libs=module - build_old_libs=yes - else - build_libtool_libs=no - fi - fi - else - convenience="$convenience $dir/$old_library" - old_convenience="$old_convenience $dir/$old_library" - deplibs="$dir/$old_library $deplibs" - link_static=yes - fi - fi # link shared/static library? - - if test "$linkmode" = lib; then - #if test -n "$dependency_libs" && - # { test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes || - # test "$link_static" = yes; }; then - # Extract -R from dependency_libs - temp_deplibs= - for libdir in $dependency_libs; do - case $libdir in - -R*) temp_xrpath=`$echo "X$libdir" | $Xsed -e 's/^-R//'` - case " $xrpath " in - *" $temp_xrpath "*) ;; - *) xrpath="$xrpath $temp_xrpath";; - esac;; - *) temp_deplibs="$temp_deplibs $libdir";; - esac - done - dependency_libs="$temp_deplibs" - #fi - - newlib_search_path="$newlib_search_path $absdir" - # Link against this library - test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs" - # ... and its dependency_libs - tmp_libs= - for deplib in $dependency_libs; do - newdependency_libs="$deplib $newdependency_libs" - if test "X$duplicate_deps" = "Xyes" ; then - case "$tmp_libs " in - *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; - esac - fi - tmp_libs="$tmp_libs $deplib" - done - - if test "$link_all_deplibs" != no; then - # Add the search paths of all dependency libraries - for deplib in $dependency_libs; do - case $deplib in - -L*) path="$deplib" ;; - *.la) - dir=`$echo "X$deplib" | $Xsed -e 's%/[^/]*$%%'` - test "X$dir" = "X$deplib" && dir="." - # We need an absolute path. - case $dir in - [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;; - *) - absdir=`cd "$dir" && pwd` - if test -z "$absdir"; then - $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2 - absdir="$dir" - fi - ;; - esac - if grep "^installed=no" $deplib > /dev/null; then - path="$absdir/$objdir" - else - eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` - if test -z "$libdir"; then - $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2 - exit 1 - fi - if test "$absdir" != "$libdir"; then - # Sure, some shells/systems don't implement the -ef. - # Those will have to live with the warning. - test "$absdir" -ef "$libdir" > /dev/null 2>&1 || - $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2 - fi - path="$absdir" - fi - depdepl= - case $host in - *-*-darwin*) - # we do not want to link against static libs, but need to link against shared - eval deplibrary_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib` - if test -n "$deplibrary_names" ; then - for tmp in $deplibrary_names ; do - depdepl=$tmp - done - if test -f "$path/$depdepl" ; then - depdepl="$path/$depdepl" - fi - # do not add paths which are already there - case " $newlib_search_path " in - *" $path "*) ;; - *) newlib_search_path="$newlib_search_path $path";; - esac - path="" - fi - ;; - *) - path="-L$path" - ;; - esac - - ;; - -l*) - case $host in - *-*-darwin*) - # Again, we only want to link against shared libraries - eval tmp_libs=`$echo "X$deplib" | $Xsed -e "s,^\-l,,"` - for tmp in $newlib_search_path ; do - if test -f "$tmp/lib$tmp_libs.dylib" ; then - eval depdepl="$tmp/lib$tmp_libs.dylib" - break - fi - done - path="" - ;; - *) continue ;; - esac - ;; - - *.ltframework) - case $host in - *-*-darwin*) - depdepl="$deplib" - ;; - esac - ;; - - *) continue ;; - esac - case " $deplibs " in - *" $depdepl "*) ;; - *) deplibs="$deplibs $depdepl" ;; - esac - case " $deplibs " in - *" $path "*) ;; - *) deplibs="$deplibs $path" ;; - esac - done - fi # link_all_deplibs != no - fi # linkmode = lib - done # for deplib in $libs - dependency_libs="$newdependency_libs" - if test "$pass" = dlpreopen; then - # Link the dlpreopened libraries before other libraries - for deplib in $save_deplibs; do - deplibs="$deplib $deplibs" - done - fi - if test "$pass" != dlopen; then - if test "$pass" != conv; then - # Make sure lib_search_path contains only unique directories. - lib_search_path= - for dir in $newlib_search_path; do - case "$lib_search_path " in - *" $dir "*) ;; - *) lib_search_path="$lib_search_path $dir" ;; - esac - done - newlib_search_path= - fi - - if test "$linkmode,$pass" != "prog,link"; then - vars="deplibs" - else - vars="compile_deplibs finalize_deplibs" - fi - for var in $vars dependency_libs; do - # Add libraries to $var in reverse order - eval tmp_libs=\"\$$var\" - new_libs= - for deplib in $tmp_libs; do - # FIXME: Pedantically, this is the right thing to do, so - # that some nasty dependency loop isn't accidentally - # broken: - #new_libs="$deplib $new_libs" - # Pragmatically, this seems to cause very few problems in - # practice: - case $deplib in - -L*) new_libs="$deplib $new_libs" ;; - -R*) ;; - *) - # And here is the reason: when a library appears more - # than once as an explicit dependence of a library, or - # is implicitly linked in more than once by the - # compiler, it is considered special, and multiple - # occurrences thereof are not removed. Compare this - # with having the same library being listed as a - # dependency of multiple other libraries: in this case, - # we know (pedantically, we assume) the library does not - # need to be listed more than once, so we keep only the - # last copy. This is not always right, but it is rare - # enough that we require users that really mean to play - # such unportable linking tricks to link the library - # using -Wl,-lname, so that libtool does not consider it - # for duplicate removal. - case " $specialdeplibs " in - *" $deplib "*) new_libs="$deplib $new_libs" ;; - *) - case " $new_libs " in - *" $deplib "*) ;; - *) new_libs="$deplib $new_libs" ;; - esac - ;; - esac - ;; - esac - done - tmp_libs= - for deplib in $new_libs; do - case $deplib in - -L*) - case " $tmp_libs " in - *" $deplib "*) ;; - *) tmp_libs="$tmp_libs $deplib" ;; - esac - ;; - *) tmp_libs="$tmp_libs $deplib" ;; - esac - done - eval $var=\"$tmp_libs\" - done # for var - fi - # Last step: remove runtime libs from dependency_libs (they stay in deplibs) - tmp_libs= - for i in $dependency_libs ; do - case " $predeps $postdeps $compiler_lib_search_path " in - *" $i "*) - i="" - ;; - esac - if test -n "$i" ; then - tmp_libs="$tmp_libs $i" - fi - done - dependency_libs=$tmp_libs - done # for pass - if test "$linkmode" = prog; then - dlfiles="$newdlfiles" - dlprefiles="$newdlprefiles" - fi - - case $linkmode in - oldlib) - if test -n "$deplibs"; then - $echo "$modename: warning: \`-l' and \`-L' are ignored for archives" 1>&2 - fi - - if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then - $echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2 - fi - - if test -n "$rpath"; then - $echo "$modename: warning: \`-rpath' is ignored for archives" 1>&2 - fi - - if test -n "$xrpath"; then - $echo "$modename: warning: \`-R' is ignored for archives" 1>&2 - fi - - if test -n "$vinfo"; then - $echo "$modename: warning: \`-version-info/-version-number' is ignored for archives" 1>&2 - fi - - if test -n "$release"; then - $echo "$modename: warning: \`-release' is ignored for archives" 1>&2 - fi - - if test -n "$export_symbols" || test -n "$export_symbols_regex"; then - $echo "$modename: warning: \`-export-symbols' is ignored for archives" 1>&2 - fi - - # Now set the variables for building old libraries. - build_libtool_libs=no - oldlibs="$output" - objs="$objs$old_deplibs" - ;; - - lib) - # Make sure we only generate libraries of the form `libNAME.la'. - case $outputname in - lib*) - name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'` - eval shared_ext=\"$shrext\" - eval libname=\"$libname_spec\" - ;; - *) - if test "$module" = no; then - $echo "$modename: libtool library \`$output' must begin with \`lib'" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - if test "$need_lib_prefix" != no; then - # Add the "lib" prefix for modules if required - name=`$echo "X$outputname" | $Xsed -e 's/\.la$//'` - eval shared_ext=\"$shrext\" - eval libname=\"$libname_spec\" - else - libname=`$echo "X$outputname" | $Xsed -e 's/\.la$//'` - fi - ;; - esac - - if test -n "$objs"; then - if test "$deplibs_check_method" != pass_all; then - $echo "$modename: cannot build libtool library \`$output' from non-libtool objects on this host:$objs" 2>&1 - exit 1 - else - $echo - $echo "*** Warning: Linking the shared library $output against the non-libtool" - $echo "*** objects $objs is not portable!" - libobjs="$libobjs $objs" - fi - fi - - if test "$dlself" != no; then - $echo "$modename: warning: \`-dlopen self' is ignored for libtool libraries" 1>&2 - fi - - set dummy $rpath - if test "$#" -gt 2; then - $echo "$modename: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2 - fi - install_libdir="$2" - - oldlibs= - if test -z "$rpath"; then - if test "$build_libtool_libs" = yes; then - # Building a libtool convenience library. - # Some compilers have problems with a `.al' extension so - # convenience libraries should have the same extension an - # archive normally would. - oldlibs="$output_objdir/$libname.$libext $oldlibs" - build_libtool_libs=convenience - build_old_libs=yes - fi - - if test -n "$vinfo"; then - $echo "$modename: warning: \`-version-info/-version-number' is ignored for convenience libraries" 1>&2 - fi - - if test -n "$release"; then - $echo "$modename: warning: \`-release' is ignored for convenience libraries" 1>&2 - fi - else - - # Parse the version information argument. - save_ifs="$IFS"; IFS=':' - set dummy $vinfo 0 0 0 - IFS="$save_ifs" - - if test -n "$8"; then - $echo "$modename: too many parameters to \`-version-info'" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - # convert absolute version numbers to libtool ages - # this retains compatibility with .la files and attempts - # to make the code below a bit more comprehensible - - case $vinfo_number in - yes) - number_major="$2" - number_minor="$3" - number_revision="$4" - # - # There are really only two kinds -- those that - # use the current revision as the major version - # and those that subtract age and use age as - # a minor version. But, then there is irix - # which has an extra 1 added just for fun - # - case $version_type in - darwin|linux|osf|windows) - current=`expr $number_major + $number_minor` - age="$number_minor" - revision="$number_revision" - ;; - freebsd-aout|freebsd-elf|sunos) - current="$number_major" - revision="$number_minor" - age="0" - ;; - irix|nonstopux) - current=`expr $number_major + $number_minor - 1` - age="$number_minor" - revision="$number_minor" - ;; - esac - ;; - no) - current="$2" - revision="$3" - age="$4" - ;; - esac - - # Check that each of the things are valid numbers. - case $current in - 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;; - *) - $echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2 - $echo "$modename: \`$vinfo' is not valid version information" 1>&2 - exit 1 - ;; - esac - - case $revision in - 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;; - *) - $echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2 - $echo "$modename: \`$vinfo' is not valid version information" 1>&2 - exit 1 - ;; - esac - - case $age in - 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;; - *) - $echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2 - $echo "$modename: \`$vinfo' is not valid version information" 1>&2 - exit 1 - ;; - esac - - if test "$age" -gt "$current"; then - $echo "$modename: AGE \`$age' is greater than the current interface number \`$current'" 1>&2 - $echo "$modename: \`$vinfo' is not valid version information" 1>&2 - exit 1 - fi - - # Calculate the version variables. - major= - versuffix= - verstring= - case $version_type in - none) ;; - - darwin) - # Like Linux, but with the current version available in - # verstring for coding it into the library header - major=.`expr $current - $age` - versuffix="$major.$age.$revision" - # Darwin ld doesn't like 0 for these options... - minor_current=`expr $current + 1` - verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" - ;; - - freebsd-aout) - major=".$current" - versuffix=".$current.$revision"; - ;; - - freebsd-elf) - major=".$current" - versuffix=".$current"; - ;; - - irix | nonstopux) - major=`expr $current - $age + 1` - - case $version_type in - nonstopux) verstring_prefix=nonstopux ;; - *) verstring_prefix=sgi ;; - esac - verstring="$verstring_prefix$major.$revision" - - # Add in all the interfaces that we are compatible with. - loop=$revision - while test "$loop" -ne 0; do - iface=`expr $revision - $loop` - loop=`expr $loop - 1` - verstring="$verstring_prefix$major.$iface:$verstring" - done - - # Before this point, $major must not contain `.'. - major=.$major - versuffix="$major.$revision" - ;; - - linux) - major=.`expr $current - $age` - versuffix="$major.$age.$revision" - ;; - - osf) - major=.`expr $current - $age` - versuffix=".$current.$age.$revision" - verstring="$current.$age.$revision" - - # Add in all the interfaces that we are compatible with. - loop=$age - while test "$loop" -ne 0; do - iface=`expr $current - $loop` - loop=`expr $loop - 1` - verstring="$verstring:${iface}.0" - done - - # Make executables depend on our current version. - verstring="$verstring:${current}.0" - ;; - - sunos) - major=".$current" - versuffix=".$current.$revision" - ;; - - windows) - # Use '-' rather than '.', since we only want one - # extension on DOS 8.3 filesystems. - major=`expr $current - $age` - versuffix="-$major" - ;; - - *) - $echo "$modename: unknown library version type \`$version_type'" 1>&2 - $echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 - exit 1 - ;; - esac - - # Clear the version info if we defaulted, and they specified a release. - if test -z "$vinfo" && test -n "$release"; then - major= - case $version_type in - darwin) - # we can't check for "0.0" in archive_cmds due to quoting - # problems, so we reset it completely - verstring= - ;; - *) - verstring="0.0" - ;; - esac - if test "$need_version" = no; then - versuffix= - else - versuffix=".0.0" - fi - fi - - # Remove version info from name if versioning should be avoided - if test "$avoid_version" = yes && test "$need_version" = no; then - major= - versuffix= - verstring="" - fi - - # Check to see if the archive will have undefined symbols. - if test "$allow_undefined" = yes; then - if test "$allow_undefined_flag" = unsupported; then - $echo "$modename: warning: undefined symbols not allowed in $host shared libraries" 1>&2 - build_libtool_libs=no - build_old_libs=yes - fi - else - # Don't allow undefined symbols. - allow_undefined_flag="$no_undefined_flag" - fi - fi - - if test "$mode" != relink; then - # Remove our outputs, but don't remove object files since they - # may have been created when compiling PIC objects. - removelist= - tempremovelist=`$echo "$output_objdir/*"` - for p in $tempremovelist; do - case $p in - *.$objext | *$exeext) - ;; - $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*) - removelist="$removelist $p" - ;; - *) ;; - esac - done - if test -n "$removelist"; then - $show "${rm}r $removelist" - $run ${rm}r $removelist - fi - fi - - # Now set the variables for building old libraries. - if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then - oldlibs="$oldlibs $output_objdir/$libname.$libext" - - # Transform .lo files to .o files. - oldobjs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP` - fi - - # Eliminate all temporary directories. - for path in $notinst_path; do - lib_search_path=`$echo "$lib_search_path " | ${SED} -e 's% $path % %g'` - deplibs=`$echo "$deplibs " | ${SED} -e 's% -L$path % %g'` - dependency_libs=`$echo "$dependency_libs " | ${SED} -e 's% -L$path % %g'` - done - - if test -n "$xrpath"; then - # If the user specified any rpath flags, then add them. - temp_xrpath= - for libdir in $xrpath; do - temp_xrpath="$temp_xrpath -R$libdir" - case "$finalize_rpath " in - *" $libdir "*) ;; - *) finalize_rpath="$finalize_rpath $libdir" ;; - esac - done - if true || test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; then - dependency_libs="$temp_xrpath $dependency_libs" - fi - fi - - # Make sure dlfiles contains only unique files that won't be dlpreopened - old_dlfiles="$dlfiles" - dlfiles= - for lib in $old_dlfiles; do - case " $dlprefiles $dlfiles " in - *" $lib "*) ;; - *) dlfiles="$dlfiles $lib" ;; - esac - done - - # Make sure dlprefiles contains only unique files - old_dlprefiles="$dlprefiles" - dlprefiles= - for lib in $old_dlprefiles; do - case "$dlprefiles " in - *" $lib "*) ;; - *) dlprefiles="$dlprefiles $lib" ;; - esac - done - - if test "$build_libtool_libs" = yes; then - if test -n "$rpath"; then - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*) - # these systems don't actually have a c library (as such)! - ;; - *-*-rhapsody* | *-*-darwin1.[012]) - # Rhapsody C library is in the System framework - deplibs="$deplibs System.ltframework" - ;; - *-*-netbsd*) - # Don't link with libc until the a.out ld.so is fixed. - ;; - *-*-openbsd* | *-*-freebsd*) - # Do not include libc due to us having libc/libc_r. - test "X$arg" = "X-lc" && continue - ;; - *) - # Add libc to deplibs on all other systems if necessary. - if test "$build_libtool_need_lc" = "yes"; then - deplibs="$deplibs -lc" - fi - ;; - esac - fi - - # Transform deplibs into only deplibs that can be linked in shared. - name_save=$name - libname_save=$libname - release_save=$release - versuffix_save=$versuffix - major_save=$major - # I'm not sure if I'm treating the release correctly. I think - # release should show up in the -l (ie -lgmp5) so we don't want to - # add it in twice. Is that correct? - release="" - versuffix="" - major="" - newdeplibs= - droppeddeps=no - case $deplibs_check_method in - pass_all) - # Don't check for shared/static. Everything works. - # This might be a little naive. We might want to check - # whether the library exists or not. But this is on - # osf3 & osf4 and I'm not really sure... Just - # implementing what was already the behavior. - newdeplibs=$deplibs - ;; - test_compile) - # This code stresses the "libraries are programs" paradigm to its - # limits. Maybe even breaks it. We compile a program, linking it - # against the deplibs as a proxy for the library. Then we can check - # whether they linked in statically or dynamically with ldd. - $rm conftest.c - cat > conftest.c <<EOF - int main() { return 0; } -EOF - $rm conftest - $LTCC -o conftest conftest.c $deplibs - if test "$?" -eq 0 ; then - ldd_output=`ldd conftest` - for i in $deplibs; do - name="`expr $i : '-l\(.*\)'`" - # If $name is empty we are operating on a -L argument. - if test "$name" != "" && test "$name" -ne "0"; then - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then - case " $predeps $postdeps " in - *" $i "*) - newdeplibs="$newdeplibs $i" - i="" - ;; - esac - fi - if test -n "$i" ; then - libname=`eval \\$echo \"$libname_spec\"` - deplib_matches=`eval \\$echo \"$library_names_spec\"` - set dummy $deplib_matches - deplib_match=$2 - if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then - newdeplibs="$newdeplibs $i" - else - droppeddeps=yes - $echo - $echo "*** Warning: dynamic linker does not accept needed library $i." - $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 I believe you do not have" - $echo "*** because a test_compile did reveal that the linker did not use it for" - $echo "*** its dynamic dependency list that programs get resolved with at runtime." - fi - fi - else - newdeplibs="$newdeplibs $i" - fi - done - else - # Error occurred in the first compile. Let's try to salvage - # the situation: Compile a separate program for each library. - for i in $deplibs; do - name="`expr $i : '-l\(.*\)'`" - # If $name is empty we are operating on a -L argument. - if test "$name" != "" && test "$name" != "0"; then - $rm conftest - $LTCC -o conftest conftest.c $i - # Did it work? - if test "$?" -eq 0 ; then - ldd_output=`ldd conftest` - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then - case " $predeps $postdeps " in - *" $i "*) - newdeplibs="$newdeplibs $i" - i="" - ;; - esac - fi - if test -n "$i" ; then - libname=`eval \\$echo \"$libname_spec\"` - deplib_matches=`eval \\$echo \"$library_names_spec\"` - set dummy $deplib_matches - deplib_match=$2 - if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then - newdeplibs="$newdeplibs $i" - else - droppeddeps=yes - $echo - $echo "*** Warning: dynamic linker does not accept needed library $i." - $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" - $echo "*** because a test_compile did reveal that the linker did not use this one" - $echo "*** as a dynamic dependency that programs can get resolved with at runtime." - fi - fi - else - droppeddeps=yes - $echo - $echo "*** Warning! Library $i is needed by this library but I was not able to" - $echo "*** make it link in! You will probably need to install it or some" - $echo "*** library that it depends on before this library will be fully" - $echo "*** functional. Installing it before continuing would be even better." - fi - else - newdeplibs="$newdeplibs $i" - fi - done - fi - ;; - file_magic*) - set dummy $deplibs_check_method - file_magic_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"` - for a_deplib in $deplibs; do - name="`expr $a_deplib : '-l\(.*\)'`" - # If $name is empty we are operating on a -L argument. - if test "$name" != "" && test "$name" != "0"; then - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then - case " $predeps $postdeps " in - *" $a_deplib "*) - newdeplibs="$newdeplibs $a_deplib" - a_deplib="" - ;; - esac - fi - if test -n "$a_deplib" ; then - libname=`eval \\$echo \"$libname_spec\"` - for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do - potential_libs=`ls $i/$libname[.-]* 2>/dev/null` - 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 - # loop can be closed while we follow links, - # but so what? - potlib="$potent_lib" - while test -h "$potlib" 2>/dev/null; do - potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'` - case $potliblink in - [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";; - *) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";; - esac - done - if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \ - | ${SED} 10q \ - | $EGREP "$file_magic_regex" > /dev/null; then - newdeplibs="$newdeplibs $a_deplib" - a_deplib="" - break 2 - fi - done - done - fi - if test -n "$a_deplib" ; then - droppeddeps=yes - $echo - $echo "*** Warning: linker path does not have real file for library $a_deplib." - $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" - $echo "*** because I did check the linker path looking for a file starting" - if test -z "$potlib" ; then - $echo "*** with $libname but no candidates were found. (...for file magic test)" - else - $echo "*** with $libname and none of the candidates passed a file format test" - $echo "*** using a file magic. Last file checked: $potlib" - fi - fi - else - # Add a -L argument. - newdeplibs="$newdeplibs $a_deplib" - fi - done # Gone through all deplibs. - ;; - match_pattern*) - set dummy $deplibs_check_method - match_pattern_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"` - for a_deplib in $deplibs; do - name="`expr $a_deplib : '-l\(.*\)'`" - # If $name is empty we are operating on a -L argument. - if test -n "$name" && test "$name" != "0"; then - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then - case " $predeps $postdeps " in - *" $a_deplib "*) - newdeplibs="$newdeplibs $a_deplib" - a_deplib="" - ;; - esac - fi - if test -n "$a_deplib" ; then - libname=`eval \\$echo \"$libname_spec\"` - for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do - potential_libs=`ls $i/$libname[.-]* 2>/dev/null` - for potent_lib in $potential_libs; do - potlib="$potent_lib" # see symlink-check above in file_magic test - if eval $echo \"$potent_lib\" 2>/dev/null \ - | ${SED} 10q \ - | $EGREP "$match_pattern_regex" > /dev/null; then - newdeplibs="$newdeplibs $a_deplib" - a_deplib="" - break 2 - fi - done - done - fi - if test -n "$a_deplib" ; then - droppeddeps=yes - $echo - $echo "*** Warning: linker path does not have real file for library $a_deplib." - $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" - $echo "*** because I did check the linker path looking for a file starting" - if test -z "$potlib" ; then - $echo "*** with $libname but no candidates were found. (...for regex pattern test)" - else - $echo "*** with $libname and none of the candidates passed a file format test" - $echo "*** using a regex pattern. Last file checked: $potlib" - fi - fi - else - # Add a -L argument. - newdeplibs="$newdeplibs $a_deplib" - fi - done # Gone through all deplibs. - ;; - none | unknown | *) - newdeplibs="" - tmp_deplibs=`$echo "X $deplibs" | $Xsed -e 's/ -lc$//' \ - -e 's/ -[LR][^ ]*//g'` - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then - for i in $predeps $postdeps ; do - # can't use Xsed below, because $i might contain '/' - tmp_deplibs=`$echo "X $tmp_deplibs" | ${SED} -e "1s,^X,," -e "s,$i,,"` - done - fi - if $echo "X $tmp_deplibs" | $Xsed -e 's/[ ]//g' \ - | grep . >/dev/null; then - $echo - if test "X$deplibs_check_method" = "Xnone"; then - $echo "*** Warning: inter-library dependencies are not supported in this platform." - else - $echo "*** Warning: inter-library dependencies are not known to be supported." - fi - $echo "*** All declared inter-library dependencies are being dropped." - droppeddeps=yes - fi - ;; - esac - versuffix=$versuffix_save - major=$major_save - release=$release_save - libname=$libname_save - name=$name_save - - case $host in - *-*-rhapsody* | *-*-darwin1.[012]) - # On Rhapsody replace the C library is the System framework - newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's/ -lc / System.ltframework /'` - ;; - esac - - if test "$droppeddeps" = yes; then - if test "$module" = yes; 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 "$build_old_libs" = no; then - oldlibs="$output_objdir/$libname.$libext" - build_libtool_libs=module - build_old_libs=yes - else - build_libtool_libs=no - fi - else - $echo "*** The inter-library dependencies that have been dropped here will be" - $echo "*** automatically added whenever a program is linked with this library" - $echo "*** or is declared to -dlopen it." - - if test "$allow_undefined" = no; then - $echo - $echo "*** Since this library must not contain undefined symbols," - $echo "*** because either the platform does not support them or" - $echo "*** it was explicitly requested with -no-undefined," - $echo "*** libtool will only create a static version of it." - if test "$build_old_libs" = no; then - oldlibs="$output_objdir/$libname.$libext" - build_libtool_libs=module - build_old_libs=yes - else - build_libtool_libs=no - fi - fi - fi - fi - # Time to change all our "foo.ltframework" stuff back to "-framework foo" - case $host in - *-*-darwin*) - newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'` - dependency_libs=`$echo "X $dependency_libs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'` - ;; - esac - # Done checking deplibs! - deplibs=$newdeplibs - fi - - # All the library-specific variables (install_libdir is set above). - library_names= - old_library= - dlname= - - # Test again, we may have decided not to build it any more - if test "$build_libtool_libs" = yes; then - if test "$hardcode_into_libs" = yes; then - # Hardcode the library paths - hardcode_libdirs= - dep_rpath= - rpath="$finalize_rpath" - test "$mode" != relink && test "$fast_install" = no && rpath="$compile_rpath$rpath" - for libdir in $rpath; do - if test -n "$hardcode_libdir_flag_spec"; then - if test -n "$hardcode_libdir_separator"; then - if test -z "$hardcode_libdirs"; then - hardcode_libdirs="$libdir" - else - # Just accumulate the unique libdirs. - case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in - *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) - ;; - *) - hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" - ;; - esac - fi - else - eval flag=\"$hardcode_libdir_flag_spec\" - dep_rpath="$dep_rpath $flag" - fi - elif test -n "$runpath_var"; then - case "$perm_rpath " in - *" $libdir "*) ;; - *) perm_rpath="$perm_rpath $libdir" ;; - esac - fi - done - # Substitute the hardcoded libdirs into the rpath. - if test -n "$hardcode_libdir_separator" && - test -n "$hardcode_libdirs"; then - libdir="$hardcode_libdirs" - if test -n "$hardcode_libdir_flag_spec_ld"; then - eval dep_rpath=\"$hardcode_libdir_flag_spec_ld\" - else - eval dep_rpath=\"$hardcode_libdir_flag_spec\" - fi - fi - if test -n "$runpath_var" && test -n "$perm_rpath"; then - # We should set the runpath_var. - rpath= - for dir in $perm_rpath; do - rpath="$rpath$dir:" - done - eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var" - fi - test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" - fi - - shlibpath="$finalize_shlibpath" - test "$mode" != relink && shlibpath="$compile_shlibpath$shlibpath" - if test -n "$shlibpath"; then - eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var" - fi - - # Get the real and link names of the library. - eval shared_ext=\"$shrext\" - eval library_names=\"$library_names_spec\" - set dummy $library_names - realname="$2" - shift; shift - - if test -n "$soname_spec"; then - eval soname=\"$soname_spec\" - else - soname="$realname" - fi - if test -z "$dlname"; then - dlname=$soname - fi - - lib="$output_objdir/$realname" - for link - do - linknames="$linknames $link" - done - - # Use standard objects if they are pic - test -z "$pic_flag" && libobjs=`$echo "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` - - # Prepare the list of exported symbols - if test -z "$export_symbols"; then - if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then - $show "generating symbol list for \`$libname.la'" - export_symbols="$output_objdir/$libname.exp" - $run $rm $export_symbols - eval cmds=\"$export_symbols_cmds\" - save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - if len=`expr "X$cmd" : ".*"` && - test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then - $show "$cmd" - $run eval "$cmd" || exit $? - skipped_export=false - else - # The command line is too long to execute in one step. - $show "using reloadable object file for export list..." - skipped_export=: - fi - done - IFS="$save_ifs" - if test -n "$export_symbols_regex"; then - $show "$EGREP -e \"$export_symbols_regex\" \"$export_symbols\" > \"${export_symbols}T\"" - $run eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' - $show "$mv \"${export_symbols}T\" \"$export_symbols\"" - $run eval '$mv "${export_symbols}T" "$export_symbols"' - fi - fi - fi - - if test -n "$export_symbols" && test -n "$include_expsyms"; then - $run eval '$echo "X$include_expsyms" | $SP2NL >> "$export_symbols"' - fi - - tmp_deplibs= - for test_deplib in $deplibs; do - case " $convenience " in - *" $test_deplib "*) ;; - *) - tmp_deplibs="$tmp_deplibs $test_deplib" - ;; - esac - done - deplibs="$tmp_deplibs" - - if test -n "$convenience"; then - if test -n "$whole_archive_flag_spec"; then - save_libobjs=$libobjs - eval libobjs=\"\$libobjs $whole_archive_flag_spec\" - else - gentop="$output_objdir/${outputname}x" - $show "${rm}r $gentop" - $run ${rm}r "$gentop" - $show "$mkdir $gentop" - $run $mkdir "$gentop" - status=$? - if test "$status" -ne 0 && test ! -d "$gentop"; then - exit $status - fi - generated="$generated $gentop" - - for xlib in $convenience; do - # Extract the objects. - case $xlib in - [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; - *) xabs=`pwd`"/$xlib" ;; - esac - xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` - xdir="$gentop/$xlib" - - $show "${rm}r $xdir" - $run ${rm}r "$xdir" - $show "$mkdir $xdir" - $run $mkdir "$xdir" - status=$? - if test "$status" -ne 0 && test ! -d "$xdir"; then - exit $status - fi - # We will extract separately just the conflicting names and we will no - # longer touch any unique names. It is faster to leave these extract - # automatically by $AR in one run. - $show "(cd $xdir && $AR x $xabs)" - $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? - if ($AR t "$xabs" | sort | sort -uc >/dev/null 2>&1); then - : - else - $echo "$modename: warning: object name conflicts; renaming object files" 1>&2 - $echo "$modename: warning: to ensure that they will not overwrite" 1>&2 - $AR t "$xabs" | sort | uniq -cd | while read -r count name - do - i=1 - while test "$i" -le "$count" - do - # Put our $i before any first dot (extension) - # Never overwrite any file - name_to="$name" - while test "X$name_to" = "X$name" || test -f "$xdir/$name_to" - do - name_to=`$echo "X$name_to" | $Xsed -e "s/\([^.]*\)/\1-$i/"` - done - $show "(cd $xdir && $AR xN $i $xabs '$name' && $mv '$name' '$name_to')" - $run eval "(cd \$xdir && $AR xN $i \$xabs '$name' && $mv '$name' '$name_to')" || exit $? - i=`expr $i + 1` - done - done - fi - - libobjs="$libobjs "`find $xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP` - done - fi - fi - - if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then - eval flag=\"$thread_safe_flag_spec\" - linker_flags="$linker_flags $flag" - fi - - # Make a backup of the uninstalled library when relinking - if test "$mode" = relink; then - $run eval '(cd $output_objdir && $rm ${realname}U && $mv $realname ${realname}U)' || exit $? - fi - - # Add all flags from the command line. We here create a library, - # but those flags were only added to compile_command and - # finalize_command, which are only used when creating executables. - # So do it by hand here. - compiler_flags="$compiler_flags $add_flags" - # Only add it to commands which use CC, instead of LD, i.e. - # only to $compiler_flags - #linker_flags="$linker_flags $add_flags" - - # Do each of the archive commands. - if test "$module" = yes && test -n "$module_cmds" ; then - if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then - eval cmds=\"$module_expsym_cmds\" - else - eval cmds=\"$module_cmds\" - fi - else - if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then - eval cmds=\"$archive_expsym_cmds\" - else - eval cmds=\"$archive_cmds\" - fi - fi - - if test "X$skipped_export" != "X:" && len=`expr "X$cmds" : ".*"` && - test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then - : - else - # The command line is too long to link in one step, link piecewise. - $echo "creating reloadable object files..." - - # Save the value of $output and $libobjs because we want to - # use them later. If we have whole_archive_flag_spec, we - # want to use save_libobjs as it was before - # whole_archive_flag_spec was expanded, because we can't - # assume the linker understands whole_archive_flag_spec. - # This may have to be revisited, in case too many - # convenience libraries get linked in and end up exceeding - # the spec. - if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then - save_libobjs=$libobjs - fi - save_output=$output - - # Clear the reloadable object creation command queue and - # initialize k to one. - test_cmds= - concat_cmds= - objlist= - delfiles= - last_robj= - k=1 - output=$output_objdir/$save_output-${k}.$objext - # Loop over the list of objects to be linked. - for obj in $save_libobjs - do - eval test_cmds=\"$reload_cmds $objlist $last_robj\" - if test "X$objlist" = X || - { len=`expr "X$test_cmds" : ".*"` && - test "$len" -le "$max_cmd_len"; }; then - objlist="$objlist $obj" - else - # The command $test_cmds is almost too long, add a - # command to the queue. - if test "$k" -eq 1 ; then - # The first file doesn't have a previous command to add. - eval concat_cmds=\"$reload_cmds $objlist $last_robj\" - else - # All subsequent reloadable object files will link in - # the last one created. - eval concat_cmds=\"\$concat_cmds~$reload_cmds $objlist $last_robj\" - fi - last_robj=$output_objdir/$save_output-${k}.$objext - k=`expr $k + 1` - output=$output_objdir/$save_output-${k}.$objext - objlist=$obj - len=1 - fi - done - # Handle the remaining objects by creating one last - # reloadable object file. All subsequent reloadable object - # files will link in the last one created. - test -z "$concat_cmds" || concat_cmds=$concat_cmds~ - eval concat_cmds=\"\${concat_cmds}$reload_cmds $objlist $last_robj\" - - if ${skipped_export-false}; then - $show "generating symbol list for \`$libname.la'" - export_symbols="$output_objdir/$libname.exp" - $run $rm $export_symbols - libobjs=$output - # Append the command to create the export file. - eval concat_cmds=\"\$concat_cmds~$export_symbols_cmds\" - fi - - # Set up a command to remove the reloadale object files - # after they are used. - i=0 - while test "$i" -lt "$k" - do - i=`expr $i + 1` - delfiles="$delfiles $output_objdir/$save_output-${i}.$objext" - done - - $echo "creating a temporary reloadable object file: $output" - - # Loop through the commands generated above and execute them. - save_ifs="$IFS"; IFS='~' - for cmd in $concat_cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - - libobjs=$output - # Restore the value of output. - output=$save_output - - if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then - eval libobjs=\"\$libobjs $whole_archive_flag_spec\" - fi - # Expand the library linking commands again to reset the - # value of $libobjs for piecewise linking. - - # Do each of the archive commands. - if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then - eval cmds=\"$archive_expsym_cmds\" - else - eval cmds=\"$archive_cmds\" - fi - - # Append the command to remove the reloadable object files - # to the just-reset $cmds. - eval cmds=\"\$cmds~$rm $delfiles\" - fi - save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - - # Restore the uninstalled library and exit - if test "$mode" = relink; then - $run eval '(cd $output_objdir && $rm ${realname}T && $mv $realname ${realname}T && $mv "$realname"U $realname)' || exit $? - exit 0 - fi - - # Create links to the real library. - for linkname in $linknames; do - if test "$realname" != "$linkname"; then - $show "(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)" - $run eval '(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)' || exit $? - fi - done - - # If -module or -export-dynamic was specified, set the dlname. - if test "$module" = yes || test "$export_dynamic" = yes; then - # On all known operating systems, these are identical. - dlname="$soname" - fi - fi - ;; - - obj) - if test -n "$deplibs"; then - $echo "$modename: warning: \`-l' and \`-L' are ignored for objects" 1>&2 - fi - - if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then - $echo "$modename: warning: \`-dlopen' is ignored for objects" 1>&2 - fi - - if test -n "$rpath"; then - $echo "$modename: warning: \`-rpath' is ignored for objects" 1>&2 - fi - - if test -n "$xrpath"; then - $echo "$modename: warning: \`-R' is ignored for objects" 1>&2 - fi - - if test -n "$vinfo"; then - $echo "$modename: warning: \`-version-info' is ignored for objects" 1>&2 - fi - - if test -n "$release"; then - $echo "$modename: warning: \`-release' is ignored for objects" 1>&2 - fi - - case $output in - *.lo) - if test -n "$objs$old_deplibs"; then - $echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2 - exit 1 - fi - libobj="$output" - obj=`$echo "X$output" | $Xsed -e "$lo2o"` - ;; - *) - libobj= - obj="$output" - ;; - esac - - # Delete the old objects. - $run $rm $obj $libobj - - # Objects from convenience libraries. This assumes - # single-version convenience libraries. Whenever we create - # different ones for PIC/non-PIC, this we'll have to duplicate - # the extraction. - reload_conv_objs= - gentop= - # reload_cmds runs $LD directly, so let us get rid of - # -Wl from whole_archive_flag_spec - wl= - - if test -n "$convenience"; then - if test -n "$whole_archive_flag_spec"; then - eval reload_conv_objs=\"\$reload_objs $whole_archive_flag_spec\" - else - gentop="$output_objdir/${obj}x" - $show "${rm}r $gentop" - $run ${rm}r "$gentop" - $show "$mkdir $gentop" - $run $mkdir "$gentop" - status=$? - if test "$status" -ne 0 && test ! -d "$gentop"; then - exit $status - fi - generated="$generated $gentop" - - for xlib in $convenience; do - # Extract the objects. - case $xlib in - [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; - *) xabs=`pwd`"/$xlib" ;; - esac - xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` - xdir="$gentop/$xlib" - - $show "${rm}r $xdir" - $run ${rm}r "$xdir" - $show "$mkdir $xdir" - $run $mkdir "$xdir" - status=$? - if test "$status" -ne 0 && test ! -d "$xdir"; then - exit $status - fi - # We will extract separately just the conflicting names and we will no - # longer touch any unique names. It is faster to leave these extract - # automatically by $AR in one run. - $show "(cd $xdir && $AR x $xabs)" - $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? - if ($AR t "$xabs" | sort | sort -uc >/dev/null 2>&1); then - : - else - $echo "$modename: warning: object name conflicts; renaming object files" 1>&2 - $echo "$modename: warning: to ensure that they will not overwrite" 1>&2 - $AR t "$xabs" | sort | uniq -cd | while read -r count name - do - i=1 - while test "$i" -le "$count" - do - # Put our $i before any first dot (extension) - # Never overwrite any file - name_to="$name" - while test "X$name_to" = "X$name" || test -f "$xdir/$name_to" - do - name_to=`$echo "X$name_to" | $Xsed -e "s/\([^.]*\)/\1-$i/"` - done - $show "(cd $xdir && $AR xN $i $xabs '$name' && $mv '$name' '$name_to')" - $run eval "(cd \$xdir && $AR xN $i \$xabs '$name' && $mv '$name' '$name_to')" || exit $? - i=`expr $i + 1` - done - done - fi - - reload_conv_objs="$reload_objs "`find $xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP` - done - fi - fi - - # Create the old-style object. - reload_objs="$objs$old_deplibs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test - - output="$obj" - eval cmds=\"$reload_cmds\" - save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - - # Exit if we aren't doing a library object file. - if test -z "$libobj"; then - if test -n "$gentop"; then - $show "${rm}r $gentop" - $run ${rm}r $gentop - fi - - exit 0 - fi - - if test "$build_libtool_libs" != yes; then - if test -n "$gentop"; then - $show "${rm}r $gentop" - $run ${rm}r $gentop - fi - - # Create an invalid libtool object if no PIC, so that we don't - # accidentally link it into a program. - # $show "echo timestamp > $libobj" - # $run eval "echo timestamp > $libobj" || exit $? - exit 0 - fi - - if test -n "$pic_flag" || test "$pic_mode" != default; then - # Only do commands if we really have different PIC objects. - reload_objs="$libobjs $reload_conv_objs" - output="$libobj" - eval cmds=\"$reload_cmds\" - save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - fi - - if test -n "$gentop"; then - $show "${rm}r $gentop" - $run ${rm}r $gentop - fi - - exit 0 - ;; - - prog) - case $host in - *cygwin*) output=`$echo $output | ${SED} -e 's,.exe$,,;s,$,.exe,'` ;; - esac - if test -n "$vinfo"; then - $echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2 - fi - - if test -n "$release"; then - $echo "$modename: warning: \`-release' is ignored for programs" 1>&2 - fi - - if test "$preload" = yes; then - if test "$dlopen_support" = unknown && test "$dlopen_self" = unknown && - test "$dlopen_self_static" = unknown; then - $echo "$modename: warning: \`AC_LIBTOOL_DLOPEN' not used. Assuming no dlopen support." - fi - fi - - case $host in - *-*-rhapsody* | *-*-darwin1.[012]) - # On Rhapsody replace the C library is the System framework - compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's/ -lc / System.ltframework /'` - finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / System.ltframework /'` - ;; - esac - - case $host in - *-*-darwin*) - # Don't allow lazy linking, it breaks C++ global constructors - if test "$tagname" = CXX ; then - compile_command="$compile_command ${wl}-bind_at_load" - finalize_command="$finalize_command ${wl}-bind_at_load" - fi - # Time to change all our "foo.ltframework" stuff back to "-framework foo" - compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'` - finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'` - ;; - esac - - compile_command="$compile_command $compile_deplibs" - finalize_command="$finalize_command $finalize_deplibs" - - if test -n "$rpath$xrpath"; then - # If the user specified any rpath flags, then add them. - for libdir in $rpath $xrpath; do - # This is the magic to use -rpath. - case "$finalize_rpath " in - *" $libdir "*) ;; - *) finalize_rpath="$finalize_rpath $libdir" ;; - esac - done - fi - - # Now hardcode the library paths - rpath= - hardcode_libdirs= - for libdir in $compile_rpath $finalize_rpath; do - if test -n "$hardcode_libdir_flag_spec"; then - if test -n "$hardcode_libdir_separator"; then - if test -z "$hardcode_libdirs"; then - hardcode_libdirs="$libdir" - else - # Just accumulate the unique libdirs. - case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in - *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) - ;; - *) - hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" - ;; - esac - fi - else - eval flag=\"$hardcode_libdir_flag_spec\" - rpath="$rpath $flag" - fi - elif test -n "$runpath_var"; then - case "$perm_rpath " in - *" $libdir "*) ;; - *) perm_rpath="$perm_rpath $libdir" ;; - esac - fi - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) - case :$dllsearchpath: in - *":$libdir:"*) ;; - *) dllsearchpath="$dllsearchpath:$libdir";; - esac - ;; - esac - done - # Substitute the hardcoded libdirs into the rpath. - if test -n "$hardcode_libdir_separator" && - test -n "$hardcode_libdirs"; then - libdir="$hardcode_libdirs" - eval rpath=\" $hardcode_libdir_flag_spec\" - fi - compile_rpath="$rpath" - - rpath= - hardcode_libdirs= - for libdir in $finalize_rpath; do - if test -n "$hardcode_libdir_flag_spec"; then - if test -n "$hardcode_libdir_separator"; then - if test -z "$hardcode_libdirs"; then - hardcode_libdirs="$libdir" - else - # Just accumulate the unique libdirs. - case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in - *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) - ;; - *) - hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" - ;; - esac - fi - else - eval flag=\"$hardcode_libdir_flag_spec\" - rpath="$rpath $flag" - fi - elif test -n "$runpath_var"; then - case "$finalize_perm_rpath " in - *" $libdir "*) ;; - *) finalize_perm_rpath="$finalize_perm_rpath $libdir" ;; - esac - fi - done - # Substitute the hardcoded libdirs into the rpath. - if test -n "$hardcode_libdir_separator" && - test -n "$hardcode_libdirs"; then - libdir="$hardcode_libdirs" - eval rpath=\" $hardcode_libdir_flag_spec\" - fi - finalize_rpath="$rpath" - - if test -n "$libobjs" && test "$build_old_libs" = yes; then - # Transform all the library objects into standard objects. - compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` - finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` - fi - - dlsyms= - if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then - if test -n "$NM" && test -n "$global_symbol_pipe"; then - dlsyms="${outputname}S.c" - else - $echo "$modename: not configured to extract global symbols from dlpreopened files" 1>&2 - fi - fi - - if test -n "$dlsyms"; then - case $dlsyms in - "") ;; - *.c) - # Discover the nlist of each of the dlfiles. - nlist="$output_objdir/${outputname}.nm" - - $show "$rm $nlist ${nlist}S ${nlist}T" - $run $rm "$nlist" "${nlist}S" "${nlist}T" - - # Parse the name list into a source file. - $show "creating $output_objdir/$dlsyms" - - test -z "$run" && $echo > "$output_objdir/$dlsyms" "\ -/* $dlsyms - symbol resolution table for \`$outputname' dlsym emulation. */ -/* Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP */ - -#ifdef __cplusplus -extern \"C\" { -#endif - -/* Prevent the only kind of declaration conflicts we can make. */ -#define lt_preloaded_symbols some_other_symbol - -/* External symbol declarations for the compiler. */\ -" - - if test "$dlself" = yes; then - $show "generating symbol list for \`$output'" - - test -z "$run" && $echo ': @PROGRAM@ ' > "$nlist" - - # Add our own program objects to the symbol list. - progfiles=`$echo "X$objs$old_deplibs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` - for arg in $progfiles; do - $show "extracting global C symbols from \`$arg'" - $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'" - done - - if test -n "$exclude_expsyms"; then - $run eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' - $run eval '$mv "$nlist"T "$nlist"' - fi - - if test -n "$export_symbols_regex"; then - $run eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T' - $run eval '$mv "$nlist"T "$nlist"' - fi - - # Prepare the list of exported symbols - if test -z "$export_symbols"; then - export_symbols="$output_objdir/$output.exp" - $run $rm $export_symbols - $run eval "${SED} -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' - else - $run eval "${SED} -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"' - $run eval 'grep -f "$output_objdir/$output.exp" < "$nlist" > "$nlist"T' - $run eval 'mv "$nlist"T "$nlist"' - fi - fi - - for arg in $dlprefiles; do - $show "extracting global C symbols from \`$arg'" - name=`$echo "$arg" | ${SED} -e 's%^.*/%%'` - $run eval '$echo ": $name " >> "$nlist"' - $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'" - done - - if test -z "$run"; then - # Make sure we have at least an empty file. - test -f "$nlist" || : > "$nlist" - - if test -n "$exclude_expsyms"; then - $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T - $mv "$nlist"T "$nlist" - fi - - # Try sorting and uniquifying the output. - if grep -v "^: " < "$nlist" | - if sort -k 3 </dev/null >/dev/null 2>&1; then - sort -k 3 - 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/$dlsyms"' - else - $echo '/* NONE */' >> "$output_objdir/$dlsyms" - fi - - $echo >> "$output_objdir/$dlsyms" "\ - -#undef lt_preloaded_symbols - -#if defined (__STDC__) && __STDC__ -# define lt_ptr void * -#else -# define lt_ptr char * -# define const -#endif - -/* The mapping between symbol names and symbols. */ -const struct { - const char *name; - lt_ptr address; -} -lt_preloaded_symbols[] = -{\ -" - - eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$dlsyms" - - $echo >> "$output_objdir/$dlsyms" "\ - {0, (lt_ptr) 0} -}; - -/* This works around a problem in FreeBSD linker */ -#ifdef FREEBSD_WORKAROUND -static const void *lt_preloaded_setup() { - return lt_preloaded_symbols; -} -#endif - -#ifdef __cplusplus -} -#endif\ -" - fi - - pic_flag_for_symtable= - case $host in - # compiling the symbol table file with pic_flag works around - # a FreeBSD bug that causes programs to crash when -lm is - # linked before any other PIC object. But we must not use - # pic_flag when linking with -static. The problem exists in - # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. - *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) - case "$compile_command " in - *" -static "*) ;; - *) pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND";; - esac;; - *-*-hpux*) - case "$compile_command " in - *" -static "*) ;; - *) pic_flag_for_symtable=" $pic_flag";; - esac - esac - - # Now compile the dynamic symbol file. - $show "(cd $output_objdir && $LTCC -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")" - $run eval '(cd $output_objdir && $LTCC -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $? - - # Clean up the generated files. - $show "$rm $output_objdir/$dlsyms $nlist ${nlist}S ${nlist}T" - $run $rm "$output_objdir/$dlsyms" "$nlist" "${nlist}S" "${nlist}T" - - # Transform the symbol file into the correct name. - compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"` - finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"` - ;; - *) - $echo "$modename: unknown suffix for \`$dlsyms'" 1>&2 - exit 1 - ;; - 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 "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"` - finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"` - fi - - # AIX runtime linking requires linking programs with -Wl,-brtl and libs with -Wl,-G - # Also add -bnolibpath to the beginning of the link line, to clear the hardcoded runpath. - # Otherwise, things like the -L path to libgcc.a are accidentally hardcoded by ld. - # This does not apply on AIX for ia64, which uses a SysV linker. - case "$host" in - ia64-*-aix5*) ;; - *-*-aix4* | *-*-aix5*) - compile_command=`$echo "X$compile_command $wl-brtl" | $Xsed -e "s/\$CC/\$CC $wl-bnolibpath/1"` - finalize_command=`$echo "X$finalize_command $wl-brtl" | $Xsed -e "s/\$CC/\$CC $wl-bnolibpath/1"` ;; - esac - - if test "$need_relink" = no || test "$build_libtool_libs" != yes; then - # Replace the output file specification. - compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'` - link_command="$compile_command$compile_rpath" - - # We have no uninstalled library dependencies, so finalize right now. - $show "$link_command" - $run eval "$link_command" - status=$? - - # Delete the generated files. - if test -n "$dlsyms"; then - $show "$rm $output_objdir/${outputname}S.${objext}" - $run $rm "$output_objdir/${outputname}S.${objext}" - fi - - exit $status - fi - - if test -n "$shlibpath_var"; then - # We should set the shlibpath_var - rpath= - for dir in $temp_rpath; do - case $dir in - [\\/]* | [A-Za-z]:[\\/]*) - # Absolute path. - rpath="$rpath$dir:" - ;; - *) - # Relative path: add a thisdir entry. - rpath="$rpath\$thisdir/$dir:" - ;; - esac - done - temp_rpath="$rpath" - fi - - if test -n "$compile_shlibpath$finalize_shlibpath"; then - compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command" - fi - if test -n "$finalize_shlibpath"; then - finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command" - fi - - compile_var= - finalize_var= - if test -n "$runpath_var"; then - if test -n "$perm_rpath"; then - # We should set the runpath_var. - rpath= - for dir in $perm_rpath; do - rpath="$rpath$dir:" - done - compile_var="$runpath_var=\"$rpath\$$runpath_var\" " - fi - if test -n "$finalize_perm_rpath"; then - # We should set the runpath_var. - rpath= - for dir in $finalize_perm_rpath; do - rpath="$rpath$dir:" - done - finalize_var="$runpath_var=\"$rpath\$$runpath_var\" " - fi - fi - - if test "$no_install" = yes; then - # We don't need to create a wrapper script. - link_command="$compile_var$compile_command$compile_rpath" - # Replace the output file specification. - link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'` - # Delete the old output file. - $run $rm $output - # Link the executable and exit - $show "$link_command" - $run eval "$link_command" || exit $? - exit 0 - fi - - if test "$hardcode_action" = relink; then - # Fast installation is not supported - link_command="$compile_var$compile_command$compile_rpath" - relink_command="$finalize_var$finalize_command$finalize_rpath" - - $echo "$modename: warning: this platform does not like uninstalled shared libraries" 1>&2 - $echo "$modename: \`$output' will be relinked during installation" 1>&2 - else - if test "$fast_install" != no; then - link_command="$finalize_var$compile_command$finalize_rpath" - if test "$fast_install" = yes; then - relink_command=`$echo "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'` - else - # fast_install is set to needless - relink_command= - fi - else - link_command="$compile_var$compile_command$compile_rpath" - relink_command="$finalize_var$finalize_command$finalize_rpath" - fi - fi - - # Replace the output file specification. - link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` - - # Delete the old output files. - $run $rm $output $output_objdir/$outputname $output_objdir/lt-$outputname - - $show "$link_command" - $run eval "$link_command" || exit $? - - # Now create the wrapper script. - $show "creating $output" - - # Quote the relink command for shipping. - if test -n "$relink_command"; then - # Preserve any variables that may affect compiler behavior - for var in $variables_saved_for_relink; do - if eval test -z \"\${$var+set}\"; then - relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command" - elif eval var_value=\$$var; test -z "$var_value"; then - relink_command="$var=; export $var; $relink_command" - else - var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"` - relink_command="$var=\"$var_value\"; export $var; $relink_command" - fi - done - relink_command="(cd `pwd`; $relink_command)" - relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` - fi - - # Quote $echo for shipping. - if test "X$echo" = "X$SHELL $0 --fallback-echo"; then - case $0 in - [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $0 --fallback-echo";; - *) qecho="$SHELL `pwd`/$0 --fallback-echo";; - esac - qecho=`$echo "X$qecho" | $Xsed -e "$sed_quote_subst"` - else - qecho=`$echo "X$echo" | $Xsed -e "$sed_quote_subst"` - fi - - # Only actually do things if our run command is non-null. - if test -z "$run"; then - # win32 will think the script is a binary if it has - # a .exe suffix, so we strip it off here. - case $output in - *.exe) output=`$echo $output|${SED} 's,.exe$,,'` ;; - esac - # test for cygwin because mv fails w/o .exe extensions - case $host in - *cygwin*) - exeext=.exe - outputname=`$echo $outputname|${SED} 's,.exe$,,'` ;; - *) exeext= ;; - esac - case $host in - *mingw* ) - cwrappersource=`$echo ${output_objdir}/lt-${outputname}.c` - cwrapper=`$echo ${output}.exe` - $rm $cwrappersource $cwrapper - trap "$rm $cwrappersource $cwrapper; exit 1" 1 2 15 - - cat > $cwrappersource <<EOF - -/* $cwrappersource - temporary wrapper executable for $objdir/$outputname - Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP - - The $output program cannot be directly executed until all the libtool - libraries that it depends on are installed. - - This wrapper executable should never be moved out of the build directory. - If it is, it will not operate correctly. - - Currently, it simply execs the wrapper *script* "/bin/sh $output", - but could eventually absorb all of the scripts functionality and - exec $objdir/$outputname directly. -*/ -EOF - cat >> $cwrappersource<<"EOF" -#include <stdio.h> -#include <stdlib.h> -#include <unistd.h> -#include <malloc.h> -#include <stdarg.h> -#include <assert.h> - -#if defined(PATH_MAX) -# define LT_PATHMAX PATH_MAX -#elif defined(MAXPATHLEN) -# define LT_PATHMAX MAXPATHLEN -#else -# define LT_PATHMAX 1024 -#endif - -#ifndef DIR_SEPARATOR -#define DIR_SEPARATOR '/' -#endif - -#if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \ - defined (__OS2__) -#define HAVE_DOS_BASED_FILE_SYSTEM -#ifndef DIR_SEPARATOR_2 -#define DIR_SEPARATOR_2 '\\' -#endif -#endif - -#ifndef DIR_SEPARATOR_2 -# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR) -#else /* DIR_SEPARATOR_2 */ -# define IS_DIR_SEPARATOR(ch) \ - (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2)) -#endif /* DIR_SEPARATOR_2 */ - -#define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type))) -#define XFREE(stale) do { \ - if (stale) { free ((void *) stale); stale = 0; } \ -} while (0) - -const char *program_name = NULL; - -void * xmalloc (size_t num); -char * xstrdup (const char *string); -char * basename (const char *name); -char * fnqualify(const char *path); -char * strendzap(char *str, const char *pat); -void lt_fatal (const char *message, ...); - -int -main (int argc, char *argv[]) -{ - char **newargz; - int i; - - program_name = (char *) xstrdup ((char *) basename (argv[0])); - newargz = XMALLOC(char *, argc+2); -EOF - - cat >> $cwrappersource <<EOF - newargz[0] = "$SHELL"; -EOF - - cat >> $cwrappersource <<"EOF" - newargz[1] = fnqualify(argv[0]); - /* we know the script has the same name, without the .exe */ - /* so make sure newargz[1] doesn't end in .exe */ - strendzap(newargz[1],".exe"); - for (i = 1; i < argc; i++) - newargz[i+1] = xstrdup(argv[i]); - newargz[argc+1] = NULL; -EOF - - cat >> $cwrappersource <<EOF - execv("$SHELL",newargz); -EOF - - cat >> $cwrappersource <<"EOF" -} - -void * -xmalloc (size_t num) -{ - void * p = (void *) malloc (num); - if (!p) - lt_fatal ("Memory exhausted"); - - return p; -} - -char * -xstrdup (const char *string) -{ - return string ? strcpy ((char *) xmalloc (strlen (string) + 1), string) : NULL -; -} - -char * -basename (const char *name) -{ - const char *base; - -#if defined (HAVE_DOS_BASED_FILE_SYSTEM) - /* Skip over the disk name in MSDOS pathnames. */ - if (isalpha (name[0]) && name[1] == ':') - name += 2; -#endif - - for (base = name; *name; name++) - if (IS_DIR_SEPARATOR (*name)) - base = name + 1; - return (char *) base; -} - -char * -fnqualify(const char *path) -{ - size_t size; - char *p; - char tmp[LT_PATHMAX + 1]; - - assert(path != NULL); - - /* Is it qualified already? */ -#if defined (HAVE_DOS_BASED_FILE_SYSTEM) - if (isalpha (path[0]) && path[1] == ':') - return xstrdup (path); -#endif - if (IS_DIR_SEPARATOR (path[0])) - return xstrdup (path); - - /* prepend the current directory */ - /* doesn't handle '~' */ - if (getcwd (tmp, LT_PATHMAX) == NULL) - lt_fatal ("getcwd failed"); - size = strlen(tmp) + 1 + strlen(path) + 1; /* +2 for '/' and '\0' */ - p = XMALLOC(char, size); - sprintf(p, "%s%c%s", tmp, DIR_SEPARATOR, path); - return p; -} - -char * -strendzap(char *str, const char *pat) -{ - size_t len, patlen; - - assert(str != NULL); - assert(pat != NULL); - - len = strlen(str); - patlen = strlen(pat); - - if (patlen <= len) - { - str += len - patlen; - if (strcmp(str, pat) == 0) - *str = '\0'; - } - return str; -} - -static void -lt_error_core (int exit_status, const char * mode, - const char * message, va_list ap) -{ - fprintf (stderr, "%s: %s: ", program_name, mode); - vfprintf (stderr, message, ap); - fprintf (stderr, ".\n"); - - if (exit_status >= 0) - exit (exit_status); -} - -void -lt_fatal (const char *message, ...) -{ - va_list ap; - va_start (ap, message); - lt_error_core (EXIT_FAILURE, "FATAL", message, ap); - va_end (ap); -} -EOF - # we should really use a build-platform specific compiler - # here, but OTOH, the wrappers (shell script and this C one) - # are only useful if you want to execute the "real" binary. - # Since the "real" binary is built for $host, then this - # wrapper might as well be built for $host, too. - $run $LTCC -s -o $cwrapper $cwrappersource - ;; - esac - $rm $output - trap "$rm $output; exit 1" 1 2 15 - - $echo > $output "\ -#! $SHELL - -# $output - temporary wrapper script for $objdir/$outputname -# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP -# -# The $output program cannot be directly executed until all the libtool -# libraries that it depends on are installed. -# -# This wrapper script should never be moved out of the build directory. -# If it is, it will not operate correctly. - -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -Xsed='${SED} -e 1s/^X//' -sed_quote_subst='$sed_quote_subst' - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -if test \"\${CDPATH+set}\" = set; then CDPATH=:; export CDPATH; fi - -relink_command=\"$relink_command\" - -# This environment variable determines our operation mode. -if test \"\$libtool_install_magic\" = \"$magic\"; then - # install mode needs the following variable: - notinst_deplibs='$notinst_deplibs' -else - # When we are sourced in execute mode, \$file and \$echo are already set. - if test \"\$libtool_execute_magic\" != \"$magic\"; then - echo=\"$qecho\" - file=\"\$0\" - # Make sure echo works. - if test \"X\$1\" = X--no-reexec; then - # Discard the --no-reexec flag, and continue. - shift - elif test \"X\`(\$echo '\t') 2>/dev/null\`\" = 'X\t'; then - # Yippee, \$echo works! - : - else - # Restart under the correct shell, and then maybe \$echo will work. - exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"} - fi - fi\ -" - $echo >> $output "\ - - # Find the directory that this script lives in. - thisdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*$%%'\` - test \"x\$thisdir\" = \"x\$file\" && thisdir=. - - # Follow symbolic links until we get to the real thisdir. - file=\`ls -ld \"\$file\" | ${SED} -n 's/.*-> //p'\` - while test -n \"\$file\"; do - destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\` - - # If there was a directory component, then change thisdir. - if test \"x\$destdir\" != \"x\$file\"; then - case \"\$destdir\" in - [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;; - *) thisdir=\"\$thisdir/\$destdir\" ;; - esac - fi - - file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\` - file=\`ls -ld \"\$thisdir/\$file\" | ${SED} -n 's/.*-> //p'\` - done - - # Try to get the absolute directory name. - absdir=\`cd \"\$thisdir\" && pwd\` - test -n \"\$absdir\" && thisdir=\"\$absdir\" -" - - if test "$fast_install" = yes; then - $echo >> $output "\ - program=lt-'$outputname'$exeext - progdir=\"\$thisdir/$objdir\" - - if test ! -f \"\$progdir/\$program\" || \\ - { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\ - test \"X\$file\" != \"X\$progdir/\$program\"; }; then - - file=\"\$\$-\$program\" - - if test ! -d \"\$progdir\"; then - $mkdir \"\$progdir\" - else - $rm \"\$progdir/\$file\" - fi" - - $echo >> $output "\ - - # relink executable if necessary - if test -n \"\$relink_command\"; then - if relink_command_output=\`eval \$relink_command 2>&1\`; then : - else - $echo \"\$relink_command_output\" >&2 - $rm \"\$progdir/\$file\" - exit 1 - fi - fi - - $mv \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null || - { $rm \"\$progdir/\$program\"; - $mv \"\$progdir/\$file\" \"\$progdir/\$program\"; } - $rm \"\$progdir/\$file\" - fi" - else - $echo >> $output "\ - program='$outputname' - progdir=\"\$thisdir/$objdir\" -" - fi - - $echo >> $output "\ - - if test -f \"\$progdir/\$program\"; then" - - # Export our shlibpath_var if we have one. - if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then - $echo >> $output "\ - # Add our own library path to $shlibpath_var - $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" - - # Some systems cannot cope with colon-terminated $shlibpath_var - # The second colon is a workaround for a bug in BeOS R4 sed - $shlibpath_var=\`\$echo \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\` - - export $shlibpath_var -" - fi - - # fixup the dll searchpath if we need to. - if test -n "$dllsearchpath"; then - $echo >> $output "\ - # Add the dll search path components to the executable PATH - PATH=$dllsearchpath:\$PATH -" - fi - - $echo >> $output "\ - if test \"\$libtool_execute_magic\" != \"$magic\"; then - # Run the actual program with our arguments. -" - case $host in - # Backslashes separate directories on plain windows - *-*-mingw | *-*-os2*) - $echo >> $output "\ - exec \$progdir\\\\\$program \${1+\"\$@\"} -" - ;; - - *) - # Need to set LD_LIBRARY_PATH, to the value already - # computed within libtool. - $echo >> $output "\ - LD_LIBRARY_PATH=\"$rpath\" exec \$progdir/\$program \${1+\"\$@\"} -" - ;; - esac - $echo >> $output "\ - \$echo \"\$0: cannot exec \$program \${1+\"\$@\"}\" - exit 1 - fi - else - # The program doesn't exist. - \$echo \"\$0: error: \$progdir/\$program does not exist\" 1>&2 - \$echo \"This script is just a wrapper for \$program.\" 1>&2 - $echo \"See the $PACKAGE documentation for more information.\" 1>&2 - exit 1 - fi -fi\ -" - chmod +x $output - fi - exit 0 - ;; - esac - - # See if we need to build an old-fashioned archive. - for oldlib in $oldlibs; do - - if test "$build_libtool_libs" = convenience; then - oldobjs="$libobjs_save" - addlibs="$convenience" - build_libtool_libs=no - else - if test "$build_libtool_libs" = module; then - oldobjs="$libobjs_save" - build_libtool_libs=no - else - oldobjs="$old_deplibs $non_pic_objects" - fi - addlibs="$old_convenience" - fi - - if test -n "$addlibs"; then - gentop="$output_objdir/${outputname}x" - $show "${rm}r $gentop" - $run ${rm}r "$gentop" - $show "$mkdir $gentop" - $run $mkdir "$gentop" - status=$? - if test "$status" -ne 0 && test ! -d "$gentop"; then - exit $status - fi - generated="$generated $gentop" - - # Add in members from convenience archives. - for xlib in $addlibs; do - # Extract the objects. - case $xlib in - [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; - *) xabs=`pwd`"/$xlib" ;; - esac - xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` - xdir="$gentop/$xlib" - - $show "${rm}r $xdir" - $run ${rm}r "$xdir" - $show "$mkdir $xdir" - $run $mkdir "$xdir" - status=$? - if test "$status" -ne 0 && test ! -d "$xdir"; then - exit $status - fi - # We will extract separately just the conflicting names and we will no - # longer touch any unique names. It is faster to leave these extract - # automatically by $AR in one run. - $show "(cd $xdir && $AR x $xabs)" - $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? - if ($AR t "$xabs" | sort | sort -uc >/dev/null 2>&1); then - : - else - $echo "$modename: warning: object name conflicts; renaming object files" 1>&2 - $echo "$modename: warning: to ensure that they will not overwrite" 1>&2 - $AR t "$xabs" | sort | uniq -cd | while read -r count name - do - i=1 - while test "$i" -le "$count" - do - # Put our $i before any first dot (extension) - # Never overwrite any file - name_to="$name" - while test "X$name_to" = "X$name" || test -f "$xdir/$name_to" - do - name_to=`$echo "X$name_to" | $Xsed -e "s/\([^.]*\)/\1-$i/"` - done - $show "(cd $xdir && $AR xN $i $xabs '$name' && $mv '$name' '$name_to')" - $run eval "(cd \$xdir && $AR xN $i \$xabs '$name' && $mv '$name' '$name_to')" || exit $? - i=`expr $i + 1` - done - done - fi - - oldobjs="$oldobjs "`find $xdir -name \*.${objext} -print -o -name \*.lo -print | $NL2SP` - done - fi - - compiler_flags="$compiler_flags $add_flags" - - # Do each command in the archive commands. - if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then - eval cmds=\"$old_archive_from_new_cmds\" - else - eval cmds=\"$old_archive_cmds\" - - if len=`expr "X$cmds" : ".*"` && - test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then - : - else - # the command line is too long to link in one step, link in parts - $echo "using piecewise archive linking..." - save_RANLIB=$RANLIB - RANLIB=: - objlist= - concat_cmds= - save_oldobjs=$oldobjs - # GNU ar 2.10+ was changed to match POSIX; thus no paths are - # encoded into archives. This makes 'ar r' malfunction in - # this piecewise linking case whenever conflicting object - # names appear in distinct ar calls; check, warn and compensate. - if (for obj in $save_oldobjs - do - $echo "X$obj" | $Xsed -e 's%^.*/%%' - done | sort | sort -uc >/dev/null 2>&1); then - : - else - $echo "$modename: warning: object name conflicts; overriding AR_FLAGS to 'cq'" 1>&2 - $echo "$modename: warning: to ensure that POSIX-compatible ar will work" 1>&2 - AR_FLAGS=cq - fi - # Is there a better way of finding the last object in the list? - for obj in $save_oldobjs - do - last_oldobj=$obj - done - for obj in $save_oldobjs - do - oldobjs="$objlist $obj" - objlist="$objlist $obj" - eval test_cmds=\"$old_archive_cmds\" - if len=`expr "X$test_cmds" : ".*"` && - test "$len" -le "$max_cmd_len"; then - : - else - # the above command should be used before it gets too long - oldobjs=$objlist - if test "$obj" = "$last_oldobj" ; then - RANLIB=$save_RANLIB - fi - test -z "$concat_cmds" || concat_cmds=$concat_cmds~ - eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\" - objlist= - fi - done - RANLIB=$save_RANLIB - oldobjs=$objlist - if test "X$oldobjs" = "X" ; then - eval cmds=\"\$concat_cmds\" - else - eval cmds=\"\$concat_cmds~$old_archive_cmds\" - fi - fi - fi - save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - done - - if test -n "$generated"; then - $show "${rm}r$generated" - $run ${rm}r$generated - fi - - # Now create the libtool archive. - case $output in - *.la) - old_library= - test "$build_old_libs" = yes && old_library="$libname.$libext" - $show "creating $output" - - # Preserve any variables that may affect compiler behavior - for var in $variables_saved_for_relink; do - if eval test -z \"\${$var+set}\"; then - relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command" - elif eval var_value=\$$var; test -z "$var_value"; then - relink_command="$var=; export $var; $relink_command" - else - var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"` - relink_command="$var=\"$var_value\"; export $var; $relink_command" - fi - done - # Quote the link command for shipping. - relink_command="(cd `pwd`; $SHELL $0 --mode=relink $libtool_args @inst_prefix_dir@)" - relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` - if test "$hardcode_automatic" = yes ; then - relink_command= - fi - # Only create the output if not a dry run. - if test -z "$run"; then - for installed in no yes; do - if test "$installed" = yes; then - if test -z "$install_libdir"; then - break - fi - output="$output_objdir/$outputname"i - # Replace all uninstalled libtool libraries with the installed ones - newdependency_libs= - for deplib in $dependency_libs; do - case $deplib in - *.la) - name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'` - eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` - if test -z "$libdir"; then - $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2 - exit 1 - fi - newdependency_libs="$newdependency_libs $libdir/$name" - ;; - *) newdependency_libs="$newdependency_libs $deplib" ;; - esac - done - dependency_libs="$newdependency_libs" - newdlfiles= - for lib in $dlfiles; do - name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` - eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` - if test -z "$libdir"; then - $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 - exit 1 - fi - newdlfiles="$newdlfiles $libdir/$name" - done - dlfiles="$newdlfiles" - newdlprefiles= - for lib in $dlprefiles; do - name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` - eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` - if test -z "$libdir"; then - $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 - exit 1 - fi - newdlprefiles="$newdlprefiles $libdir/$name" - done - dlprefiles="$newdlprefiles" - fi - $rm $output - # place dlname in correct position for cygwin - tdlname=$dlname - case $host,$output,$installed,$module,$dlname in - *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;; - esac - $echo > $output "\ -# $outputname - a libtool library file -# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP -# -# Please DO NOT delete this file! -# It is necessary for linking the library. - -# The name that we can dlopen(3). -dlname='$tdlname' - -# Names of this library. -library_names='$library_names' - -# The name of the static archive. -old_library='$old_library' - -# Libraries that this one depends upon. -dependency_libs='$dependency_libs' - -# Version information for $libname. -current=$current -age=$age -revision=$revision - -# Is this an already installed library? -installed=$installed - -# Should we warn about portability when linking against -modules? -shouldnotlink=$module - -# Files to dlopen/dlpreopen -dlopen='$dlfiles' -dlpreopen='$dlprefiles' - -# Directory that this library needs to be installed in: -libdir='$install_libdir'" - if test "$installed" = no && test "$need_relink" = yes && test "$fast_install" = no; then - $echo >> $output "\ -relink_command=\"$relink_command\"" - fi - done - fi - - # Do a symbolic link so that the libtool archive can be found in - # LD_LIBRARY_PATH before the program is installed. - $show "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)" - $run eval '(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)' || exit $? - ;; - esac - exit 0 - ;; - - # libtool install mode - install) - modename="$modename: install" - - # There may be an optional sh(1) argument at the beginning of - # install_prog (especially on Windows NT). - if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh || - # Allow the use of GNU shtool's install command. - $echo "X$nonopt" | $Xsed | grep shtool > /dev/null; then - # Aesthetically quote it. - arg=`$echo "X$nonopt" | $Xsed -e "$sed_quote_subst"` - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) - arg="\"$arg\"" - ;; - esac - install_prog="$arg " - arg="$1" - shift - else - install_prog= - arg="$nonopt" - fi - - # The real first argument should be the name of the installation program. - # Aesthetically quote it. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) - arg="\"$arg\"" - ;; - esac - install_prog="$install_prog$arg" - - # We need to accept at least all the BSD install flags. - dest= - files= - opts= - prev= - install_type= - isdir=no - stripme= - for arg - do - if test -n "$dest"; then - files="$files $dest" - dest="$arg" - continue - fi - - case $arg in - -d) isdir=yes ;; - -f) prev="-f" ;; - -g) prev="-g" ;; - -m) prev="-m" ;; - -o) prev="-o" ;; - -s) - stripme=" -s" - continue - ;; - -*) ;; - - *) - # If the previous option needed an argument, then skip it. - if test -n "$prev"; then - prev= - else - dest="$arg" - continue - fi - ;; - esac - - # Aesthetically quote the argument. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) - arg="\"$arg\"" - ;; - esac - install_prog="$install_prog $arg" - done - - if test -z "$install_prog"; then - $echo "$modename: you must specify an install program" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - if test -n "$prev"; then - $echo "$modename: the \`$prev' option requires an argument" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - if test -z "$files"; then - if test -z "$dest"; then - $echo "$modename: no file or destination specified" 1>&2 - else - $echo "$modename: you must specify a destination" 1>&2 - fi - $echo "$help" 1>&2 - exit 1 - fi - - # Strip any trailing slash from the destination. - dest=`$echo "X$dest" | $Xsed -e 's%/$%%'` - - # Check to see that the destination is a directory. - test -d "$dest" && isdir=yes - if test "$isdir" = yes; then - destdir="$dest" - destname= - else - destdir=`$echo "X$dest" | $Xsed -e 's%/[^/]*$%%'` - test "X$destdir" = "X$dest" && destdir=. - destname=`$echo "X$dest" | $Xsed -e 's%^.*/%%'` - - # Not a directory, so check to see that there is only one file specified. - set dummy $files - if test "$#" -gt 2; then - $echo "$modename: \`$dest' is not a directory" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - fi - case $destdir in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - for file in $files; do - case $file in - *.lo) ;; - *) - $echo "$modename: \`$destdir' must be an absolute directory name" 1>&2 - $echo "$help" 1>&2 - exit 1 - ;; - esac - done - ;; - esac - - # This variable tells wrapper scripts just to set variables rather - # than running their programs. - libtool_install_magic="$magic" - - staticlibs= - future_libdirs= - current_libdirs= - for file in $files; do - - # Do each installation. - case $file in - *.$libext) - # Do the static libraries later. - staticlibs="$staticlibs $file" - ;; - - *.la) - # Check to see that this really is a libtool archive. - if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : - else - $echo "$modename: \`$file' is not a valid libtool archive" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - library_names= - old_library= - relink_command= - # If there is no directory component, then add one. - case $file in - */* | *\\*) . $file ;; - *) . ./$file ;; - esac - - # Add the libdir to current_libdirs if it is the destination. - if test "X$destdir" = "X$libdir"; then - case "$current_libdirs " in - *" $libdir "*) ;; - *) current_libdirs="$current_libdirs $libdir" ;; - esac - else - # Note the libdir as a future libdir. - case "$future_libdirs " in - *" $libdir "*) ;; - *) future_libdirs="$future_libdirs $libdir" ;; - esac - fi - - dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`/ - test "X$dir" = "X$file/" && dir= - dir="$dir$objdir" - - if test -n "$relink_command"; then - # Determine the prefix the user has applied to our future dir. - inst_prefix_dir=`$echo "$destdir" | $SED "s%$libdir\$%%"` - - # Don't allow the user to place us outside of our expected - # location b/c this prevents finding dependent libraries that - # are installed to the same prefix. - # At present, this check doesn't affect windows .dll's that - # are installed into $libdir/../bin (currently, that works fine) - # but it's something to keep an eye on. - if test "$inst_prefix_dir" = "$destdir"; then - $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2 - exit 1 - fi - - if test -n "$inst_prefix_dir"; then - # Stick the inst_prefix_dir data into the link command. - relink_command=`$echo "$relink_command" | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"` - else - relink_command=`$echo "$relink_command" | $SED "s%@inst_prefix_dir@%%"` - fi - - $echo "$modename: warning: relinking \`$file'" 1>&2 - $show "$relink_command" - if $run eval "$relink_command"; then : - else - $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2 - exit 1 - fi - fi - - # See the names of the shared library. - set dummy $library_names - if test -n "$2"; then - realname="$2" - shift - shift - - srcname="$realname" - test -n "$relink_command" && srcname="$realname"T - - # Install the shared library and build the symlinks. - $show "$install_prog $dir/$srcname $destdir/$realname" - $run eval "$install_prog $dir/$srcname $destdir/$realname" || exit $? - if test -n "$stripme" && test -n "$striplib"; then - $show "$striplib $destdir/$realname" - $run eval "$striplib $destdir/$realname" || exit $? - fi - - if test "$#" -gt 0; then - # Delete the old symlinks, and create new ones. - for linkname - do - if test "$linkname" != "$realname"; then - $show "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)" - $run eval "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)" - fi - done - fi - - # Do each command in the postinstall commands. - lib="$destdir/$realname" - eval cmds=\"$postinstall_cmds\" - save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - fi - - # Install the pseudo-library for information purposes. - name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - instname="$dir/$name"i - $show "$install_prog $instname $destdir/$name" - $run eval "$install_prog $instname $destdir/$name" || exit $? - - # Maybe install the static library, too. - test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library" - ;; - - *.lo) - # Install (i.e. copy) a libtool object. - - # Figure out destination file name, if it wasn't already specified. - if test -n "$destname"; then - destfile="$destdir/$destname" - else - destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - destfile="$destdir/$destfile" - fi - - # Deduce the name of the destination old-style object file. - case $destfile in - *.lo) - staticdest=`$echo "X$destfile" | $Xsed -e "$lo2o"` - ;; - *.$objext) - staticdest="$destfile" - destfile= - ;; - *) - $echo "$modename: cannot copy a libtool object to \`$destfile'" 1>&2 - $echo "$help" 1>&2 - exit 1 - ;; - esac - - # Install the libtool object if requested. - if test -n "$destfile"; then - $show "$install_prog $file $destfile" - $run eval "$install_prog $file $destfile" || exit $? - fi - - # Install the old object if enabled. - if test "$build_old_libs" = yes; then - # Deduce the name of the old-style object file. - staticobj=`$echo "X$file" | $Xsed -e "$lo2o"` - - $show "$install_prog $staticobj $staticdest" - $run eval "$install_prog \$staticobj \$staticdest" || exit $? - fi - exit 0 - ;; - - *) - # Figure out destination file name, if it wasn't already specified. - if test -n "$destname"; then - destfile="$destdir/$destname" - else - destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - destfile="$destdir/$destfile" - fi - - # If the file is missing, and there is a .exe on the end, strip it - # because it is most likely a libtool script we actually want to - # install - stripped_ext="" - case $file in - *.exe) - if test ! -f "$file"; then - file=`$echo $file|${SED} 's,.exe$,,'` - stripped_ext=".exe" - fi - ;; - esac - - # Do a test to see if this is really a libtool program. - case $host in - *cygwin*|*mingw*) - wrapper=`$echo $file | ${SED} -e 's,.exe$,,'` - ;; - *) - wrapper=$file - ;; - esac - if (${SED} -e '4q' $wrapper | grep "^# Generated by .*$PACKAGE")>/dev/null 2>&1; then - notinst_deplibs= - relink_command= - - # To insure that "foo" is sourced, and not "foo.exe", - # finese the cygwin/MSYS system by explicitly sourcing "foo." - # which disallows the automatic-append-.exe behavior. - case $build in - *cygwin* | *mingw*) wrapperdot=${wrapper}. ;; - *) wrapperdot=${wrapper} ;; - esac - # If there is no directory component, then add one. - case $file in - */* | *\\*) . ${wrapperdot} ;; - *) . ./${wrapperdot} ;; - esac - - # Check the variables that should have been set. - if test -z "$notinst_deplibs"; then - $echo "$modename: invalid libtool wrapper script \`$wrapper'" 1>&2 - exit 1 - fi - - finalize=yes - for lib in $notinst_deplibs; do - # Check to see that each library is installed. - libdir= - if test -f "$lib"; then - # If there is no directory component, then add one. - case $lib in - */* | *\\*) . $lib ;; - *) . ./$lib ;; - esac - fi - libfile="$libdir/"`$echo "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test - if test -n "$libdir" && test ! -f "$libfile"; then - $echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2 - finalize=no - fi - done - - relink_command= - # To insure that "foo" is sourced, and not "foo.exe", - # finese the cygwin/MSYS system by explicitly sourcing "foo." - # which disallows the automatic-append-.exe behavior. - case $build in - *cygwin* | *mingw*) wrapperdot=${wrapper}. ;; - *) wrapperdot=${wrapper} ;; - esac - # If there is no directory component, then add one. - case $file in - */* | *\\*) . ${wrapperdot} ;; - *) . ./${wrapperdot} ;; - esac - - outputname= - if test "$fast_install" = no && test -n "$relink_command"; then - if test "$finalize" = yes && test -z "$run"; then - tmpdir="/tmp" - test -n "$TMPDIR" && tmpdir="$TMPDIR" - tmpdir="$tmpdir/libtool-$$" - if $mkdir "$tmpdir" && chmod 700 "$tmpdir"; then : - else - $echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2 - continue - fi - file=`$echo "X$file$stripped_ext" | $Xsed -e 's%^.*/%%'` - outputname="$tmpdir/$file" - # Replace the output file specification. - relink_command=`$echo "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'` - - $show "$relink_command" - if $run eval "$relink_command"; then : - else - $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2 - ${rm}r "$tmpdir" - continue - fi - file="$outputname" - else - $echo "$modename: warning: cannot relink \`$file'" 1>&2 - fi - else - # Install the binary that we compiled earlier. - file=`$echo "X$file$stripped_ext" | $Xsed -e "s%\([^/]*\)$%$objdir/\1%"` - fi - fi - - # remove .exe since cygwin /usr/bin/install will append another - # one anyways - case $install_prog,$host in - */usr/bin/install*,*cygwin*) - case $file:$destfile in - *.exe:*.exe) - # this is ok - ;; - *.exe:*) - destfile=$destfile.exe - ;; - *:*.exe) - destfile=`$echo $destfile | ${SED} -e 's,.exe$,,'` - ;; - esac - ;; - esac - $show "$install_prog$stripme $file $destfile" - $run eval "$install_prog\$stripme \$file \$destfile" || exit $? - test -n "$outputname" && ${rm}r "$tmpdir" - ;; - esac - done - - for file in $staticlibs; do - name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - - # Set up the ranlib parameters. - oldlib="$destdir/$name" - - $show "$install_prog $file $oldlib" - $run eval "$install_prog \$file \$oldlib" || exit $? - - if test -n "$stripme" && test -n "$striplib"; then - $show "$old_striplib $oldlib" - $run eval "$old_striplib $oldlib" || exit $? - fi - - # Do each command in the postinstall commands. - eval cmds=\"$old_postinstall_cmds\" - save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - done - - if test -n "$future_libdirs"; then - $echo "$modename: warning: remember to run \`$progname --finish$future_libdirs'" 1>&2 - fi - - if test -n "$current_libdirs"; then - # Maybe just do a dry run. - test -n "$run" && current_libdirs=" -n$current_libdirs" - exec_cmd='$SHELL $0 --finish$current_libdirs' - else - exit 0 - fi - ;; - - # libtool finish mode - finish) - modename="$modename: finish" - libdirs="$nonopt" - admincmds= - - if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then - for dir - do - libdirs="$libdirs $dir" - done - - for libdir in $libdirs; do - if test -n "$finish_cmds"; then - # Do each command in the finish commands. - eval cmds=\"$finish_cmds\" - save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || admincmds="$admincmds - $cmd" - done - IFS="$save_ifs" - fi - if test -n "$finish_eval"; then - # Do the single finish_eval. - eval cmds=\"$finish_eval\" - $run eval "$cmds" || admincmds="$admincmds - $cmds" - fi - done - fi - - # Exit here if they wanted silent mode. - exit 0 - - $echo "----------------------------------------------------------------------" - $echo "Libraries have been installed in:" - for libdir in $libdirs; do - $echo " $libdir" - done - $echo - $echo "If you ever happen to want to link against installed libraries" - $echo "in a given directory, LIBDIR, you must either use libtool, and" - $echo "specify the full pathname of the library, or use the \`-LLIBDIR'" - $echo "flag during linking and do at least one of the following:" - if test -n "$shlibpath_var"; then - $echo " - add LIBDIR to the \`$shlibpath_var' environment variable" - $echo " during execution" - fi - if test -n "$runpath_var"; then - $echo " - add LIBDIR to the \`$runpath_var' environment variable" - $echo " during linking" - fi - if test -n "$hardcode_libdir_flag_spec"; then - libdir=LIBDIR - eval flag=\"$hardcode_libdir_flag_spec\" - - $echo " - use the \`$flag' linker flag" - fi - if test -n "$admincmds"; then - $echo " - have your system administrator run these commands:$admincmds" - fi - if test -f /etc/ld.so.conf; then - $echo " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'" - fi - $echo - $echo "See any operating system documentation about shared libraries for" - $echo "more information, such as the ld(1) and ld.so(8) manual pages." - $echo "----------------------------------------------------------------------" - exit 0 - ;; - - # libtool execute mode - execute) - modename="$modename: execute" - - # The first argument is the command name. - cmd="$nonopt" - if test -z "$cmd"; then - $echo "$modename: you must specify a COMMAND" 1>&2 - $echo "$help" - exit 1 - fi - - # Handle -dlopen flags immediately. - for file in $execute_dlfiles; do - if test ! -f "$file"; then - $echo "$modename: \`$file' is not a file" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - dir= - case $file in - *.la) - # Check to see that this really is a libtool archive. - if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : - else - $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - # Read the libtool library. - dlname= - library_names= - - # If there is no directory component, then add one. - case $file in - */* | *\\*) . $file ;; - *) . ./$file ;; - esac - - # Skip this library if it cannot be dlopened. - if test -z "$dlname"; then - # Warn if it was a shared library. - test -n "$library_names" && $echo "$modename: warning: \`$file' was not linked with \`-export-dynamic'" - continue - fi - - dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` - test "X$dir" = "X$file" && dir=. - - if test -f "$dir/$objdir/$dlname"; then - dir="$dir/$objdir" - else - $echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2 - exit 1 - fi - ;; - - *.lo) - # Just add the directory containing the .lo file. - dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` - test "X$dir" = "X$file" && dir=. - ;; - - *) - $echo "$modename: warning \`-dlopen' is ignored for non-libtool libraries and objects" 1>&2 - continue - ;; - esac - - # Get the absolute pathname. - absdir=`cd "$dir" && pwd` - test -n "$absdir" && dir="$absdir" - - # Now add the directory to shlibpath_var. - if eval "test -z \"\$$shlibpath_var\""; then - eval "$shlibpath_var=\"\$dir\"" - else - eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\"" - fi - done - - # This variable tells wrapper scripts just to set shlibpath_var - # rather than running their programs. - libtool_execute_magic="$magic" - - # Check if any of the arguments is a wrapper script. - args= - for file - do - case $file in - -*) ;; - *) - # Do a test to see if this is really a libtool program. - if (${SED} -e '4q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - # If there is no directory component, then add one. - case $file in - */* | *\\*) . $file ;; - *) . ./$file ;; - esac - - # Transform arg to wrapped name. - file="$progdir/$program" - fi - ;; - esac - # Quote arguments (to preserve shell metacharacters). - file=`$echo "X$file" | $Xsed -e "$sed_quote_subst"` - args="$args \"$file\"" - done - - if test -z "$run"; then - if test -n "$shlibpath_var"; then - # Export the shlibpath_var. - eval "export $shlibpath_var" - fi - - # Restore saved environment variables - if test "${save_LC_ALL+set}" = set; then - LC_ALL="$save_LC_ALL"; export LC_ALL - fi - if test "${save_LANG+set}" = set; then - LANG="$save_LANG"; export LANG - fi - - # Now prepare to actually exec the command. - exec_cmd="\$cmd$args" - else - # Display what would be done. - if test -n "$shlibpath_var"; then - eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\"" - $echo "export $shlibpath_var" - fi - $echo "$cmd$args" - exit 0 - fi - ;; - - # libtool clean and uninstall mode - clean | uninstall) - modename="$modename: $mode" - rm="$nonopt" - files= - rmforce= - exit_status=0 - - # This variable tells wrapper scripts just to set variables rather - # than running their programs. - libtool_install_magic="$magic" - - for arg - do - case $arg in - -f) rm="$rm $arg"; rmforce=yes ;; - -*) rm="$rm $arg" ;; - *) files="$files $arg" ;; - esac - done - - if test -z "$rm"; then - $echo "$modename: you must specify an RM program" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - rmdirs= - - origobjdir="$objdir" - for file in $files; do - dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` - if test "X$dir" = "X$file"; then - dir=. - objdir="$origobjdir" - else - objdir="$dir/$origobjdir" - fi - name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - test "$mode" = uninstall && objdir="$dir" - - # Remember objdir for removal later, being careful to avoid duplicates - if test "$mode" = clean; then - case " $rmdirs " in - *" $objdir "*) ;; - *) rmdirs="$rmdirs $objdir" ;; - esac - fi - - # Don't error if the file doesn't exist and rm -f was used. - if (test -L "$file") >/dev/null 2>&1 \ - || (test -h "$file") >/dev/null 2>&1 \ - || test -f "$file"; then - : - elif test -d "$file"; then - exit_status=1 - continue - elif test "$rmforce" = yes; then - continue - fi - - rmfiles="$file" - - case $name in - *.la) - # Possibly a libtool archive, so verify it. - if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - . $dir/$name - - # Delete the libtool libraries and symlinks. - for n in $library_names; do - rmfiles="$rmfiles $objdir/$n" - done - test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library" - test "$mode" = clean && rmfiles="$rmfiles $objdir/$name $objdir/${name}i" - - if test "$mode" = uninstall; then - if test -n "$library_names"; then - # Do each command in the postuninstall commands. - eval cmds=\"$postuninstall_cmds\" - save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" - if test "$?" -ne 0 && test "$rmforce" != yes; then - exit_status=1 - fi - done - IFS="$save_ifs" - fi - - if test -n "$old_library"; then - # Do each command in the old_postuninstall commands. - eval cmds=\"$old_postuninstall_cmds\" - save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" - if test "$?" -ne 0 && test "$rmforce" != yes; then - exit_status=1 - fi - done - IFS="$save_ifs" - fi - # FIXME: should reinstall the best remaining shared library. - fi - fi - ;; - - *.lo) - # Possibly a libtool object, so verify it. - if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - - # Read the .lo file - . $dir/$name - - # Add PIC object to the list of files to remove. - if test -n "$pic_object" \ - && test "$pic_object" != none; then - rmfiles="$rmfiles $dir/$pic_object" - fi - - # Add non-PIC object to the list of files to remove. - if test -n "$non_pic_object" \ - && test "$non_pic_object" != none; then - rmfiles="$rmfiles $dir/$non_pic_object" - fi - fi - ;; - - *) - if test "$mode" = clean ; then - noexename=$name - case $file in - *.exe) - file=`$echo $file|${SED} 's,.exe$,,'` - noexename=`$echo $name|${SED} 's,.exe$,,'` - # $file with .exe has already been added to rmfiles, - # add $file without .exe - rmfiles="$rmfiles $file" - ;; - esac - # Do a test to see if this is a libtool program. - if (${SED} -e '4q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - relink_command= - . $dir/$noexename - - # note $name still contains .exe if it was in $file originally - # as does the version of $file that was added into $rmfiles - rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}" - if test "$fast_install" = yes && test -n "$relink_command"; then - rmfiles="$rmfiles $objdir/lt-$name" - fi - if test "X$noexename" != "X$name" ; then - rmfiles="$rmfiles $objdir/lt-${noexename}.c" - fi - fi - fi - ;; - esac - $show "$rm $rmfiles" - $run $rm $rmfiles || exit_status=1 - done - objdir="$origobjdir" - - # Try to remove the ${objdir}s in the directories where we deleted files - for dir in $rmdirs; do - if test -d "$dir"; then - $show "rmdir $dir" - $run rmdir $dir >/dev/null 2>&1 - fi - done - - exit $exit_status - ;; - - "") - $echo "$modename: you must specify a MODE" 1>&2 - $echo "$generic_help" 1>&2 - exit 1 - ;; - esac - - if test -z "$exec_cmd"; then - $echo "$modename: invalid operation mode \`$mode'" 1>&2 - $echo "$generic_help" 1>&2 - exit 1 - fi -fi # test -z "$show_help" - -if test -n "$exec_cmd"; then - eval exec $exec_cmd - exit 1 -fi - -# We need to display help for each of the modes. -case $mode in -"") $echo \ -"Usage: $modename [OPTION]... [MODE-ARG]... - -Provide generalized library-building support services. - - --config show all configuration variables - --debug enable verbose shell tracing --n, --dry-run display commands without modifying any files - --features display basic configuration information and exit - --finish same as \`--mode=finish' - --help display this help message and exit - --mode=MODE use operation mode MODE [default=inferred from MODE-ARGS] - --quiet same as \`--silent' - --silent don't print informational messages - --tag=TAG use configuration variables from tag TAG - --version print version information - -MODE must be one of the following: - - clean remove files from the build directory - compile compile a source file into a libtool object - execute automatically set library path, then run a program - finish complete the installation of libtool libraries - install install libraries or executables - link create a library or an executable - uninstall remove libraries from an installed directory - -MODE-ARGS vary depending on the MODE. Try \`$modename --help --mode=MODE' for -a more detailed description of MODE. - -Report bugs to <bug-libtool@gnu.org>." - exit 0 - ;; - -clean) - $echo \ -"Usage: $modename [OPTION]... --mode=clean RM [RM-OPTION]... FILE... - -Remove files from the build directory. - -RM is the name of the program to use to delete files associated with each FILE -(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed -to RM. - -If FILE is a libtool library, object or program, all the files associated -with it are deleted. Otherwise, only FILE itself is deleted using RM." - ;; - -compile) - $echo \ -"Usage: $modename [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE - -Compile a source file into a libtool library object. - -This mode accepts the following additional options: - - -o OUTPUT-FILE set the output file name to OUTPUT-FILE - -prefer-pic try to building PIC objects only - -prefer-non-pic try to building non-PIC objects only - -static always build a \`.o' file suitable for static linking - -COMPILE-COMMAND is a command to be used in creating a \`standard' object file -from the given SOURCEFILE. - -The output file name is determined by removing the directory component from -SOURCEFILE, then substituting the C source code suffix \`.c' with the -library object suffix, \`.lo'." - ;; - -execute) - $echo \ -"Usage: $modename [OPTION]... --mode=execute COMMAND [ARGS]... - -Automatically set library path, then run a program. - -This mode accepts the following additional options: - - -dlopen FILE add the directory containing FILE to the library path - -This mode sets the library path environment variable according to \`-dlopen' -flags. - -If any of the ARGS are libtool executable wrappers, then they are translated -into their corresponding uninstalled binary, and any of their required library -directories are added to the library path. - -Then, COMMAND is executed, with ARGS as arguments." - ;; - -finish) - $echo \ -"Usage: $modename [OPTION]... --mode=finish [LIBDIR]... - -Complete the installation of libtool libraries. - -Each LIBDIR is a directory that contains libtool libraries. - -The commands that this mode executes may require superuser privileges. Use -the \`--dry-run' option if you just want to see what would be executed." - ;; - -install) - $echo \ -"Usage: $modename [OPTION]... --mode=install INSTALL-COMMAND... - -Install executables or libraries. - -INSTALL-COMMAND is the installation command. The first component should be -either the \`install' or \`cp' program. - -The rest of the components are interpreted as arguments to that command (only -BSD-compatible install options are recognized)." - ;; - -link) - $echo \ -"Usage: $modename [OPTION]... --mode=link LINK-COMMAND... - -Link object files or libraries together to form another library, or to -create an executable program. - -LINK-COMMAND is a command using the C compiler that you would use to create -a program from several object files. - -The following components of LINK-COMMAND are treated specially: - - -all-static do not do any dynamic linking at all - -avoid-version do not add a version suffix if possible - -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime - -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols - -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) - -export-symbols SYMFILE - try to export only the symbols listed in SYMFILE - -export-symbols-regex REGEX - try to export only the symbols matching REGEX - -LLIBDIR search LIBDIR for required installed libraries - -lNAME OUTPUT-FILE requires the installed library libNAME - -module build a library that can dlopened - -no-fast-install disable the fast-install mode - -no-install link a not-installable executable - -no-undefined declare that a library does not refer to external symbols - -o OUTPUT-FILE create OUTPUT-FILE from the specified objects - -objectlist FILE Use a list of object files found in FILE to specify objects - -release RELEASE specify package release information - -rpath LIBDIR the created library will eventually be installed in LIBDIR - -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries - -static do not do any dynamic linking of libtool libraries - -version-info CURRENT[:REVISION[:AGE]] - specify library version info [each variable defaults to 0] - -All other options (arguments beginning with \`-') are ignored. - -Every other argument is treated as a filename. Files ending in \`.la' are -treated as uninstalled libtool libraries, other files are standard or library -object files. - -If the OUTPUT-FILE ends in \`.la', then a libtool library is created, -only library objects (\`.lo' files) may be specified, and \`-rpath' is -required, except when creating a convenience library. - -If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created -using \`ar' and \`ranlib', or on Windows using \`lib'. - -If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file -is created, otherwise an executable program is created." - ;; - -uninstall) - $echo \ -"Usage: $modename [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... - -Remove libraries from an installation directory. - -RM is the name of the program to use to delete files associated with each FILE -(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed -to RM. - -If FILE is a libtool library, all the files associated with it are deleted. -Otherwise, only FILE itself is deleted using RM." - ;; - -*) - $echo "$modename: invalid operation mode \`$mode'" 1>&2 - $echo "$help" 1>&2 - exit 1 - ;; -esac - -$echo -$echo "Try \`$modename --help' for more information about other modes." - -exit 0 - -# The TAGs below are defined such that we never get into a situation -# in which we disable both kinds of libraries. Given conflicting -# choices, we go for a static library, that is the most portable, -# since we can't tell whether shared libraries were disabled because -# the user asked for that or because the platform doesn't support -# them. This is particularly important on AIX, because we don't -# support having both static and shared libraries enabled at the same -# time on that platform, so we default to a shared-only configuration. -# If a disable-shared tag is given, we'll fallback to a static-only -# configuration. But we'll never go from static-only to shared-only. - -# ### BEGIN LIBTOOL TAG CONFIG: disable-shared -build_libtool_libs=no -build_old_libs=yes -# ### END LIBTOOL TAG CONFIG: disable-shared - -# ### BEGIN LIBTOOL TAG CONFIG: disable-static -build_old_libs=`case $build_libtool_libs in yes) $echo no;; *) $echo yes;; esac` -# ### END LIBTOOL TAG CONFIG: disable-static - -# Local Variables: -# mode:shell-script -# sh-indentation:2 -# End: diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/missing b/portland/libxdg-vfs/xdg-vfs-kde/admin/missing deleted file mode 100755 index 894e786..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/missing +++ /dev/null @@ -1,360 +0,0 @@ -#! /bin/sh -# Common stub for a few missing GNU programs while installing. - -scriptversion=2005-06-08.21 - -# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005 -# Free Software Foundation, Inc. -# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -# 02110-1301, USA. - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -if test $# -eq 0; then - echo 1>&2 "Try \`$0 --help' for more information" - exit 1 -fi - -run=: - -# In the cases where this matters, `missing' is being run in the -# srcdir already. -if test -f configure.ac; then - configure_ac=configure.ac -else - configure_ac=configure.in -fi - -msg="missing on your system" - -case "$1" in ---run) - # Try to run requested program, and just exit if it succeeds. - run= - shift - "$@" && exit 0 - # Exit code 63 means version mismatch. This often happens - # when the user try to use an ancient version of a tool on - # a file that requires a minimum version. In this case we - # we should proceed has if the program had been absent, or - # if --run hadn't been passed. - if test $? = 63; then - run=: - msg="probably too old" - fi - ;; - - -h|--h|--he|--hel|--help) - echo "\ -$0 [OPTION]... PROGRAM [ARGUMENT]... - -Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an -error status if there is no known handling for PROGRAM. - -Options: - -h, --help display this help and exit - -v, --version output version information and exit - --run try to run the given command, and emulate it if it fails - -Supported PROGRAM values: - aclocal touch file \`aclocal.m4' - autoconf touch file \`configure' - autoheader touch file \`config.h.in' - automake touch all \`Makefile.in' files - bison create \`y.tab.[ch]', if possible, from existing .[ch] - flex create \`lex.yy.c', if possible, from existing .c - help2man touch the output file - lex create \`lex.yy.c', if possible, from existing .c - makeinfo touch the output file - tar try tar, gnutar, gtar, then tar without non-portable flags - yacc create \`y.tab.[ch]', if possible, from existing .[ch] - -Send bug reports to <bug-automake@gnu.org>." - exit $? - ;; - - -v|--v|--ve|--ver|--vers|--versi|--versio|--version) - echo "missing $scriptversion (GNU Automake)" - exit $? - ;; - - -*) - echo 1>&2 "$0: Unknown \`$1' option" - echo 1>&2 "Try \`$0 --help' for more information" - exit 1 - ;; - -esac - -# Now exit if we have it, but it failed. Also exit now if we -# don't have it and --version was passed (most likely to detect -# the program). -case "$1" in - lex|yacc) - # Not GNU programs, they don't have --version. - ;; - - tar) - if test -n "$run"; then - echo 1>&2 "ERROR: \`tar' requires --run" - exit 1 - elif test "x$2" = "x--version" || test "x$2" = "x--help"; then - exit 1 - fi - ;; - - *) - if test -z "$run" && ($1 --version) > /dev/null 2>&1; then - # We have it, but it failed. - exit 1 - elif test "x$2" = "x--version" || test "x$2" = "x--help"; then - # Could not run --version or --help. This is probably someone - # running `$TOOL --version' or `$TOOL --help' to check whether - # $TOOL exists and not knowing $TOOL uses missing. - exit 1 - fi - ;; -esac - -# If it does not exist, or fails to run (possibly an outdated version), -# try to emulate it. -case "$1" in - aclocal*) - echo 1>&2 "\ -WARNING: \`$1' is $msg. You should only need it if - you modified \`acinclude.m4' or \`${configure_ac}'. You might want - to install the \`Automake' and \`Perl' packages. Grab them from - any GNU archive site." - touch aclocal.m4 - ;; - - autoconf) - echo 1>&2 "\ -WARNING: \`$1' is $msg. You should only need it if - you modified \`${configure_ac}'. You might want to install the - \`Autoconf' and \`GNU m4' packages. Grab them from any GNU - archive site." - touch configure - ;; - - autoheader) - echo 1>&2 "\ -WARNING: \`$1' is $msg. You should only need it if - you modified \`acconfig.h' or \`${configure_ac}'. You might want - to install the \`Autoconf' and \`GNU m4' packages. Grab them - from any GNU archive site." - files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}` - test -z "$files" && files="config.h" - touch_files= - for f in $files; do - case "$f" in - *:*) touch_files="$touch_files "`echo "$f" | - sed -e 's/^[^:]*://' -e 's/:.*//'`;; - *) touch_files="$touch_files $f.in";; - esac - done - touch $touch_files - ;; - - automake*) - echo 1>&2 "\ -WARNING: \`$1' is $msg. You should only need it if - you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'. - You might want to install the \`Automake' and \`Perl' packages. - Grab them from any GNU archive site." - find . -type f -name Makefile.am -print | - sed 's/\.am$/.in/' | - while read f; do touch "$f"; done - ;; - - autom4te) - echo 1>&2 "\ -WARNING: \`$1' is needed, but is $msg. - You might have modified some files without having the - proper tools for further handling them. - You can get \`$1' as part of \`Autoconf' from any GNU - archive site." - - file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'` - test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'` - if test -f "$file"; then - touch $file - else - test -z "$file" || exec >$file - echo "#! /bin/sh" - echo "# Created by GNU Automake missing as a replacement of" - echo "# $ $@" - echo "exit 0" - chmod +x $file - exit 1 - fi - ;; - - bison|yacc) - echo 1>&2 "\ -WARNING: \`$1' $msg. You should only need it if - you modified a \`.y' file. You may need the \`Bison' package - in order for those modifications to take effect. You can get - \`Bison' from any GNU archive site." - rm -f y.tab.c y.tab.h - if [ $# -ne 1 ]; then - eval LASTARG="\${$#}" - case "$LASTARG" in - *.y) - SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'` - if [ -f "$SRCFILE" ]; then - cp "$SRCFILE" y.tab.c - fi - SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'` - if [ -f "$SRCFILE" ]; then - cp "$SRCFILE" y.tab.h - fi - ;; - esac - fi - if [ ! -f y.tab.h ]; then - echo >y.tab.h - fi - if [ ! -f y.tab.c ]; then - echo 'main() { return 0; }' >y.tab.c - fi - ;; - - lex|flex) - echo 1>&2 "\ -WARNING: \`$1' is $msg. You should only need it if - you modified a \`.l' file. You may need the \`Flex' package - in order for those modifications to take effect. You can get - \`Flex' from any GNU archive site." - rm -f lex.yy.c - if [ $# -ne 1 ]; then - eval LASTARG="\${$#}" - case "$LASTARG" in - *.l) - SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'` - if [ -f "$SRCFILE" ]; then - cp "$SRCFILE" lex.yy.c - fi - ;; - esac - fi - if [ ! -f lex.yy.c ]; then - echo 'main() { return 0; }' >lex.yy.c - fi - ;; - - help2man) - echo 1>&2 "\ -WARNING: \`$1' is $msg. You should only need it if - you modified a dependency of a manual page. You may need the - \`Help2man' package in order for those modifications to take - effect. You can get \`Help2man' from any GNU archive site." - - file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'` - if test -z "$file"; then - file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'` - fi - if [ -f "$file" ]; then - touch $file - else - test -z "$file" || exec >$file - echo ".ab help2man is required to generate this page" - exit 1 - fi - ;; - - makeinfo) - echo 1>&2 "\ -WARNING: \`$1' is $msg. You should only need it if - you modified a \`.texi' or \`.texinfo' file, or any other file - indirectly affecting the aspect of the manual. The spurious - call might also be the consequence of using a buggy \`make' (AIX, - DU, IRIX). You might want to install the \`Texinfo' package or - the \`GNU make' package. Grab either from any GNU archive site." - # The file to touch is that specified with -o ... - file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'` - if test -z "$file"; then - # ... or it is the one specified with @setfilename ... - infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'` - file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $infile` - # ... or it is derived from the source name (dir/f.texi becomes f.info) - test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info - fi - # If the file does not exist, the user really needs makeinfo; - # let's fail without touching anything. - test -f $file || exit 1 - touch $file - ;; - - tar) - shift - - # We have already tried tar in the generic part. - # Look for gnutar/gtar before invocation to avoid ugly error - # messages. - if (gnutar --version > /dev/null 2>&1); then - gnutar "$@" && exit 0 - fi - if (gtar --version > /dev/null 2>&1); then - gtar "$@" && exit 0 - fi - firstarg="$1" - if shift; then - case "$firstarg" in - *o*) - firstarg=`echo "$firstarg" | sed s/o//` - tar "$firstarg" "$@" && exit 0 - ;; - esac - case "$firstarg" in - *h*) - firstarg=`echo "$firstarg" | sed s/h//` - tar "$firstarg" "$@" && exit 0 - ;; - esac - fi - - echo 1>&2 "\ -WARNING: I can't seem to be able to run \`tar' with the given arguments. - You may want to install GNU tar or Free paxutils, or check the - command line arguments." - exit 1 - ;; - - *) - echo 1>&2 "\ -WARNING: \`$1' is needed, and is $msg. - You might have modified some files without having the - proper tools for further handling them. Check the \`README' file, - it often tells you about the needed prerequisites for installing - this package. You may also peek at any GNU archive site, in case - some other package would contain this missing \`$1' program." - exit 1 - ;; -esac - -exit 0 - -# Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" -# End: diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/mkinstalldirs b/portland/libxdg-vfs/xdg-vfs-kde/admin/mkinstalldirs deleted file mode 100755 index 259dbfc..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/mkinstalldirs +++ /dev/null @@ -1,158 +0,0 @@ -#! /bin/sh -# mkinstalldirs --- make directory hierarchy - -scriptversion=2005-06-29.22 - -# Original author: Noah Friedman <friedman@prep.ai.mit.edu> -# Created: 1993-05-16 -# Public domain. -# -# This file is maintained in Automake, please report -# bugs to <bug-automake@gnu.org> or send patches to -# <automake-patches@gnu.org>. - -errstatus=0 -dirmode= - -usage="\ -Usage: mkinstalldirs [-h] [--help] [--version] [-m MODE] DIR ... - -Create each directory DIR (with mode MODE, if specified), including all -leading file name components. - -Report bugs to <bug-automake@gnu.org>." - -# process command line arguments -while test $# -gt 0 ; do - case $1 in - -h | --help | --h*) # -h for help - echo "$usage" - exit $? - ;; - -m) # -m PERM arg - shift - test $# -eq 0 && { echo "$usage" 1>&2; exit 1; } - dirmode=$1 - shift - ;; - --version) - echo "$0 $scriptversion" - exit $? - ;; - --) # stop option processing - shift - break - ;; - -*) # unknown option - echo "$usage" 1>&2 - exit 1 - ;; - *) # first non-opt arg - break - ;; - esac -done - -for file -do - if test -d "$file"; then - shift - else - break - fi -done - -case $# in - 0) exit 0 ;; -esac - -# Solaris 8's mkdir -p isn't thread-safe. If you mkdir -p a/b and -# mkdir -p a/c at the same time, both will detect that a is missing, -# one will create a, then the other will try to create a and die with -# a "File exists" error. This is a problem when calling mkinstalldirs -# from a parallel make. We use --version in the probe to restrict -# ourselves to GNU mkdir, which is thread-safe. -case $dirmode in - '') - if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then - echo "mkdir -p -- $*" - exec mkdir -p -- "$@" - else - # On NextStep and OpenStep, the `mkdir' command does not - # recognize any option. It will interpret all options as - # directories to create, and then abort because `.' already - # exists. - test -d ./-p && rmdir ./-p - test -d ./--version && rmdir ./--version - fi - ;; - *) - if mkdir -m "$dirmode" -p --version . >/dev/null 2>&1 && - test ! -d ./--version; then - echo "mkdir -m $dirmode -p -- $*" - exec mkdir -m "$dirmode" -p -- "$@" - else - # Clean up after NextStep and OpenStep mkdir. - for d in ./-m ./-p ./--version "./$dirmode"; - do - test -d $d && rmdir $d - done - fi - ;; -esac - -for file -do - case $file in - /*) pathcomp=/ ;; - *) pathcomp= ;; - esac - oIFS=$IFS - IFS=/ - set fnord $file - shift - IFS=$oIFS - - for d - do - test "x$d" = x && continue - - pathcomp=$pathcomp$d - case $pathcomp in - -*) pathcomp=./$pathcomp ;; - esac - - if test ! -d "$pathcomp"; then - echo "mkdir $pathcomp" - - mkdir "$pathcomp" || lasterr=$? - - if test ! -d "$pathcomp"; then - errstatus=$lasterr - else - if test ! -z "$dirmode"; then - echo "chmod $dirmode $pathcomp" - lasterr= - chmod "$dirmode" "$pathcomp" || lasterr=$? - - if test ! -z "$lasterr"; then - errstatus=$lasterr - fi - fi - fi - fi - - pathcomp=$pathcomp/ - done -done - -exit $errstatus - -# Local Variables: -# mode: shell-script -# sh-indentation: 2 -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" -# End: diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/nmcheck b/portland/libxdg-vfs/xdg-vfs-kde/admin/nmcheck deleted file mode 100755 index 1544713..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/nmcheck +++ /dev/null @@ -1,371 +0,0 @@ -#!/usr/bin/perl -w - -# Check namespace cleanness of a library. -# Allowed symbols are passed as arguments. -# They may have trailing * = wildcard. -# Wildcards may be also specified as *::* (e.g. K*::* for all KDE classes) -# Symbols are listed as full function unmangled names without arguments, -# e.g. 'foo bar* nspace::*' allows foo(), foo(int), bar(), barbar() -# and all symbols in namespace/class nspace. -# If an argument has comma in it, it's a filename of a file containing -# allowed symbols, one per line. - - -$thisProg = "$0"; # This programs name - -$library = ""; -$allowed_symbols = ""; -$debug = 0; -$allowed_weak = ""; -$weak_specified = 0; - -while( defined( $ARGV[ 0 ] )) -{ - $_ = shift; - if( /^--verbose$|^-v$/ ) - { - $debug = 1; - } - elsif( /^--help$|^-h$/ ) - { - print STDOUT "Usage $thisProg [OPTION] ... library [allowed symbols] ...\n", - "\n", - "Check if the given library has only allowed public symbols.\n", - "\n", - " --allowweak=[symbol] allow only these weak symbols\n", - " -v, --verbose verbosely list files processed\n", - " -h, --help print this help, then exit\n"; - exit 0; - } - elsif( /^--allowweak=(.*)$/ ) - { - $allowed_weak .= " " . $1; - $weak_specified = 1; - } - elsif( /^--allowweak$/ ) # simply list all weak - { - $allowed_weak .= " "; - $weak_specified = 1; - } - elsif( /^--*/ ) - { - die "Invalid argument!\n"; - } - else - { - if( ! $library ) - { - $library = $_; - } - else - { - $allowed_symbols .= " " . $_; - } - } -} - -if( ! $weak_specified ) -{ - $allowed_weak = "*"; - # allow all weak symbols by default - # instances of templates and similar stuff - unfortunately includes also things from other libraries, - # so it cannot be on by default -} - -print STDERR "library:" . $library . "\n" if $debug; -print STDERR "allowed_symbols:" . $allowed_symbols . "\n" if $debug; -print STDERR "allowed_weak:" . $allowed_weak . "\n" if $debug; - -$default_symbols = "_fini _init"; # system symbols -# on my system, every .so has : -# A _DYNAMIC -# A _GLOBAL_OFFSET_TABLE_ -# A __bss_start -# A _edata -# A _end -# T _fini -# T _init -# no need to list A symbols in $default_symbols - -print STDERR "default_symbols: " . $default_symbols . "\n" if $debug; - -print STDOUT "Namespace cleanness check for " . $library . " :\n"; - -$lib_file = ""; -if( $library =~ /\.la$/ ) -{ - # get the real library file from .la - open( FILEIN, $library ) || die "Couldn't open $! !\n"; - while( $line = <FILEIN> ) - { - if( $line =~ /library_names=\'([^ ]*).*/o ) - { - $lib_file = $1; - } - } - close( FILEIN ); - if( ! $lib_file ) - { - print STDERR "Library file not found in .la file!\n"; - exit 1; - } - my $libpath = $library; - $libpath =~ s%[^/]*$%%; - if( -e $libpath . ".libs/" . $lib_file ) - { - $lib_file = $libpath . ".libs/" . $lib_file; - } - else - { - $lib_file = $libpath . $lib_file; - } -} -else -{ - $lib_file = $library; -} - -print STDERR "libfile: ". $lib_file . "\n" if $debug; - -$allowed_symbols .= " " . $default_symbols; - -sub process_symbols($\@\%\@); - -@wildcards = (); -%exacts = (); -@regwildcards = (); -process_symbols( $allowed_symbols, @wildcards, %exacts, @regwildcards ); -@weak_wildcards = (); -%weak_exacts = (); -@weak_regwildcards = (); -process_symbols( $allowed_weak, @weak_wildcards, %weak_exacts, @weak_regwildcards ); - -# grep is for stripping not exported symbols, which don't have address (=first column) -$nm_command = "nm -BDCg " . $lib_file . " | grep -v '^ ' |"; - -# TODO how portable is this nmcheck stuff? - -print STDERR "nm command:" . $nm_command . "\n" if $debug; - -open( FILEIN, $nm_command ) || die "nm command failed\n"; - -my $exit_code = 0; - -while( $line = <FILEIN> ) -{ - my $type; - my $symbol; - if( $line =~ /^[^ ]* (.) (.*)$/o ) - { - $type = $1; - $symbol = $2; - } - else - { - die "Invalid line: " . $line . "\n"; - } - - print STDERR "Type: " . $type . " , symbol: " . $symbol . "\n" if $debug; - if( $type eq "A" ) - { # these should be system symbols, so ignore them - next; - } - - my $orig_symbol = $symbol; - - if( $symbol =~ /\(anonymous namespace\)/o ) - { # TODO tell to prefer named namespaces? (shorter symbols) - next; - } - - # strip prefixes - # the :: appending is to make "CLASS::*" work also for "vtable for CLASS" - $symbol =~ s/^typeinfo for (.*)$/$1::/o; - $symbol =~ s/^typeinfo fn for (.*)$/$1::/o; - $symbol =~ s/^typeinfo name for (.*)$/$1::/o; - $symbol =~ s/^vtable for (.*)$/$1::/o; - $symbol =~ s/^guard variable for (.*)$/$1::/o; - $symbol =~ s/^reference temporary for (.*)$/$1::/o; - $symbol =~ s/^VTT for (.*)$/$1::/o; - $symbol =~ s/^virtual thunk \[[^\]]*\] to (.*)$/$1::/o; - $symbol =~ s/^non-virtual thunk \[[^\]]*\] to (.*)$/$1::/o; - $symbol =~ s/^covariant return thunk \[[^\]]*\] to (.*)$/$1::/o; - $symbol =~ s/^construction vtable thunk for (.*)$/$1::/o; - $symbol =~ s/^construction vtable for .*-in-(.*) [0-9]*$/$1::/o; - - # templates seem to have also return types mangled in their name, and nm prints it too - # they have also template arguments in the symbol - # get rid of both of those - while( $symbol =~ /<.*>/o ) - { - $symbol =~ s/<[^<>]*>//o; # strip innermost <> - } - if( $symbol !~ /operator\(\)/o ) - { - $symbol =~ s/ ?\(.*\).*$//o; # strip () and all after it - } - else - { - $symbol =~ s/(^|:| )operator\(\) ?\(.*\).*$//o; # strip () and all after it - } - $symbol =~ s/\[.*\] *$//o; # strip [in-charge] etc. - if( $symbol =~ /(^|:| )operator /o ) - { - $symbol =~ s/.* ([^\s]*)operator /$1/o; # strip everything before 'X::operator blah' - } - else - { - $symbol =~ s/.* ([^\s]+) *$/$1/o; # get last word (strip return type) - } - - # print STDERR "Processed symbol: " . $symbol . "\n" if $debug; - - my $found = 0; - if( $exacts{ $symbol } ) - { - $found = 1; - } - if( ! $found ) - { - for my $wild ( @wildcards ) - { - if( index( $symbol, $wild ) == 0 ) - { - $found = 1; - last; - } - } - } - if( ! $found ) - { - for my $wild ( @regwildcards ) - { - if( $symbol =~ /^$wild$/ ) - { - $found = 1; - last; - } - } - } - if( ( ! $found ) && ( $type eq "W" || $type eq "V" )) - { - if( $weak_exacts{ $symbol } ) - { - $found = 1; - } - if( ! $found ) - { - for my $wild ( @weak_wildcards ) - { - if( index( $symbol, $wild ) == 0 ) - { - $found = 1; - last; - } - } - } - if( ! $found ) - { - for my $wild ( @weak_regwildcards ) - { - if( $symbol =~ /^$wild$/ ) - { - $found = 1; - last; - } - } - } - } - - if( ! $found ) - { - print STDERR "Public symbol " . $orig_symbol . " is not allowed!\n"; - $exit_code = 1; - } -} - -close( FILEIN ); - -print STDOUT $exit_code == 0 ? "OK\n" : "FAILED\n"; - -exit $exit_code; - -sub process_symbols($\@\%\@) -{ - my $allowed_symbols = $_[ 0 ]; - my $wildcards_ref = $_[ 1 ]; - my $exacts_ref = $_[ 2 ]; - my $regwildcards_ref = $_[ 3 ]; - - $allowed_symbols =~ s/^ *//o; # strip whitespace - $allowed_symbols =~ s/ *$//o; - - if( $allowed_symbols eq "NONE" ) - { - $allowed_symbols = ""; - } - - my @symbols1 = split( ' ', $allowed_symbols ); - my $i = 0; - my @symbols2 = (); - while( defined( $symbols1[ $i ] )) - { - my $symbol = $symbols1[ $i ]; - if( $symbol =~ /\./ ) # dot in name -> file - { - open( SYMIN, $symbol ) || die ( "Cannot open file " . $symbol . "!" ); - while( $line = <SYMIN> ) - { - $line =~ s/^\s*//o; # strip whitespace - $line =~ s/\s*$//o; - if( $line !~ /^$/o # empty line - && $line !~ /^\s*#/ ) # comment line starting with # - { - $symbols2[ $#symbols2 + 1 ] = $line; - } - } - close( SYMIN ); - } - else - { - $symbols2[ $#symbols2 + 1 ] = $symbol; - } - $i++; - } - $i = 0; - while( defined( $symbols2[ $i ] )) - { - my $symbol = $symbols2[ $i ]; - if( $symbol =~ /__/ - || $symbol =~ /^_[A-Z]/ ) - { # ISO C++ 2.10.2 - die "Symbols containing a double underscore or beginning with an underscore and an upper-case letter are reserved!\n"; - } - elsif( $symbol eq "main" - || $symbol eq "main*" ) - { - die "Symbol main is not allowed!\n"; - } - if( $symbol =~ /^([^\*]*)\*$/o # trailing * without any * before it - && $symbol !~ /operator\*$/o ) - { - print STDERR "wildcard:" . $symbol . "\n" if $debug; - $wildcards_ref->[ $#{$wildcards_ref} + 1 ] = $1; - } - elsif( $symbol =~ /\*$/o - && ( $symbol =~ /\*::/o || $symbol =~ /::\*/o ) - && $symbol !~ /^\*/o - && $symbol !~ /operator\*$/o ) - { - print STDERR "regwildcard:" . $symbol . "\n" if $debug; - $symbol =~ s/\*/\.\*/go; # change * to .* (regexp) - $regwildcards_ref->[ $#{$regwildcards_ref} + 1 ] = $symbol; - } - else - { - print STDERR "exact:" . $symbol . "\n" if $debug; - $exacts_ref->{ $symbol } = 1; - } - $i++; - } -} diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/oldinclude.m4.in b/portland/libxdg-vfs/xdg-vfs-kde/admin/oldinclude.m4.in deleted file mode 100644 index 0ed7bcf..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/oldinclude.m4.in +++ /dev/null @@ -1,192 +0,0 @@ -### -*- autoconf -*- - -dnl This file is part of the KDE libraries/packages -dnl Copyright (C) 1997 Janos Farkas (chexum@shadow.banki.hu) -dnl (C) 1997,98,99 Stephan Kulow (coolo@kde.org) - -dnl This file is free software; you can redistribute it and/or -dnl modify it under the terms of the GNU Library General Public -dnl License as published by the Free Software Foundation; either -dnl version 2 of the License, or (at your option) any later version. - -dnl This library is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -dnl Library General Public License for more details. - -dnl You should have received a copy of the GNU Library General Public License -dnl along with this library; see the file COPYING.LIB. If not, write to -dnl the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -dnl Boston, MA 02110-1301, USA. - -AC_DEFUN([KDE_CHECK_MICO], -[ -AC_REQUIRE([KDE_CHECK_LIBDL]) -AC_REQUIRE([KDE_MISC_TESTS]) -AC_MSG_CHECKING(for MICO) - -if test -z "$MICODIR"; then - kde_micodir=/usr/local - else - kde_micodir="$MICODIR" -fi - -AC_ARG_WITH(micodir, - [ --with-micodir=micodir where mico is installed ], - kde_micodir=$withval, - kde_micodir=$kde_micodir -) - -AC_CACHE_VAL(kde_cv_mico_incdir, -[ - mico_incdirs="$kde_micodir/include /usr/include /usr/local/include /usr/local/include /opt/local/include $kde_extra_includes" -AC_FIND_FILE(CORBA.h, $mico_incdirs, kde_cv_mico_incdir) - -]) -kde_micodir=`echo $kde_cv_mico_incdir | sed -e 's#/include##'` - -if test ! -r $kde_micodir/include/CORBA.h; then - AC_MSG_ERROR([No CORBA.h found, specify another micodir]) -fi - -AC_MSG_RESULT($kde_micodir) - -MICO_INCLUDES=-I$kde_micodir/include -AC_SUBST(MICO_INCLUDES) -MICO_LDFLAGS=-L$kde_micodir/lib -AC_SUBST(MICO_LDFLAGS) -micodir=$kde_micodir -AC_SUBST(micodir) - -AC_MSG_CHECKING([for MICO version]) -AC_CACHE_VAL(kde_cv_mico_version, -[ -AC_LANG_C -cat >conftest.$ac_ext <<EOF -#include <stdio.h> -#include <mico/version.h> -int main() { - - printf("MICO_VERSION=%s\n",MICO_VERSION); - return (0); -} -EOF -ac_compile='${CC-gcc} $CFLAGS $MICO_INCLUDES conftest.$ac_ext -o conftest' -if AC_TRY_EVAL(ac_compile); then - if eval `./conftest 2>&5`; then - kde_cv_mico_version=$MICO_VERSION - else - AC_MSG_ERROR([your system is not able to execute a small application to - find MICO version! Check $kde_micodir/include/mico/version.h]) - fi -else - AC_MSG_ERROR([your system is not able to compile a small application to - find MICO version! Check $kde_micodir/include/mico/version.h]) -fi -]) - -dnl installed MICO version -mico_v_maj=`echo $kde_cv_mico_version | sed -e 's/^\(.*\)\..*\..*$/\1/'` -mico_v_mid=`echo $kde_cv_mico_version | sed -e 's/^.*\.\(.*\)\..*$/\1/'` -mico_v_min=`echo $kde_cv_mico_version | sed -e 's/^.*\..*\.\(.*\)$/\1/'` - -if test "x$1" = "x"; then - req_version="2.3.0" -else - req_version=$1 -fi - -dnl required MICO version -req_v_maj=`echo $req_version | sed -e 's/^\(.*\)\..*\..*$/\1/'` -req_v_mid=`echo $req_version | sed -e 's/^.*\.\(.*\)\..*$/\1/'` -req_v_min=`echo $req_version | sed -e 's/^.*\..*\.\(.*\)$/\1/'` - -if test "$mico_v_maj" -lt "$req_v_maj" || \ - ( test "$mico_v_maj" -eq "$req_v_maj" && \ - test "$mico_v_mid" -lt "$req_v_mid" ) || \ - ( test "$mico_v_mid" -eq "$req_v_mid" && \ - test "$mico_v_min" -lt "$req_v_min" ) - -then - AC_MSG_ERROR([found MICO version $kde_cv_mico_version but version $req_version \ -at least is required. You should upgrade MICO.]) -else - AC_MSG_RESULT([$kde_cv_mico_version (minimum version $req_version, ok)]) -fi - -LIBMICO="-lmico$kde_cv_mico_version $LIBCRYPT $LIBSOCKET $LIBDL" -AC_SUBST(LIBMICO) -if test -z "$IDL"; then - IDL='$(kde_bindir)/cuteidl' -fi -AC_SUBST(IDL) -IDL_DEPENDENCIES='$(kde_includes)/CUTE.h' -AC_SUBST(IDL_DEPENDENCIES) - -idldir="\$(includedir)/idl" -AC_SUBST(idldir) - -]) - -AC_DEFUN([KDE_CHECK_MINI_STL], -[ -AC_REQUIRE([KDE_CHECK_MICO]) - -AC_MSG_CHECKING(if we use mico's mini-STL) -AC_CACHE_VAL(kde_cv_have_mini_stl, -[ -AC_LANG_SAVE -AC_LANG_CPLUSPLUS -kde_save_cxxflags="$CXXFLAGS" -CXXFLAGS="$CXXFLAGS $MICO_INCLUDES" -AC_TRY_COMPILE( -[ -#include <mico/config.h> -], -[ -#ifdef HAVE_MINI_STL -#error "nothing" -#endif -], -kde_cv_have_mini_stl=no, -kde_cv_have_mini_stl=yes) -CXXFLAGS="$kde_save_cxxflags" -AC_LANG_RESTORE -]) - -if test "x$kde_cv_have_mini_stl" = "xyes"; then - AC_MSG_RESULT(yes) - $1 -else - AC_MSG_RESULT(no) - $2 -fi -]) - -]) - -AC_DEFUN([KDE_CHECK_ANSI], -[ -]) - -AC_DEFUN([KDE_CHECK_INSURE], -[ - AC_ARG_ENABLE(insure, [ --enable-insure use insure++ for debugging [default=no]], - [ - if test $enableval = "no"; dnl - then ac_use_insure="no" - else ac_use_insure="yes" - fi - ], [ac_use_insure="no"]) - - AC_MSG_CHECKING(if we will use Insure++ to debug) - AC_MSG_RESULT($ac_use_insure) - if test "$ac_use_insure" = "yes"; dnl - then CC="insure"; CXX="insure"; dnl CFLAGS="$CLAGS -fno-rtti -fno-exceptions "???? - fi -]) - -AC_DEFUN([KDE_CHECK_NEWLIBS], -[ - -]) diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/pkg.m4.in b/portland/libxdg-vfs/xdg-vfs-kde/admin/pkg.m4.in deleted file mode 100644 index f2bfc2d..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/pkg.m4.in +++ /dev/null @@ -1,57 +0,0 @@ - -dnl PKG_CHECK_MODULES(GSTUFF, gtk+-2.0 >= 1.3 glib = 1.3.4, action-if, action-not) -dnl defines GSTUFF_LIBS, GSTUFF_CFLAGS, see pkg-config man page -dnl also defines GSTUFF_PKG_ERRORS on error -AC_DEFUN([PKG_CHECK_MODULES], [ - succeeded=no - - if test -z "$PKG_CONFIG"; then - AC_PATH_PROG(PKG_CONFIG, pkg-config, no) - fi - - if test "$PKG_CONFIG" = "no" ; then - echo "*** The pkg-config script could not be found. Make sure it is" - echo "*** in your path, or set the PKG_CONFIG environment variable" - echo "*** to the full path to pkg-config." - echo "*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config." - else - PKG_CONFIG_MIN_VERSION=0.9.0 - if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then - AC_MSG_CHECKING(for $2) - - if $PKG_CONFIG --exists "$2" ; then - AC_MSG_RESULT(yes) - succeeded=yes - - AC_MSG_CHECKING($1_CFLAGS) - $1_CFLAGS=`$PKG_CONFIG --cflags "$2"` - AC_MSG_RESULT($$1_CFLAGS) - - AC_MSG_CHECKING($1_LIBS) - $1_LIBS=`$PKG_CONFIG --libs "$2"` - AC_MSG_RESULT($$1_LIBS) - else - $1_CFLAGS="" - $1_LIBS="" - ## If we have a custom action on failure, don't print errors, but - ## do set a variable so people can do so. - $1_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"` - ifelse([$4], ,echo $$1_PKG_ERRORS,) - fi - - AC_SUBST($1_CFLAGS) - AC_SUBST($1_LIBS) - else - echo "*** Your version of pkg-config is too old. You need version $PKG_CONFIG_MIN_VERSION or newer." - echo "*** See http://www.freedesktop.org/software/pkgconfig" - fi - fi - - if test $succeeded = yes; then - ifelse([$3], , :, [$3]) - else - ifelse([$4], , AC_MSG_ERROR([Library requirements ($2) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them.]), [$4]) - fi -]) - - diff --git a/portland/libxdg-vfs/xdg-vfs-kde/admin/ylwrap b/portland/libxdg-vfs/xdg-vfs-kde/admin/ylwrap deleted file mode 100755 index 102bd89..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/admin/ylwrap +++ /dev/null @@ -1,223 +0,0 @@ -#! /bin/sh -# ylwrap - wrapper for lex/yacc invocations. - -scriptversion=2005-05-14.22 - -# Copyright (C) 1996, 1997, 1998, 1999, 2001, 2002, 2003, 2004, 2005 -# Free Software Foundation, Inc. -# -# Written by Tom Tromey <tromey@cygnus.com>. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -# 02110-1301, USA. - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# This file is maintained in Automake, please report -# bugs to <bug-automake@gnu.org> or send patches to -# <automake-patches@gnu.org>. - -case "$1" in - '') - echo "$0: No files given. Try \`$0 --help' for more information." 1>&2 - exit 1 - ;; - --basedir) - basedir=$2 - shift 2 - ;; - -h|--h*) - cat <<\EOF -Usage: ylwrap [--help|--version] INPUT [OUTPUT DESIRED]... -- PROGRAM [ARGS]... - -Wrapper for lex/yacc invocations, renaming files as desired. - - INPUT is the input file - OUTPUT is one file PROG generates - DESIRED is the file we actually want instead of OUTPUT - PROGRAM is program to run - ARGS are passed to PROG - -Any number of OUTPUT,DESIRED pairs may be used. - -Report bugs to <bug-automake@gnu.org>. -EOF - exit $? - ;; - -v|--v*) - echo "ylwrap $scriptversion" - exit $? - ;; -esac - - -# The input. -input="$1" -shift -case "$input" in - [\\/]* | ?:[\\/]*) - # Absolute path; do nothing. - ;; - *) - # Relative path. Make it absolute. - input="`pwd`/$input" - ;; -esac - -pairlist= -while test "$#" -ne 0; do - if test "$1" = "--"; then - shift - break - fi - pairlist="$pairlist $1" - shift -done - -# The program to run. -prog="$1" -shift -# Make any relative path in $prog absolute. -case "$prog" in - [\\/]* | ?:[\\/]*) ;; - *[\\/]*) prog="`pwd`/$prog" ;; -esac - -# FIXME: add hostname here for parallel makes that run commands on -# other machines. But that might take us over the 14-char limit. -dirname=ylwrap$$ -trap "cd `pwd`; rm -rf $dirname > /dev/null 2>&1" 1 2 3 15 -mkdir $dirname || exit 1 - -cd $dirname - -case $# in - 0) $prog "$input" ;; - *) $prog "$@" "$input" ;; -esac -ret=$? - -if test $ret -eq 0; then - set X $pairlist - shift - first=yes - # Since DOS filename conventions don't allow two dots, - # the DOS version of Bison writes out y_tab.c instead of y.tab.c - # and y_tab.h instead of y.tab.h. Test to see if this is the case. - y_tab_nodot="no" - if test -f y_tab.c || test -f y_tab.h; then - y_tab_nodot="yes" - fi - - # The directory holding the input. - input_dir=`echo "$input" | sed -e 's,\([\\/]\)[^\\/]*$,\1,'` - # Quote $INPUT_DIR so we can use it in a regexp. - # FIXME: really we should care about more than `.' and `\'. - input_rx=`echo "$input_dir" | sed 's,\\\\,\\\\\\\\,g;s,\\.,\\\\.,g'` - - while test "$#" -ne 0; do - from="$1" - # Handle y_tab.c and y_tab.h output by DOS - if test $y_tab_nodot = "yes"; then - if test $from = "y.tab.c"; then - from="y_tab.c" - else - if test $from = "y.tab.h"; then - from="y_tab.h" - fi - fi - fi - if test -f "$from"; then - # If $2 is an absolute path name, then just use that, - # otherwise prepend `../'. - case "$2" in - [\\/]* | ?:[\\/]*) target="$2";; - *) target="../$2";; - esac - - # We do not want to overwrite a header file if it hasn't - # changed. This avoid useless recompilations. However the - # parser itself (the first file) should always be updated, - # because it is the destination of the .y.c rule in the - # Makefile. Divert the output of all other files to a temporary - # file so we can compare them to existing versions. - if test $first = no; then - realtarget="$target" - target="tmp-`echo $target | sed s/.*[\\/]//g`" - fi - # Edit out `#line' or `#' directives. - # - # We don't want the resulting debug information to point at - # an absolute srcdir; it is better for it to just mention the - # .y file with no path. - # - # We want to use the real output file name, not yy.lex.c for - # instance. - # - # We want the include guards to be adjusted too. - FROM=`echo "$from" | sed \ - -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'\ - -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g'` - TARGET=`echo "$2" | sed \ - -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'\ - -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g'` - - sed -e "/^#/!b" -e "s,$input_rx,," -e "s,$from,$2," \ - -e "s,$FROM,$TARGET," "$from" >"$target" || ret=$? - - # Check whether header files must be updated. - if test $first = no; then - if test -f "$realtarget" && cmp -s "$realtarget" "$target"; then - echo "$2" is unchanged - rm -f "$target" - else - echo updating "$2" - mv -f "$target" "$realtarget" - fi - fi - else - # A missing file is only an error for the first file. This - # is a blatant hack to let us support using "yacc -d". If -d - # is not specified, we don't want an error when the header - # file is "missing". - if test $first = yes; then - ret=1 - fi - fi - shift - shift - first=no - done -else - ret=$? -fi - -# Remove the directory. -cd .. -rm -rf $dirname - -exit $ret - -# Local Variables: -# mode: shell-script -# sh-indentation: 2 -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" -# End: diff --git a/portland/libxdg-vfs/xdg-vfs-kde/configure.in.in b/portland/libxdg-vfs/xdg-vfs-kde/configure.in.in deleted file mode 100644 index ab2d897..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/configure.in.in +++ /dev/null @@ -1,19 +0,0 @@ -#MIN_CONFIG - -PACKAGE=xdg-vfs-kde -VERSION=0.1.14 - -KDE_CHECK_HEADERS(X11/extensions/dpms.h, - AC_DEFINE(HAVE_DPMS, 1, [Set if DPMS is available]),, - [#include <X11/Xlib.h>]) - -# LIB_DAPI='$(top_builddir)/../lib/libdapi.la' -# AC_SUBST(LIB_DAPI) -# dapi_includes='-I$(top_builddir)/../include' -# all_includes="$dapi_includes $all_includes" - -# CFLAGS="$CFLAGS -Werror" -# CXXFLAGS="$CXXFLAGS $KDE_DEFAULT_CXXFLAGS -Werror" - -CFLAGS="$CFLAGS" -CXXFLAGS="$CXXFLAGS $KDE_DEFAULT_CXXFLAGS" diff --git a/portland/libxdg-vfs/xdg-vfs-kde/src/.cvsignore b/portland/libxdg-vfs/xdg-vfs-kde/src/.cvsignore deleted file mode 100644 index 00fc4fe..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/src/.cvsignore +++ /dev/null @@ -1,8 +0,0 @@ -*.la -*.lo -*.o -.deps -.libs -Makefile -Makefile.in -*.moc diff --git a/portland/libxdg-vfs/xdg-vfs-kde/src/Makefile.am b/portland/libxdg-vfs/xdg-vfs-kde/src/Makefile.am deleted file mode 100644 index 2837c39..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/src/Makefile.am +++ /dev/null @@ -1,10 +0,0 @@ -bin_PROGRAMS = xdg_vfs_kde - -xdg_vfs_kde_SOURCES = xdg_vfs_kde.cpp xdg_vfs.c -xdg_vfs_kde_LDADD = $(LIB_KABC) $(LIB_KIO) -xdg_vfs_kde_LDFLAGS = $(all_libraries) - -METASOURCES = AUTO - -INCLUDES = $(all_includes) - diff --git a/portland/libxdg-vfs/xdg-vfs-kde/src/xdg_vfs.c b/portland/libxdg-vfs/xdg-vfs-kde/src/xdg_vfs.c deleted file mode 100644 index f0956da..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/src/xdg_vfs.c +++ /dev/null @@ -1,531 +0,0 @@ -/* -# xdg_vfs.c -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - -#include <string.h> -#include <stdio.h> -#include <unistd.h> -#include <stdlib.h> - -#include <sys/types.h> -#include <sys/time.h> - -#include "xdg_vfs_common.h" -#include "xdg_vfs.h" - -char * end_seperator; -int data_esc_char= DEFAULT_DATA_ESC_CHAR; -int xdgvfs_file_permissions = XDGVFS_DEFAULT_FILE_PERMISSIONS; -int xdgvfs_dir_permissions = XDGVFS_DEFAULT_DIR_PERMISSIONS; -int debug_mode = 1; - -int xdg_vfs_getDataEscChar() -{ - return data_esc_char; -} - -char * xdg_vfs_getCustomEndSeparator() -{ - return end_seperator; -} - -/** -* print a key/value pair -* (value is a string) -*/ -void xdg_vfs_ppair_str(FILE * f, const char * key, const char * value, int opts) -{ - fprintf(f,key); - fprintf(f,"="); - if (value) fprintf(f,"%s\n", value); - else fprintf(f, "\n"); -} - -/** -* look if there is a cancel character on stdin -*/ -int xdg_vfs_chk_stdin(int wait_secs) -{ - /* check for canceled */ - int filedes = fileno (stdin); - int r; - fd_set set; - struct timeval timeout; - - - /* Initialize the file descriptor set. */ - FD_ZERO (&set); - FD_SET (filedes, &set); - - /* Initialize the timeout data structure. */ - timeout.tv_sec = wait_secs; - timeout.tv_usec = 0; - - /* select returns 0 if timeout, 1 if input available, -1 if error. */ - r= select (FD_SETSIZE, &set, NULL, NULL, &timeout); - if (r==0) return 0; - if (r==-1) - { - fprintf(stderr, "WARNING: Error when checking stdin for cancel character\n"); - return -1; /* error! */ - } - return 1; -} - -int xdg_vfs_chk_canceled(int opts) { - - if (!(opts & XDGVFS_OPT_CANCELABLE)) return 0; - - int r = xdg_vfs_chk_stdin(0)==1; - - if (r==1) - { - int c = getc(stdin); - if (c==DEFAULT_CANCEL_CHAR) return 1; - fprintf(stderr, "WARNING: Bad cancel character!\n"); - return 1; - } - return r; -} - -int empty_stdin() { /* not used */ - - /* fclean(stdin); */ - while (xdg_vfs_chk_stdin(0)==1) { - char buf[10]; - read(stdin, buf, 10); - } -} - - -/** -* print usage -*/ -int pusage(int opts) -{ - if (!(opts & XDGVFS_OPT_INTERACTIVE_MODE)) - fprintf(stderr, "Usage: xdg_vfs [command] [options] [filenames]\n"); - else - fprintf(stderr, "Usage: [command] [options] [filename]\n"); - fprintf(stderr, "\n"); - fprintf(stderr, " Commands: \n"); - - fprintf(stderr, " backend : print backend infos\n"); - fprintf(stderr, " get [uri] : remote file->stdout\n"); - fprintf(stderr, " put [uri] : stdin->create remote file\n"); - fprintf(stderr, " info [uri] : stat a remote file\n"); - fprintf(stderr, " setattrs [uri] : set file attributes\n"); - fprintf(stderr, " cp [uri] [uri] : copy file\n"); - fprintf(stderr, " mv [uri] [uri] : move/rename file\n"); - fprintf(stderr, " rm [uri] : remove file\n"); - fprintf(stderr, " mkdir [uri] : make directory\n"); - fprintf(stderr, " rmdir [uri] : remove directory\n"); - fprintf(stderr, " ls [uri] : list directory\n"); - fprintf(stderr, " mount [id] : mount\n"); - fprintf(stderr, " openfiledlg [uri] : show file-save dialog\n"); - fprintf(stderr, " savefiledlg [uri] [fname] : show file-open dialog\n"); - if (!(opts & XDGVFS_OPT_INTERACTIVE_MODE)) - fprintf(stderr, " shell : interactive mode\n"); - else - fprintf(stderr, " quit : exit interactive mode\n"); - fprintf(stderr, "\n"); - fprintf(stderr, " Options: \n"); - fprintf(stderr, " -t, --tagged : tagged mode (file-data should be escaped)\n"); - fprintf(stderr, " -i, --qry-fileinfo : qry file-info when retrieving a file\n"); - /* fprintf(stderr, " --show-metadata : show metadata when retrieving a file\n"); */ - fprintf(stderr, " requires tagged mode!\n"); - fprintf(stderr, " --dive-de-links : dive into desktop-entry links (if folders)\n"); - fprintf(stderr, " -m, --slow-mime : more accurate mime-type detection (slow)\n"); - fprintf(stderr, " -e, --escape-data : escape file data (for end of data detection)\n"); - fprintf(stderr, " -eXXX, --escape-data=XXX : set and use a user defined escape character\n"); - fprintf(stderr, " XXX = ascii code!\n"); - fprintf(stderr, " --cancelable : allow sending cancel character to stdin\n"); - fprintf(stderr, " --user= : setattrs: set user\n"); - fprintf(stderr, " --group= : setattrs: set group\n"); - fprintf(stderr, " --permissions= : set permissions when creating a file or dir\n"); - fprintf(stderr, " : or in setattrs\n"); - /* fprintf(stderr, " --end-seperator= : add a custom seperator inbetween blocks\n"); */ - fprintf(stderr, " --overwrite : allow overwriting files (put)\n"); - fprintf(stderr, " --instant-get : openfiledilog instant get file->stdout\n"); - fprintf(stderr, " --instant-put : savefiledilog instant put file from stdin\n"); - fprintf(stderr, " --title= : set dialog title\n"); - fprintf(stderr, " --progress : show progress when copying or moving a file\n"); - fprintf(stderr, "\n"); - return XDGVFS_ERRORCODE_BAD_PARAMETER ; -} - -/** -* count ordinary args -*/ -int countargs(int argc, char ** argv) -{ - int i; - int ctr=0; - for (i=0;i<argc;i++) - { - if (argv[i][0] != '-') - { - ctr++; - } - } - return ctr; -} - - -/** -* get n'th arg ignoring options -*/ -char * getarg(int argc, char ** argv, int nr) -{ - int i; - int ctr=0; - for (i=0;i<argc;i++) - { - if (argv[i][0] != '-') - { - if (ctr++==nr) return argv[i]; - } - } - return NULL; -} - -/** -* get certain option value -*/ -char * getoptarg(int argc, char ** argv, const char * optname) -{ - int i; - int ctr=0; - for (i=0;i<argc;i++) - { - if (strncmp (argv[i], optname, strlen(optname))==0) return argv[i]+strlen(optname); - } - return NULL; -} - -/** -* execute commands -*/ -int docommand(int argc, char ** argv, int globopts) -{ - char * command; char * s; char * title; - int cargs = countargs(argc, argv); - int opts = globopts; - int r; - - command = getarg(argc,argv, 1); - - if (!command) return pusage(opts); - - - if (getoptarg(argc,argv, "-t") || getoptarg(argc,argv, "--tagged")) - opts |= XDGVFS_OPT_TAGGED; - if (getoptarg(argc,argv, "-e") || getoptarg(argc,argv, "--escape-data")) - { - opts |= XDGVFS_OPT_DATAESCAPED; - s = getoptarg(argc,argv, "-e"); - if (s && strlen(s)>0) data_esc_char = atoi(s); - s = getoptarg(argc,argv, "--escape-data="); - if (s && strlen(s)>0) data_esc_char = atoi(s); - } - - if (getoptarg(argc,argv, "--permissions=")) - { - s = getoptarg(argc,argv, "--permissions="); - if (s && strlen(s)>0) - { - int perms= atoi(s); - xdgvfs_file_permissions = perms; - xdgvfs_dir_permissions = perms; - } - } - - if (getoptarg(argc,argv, "-m") || getoptarg(argc,argv, "--slow-mime")) - opts |= XDGVFS_OPT_SLOW_MIME_TYPE; - if (getoptarg(argc,argv, "--overwrite")) - opts |= XDGVFS_OPT_OVERWRITE; - - if (getoptarg(argc,argv, "--cancelable")) - opts |= XDGVFS_OPT_CANCELABLE; - - if (getoptarg(argc,argv, "--instant-get")) - opts |= XDGVFS_OPT_INSTANT_GET; - - if (getoptarg(argc,argv, "--instant-put")) - opts |= XDGVFS_OPT_INSTANT_PUT; - - if (getoptarg(argc,argv, "--dive-de-links")) - opts |= XDGVFS_OPT_DIVE_DE_LINKS; - - - if (getoptarg(argc,argv, "-i") || getoptarg(argc,argv, "--qry-fileinfo")) - opts |= XDGVFS_OPT_GET_FILEINFO; - - if (getoptarg(argc,argv, "--show-metadata")) - opts |= XDGVFS_OPT_SHOW_METADATA; - if (getoptarg(argc,argv, "-p") || getoptarg(argc,argv, "--progress")) - opts |= XDGVFS_OPT_PROGRESS; - - title=getoptarg(argc,argv, "--title="); - - - /* printf("debu=%d %d\n", opts, countargs(argc, argv)); */ - - /* get command? */ - if (cargs == 2 && strcmp(command, "backend")==0) - { - return xdg_vfs_backend(opts); - } - else if (cargs == 3 && strcmp(command, "get")==0) - { - return xdg_vfs_get(getarg(argc,argv, 2), opts); - /* info command? */ - } - else if (cargs == 3 && strcmp(command, "info")==0) - { - return xdg_vfs_getFileInfo(getarg(argc,argv, 2), opts); - } - else if (cargs == 3 && strcmp(command, "setattrs")==0) - { - XdgVfsSetFileInfoData fiData = { 0,0,0,0 }; - fiData.user = getoptarg(argc,argv, "--user="); - fiData.group = getoptarg(argc,argv, "--group="); - if (getoptarg(argc,argv, "--permissions=")) - { - s = getoptarg(argc,argv, "--permissions="); - if (s && strlen(s)>0) - { - fiData.perms=atoi(s); - fiData.setPermsFlag = 1; - } - } - return xdg_vfs_setFileInfo(getarg(argc,argv, 2), &fiData, opts); - /* ls caommand? */ - } - else if (cargs == 3 && strcmp(command, "ls")==0) - { - return xdg_vfs_dir(getarg(argc,argv, 2), opts); - /* mount command? */ - } - else if (cargs == 3 && strcmp(command, "mount")==0) - { - return xdg_vfs_mount(getarg(argc,argv, 2), opts); - /* mkdir command? */ - } - else if (cargs == 3 && strcmp(command, "mkdir")==0) - { - return xdg_vfs_mkdir(getarg(argc,argv, 2), xdgvfs_dir_permissions, opts); - } - else if (cargs == 3 && strcmp(command, "rmdir")==0) - { - return xdg_vfs_rmdir(getarg(argc,argv, 2), opts); - } - else if (cargs == 3 && strcmp(command, "put")==0) - { - return xdg_vfs_put(getarg(argc,argv, 2), xdgvfs_file_permissions, opts); - } - else if (cargs == 3 && strcmp(command, "rm")==0) - { - return xdg_vfs_rm(getarg(argc,argv, 2), opts); - } - else if (cargs == 3 && strcmp(command, "monfile")==0) - { - return xdg_vfs_monitor(getarg(argc,argv, 2), 0, opts); - } - else if (cargs == 3 && strcmp(command, "mondir")==0) - { - return xdg_vfs_monitor(getarg(argc,argv, 2), 1, opts); - } - else if (cargs == 3 && strcmp(command, "rmmon")==0) - { - return xdg_vfs_monitor_cancel(getarg(argc,argv, 2), opts); - } - else if (cargs >= 2 && strcmp(command, "openfiledlg")==0) - { - return xdg_vfs_openfiledlg(getarg(argc,argv, 2), NULL, title, opts); - } - else if (cargs >= 2 && strcmp(command, "savefiledlg")==0) - { - return xdg_vfs_savefiledlg(getarg(argc,argv, 2),getarg(argc,argv, 3), - title, xdgvfs_file_permissions, opts); - } - else if (cargs == 4 && strcmp(command, "cp")==0) - { - return xdg_vfs_cp(getarg(argc,argv, 2),getarg(argc,argv, 3), xdgvfs_file_permissions, 0, opts); - } - else if (cargs == 4 && strcmp(command, "mv")==0) - { - return xdg_vfs_cp(getarg(argc,argv, 2),getarg(argc,argv, 3), xdgvfs_file_permissions, 1, opts); - } - else - { - return pusage(opts); - } - return 1; -} - -/** -* main() function -*/ -int xdg_vfs_main(int argc, char ** argv) -{ - if (argc < 2) - { - return pusage(0); - } - - xdg_vfs_init_desklib(argc, argv); - - /* SHELL mode */ - if (countargs(argc,argv)==2 && strcmp(getarg(argc,argv, 1), "shell")==0) - { - while(1) - { - char * lineptr = NULL; - ssize_t len; - size_t n = 0; - - char ** av = calloc(SHELL_MAXARGS, sizeof(char*)); - av[0] = "shell"; - int ac = 1; - - int rcode; - - fprintf(stdout, "> "); - fflush(stdout); - xdg_vfs_monitor_list_events(0); - while (!xdg_vfs_iterate_mainloop_until_incoming_data(fileno(stdin))) - { - xdg_vfs_monitor_list_events(0); - } - len=getline (&lineptr, &n, stdin); - - if (len<0) { - if (len=EOF) { - fprintf(stderr, "xdg-vfs shell mode: stdin closed -> exit\n"); - exit(XDGVFS_ERRORCODE_IO_ERROR); - } - perror("xdg-vfs shell mode: stdin problem -> exit"); - exit(XDGVFS_ERRORCODE_IO_ERROR); - } - - /* printf("lineptr=%s len=%d\n", lineptr, len); */ - /* while(ac < SHELL_MAXARGS && (av[ac]=strtok(ac==1 ? lineptr : NULL, " \n")) ) - ac++; */ - - { - char * lout = calloc(strlen(lineptr)+1,1); - int c=0; - int co=0; - av[ac++] = lout; /* first arg */ - int parsing_error=0; - while(lineptr[c]!='\0') /* read shell line into arg array */ - { - if (lineptr[c] == '"') /* quoted strings */ - { - c++; - while(lineptr[c]!='\0') - { - if (lineptr[c] == '\\') - { - - c++; - if (lineptr[c]=='\\' || lineptr[c]=='"') - { - lout[co++] = lineptr[c++]; - continue; - } else - { - fprintf(stderr, "ERROR: Only '\\' or '\"' are allowed to be escaped with '\\' inside double quotes in shell mode!!!\n"); - parsing_error=1; - } - - } else - { - if (lineptr[c] == '"') - { - c++; - break; - } - lout[co++] = lineptr[c++]; - } - } - - } - - if (lineptr[c] == ' ') - { - lout[co] = '\0'; - av[ac++] = lout+co+1; - co++; - if (ac >= SHELL_MAXARGS) return XDGVFS_ERRORCODE_BAD_PARAMETER; - } else if (lineptr[c] == '\n') - { - /* skip newline */ - } - else - { - lout[co++] = lineptr[c]; - } - c++; - } - - /* if (debug_mode) fprintf(stderr,"av= %s|%s|%s|%s|%s|%s n=%d\n", av[0], av[1], av[2], av[3], av[4],av[5],ac); */ - - if (av[1] && strcmp(av[1], "quit")==0) - { - fprintf(stderr, "BYE!\n"); - return 0; - } - - if (!parsing_error) - { - rcode = docommand(ac,av, XDGVFS_OPT_INTERACTIVE_MODE | XDGVFS_OPT_TAGGED); - if (rcode==0) fprintf(stdout, "%s\n", XDGVFS_TAG_DONE); - else fprintf(stdout, "%s %d\n", XDGVFS_TAG_FAILED, rcode); - } - else - { - fprintf(stdout, "%s %d\n", XDGVFS_TAG_FAILED, XDGVFS_ERRORCODE_BAD_PARAMETER); - } - - free(lineptr); - free(av); - free(lout); - xdg_vfs_iterate_mainloop(); - } - } - /* single command mode */ - } - else - { - return docommand(argc,argv, 0); - } - -} - - - diff --git a/portland/libxdg-vfs/xdg-vfs-kde/src/xdg_vfs.h b/portland/libxdg-vfs/xdg-vfs-kde/src/xdg_vfs.h deleted file mode 100644 index 26a87b9..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/src/xdg_vfs.h +++ /dev/null @@ -1,135 +0,0 @@ -/* -# xdg_vfs.h -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - -#ifndef XDG_VFS_H -#define XDG_VFS_H - -#ifdef __cplusplus -extern "C" { -#endif - -#include <stdio.h> -#include <unistd.h> -#include <stdlib.h> -#include <sys/stat.h> - -#define DATA_BUF_SIZE 4096 -#define SHELL_MAXARGS 30 - -#define XDGVFS_DEFAULT_FILE_PERMISSIONS S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH -#define XDGVFS_DEFAULT_DIR_PERMISSIONS S_IRUSR | S_IWUSR | S_IXUSR | S_IRGRP | S_IWGRP | S_IXGRP | S_IXOTH - - - - -/* cli option flags */ - -#define XDGVFS_OPT_TAGGED 1 -#define XDGVFS_OPT_DATAESCAPED 2 -#define XDGVFS_OPT_SLOW_MIME_TYPE 4 -#define XDGVFS_OPT_GET_FILEINFO 8 -#define XDGVFS_OPT_INSTANT_GET 16 -#define XDGVFS_OPT_INSTANT_PUT 32 -#define XDGVFS_OPT_OVERWRITE 64 -#define XDGVFS_OPT_SHOW_METADATA 128 -#define XDGVFS_OPT_INTERACTIVE_MODE 256 -#define XDGVFS_OPT_PROGRESS 512 -#define XDGVFS_OPT_CANCELABLE 1024 -#define XDGVFS_OPT_DIVE_DE_LINKS 2048 - - - -#define XDGVFS_TEXT_SAVEFILEDLG_TITLE "Save File" -#define XDGVFS_TEXT_OPENFILEDLG_TITLE "Open File" - -typedef struct { - const char * user; - const char * group; - unsigned int perms; - int setPermsFlag; -} XdgVfsSetFileInfoData; - -/* implementation independent functions */ - -int xdg_vfs_main(int argc, char ** argv); - -int xdg_vfs_getDataEscChar(); - -char * xdg_vfs_getCustomEndSeparator(); - -void xdg_vfs_ppair_str(FILE * f, const char * key, const char * value, int opts); - -int xdg_vfs_chk_canceled(int opts); - -/* implementation functions */ - -int xdg_vfs_init_desklib(int argc, char** argv); - -int xdg_vfs_iterate_mainloop(); - -int xdg_vfs_iterate_mainloop_until_incoming_data(int fd); - -/* command implementations */ - -int xdg_vfs_backend(int opts); - -int xdg_vfs_dir(const char * text_uri, int opts); - -int xdg_vfs_mount(const char * mountpoint_id, int opts); - -int xdg_vfs_getFileInfo(const char * text_uri, int opts); - -int xdg_vfs_setFileInfo(const char * text_uri, XdgVfsSetFileInfoData * fiData, int opts); - -int xdg_vfs_get(const char * text_uri, int opts); - -int xdg_vfs_put(const char * text_uri, int perms, int opts); - -int xdg_vfs_cp(const char * text_uri_src, const char * text_uri_target, unsigned int perms, int move_flag, int opts); - -int xdg_vfs_mkdir(const char * text_uri, unsigned int perms, int opts); - -int xdg_vfs_rmdir(const char * text_uri, int opts); - -int xdg_vfs_rm(const char * text_uri, int opts); - -int xdg_vfs_openfiledlg(const char * default_dir, const char * default_filename, const char * title, int opts); - -int xdg_vfs_savefiledlg(const char * default_dir, const char * default_filename, - const char * title, unsigned int perms, int opts); - -int xdg_vfs_monitor(char * uri, int is_directory, int opts); - -int xdg_vfs_monitor_cancel(char * uri, int opts); - -int xdg_vfs_monitor_list_events(int opts); - -#ifdef __cplusplus -} -#endif -#endif - diff --git a/portland/libxdg-vfs/xdg-vfs-kde/src/xdg_vfs_common.h b/portland/libxdg-vfs/xdg-vfs-kde/src/xdg_vfs_common.h deleted file mode 100644 index 3963983..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/src/xdg_vfs_common.h +++ /dev/null @@ -1,146 +0,0 @@ -/* -# xdg_vfs_common.h -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - -#ifndef XDG_VFS_COMMON_H -#define XDG_VFS_COMMON_H - -#ifdef __cplusplus -extern "C" { -#endif - -#define DEFAULT_DATA_ESC_CHAR 126 -#define DEFAULT_CANCEL_CHAR (int)'!' - -/* error codes */ - -#define XDGVFS_ERRORCODE_OK 0 -#define XDGVFS_ERRORCODE_CANCELED 10 -#define XDGVFS_ERRORCODE_BAD_PARAMETER 11 -#define XDGVFS_ERRORCODE_NOT_SUPPORTED 12 -#define XDGVFS_ERRORCODE_GENERIC 13 -#define XDGVFS_ERRORCODE_INIT_ERROR 14 -#define XDGVFS_ERRORCODE_DATA_ERROR 15 -#define XDGVFS_ERRORCODE_IO_ERROR 16 -#define XDGVFS_ERRORCODE_NOT_PERMITTED 17 -#define XDGVFS_ERRORCODE_MALFORMED_URL 18 -#define XDGVFS_ERRORCODE_PROTOCOL_ERROR 19 -#define XDGVFS_ERRORCODE_USR_OR_GRP_NOT_FOUND 20 -#define XDGVFS_ERRORCODE_INTERNAL 21 -#define XDGVFS_ERRORCODE_CANNOT_OPEN_FOR_WRITING 22 -#define XDGVFS_ERRORCODE_CANNOT_OPEN_FOR_READING 23 -#define XDGVFS_ERRORCODE_IS_DIRECTORY 24 -#define XDGVFS_ERRORCODE_IS_FILE 25 -#define XDGVFS_ERRORCODE_NOT_FOUND 26 -#define XDGVFS_ERRORCODE_ALREADY_EXISTS 27 -#define XDGVFS_ERRORCODE_HOST_NOT_FOUND 28 -#define XDGVFS_ERRORCODE_ACCESS_DENIED 29 -#define XDGVFS_ERRORCODE_CANNOT_ENTER_DIRECTORY 30 -#define XDGVFS_ERRORCODE_PROTOCOL_IS_NOT_A_FILESYSTEM 31 -#define XDGVFS_ERRORCODE_LOOP 32 -#define XDGVFS_ERRORCODE_COULD_NOT_CREATE_SOCKET 33 -#define XDGVFS_ERRORCODE_COULD_NOT_CONNECT 34 -#define XDGVFS_ERRORCODE_ERR_CONNECTION_BROKEN 35 -#define XDGVFS_ERRORCODE_COULD_NOT_MOUNT 36 -#define XDGVFS_ERRORCODE_COULD_NOT_UNMOUNT 37 -#define XDGVFS_ERRORCODE_SOCKET_ERROR 38 -#define XDGVFS_ERRORCODE_LOGIN_FAILED 39 -#define XDGVFS_ERRORCODE_OPERATION_FAILED 40 -#define XDGVFS_ERRORCODE_CANNOT_RESUME 41 -#define XDGVFS_ERRORCODE_OUT_OF_MEMORY 42 -#define XDGVFS_ERRORCODE_UNKNOWN_PROXY_HOST 43 -#define XDGVFS_ERRORCODE_ABORTED 44 -#define XDGVFS_ERRORCODE_TIMEOUT 45 -#define XDGVFS_ERRORCODE_SERVICE_NOT_AVAILABLE 46 -#define XDGVFS_ERRORCODE_CANNOT_DELETE_ORIGINAL 47 -#define XDGVFS_ERRORCODE_CANNOT_DELETE_PARTIAL 48 -#define XDGVFS_ERRORCODE_CANNOT_RENAME_ORIGINAL 49 -#define XDGVFS_ERRORCODE_CANNOT_RENAME_PARTIAL 50 -#define XDGVFS_ERRORCODE_NEED_PASSWD 51 -#define XDGVFS_ERRORCODE_NO_CONTENT 52 -#define XDGVFS_ERRORCODE_NO_SPACE 53 -#define XDGVFS_ERRORCODE_IDENTICAL_FILES 54 -#define XDGVFS_ERRORCODE_CORRUPTED_DATA 55 -#define XDGVFS_ERRORCODE_WRONG_FORMAT 56 -#define XDGVFS_ERRORCODE_ERROR_BAD_FILE 66 -#define XDGVFS_ERRORCODE_TOO_BIG 67 -#define XDGVFS_ERRORCODE_NOT_OPEN 68 -#define XDGVFS_ERRORCODE_INVALID_OPEN_MODE 69 -#define XDGVFS_ERRORCODE_TOO_MANY_OPEN_FILES 70 -#define XDGVFS_ERRORCODE_EOF 71 -#define XDGVFS_ERRORCODE_IN_PROGRESS 72 -#define XDGVFS_ERRORCODE_INTERRUPTED 73 -#define XDGVFS_ERRORCODE_HOST_HAS_NO_ADDRESS 74 -#define XDGVFS_ERRORCODE_DIRECTORY_NOT_EMPTY 75 -#define XDGVFS_ERRORCODE_TOO_MANY_LINKS 76 -#define XDGVFS_ERRORCODE_READ_ONLY_FILE_SYSTEM 77 -#define XDGVFS_ERRORCODE_NOT_SAME_FILE_SYSTEM 78 -#define XDGVFS_ERRORCODE_NAME_TOO_LONG 79 -#define XDGVFS_ERRORCODE_SERVICE_OBSOLETE 80 -#define XDGVFS_ERRORCODE_NO_DEFAULT 81 -#define XDGVFS_ERRORCODE_NAMESERVER 82 -#define XDGVFS_ERRORCODE_LOCKED 83 -#define XDGVFS_ERRORCODE_DEPRECATED_FUNCTION 84 -#define XDGVFS_ERRORCODE_DIRECTORY_BUSY 85 -#define XDGVFS_ERRORCODE_NOT_A_DIRECTORY 86 - - -/* tags (private!) */ - -#define XDGVFS_TAG_DATA_OUT "(>>>RAW_DATA>>>)" -#define XDGVFS_TAG_ESCAPEDDATA_OUT "(>>>ESCAPED_DATA>>>)" -#define XDGVFS_TAG_DATA_IN "(<<<RAW_DATA<<<)" -#define XDGVFS_TAG_ESCAPEDDATA_IN "(<<<ESCAPED_DATA<<<)" - -#define XDGVFS_TAG_BACKEND "[BACKEND]" -#define XDGVFS_TAG_GET "[GET]" -#define XDGVFS_TAG_PUT "[PUT]" -#define XDGVFS_TAG_CP "[CP]" -#define XDGVFS_TAG_MV "[MV]" -#define XDGVFS_TAG_LS "[LS]" -#define XDGVFS_TAG_FILEINFO "[FILEINFO]" -#define XDGVFS_TAG_SETATTRS "[SETATTRS]" -#define XDGVFS_TAG_SAVEFILEDLG "[SAVEFILEDLG]" -#define XDGVFS_TAG_OPENFILEDLG "[OPENFILEDLG]" -#define XDGVFS_TAG_MKDIR "[MKDIR]" -#define XDGVFS_TAG_RMDIR "[RMDIR]" -#define XDGVFS_TAG_RM "[RM]" -#define XDGVFS_TAG_MOUNT "[MOUNT]" -#define XDGVFS_TAG_MONITOREVENT "*" - - -#define XDGVFS_TAG_METADATA "(METADATA)" -#define XDGVFS_TAG_DIRENTRY "(DIRENTRY)" -#define XDGVFS_TAG_PROGRESS "(PROGRESS)" - -#define XDGVFS_TAG_DONE ":-)" -#define XDGVFS_TAG_FAILED ":-(" - -#ifdef __cplusplus -} -#endif -#endif - diff --git a/portland/libxdg-vfs/xdg-vfs-kde/src/xdg_vfs_kde.cpp b/portland/libxdg-vfs/xdg-vfs-kde/src/xdg_vfs_kde.cpp deleted file mode 100644 index 9a29edd..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/src/xdg_vfs_kde.cpp +++ /dev/null @@ -1,1022 +0,0 @@ -/* -# xdg_vfs_kde.cpp -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - -#include <kapplication.h> -#include <kcmdlineargs.h> -#include <kdebug.h> -#include <klocale.h> -#include <qmap.h> -#include <kapp.h> -#include <kfiledialog.h> -#include <kio/job.h> -#include <kio/jobclasses.h> -#include <kio/chmodjob.h> - -#include <kdirwatch.h> -#include <qsocketnotifier.h> - -#include <qvaluelist.h> -#include <kfileitem.h> -#include <iostream> - -#include "xdg_vfs_common.h" -#include "xdg_vfs.h" -#include "xdg_vfs_kde.h" - - -/* -* translate error codes -*/ -typedef struct -{ - KIO::Error kioErr; - int xdgVfsErr; -} MapKioErr; - -MapKioErr mapErrArr[] = -{ - { KIO::ERR_CANNOT_OPEN_FOR_READING , XDGVFS_ERRORCODE_CANNOT_OPEN_FOR_READING }, - { KIO::ERR_CANNOT_OPEN_FOR_WRITING , XDGVFS_ERRORCODE_CANNOT_OPEN_FOR_WRITING }, - { KIO::ERR_CANNOT_LAUNCH_PROCESS , XDGVFS_ERRORCODE_INTERNAL }, - { KIO::ERR_INTERNAL , XDGVFS_ERRORCODE_INTERNAL }, - { KIO::ERR_MALFORMED_URL , XDGVFS_ERRORCODE_MALFORMED_URL }, - { KIO::ERR_UNSUPPORTED_PROTOCOL , XDGVFS_ERRORCODE_PROTOCOL_ERROR }, - { KIO::ERR_NO_SOURCE_PROTOCOL , XDGVFS_ERRORCODE_PROTOCOL_ERROR }, - { KIO::ERR_UNSUPPORTED_ACTION , XDGVFS_ERRORCODE_NOT_SUPPORTED }, - { KIO::ERR_IS_DIRECTORY , XDGVFS_ERRORCODE_IS_DIRECTORY }, - { KIO::ERR_IS_FILE , XDGVFS_ERRORCODE_IS_FILE }, - { KIO::ERR_DOES_NOT_EXIST , XDGVFS_ERRORCODE_NOT_FOUND }, - { KIO::ERR_FILE_ALREADY_EXIST , XDGVFS_ERRORCODE_ALREADY_EXISTS }, - { KIO::ERR_DIR_ALREADY_EXIST , XDGVFS_ERRORCODE_ALREADY_EXISTS }, - { KIO::ERR_UNKNOWN_HOST , XDGVFS_ERRORCODE_HOST_NOT_FOUND}, - { KIO::ERR_ACCESS_DENIED , XDGVFS_ERRORCODE_ACCESS_DENIED }, - { KIO::ERR_WRITE_ACCESS_DENIED , XDGVFS_ERRORCODE_CANNOT_OPEN_FOR_WRITING }, - { KIO::ERR_CANNOT_ENTER_DIRECTORY , XDGVFS_ERRORCODE_CANNOT_ENTER_DIRECTORY }, - { KIO::ERR_PROTOCOL_IS_NOT_A_FILESYSTEM , XDGVFS_ERRORCODE_PROTOCOL_IS_NOT_A_FILESYSTEM }, - { KIO::ERR_CYCLIC_LINK , XDGVFS_ERRORCODE_LOOP }, - { KIO::ERR_USER_CANCELED , XDGVFS_ERRORCODE_CANCELED }, - { KIO::ERR_CYCLIC_COPY , XDGVFS_ERRORCODE_LOOP }, - { KIO::ERR_COULD_NOT_CREATE_SOCKET , XDGVFS_ERRORCODE_COULD_NOT_CREATE_SOCKET }, - { KIO::ERR_COULD_NOT_CONNECT , XDGVFS_ERRORCODE_COULD_NOT_CONNECT }, - { KIO::ERR_CONNECTION_BROKEN , XDGVFS_ERRORCODE_ERR_CONNECTION_BROKEN }, - { KIO::ERR_NOT_FILTER_PROTOCOL , XDGVFS_ERRORCODE_PROTOCOL_ERROR }, - { KIO::ERR_COULD_NOT_MOUNT , XDGVFS_ERRORCODE_COULD_NOT_MOUNT }, - { KIO::ERR_COULD_NOT_UNMOUNT , XDGVFS_ERRORCODE_COULD_NOT_UNMOUNT }, - { KIO::ERR_COULD_NOT_READ , XDGVFS_ERRORCODE_IO_ERROR }, - { KIO::ERR_COULD_NOT_WRITE , XDGVFS_ERRORCODE_IO_ERROR }, - { KIO::ERR_COULD_NOT_BIND , XDGVFS_ERRORCODE_SOCKET_ERROR }, - { KIO::ERR_COULD_NOT_LISTEN , XDGVFS_ERRORCODE_SOCKET_ERROR }, - { KIO::ERR_COULD_NOT_ACCEPT , XDGVFS_ERRORCODE_SOCKET_ERROR }, - { KIO::ERR_COULD_NOT_LOGIN , XDGVFS_ERRORCODE_LOGIN_FAILED }, - { KIO::ERR_COULD_NOT_STAT , XDGVFS_ERRORCODE_OPERATION_FAILED }, - { KIO::ERR_COULD_NOT_CLOSEDIR , XDGVFS_ERRORCODE_OPERATION_FAILED }, - { KIO::ERR_COULD_NOT_MKDIR , XDGVFS_ERRORCODE_OPERATION_FAILED }, - { KIO::ERR_COULD_NOT_RMDIR , XDGVFS_ERRORCODE_OPERATION_FAILED }, - { KIO::ERR_CANNOT_RESUME , XDGVFS_ERRORCODE_CANNOT_RESUME }, - { KIO::ERR_CANNOT_RENAME , XDGVFS_ERRORCODE_NOT_PERMITTED }, - { KIO::ERR_CANNOT_CHMOD , XDGVFS_ERRORCODE_NOT_PERMITTED }, - { KIO::ERR_CANNOT_DELETE , XDGVFS_ERRORCODE_NOT_PERMITTED }, - { KIO::ERR_SLAVE_DIED , XDGVFS_ERRORCODE_INTERNAL }, - { KIO::ERR_OUT_OF_MEMORY , XDGVFS_ERRORCODE_OUT_OF_MEMORY }, - { KIO::ERR_UNKNOWN_PROXY_HOST , XDGVFS_ERRORCODE_UNKNOWN_PROXY_HOST }, - { KIO::ERR_COULD_NOT_AUTHENTICATE , XDGVFS_ERRORCODE_LOGIN_FAILED }, - { KIO::ERR_ABORTED , XDGVFS_ERRORCODE_ABORTED }, - { KIO::ERR_INTERNAL_SERVER , XDGVFS_ERRORCODE_INTERNAL }, - { KIO::ERR_SERVER_TIMEOUT , XDGVFS_ERRORCODE_TIMEOUT }, - { KIO::ERR_SERVICE_NOT_AVAILABLE , XDGVFS_ERRORCODE_SERVICE_NOT_AVAILABLE }, - { KIO::ERR_UNKNOWN , XDGVFS_ERRORCODE_GENERIC }, - { KIO::ERR_UNKNOWN_INTERRUPT , XDGVFS_ERRORCODE_GENERIC }, - { KIO::ERR_CANNOT_DELETE_ORIGINAL , XDGVFS_ERRORCODE_CANNOT_DELETE_ORIGINAL }, - { KIO::ERR_CANNOT_DELETE_PARTIAL , XDGVFS_ERRORCODE_CANNOT_DELETE_PARTIAL }, - { KIO::ERR_CANNOT_RENAME_ORIGINAL , XDGVFS_ERRORCODE_CANNOT_RENAME_ORIGINAL }, - { KIO::ERR_CANNOT_RENAME_PARTIAL , XDGVFS_ERRORCODE_CANNOT_RENAME_PARTIAL }, - { KIO::ERR_NEED_PASSWD , XDGVFS_ERRORCODE_NEED_PASSWD }, - { KIO::ERR_CANNOT_SYMLINK , XDGVFS_ERRORCODE_NOT_PERMITTED }, - { KIO::ERR_NO_CONTENT , XDGVFS_ERRORCODE_NO_CONTENT }, - { KIO::ERR_DISK_FULL , XDGVFS_ERRORCODE_NO_SPACE }, - { KIO::ERR_IDENTICAL_FILES , XDGVFS_ERRORCODE_IDENTICAL_FILES }, - { KIO::ERR_SLAVE_DEFINED , XDGVFS_ERRORCODE_INTERNAL }, - { KIO::ERR_UPGRADE_REQUIRED , XDGVFS_ERRORCODE_INTERNAL }, - { KIO::ERR_POST_DENIED , XDGVFS_ERRORCODE_NOT_PERMITTED } -}; - -int translate_kio_error(int kioErr) -{ - int i; - for (i=0;i<sizeof(mapErrArr)/sizeof(MapKioErr);i++) - { - /* printf(" %d %d\n", mapErrArr[i].kioErr, mapErrArr[i].xdgVfsErr); */ - if (mapErrArr[i].kioErr == kioErr) return mapErrArr[i].xdgVfsErr; - } - return XDGVFS_ERRORCODE_GENERIC; - -} - -/* ================ dir watch ================= */ - -KioWrap dirWatchObj; -KDirWatch * dirWatch; -QString changedlist=""; - -bool monitor_inited=false; - -int _init_monitor() -{ - if (!monitor_inited) - { - dirWatch = new KDirWatch(); - QObject::connect(dirWatch, SIGNAL(dirty(const QString &)), - &dirWatchObj, SLOT(dirWatchChanged(const QString &))); - QObject::connect(dirWatch, SIGNAL(deleted(const QString &)), - &dirWatchObj, SLOT(dirWatchChanged(const QString &))); - QObject::connect(dirWatch, SIGNAL(created(const QString &)), - &dirWatchObj, SLOT(dirWatchChanged(const QString &))); - - monitor_inited=true; - } - dirWatch->addFile("/etc/mtab"); - return XDGVFS_ERRORCODE_OK; -} - -int xdg_vfs_monitor(char * uri, int is_directory, int opts) -{ - _init_monitor(); - const KURL full_uri = KURL::fromPathOrURL(uri); - - if (is_directory) dirWatch->addDir(full_uri.pathOrURL()); - else dirWatch->addFile(QString(full_uri.pathOrURL())); - return XDGVFS_ERRORCODE_OK; -} - -int xdg_vfs_monitor_cancel(char * uri, int opts) -{ - _init_monitor(); - dirWatch->removeDir(QString(uri)); - dirWatch->removeFile(QString(uri)); - return XDGVFS_ERRORCODE_OK; -} - -int xdg_vfs_monitor_list_events(int opts) -{ - _init_monitor(); - fprintf(stdout, "%s", changedlist.ascii()); - changedlist = ""; - fflush(stdout); - return XDGVFS_ERRORCODE_OK; -} - -void KioWrap::dirWatchChanged(const QString & path) -{ - const KURL full_uri(path); - fprintf(stderr, "file monitor changed event uri=%s\n", path.ascii()); - changedlist.append("* "); - if (path.compare("/etc/mtab")==0) - { - changedlist.append("system:/media"); - } - else - { - changedlist.append(full_uri.url().ascii()); - } - changedlist.append("\n"); - QApplication::eventLoop()->exitLoop(); -} - - -int incoming_flag=0; - -void KioWrap::sockNotActivated( int socket ) -{ - /* fprintf(stderr, "activated\n"); */ - incoming_flag=1; - QApplication::eventLoop()->exitLoop(); -} - -int xdg_vfs_iterate_mainloop_until_incoming_data(int fd) -{ - _init_monitor(); - incoming_flag=0; - QSocketNotifier sn( fd, QSocketNotifier::Read); - QObject::connect(&sn, SIGNAL(activated( int)), - &dirWatchObj, SLOT(sockNotActivated( int ))); - - /* fprintf(stderr, "enter ml fd=%d\n", fd); */ - QApplication::eventLoop()->exec(); - return incoming_flag; -} - -/* ================ file info ================ */ - -/* for desktop file KDesktopFile could be used... */ - -void print_mimeType(KURL & full_uri, mode_t mode, int opts, bool printIconName) -{ - /* found in http://developer.kde.org/documentation/library/kdeqt/kde3arch/mime.html */ - - KMimeType::Ptr type = KMimeType::findByURL(full_uri, mode, full_uri.isLocalFile(), false); - /* if (type->name() == KMimeType::defaultMimeType()) - puts("mimetype="); */ - xdg_vfs_ppair_str(stdout, "mimetype", type->name().ascii(), opts); - - const char * iconname = type->icon(QString(),false).ascii(); - if (!iconname) iconname="unknown"; - xdg_vfs_ppair_str(stdout, "iconname", iconname, opts); -} - -void print_fileInfo(FILE * f, KURL & full_uri, const KIO::UDSEntry& udsEntry, int opts) -{ - QString filename_s = NULL; - - bool islink = false; - bool hasUri = false; - bool hasIcon = false; - int mode = -1; - - QString uds_uri; - QString uds_linkdest; - - KIO::UDSEntry::ConstIterator it; - for ( it = udsEntry.begin(); it != udsEntry.end(); ++it ) - { - switch ((*it).m_uds) - { - case(KIO::UDS_SIZE | KIO::UDS_SIZE) : - fprintf(f, "size=%lli\n", (*it).m_long); - break; - case(KIO::UDS_USER | KIO::UDS_STRING) : - xdg_vfs_ppair_str(f, "user", (*it).m_str.ascii (), opts); - break; - - case(KIO::UDS_ICON_NAME | KIO::UDS_STRING) : - xdg_vfs_ppair_str(f, "iconname", (*it).m_str.ascii (), opts); - hasIcon = true; - break; - - case(KIO::UDS_GROUP | KIO::UDS_STRING) : - xdg_vfs_ppair_str(f, "group", (*it).m_str.ascii (), opts); - break; - case(KIO::UDS_EXTRA) : - break; - case(KIO::UDS_NAME | KIO::UDS_STRING) : - filename_s = (*it).m_str; - xdg_vfs_ppair_str(f, "basename", (*it).m_str.ascii (), opts); - break; - case(KIO::UDS_ACCESS | KIO::UDS_LONG) : - fprintf(f, "permissions=%lli\n", (*it).m_long); - break; - case(KIO::UDS_MODIFICATION_TIME | KIO::UDS_TIME) : - fprintf(f, "mtime=%lli\n", (*it).m_long); - break; - case(KIO::UDS_ACCESS_TIME | KIO::UDS_TIME) : - fprintf(f, "atime=%lli\n", (*it).m_long); - break; - case(KIO::UDS_CREATION_TIME | KIO::UDS_TIME) : - fprintf(f, "ctime=%lli\n", (*it).m_long); - break; - case(KIO::UDS_FILE_TYPE | KIO::UDS_LONG) : - mode = (*it).m_long; - break; - case(KIO::UDS_LINK_DEST| KIO::UDS_STRING) : - /* xdg_vfs_ppair_str(f, "linkdest", (*it).m_str.ascii (), opts); */ - uds_linkdest = (*it).m_str; - islink=true; - break; - case(KIO::UDS_URL | KIO::UDS_STRING) : - /* xdg_vfs_ppair_str(f, "uri", (*it).m_str.ascii (), opts); */ - uds_uri = (*it).m_str; - hasUri=true; - break; - case(KIO::UDS_MIME_TYPE | KIO::UDS_STRING) : - xdg_vfs_ppair_str(f, "mimetype", (*it).m_str.ascii (), opts); - break; - case(KIO::UDS_GUESSED_MIME_TYPE | KIO::UDS_STRING) : - xdg_vfs_ppair_str(f, "# guessed_mimetype", (*it).m_str.ascii (), opts); - break; - case(KIO::UDS_XML_PROPERTIES) : - break; - } - } - - if (hasUri && islink) - xdg_vfs_ppair_str(f, "uri", uds_linkdest.ascii (), opts); - else if (hasUri) - xdg_vfs_ppair_str(f, "uri", uds_uri.ascii (), opts); - else if (islink) - xdg_vfs_ppair_str(f, "linkdest", uds_linkdest.ascii (), opts); - - - if (mode != -1) - { // we always report the filetype of the target of a link) - char * tstr; - /* - if (islink) - filetype = DA_VFS_FILE_TYPE_SYMBOLIC_LINK; - else { - */ - - if(S_ISREG(mode)) tstr = "REGULAR"; - else if(S_ISDIR(mode)) tstr ="DIRECTORY"; - else if(S_ISFIFO(mode)) tstr="FIFO"; - else if(S_ISSOCK(mode)) tstr="SOCKET"; - else if(S_ISCHR(mode)) tstr="CHARDEV"; - else if(S_ISBLK(mode)) tstr="BLOCKDEV"; - /* if(S_ISLNK(mode)) return DA_VFS_FILE_TYPE_SYMBOLIC_LINK; */ - else tstr="UNKNOWN"; - - fprintf(f, "filetype=%s\n", tstr); - - } - if (!hasUri) - { - KURL fileUrl = KURL(full_uri); - fileUrl.setFileName ( filename_s ); - - xdg_vfs_ppair_str(f, "uri", fileUrl.url().ascii(), opts); - print_mimeType(fileUrl, mode, opts, !hasIcon); - } -} - - -/* =================== KioWrap ==================== */ - -KioWrap::KioWrap() -{ -} - -void KioWrap::termData() -{ - if (state == XDGKDE_STATE_DATA) - { - if (opts & XDGVFS_OPT_DATAESCAPED) - putchar(xdg_vfs_getDataEscChar()); // Escape char - if (opts & XDGVFS_OPT_TAGGED) - putchar(10); - } -} - -void KioWrap::entries(KIO::Job * job, const KIO::UDSEntryList & list) -{ - KIO::UDSEntryList::ConstIterator it; - for ( it = list.begin(); it != list.end(); ++it ) - { - if (opts & XDGVFS_OPT_TAGGED) - puts(XDGVFS_TAG_DIRENTRY); - print_fileInfo(stdout, dir_uri, (*it), opts); - if (!(opts & XDGVFS_OPT_TAGGED)) - putchar(10); - } -} - -void KioWrap::slotData(KIO::Job* job, const QByteArray& data) -{ - int escChar = xdg_vfs_getDataEscChar(); - - int i; - int bytes_read; - char * buffer; - - bytes_read = data.size(); - buffer = (char *)data.data(); - - if (bytes_read == 0) return; // EOF! - - if (opts & XDGVFS_OPT_TAGGED && !(state == XDGKDE_STATE_DATA)) - { puts(opts & XDGVFS_OPT_DATAESCAPED ? XDGVFS_TAG_ESCAPEDDATA_OUT : XDGVFS_TAG_DATA_OUT);} - - state = XDGKDE_STATE_DATA; - - for(i=0;i<bytes_read;i++) - { - int c = (int)buffer[i]; - /* escape char */ - if (c == escChar && opts & XDGVFS_OPT_DATAESCAPED) putchar(escChar); - putchar (c); - } -} - - -void KioWrap::slotDataReq(KIO::Job* job, QByteArray& data) -{ - char buffer[DATA_BUF_SIZE]; - int i, c; - int eofflag=0; - int len = 0; - int escChar = xdg_vfs_getDataEscChar(); - - if (state == XDGKDE_STATE_DATAEND || state == XDGKDE_STATE_FINISHED) - { - state = XDGKDE_STATE_FINISHED; - return; - } - - if (state != XDGKDE_STATE_PUTDATA) { - puts(opts & XDGVFS_OPT_DATAESCAPED ? XDGVFS_TAG_ESCAPEDDATA_IN : XDGVFS_TAG_DATA_IN); - fflush(stdout); - } - - state = XDGKDE_STATE_PUTDATA; - - - for (i=0;i<DATA_BUF_SIZE;i++) - { /* read chunk */ - c = getc(stdin); - if (c==EOF) - { - eofflag =1; - break; - } - if (c == escChar && opts & XDGVFS_OPT_DATAESCAPED) - { - int c2 = getc(stdin); - if (c2==EOF) - { - eofflag =1; - break; - } - if (c2!=escChar) - { - if (c2!='\n') - { - fprintf(stderr, "ERROR: Data escaping error\n"); - errorCode = XDGVFS_ERRORCODE_DATA_ERROR; - return; - } - eofflag = 1; - break; - } - } - buffer[i] = (unsigned char)c; - len++; - } - - /* check for errors */ - if (ferror (stdin)) - { - //fprintf(stderr, "ERROR: Stdin error\n"); - perror("ERROR: Stdin error\n"); - errorCode = XDGVFS_ERRORCODE_DATA_ERROR; - return; - } - - if (len==0) state = XDGKDE_STATE_FINISHED; - - data.duplicate (buffer,len); - /* cout << "That is it:" <<len << ": " << data; */ - if(eofflag) state = XDGKDE_STATE_DATAEND; -} - -void KioWrap::slotMimetype(KIO::Job *job,const QString & type) -{ - - if (opts & XDGVFS_OPT_TAGGED && opts & XDGVFS_OPT_PROGRESS) - { - termData(); - if (state != XDGKDE_STATE_PROGRESS) - { - printf(XDGVFS_TAG_PROGRESS); - putchar(10); - } - printf("mimetype=%s\n", type.ascii()); - type.ascii(); - state = XDGKDE_STATE_PROGRESS; - } -} - -void KioWrap::totalSize(KIO::Job *job, KIO::filesize_t size) -{ - totalsize = size; -/* - if (opts & XDGVFS_OPT_TAGGED && opts & XDGVFS_OPT_PROGRESS) { - termData(); - if (state != XDGKDE_STATE_PROGRESS) { - printf(XDGVFS_TAG_PROGRESS); - putchar(10); - } - printf("totalsize=%lli\n", size); - state = XDGKDE_STATE_PROGRESS; - } -*/ - /* job->kill(true); */ -} - -void KioWrap::processedSize(KIO::Job * job, KIO::filesize_t size) -{ - if (opts & XDGVFS_OPT_TAGGED && opts & XDGVFS_OPT_PROGRESS) - { - termData(); - puts(XDGVFS_TAG_PROGRESS); - state = XDGKDE_STATE_PROGRESS; - printf("total_bytes=%lli\n", totalsize); - printf("bytes_copied=%lli\n", size); - - } - if (xdg_vfs_chk_canceled(opts)) job->kill(false); - -} - -void KioWrap::slotResult(KIO::Job *job) -{ - termData(); - if (job->error()) - { - fprintf(stderr, "ERROR: KIO Job Failure #%d: %s \n---\n", job->error(), job->errorString().ascii()); - - errorCode = translate_kio_error(job->error()); - - /* job->showErrorDialog(); */ - - } - /* else if (opts & XDGVFS_OPT_TAGGED && opts & XDGVFS_OPT_SHOW_METADATA) { // show Metadata - printf(XDGVFS_TAG_METADATA); printf("\n"); - KIO::MetaData metaData = job->metaData(); - if (!metaData.isEmpty()) { - KIO::MetaData::Iterator it; - for ( it = metaData.begin(); it != metaData.end(); ++it ) { - printf("%s=%s\n", it.key().latin1(), it.data().latin1()); - char * value = NULL; - if (it.data().latin1()) - value = strdup(it.data().latin1()); - - } - - } - printf("\n"); - }*/ - state = XDGKDE_STATE_FINISHED; - QApplication::eventLoop()->exitLoop(); -} - -void KioWrap::slotStatResult(KIO::Job* job) -{ - if (job->error()) - { - /* job->showErrorDialog(); */ - fprintf(stderr, "ERROR: KIO StatJob Failure #%d: %s\n", job->error(), job->errorString().ascii() ); - errorCode = translate_kio_error(job->error());; - - } - else - { - KIO::StatJob * statJob = (KIO::StatJob*) job; - - const KIO::UDSEntry& udsEntry = statJob->statResult(); - print_fileInfo(stdout, dir_uri, udsEntry, opts); - - } - QApplication::eventLoop()->exitLoop(); -} - -/* ======================================================== */ - -/* Use uri.url().local8Bit().data() for output? */ - - -int xdg_vfs_init_desklib(int argc, char** argv) -{ - return 0; -} - -int xdg_vfs_iterate_mainloop() -{ - return 0; -} - -/** -* Command: ls -*/ -int xdg_vfs_dir(const char * text_uri, int opts) -{ - KioWrap w; - - w.errorCode = XDGVFS_ERRORCODE_OK; - w.opts = opts; - w.state = XDGKDE_STATE_STARTED; - - w.dir_uri = KURL::fromPathOrURL(text_uri); - w.dir_uri.addPath ("xxxxdummyxxxx"); - - - if (opts & XDGVFS_OPT_TAGGED) puts(XDGVFS_TAG_LS); - - KIO::ListJob *job = KIO::listDir( KURL(text_uri),true,true); - QObject::connect(job, SIGNAL(entries (KIO::Job *, const KIO::UDSEntryList &)), - &w, SLOT(entries (KIO::Job *, const KIO::UDSEntryList &))); - QObject::connect(job, SIGNAL(result(KIO::Job*)), - &w, SLOT(slotResult(KIO::Job*))); - - QApplication::eventLoop()->exec(); - - return w.errorCode; -} - -/** -* Command: info -*/ -int xdg_vfs_getFileInfo(const char * text_uri, int opts) -{ - KioWrap w; - const KURL full_uri = KURL::fromPathOrURL(text_uri); - - w.errorCode = XDGVFS_ERRORCODE_OK; - w.opts = opts; - w.state = XDGKDE_STATE_STARTED; - w.dir_uri = KURL(text_uri); - - if (opts & XDGVFS_OPT_TAGGED) puts(XDGVFS_TAG_FILEINFO); - - KIO::StatJob *job = KIO::stat(full_uri, true); - QObject::connect(job, SIGNAL(result(KIO::Job*)), - &w, SLOT(slotStatResult(KIO::Job*))); - - QApplication::eventLoop()->exec(); - - //print_mimeType(text_uri, opts); - - return w.errorCode; -} - -/** -* Command: setattrs -*/ -int xdg_vfs_setFileInfo(const char * text_uri, XdgVfsSetFileInfoData * fiData, int opts) -{ - KioWrap w; - const KURL full_uri = KURL::fromPathOrURL(text_uri); - - w.errorCode = XDGVFS_ERRORCODE_OK; - w.opts = opts; - w.state = XDGKDE_STATE_STARTED; - - if (opts & XDGVFS_OPT_TAGGED) - { - puts(XDGVFS_TAG_SETATTRS); - xdg_vfs_ppair_str(stdout, "uri", full_uri.url().ascii(), opts); - } - - KFileItemList lstItems; - lstItems.setAutoDelete( TRUE ); - const KFileItem * item = new KFileItem (KURL(full_uri), QString(NULL), (mode_t)0); - - - lstItems.append (item); - - KIO::Job * job = KIO::chmod(lstItems, - fiData->perms, - fiData->setPermsFlag ? 7777 : 0, - QString(fiData->user), - QString(fiData->group), - false, - true - ); -/* - SimpleJob * job = KIO::chmod( const KURL & url, - int permissions - ) -*/ - QObject::connect(job, SIGNAL(result(KIO::Job*)), - &w, SLOT(slotResult(KIO::Job*))); - - QApplication::eventLoop()->exec(); - - return w.errorCode; -} - -/** -* Command: cp/mv -*/ -int xdg_vfs_cp(const char * text_uri_src, const char * text_uri_target, unsigned int perms, int move_flag, int opts) -{ - KioWrap w; - const KURL full_uri_src = KURL::fromPathOrURL(text_uri_src); - const KURL full_uri_target = KURL::fromPathOrURL(text_uri_target); - - w.errorCode = XDGVFS_ERRORCODE_OK; - w.opts = opts; - w.state = XDGKDE_STATE_STARTED; - - if (opts & XDGVFS_OPT_TAGGED) - { - puts(move_flag ? XDGVFS_TAG_MV : XDGVFS_TAG_CP); - xdg_vfs_ppair_str(stdout, "uri_src", full_uri_src.url().ascii(), opts); - xdg_vfs_ppair_str(stdout, "uri_target", full_uri_target.url().ascii(), opts); - } - - KIO::CopyJob * job; - - if (opts & XDGVFS_OPT_OVERWRITE) - { - if (move_flag) - job = KIO::move(full_uri_src, - full_uri_target, - true - ); - else - job = KIO::copy(full_uri_src, - full_uri_target, - true - ); - } else - { - - if (move_flag) - job = KIO::moveAs(full_uri_src, - full_uri_target, - true - ); - else - job = KIO::copyAs(full_uri_src, - full_uri_target, - true - ); - } - - QObject::connect(job, SIGNAL(result(KIO::Job*)), - &w, SLOT(slotResult(KIO::Job*))); - QObject::connect(job, SIGNAL(processedSize(KIO::Job *, KIO::filesize_t)), - &w, SLOT(processedSize(KIO::Job *, KIO::filesize_t))); - QObject::connect(job, SIGNAL(totalSize(KIO::Job *, KIO::filesize_t )), - &w, SLOT(totalSize(KIO::Job *, KIO::filesize_t))); - - QApplication::eventLoop()->exec(); - - return w.errorCode; -} - -/** -* Command: mkdir -*/ -int xdg_vfs_mkdir(const char * text_uri, unsigned int perms, int opts) -{ - KioWrap w; - const KURL full_uri = KURL::fromPathOrURL(text_uri); - - w.errorCode = XDGVFS_ERRORCODE_OK; - w.opts = opts; - w.state = XDGKDE_STATE_STARTED; - - if (opts & XDGVFS_OPT_TAGGED) - { - puts(XDGVFS_TAG_MKDIR); - xdg_vfs_ppair_str(stdout, "uri", full_uri.url().ascii(), opts); - } - - KIO::SimpleJob * job = KIO::mkdir(full_uri, perms); - QObject::connect(job, SIGNAL(result(KIO::Job*)), - &w, SLOT(slotResult(KIO::Job*))); - - QApplication::eventLoop()->exec(); - - return w.errorCode; -} - -/** -* Command: rmdir -*/ -int xdg_vfs_rmdir(const char * text_uri, int opts) -{ - KioWrap w; - const KURL full_uri = KURL::fromPathOrURL(text_uri); - - w.errorCode = XDGVFS_ERRORCODE_OK; - w.opts = opts; - w.state = XDGKDE_STATE_STARTED; - - if (opts & XDGVFS_OPT_TAGGED) - { - puts(XDGVFS_TAG_RMDIR); - xdg_vfs_ppair_str(stdout, "uri", full_uri.url().ascii(), opts); - } - - KIO::SimpleJob * job = KIO::rmdir(full_uri); - QObject::connect(job, SIGNAL(result(KIO::Job*)), - &w, SLOT(slotResult(KIO::Job*))); - - QApplication::eventLoop()->exec(); - - return w.errorCode; -} - -/** -* Command: rm -*/ -int xdg_vfs_rm(const char * text_uri, int opts) -{ - KioWrap w; - - const KURL full_uri = KURL::fromPathOrURL(text_uri); - - w.errorCode = XDGVFS_ERRORCODE_OK; - w.opts = opts; - w.state = XDGKDE_STATE_STARTED; - - if (opts & XDGVFS_OPT_TAGGED) - { - puts(XDGVFS_TAG_RM); - xdg_vfs_ppair_str(stdout, "uri", full_uri.url().ascii(), opts); - } - - KIO::DeleteJob * job = KIO::del(full_uri, - false, - true - ); - QObject::connect(job, SIGNAL(result(KIO::Job*)), - &w, SLOT(slotResult(KIO::Job*))); - - QApplication::eventLoop()->exec(); - - return w.errorCode; -} - -/** -* Command: read file -*/ -int xdg_vfs_get(const char * text_uri, int opts) -{ - const KURL full_uri = KURL::fromPathOrURL(text_uri); - - if (opts & XDGVFS_OPT_GET_FILEINFO) - { - int rr; - if (!(opts & XDGVFS_OPT_TAGGED)) - { - fprintf(stderr, "ERROR: qry fileinfo in 'get' command requires tagged mode!\n"); - return XDGVFS_ERRORCODE_BAD_PARAMETER; - } - rr=xdg_vfs_getFileInfo(text_uri, opts); - if (rr != 0) return rr; - } - - if (opts & XDGVFS_OPT_TAGGED) - { - puts(XDGVFS_TAG_GET); - xdg_vfs_ppair_str(stdout, "uri", full_uri.url().ascii(), opts); - } - - KioWrap w; - - w.errorCode = XDGVFS_ERRORCODE_OK; - w.opts = opts; - w.state = XDGKDE_STATE_STARTED; - - KIO::TransferJob *job = KIO::get(full_uri); - QObject::connect(job, SIGNAL(data(KIO::Job*, const QByteArray&)), - &w, SLOT(slotData(KIO::Job*, const QByteArray&))); - QObject::connect(job, SIGNAL(result(KIO::Job*)), - &w, SLOT(slotResult(KIO::Job*))); - QObject::connect(job, SIGNAL(mimetype(KIO::Job *,const QString &)), - &w, SLOT(slotMimetype(KIO::Job *,const QString &))); - - - QApplication::eventLoop()->exec(); - return w.errorCode; -} - -/** -* Command: write file -*/ -int xdg_vfs_put(const char * text_uri, int perms, int opts) -{ - const KURL full_uri = KURL::fromPathOrURL(text_uri); - KioWrap w; - - w.errorCode = XDGVFS_ERRORCODE_OK; - w.opts = opts; - w.state = XDGKDE_STATE_STARTED; - - if (opts & XDGVFS_OPT_TAGGED) - { - puts(XDGVFS_TAG_PUT); - xdg_vfs_ppair_str(stdout, "uri", full_uri.url().ascii(), opts); - // puts(opts & XDGVFS_OPT_DATAESCAPED ? XDGVFS_TAG_ESCAPEDDATA_IN : XDGVFS_TAG_DATA_IN); - } - - KIO::TransferJob * job = KIO::put( - full_uri, - XDGVFS_DEFAULT_FILE_PERMISSIONS, - (opts & XDGVFS_OPT_OVERWRITE), - false, - false - ); - QObject::connect(job, SIGNAL(result(KIO::Job*)), - &w, SLOT(slotResult(KIO::Job*))); - QObject::connect(job, SIGNAL(dataReq(KIO::Job *,QByteArray &)), - &w, SLOT(slotDataReq(KIO::Job *,QByteArray &))); - QApplication::eventLoop()->exec(); - return w.errorCode; -} - -/** -* Command: open file dialog -*/ -int xdg_vfs_openfiledlg(const char * default_dir, const char * default_filename, const char * title, int opts) -{ - KURL filename=KFileDialog::getOpenURL(QString (default_dir), "*", NULL ); - if (filename.url()!=NULL) - { - if (!(opts & XDGVFS_OPT_INSTANT_GET) || opts & XDGVFS_OPT_TAGGED) - { - if (opts & XDGVFS_OPT_TAGGED) puts(XDGVFS_TAG_OPENFILEDLG); - if (filename.isLocalFile ()) - fprintf(stdout, "selected_localpath=%s/%s\n", - filename.directory().ascii(), filename.fileName().ascii()); - fprintf(stdout, "selected_uri=%s\n", filename.url().ascii()); - //fprintf(stdout, "\n"); - if (xdg_vfs_getCustomEndSeparator()) - fprintf(stdout, "\n%s\n", xdg_vfs_getCustomEndSeparator()); - } - - if (opts & XDGVFS_OPT_INSTANT_GET) return xdg_vfs_get(filename.url().ascii(), opts); - return 0; - } else - { - fprintf(stderr, "ERROR: Dialog canceled\n"); - return XDGVFS_ERRORCODE_CANCELED; - } -} - -/** -* Command: save file dialog -*/ -int xdg_vfs_savefiledlg(const char * default_dir, const char * default_filename, - const char * title, unsigned int perms, int opts) -{ - QString daf = QString (default_dir) + QString (default_filename); - - KURL filename=KFileDialog::getSaveURL(daf, "*", NULL ); - if (filename.url() != NULL) - { - if (!(opts & XDGVFS_OPT_INSTANT_GET) || opts & XDGVFS_OPT_TAGGED) - { - if (opts & XDGVFS_OPT_TAGGED) puts(XDGVFS_TAG_SAVEFILEDLG); - if (filename.isLocalFile ()) - fprintf(stdout, "selected_localpath=%s/%s\n", - filename.directory().ascii(), filename.fileName().ascii()); - fprintf(stdout, "selected_uri=%s\n", filename.url().ascii()); - //fprintf(stdout, "\n"); - if (xdg_vfs_getCustomEndSeparator()) - fprintf(stdout, "\n%s\n", xdg_vfs_getCustomEndSeparator()); - } - - if (opts & XDGVFS_OPT_INSTANT_PUT) - return xdg_vfs_put(filename.url().ascii(), perms, opts | XDGVFS_OPT_OVERWRITE); - return 0; - - } - else - { - fprintf(stderr, "ERROR: Dialog canceled\n"); - return XDGVFS_ERRORCODE_CANCELED; - } -} - -int xdg_vfs_mount(const char * mountpoint_id, int opts) -{ - return XDGVFS_ERRORCODE_NOT_SUPPORTED; -} -int xdg_vfs_backend(int opts) -{ - if (opts & XDGVFS_OPT_TAGGED) - { - puts(XDGVFS_TAG_BACKEND); - } - xdg_vfs_ppair_str(stdout, "backend_id", "kde", opts); - xdg_vfs_ppair_str(stdout, "system_uri", "system:/", opts); - xdg_vfs_ppair_str(stdout, "file_icon_theme", "crystalsvg", opts); - return XDGVFS_ERRORCODE_OK; -} -/** -* main() -*/ -int main( int argc, char* argv[] ) -{ - KCmdLineArgs::init( 1, argv, "xdg_vfs_kde", I18N_NOOP( "xdg_vfs_kde" ), I18N_NOOP( "xdg_vfs_kde" ), "0.1" ); - - KApplication app; - - return xdg_vfs_main(argc, argv); -} - diff --git a/portland/libxdg-vfs/xdg-vfs-kde/src/xdg_vfs_kde.h b/portland/libxdg-vfs/xdg-vfs-kde/src/xdg_vfs_kde.h deleted file mode 100644 index 8c13d6b..0000000 --- a/portland/libxdg-vfs/xdg-vfs-kde/src/xdg_vfs_kde.h +++ /dev/null @@ -1,100 +0,0 @@ -/* -# xdg_vfs_kde.h -# -# Copyright 2006, Norbert Frese -# -# LICENSE: -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -# OTHER DEALINGS IN THE SOFTWARE. -# -#---------------------------------------------*/ - -#ifndef XDG_VFS_KDE_H -#define XDG_VFS_KDE_H - -#include <qobject.h> -#include <qeventloop.h> -#include <kio/job.h> -#include <kio/jobclasses.h> - -#define XDGKDE_STATE_STARTED 1 -#define XDGKDE_STATE_INFO 2 -#define XDGKDE_STATE_PROGRESS 3 -#define XDGKDE_STATE_DATA 4 -#define XDGKDE_STATE_PUTDATA 5 -#define XDGKDE_STATE_DATAEND 6 -#define XDGKDE_STATE_METADATA 7 -#define XDGKDE_STATE_FINISHED 8 - -class KioWrap : public QObject -{ - Q_OBJECT -public: - KioWrap(); - - int errorCode; - int opts; - int state; - KURL dir_uri; - KIO::filesize_t totalsize; - - void termData(); - -public slots: - - /* listDir */ - - void entries(KIO::Job * job, const KIO::UDSEntryList & list); - - /* getFile */ - - void slotData(KIO::Job*, const QByteArray& data); - - void slotDataReq(KIO::Job*, QByteArray& data); - - void slotMimetype(KIO::Job *job,const QString & type); - - void slotResult(KIO::Job *job); - - void totalSize(KIO::Job *job, KIO::filesize_t size); - - void processedSize(KIO::Job *, KIO::filesize_t); - - /* getFileInfo */ - - void slotStatResult(KIO::Job *job); - - /* directory monitoring */ - - /* - void dirWatchDirty(const QString & path); - - void dirWatchCreated(const QString & path); - - void dirWatchDeleted(const QString & path); - */ - - void dirWatchChanged(const QString & path); - - void sockNotActivated ( int socket ); - - -}; - -#endif diff --git a/portland/xdg-utils/tests/README b/portland/xdg-utils/tests/README index 1c385d3..26469f2 100644 --- a/portland/xdg-utils/tests/README +++ b/portland/xdg-utils/tests/README @@ -5,7 +5,8 @@ Created 6/27/2006 by Tom Whipple <tom.whipple@intel.com> RUNNING XDG-UTILS TESTS ----------------------- -At a minimum, you must have your current directory be the same as the directory containing this README. Then, simply execute +At a minimum, you must have your current directory be the same as the +directory containing this README. Then, simply execute: $ ./testrun WARNING: guessed XDG_TEST_DIR to be /home/tw/portland/xdg-utils/tests @@ -20,11 +21,12 @@ NOT OK! FAIL indicates (not suprisingly) a test failure. NORESULT indicates that the test prerequisites failed for some reason. (e.g. the install phase of an uninstall test failed) -UNTESTED means that something needed was not found. This is fine and should be ignored. - These tests are not counted in the total, only attempted. +UNTESTED means that something needed was not found. This is fine and should + be ignored. These tests are not counted in the total, only attempted. (e.g. test requires root, but we are not running as root) -NOTE: The test runner makes guesses about appropriate values of XDG_TEST_DIR and PATH. These values can be overriden explicitly. +NOTE: The test runner makes guesses about appropriate values of XDG_TEST_DIR + and PATH. These values can be overriden explicitly. To run tests individually, or as smaller groups do something like @@ -32,69 +34,91 @@ $ ./testrun xdg-mime OR -$ ./testrun xdg-mime/t.user_mime_install +$ ./testrun xdg-mime/t.10-user_mime_install OR (if you have defined XDG_TEST_DIR and PATH correctly) -$ xdg-mime/t.user_mime_install +$ xdg-mime/t.10-user_mime_install BACKUPS ------- -THESE TESTS CHANGE YOUR USER ENVIRONMENT. Effort is made to keep pollution to a minimum, but we make no guarantees!! Back up your environment/system early and often. This is especially critical if you run tests as root. You have been warned. +THESE TESTS CHANGE YOUR USER ENVIRONMENT. Effort is made to keep pollution +to a minimum, but we make no guarantees!! Back up your environment/system +early and often. This is especially critical if you run tests as root. You +have been warned. INTERACTIVE TESTS ----------------- -Because it is difficult to verify the way things appear to the user, some tests are interactive and require the user to verify or perform actions. This is sometimes annoying, so interactive tests can be disabled with the -I flag. Note that if you run tests non-interactively, some tests (xdg-email) may generate strange errors on the screen, since the test cleans up support files before the email client tries to read them. Use the -C option to work around this. +Because it is difficult to verify the way things appear to the user, some +tests are interactive and require the user to verify or perform actions. +This is sometimes annoying, so interactive tests can be disabled with the +-I flag. Note that if you run tests non-interactively, some tests +(xdg-email) may generate strange errors on the screen, since the test +cleans up support files before the email client tries to read them. Use +the -C option to work around this. PRIVILEGED TESTS --------------- BACK UP YOUR SYSTEM. See above. -Some tests require root (e.g. those commands with a --system option). So, tests in this group return UNTESTED if they are not run as root. - -It is STRONGLY recommended to do 'su -' and then run the tests, rather than using sudo or su -c, since both of the latter methods leave various environment variables (HOME, etc) unchanged from the login user's shell. +Some tests require root (e.g. those commands with a --system option). So, +tests in this group return UNTESTED if they are not run as root. + +The test runner will ask for the root password in order to run these tests +as the root user. CLEANUP ------- -Tests should clean up after themselves. However, this sometimes fails, so use -'sudo make tests-clean' or 'make tests-userclean'. (Note that you must have generated a makefile via 'cd .. && ./configure' at some point.) +Tests should clean up after themselves. However, this sometimes fails, +so use 'sudo make tests-clean' or 'make tests-userclean'. +(Note that you must have generated a makefile via 'cd .. && ./configure' +at some point.) DIRECTORY STRUCTURE ------------------- xdg-* tests for each util include "library" code used by most tests -generic generic tests to be run on most utilities. See xdg-mime/t.apply_generic +generic generic tests to be run on most utilities. + See xdg-mime/t.apply_generic WRITING XDG-UTILS TESTS ----------------------- -See xdg-mime/t.user_mime_install as an example. +See xdg-mime/t.10-user_mime_install as an example. Each test is as follows test_function() { -- Tests are functions for TET integration. test_start "test description" -- required to begin a test -test_purpose "verbose text" -- optionally provide a verbose description. not used. -test_init -- optionally begin a prerequisite section. assertions - that fail here cause NORESULT rather than FAIL +test_purpose "verbose text" -- optionally provide a verbose description. + not used. +test_init -- optionally begin a prerequisite section. + assertions that fail here cause NORESULT + rather than FAIL <pre-assertions> -test_procedure -- required to begin the actuall test assertions +test_procedure -- required to begin the actuall test + assertions <test-assertions> -test_result -- required to generate result codes. Must be last. +test_result -- required to generate result codes. + Must be last. } run_test test_function - OR - repeat_test test_function NVARS V1 ... VN V1val1 ... V1valM ... VNval1 ... VNvalM -- one of the above is required. - see inlcude/testcontrol.sh for detail + see include/testcontrol.sh for detail -Questions? Email tom.whipple@intel.com +For questions or feedback, please use the Portland mailinglist at +http://lists.freedesktop.org/mailman/listinfo/portland + +Test results can be submitted on +http://portland.freedesktop.org/testreport.html diff --git a/portland/xdg-utils/tests/testrun b/portland/xdg-utils/tests/testrun index 7370c16..5d7caca 100755 --- a/portland/xdg-utils/tests/testrun +++ b/portland/xdg-utils/tests/testrun @@ -166,6 +166,10 @@ if [ -z "$XDG_TEST_SELF_LAUNCH" ] ; then # not su'd EC=0 echo "ok" fi + if [ -z "$*" ] ; then + echo "Please consider submitting your test report to" + echo "http://portland.freedesktop.org/testreport.html" + fi exit "$EC" else ## Running su'd. save results. |