diff --git a/sflphone-gtk/AUTHORS b/sflphone-gtk/AUTHORS new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/sflphone-gtk/COPYING b/sflphone-gtk/COPYING new file mode 100644 index 0000000000000000000000000000000000000000..623b6258a134210f0b0ada106fdaab7f0370d9c5 --- /dev/null +++ b/sflphone-gtk/COPYING @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 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. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, 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 software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, 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 redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +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 give any other recipients of the Program a copy of this License +along with the Program. + +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 Program or any portion +of it, thus forming a work based on the Program, 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) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +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 Program, 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 Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) 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; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, 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 executable. 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. + +If distribution of executable or 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 counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program 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. + + 5. 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 Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program 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. + + 7. 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 Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program 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 Program. + +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. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program 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. + + 9. The Free Software Foundation may publish revised and/or new versions +of the 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 Program +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 Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, 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 + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "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 PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. 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 PROGRAM 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 PROGRAM (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 PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), 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 Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. 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 program's name and a brief idea of what it does.> + Copyright (C) <year> <name of author> + + 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 + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + <signature of Ty Coon>, 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. diff --git a/sflphone-gtk/ChangeLog b/sflphone-gtk/ChangeLog new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/sflphone-gtk/INSTALL b/sflphone-gtk/INSTALL new file mode 100644 index 0000000000000000000000000000000000000000..23e5f25d0e5f85798dcfb368ecb2f04f59777f61 --- /dev/null +++ b/sflphone-gtk/INSTALL @@ -0,0 +1,236 @@ +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/sflphone-gtk/Makefile.am b/sflphone-gtk/Makefile.am new file mode 100644 index 0000000000000000000000000000000000000000..3549f3d0260e91ca918bacc7e74450b5744c7528 --- /dev/null +++ b/sflphone-gtk/Makefile.am @@ -0,0 +1,2 @@ +SUBDIRS = src pixmaps + diff --git a/sflphone-gtk/NEWS b/sflphone-gtk/NEWS new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/sflphone-gtk/README b/sflphone-gtk/README new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/sflphone-gtk/config.guess b/sflphone-gtk/config.guess new file mode 100755 index 0000000000000000000000000000000000000000..ad5281e66e9def96e03533881ed570a8a495ccd5 --- /dev/null +++ b/sflphone-gtk/config.guess @@ -0,0 +1,1466 @@ +#! /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-08-03' + +# 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 ; set_cc_for_build= ;' + +# 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 + 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*:*:* | x86_64: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; } + ;; + or32:Linux:*:*) + echo or32-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/sflphone-gtk/config.h b/sflphone-gtk/config.h new file mode 100644 index 0000000000000000000000000000000000000000..aeac5aa0442551f6abffba911a5866fe53f26397 --- /dev/null +++ b/sflphone-gtk/config.h @@ -0,0 +1,26 @@ +/* config.h. Generated from config.h.in by configure. */ +/* config.h.in. Generated from configure.ac by autoheader. */ + +/* Name of package */ +#define PACKAGE "SFLPhone" + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "sflphoneteam@savoirfairelinux.com" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "SFLPhone" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "SFLPhone 0.8" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "sflphone" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "0.8" + +/* Define to 1 if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Version number of package */ +#define VERSION "0.8" diff --git a/sflphone-gtk/config.h.in b/sflphone-gtk/config.h.in new file mode 100644 index 0000000000000000000000000000000000000000..b168b3e5ce74470c5a279ceaee1e1138761dcb06 --- /dev/null +++ b/sflphone-gtk/config.h.in @@ -0,0 +1,25 @@ +/* config.h.in. Generated from configure.ac by autoheader. */ + +/* Name of package */ +#undef PACKAGE + +/* Define to the address where bug reports for this package should be sent. */ +#undef PACKAGE_BUGREPORT + +/* Define to the full name of this package. */ +#undef PACKAGE_NAME + +/* Define to the full name and version of this package. */ +#undef PACKAGE_STRING + +/* Define to the one symbol short name of this package. */ +#undef PACKAGE_TARNAME + +/* Define to the version of this package. */ +#undef PACKAGE_VERSION + +/* Define to 1 if you have the ANSI C header files. */ +#undef STDC_HEADERS + +/* Version number of package */ +#undef VERSION diff --git a/sflphone-gtk/config.log b/sflphone-gtk/config.log new file mode 100644 index 0000000000000000000000000000000000000000..4ae8e769917cda66bd3906192c6fb09af84b6536 --- /dev/null +++ b/sflphone-gtk/config.log @@ -0,0 +1,414 @@ +This file contains any messages produced by compilers while +running configure, to aid debugging if configure makes a mistake. + +It was created by SFLPhone configure 0.8, which was +generated by GNU Autoconf 2.61. Invocation command line was + + $ ./configure --with-debug + +## --------- ## +## Platform. ## +## --------- ## + +hostname = pierre-luc-desktop +uname -m = i686 +uname -r = 2.6.20-16-lowlatency +uname -s = Linux +uname -v = #2 SMP PREEMPT Thu Jun 7 20:23:03 UTC 2007 + +/usr/bin/uname -p = unknown +/bin/uname -X = unknown + +/bin/arch = i686 +/usr/bin/arch -k = unknown +/usr/convex/getsysinfo = unknown +/usr/bin/hostinfo = unknown +/bin/machine = unknown +/usr/bin/oslevel = unknown +/bin/universe = unknown + +PATH: /usr/local/sbin +PATH: /usr/local/bin +PATH: /usr/sbin +PATH: /usr/bin +PATH: /sbin +PATH: /bin +PATH: /usr/games + + +## ----------- ## +## Core tests. ## +## ----------- ## + +configure:1755: checking for a BSD-compatible install +configure:1811: result: /usr/bin/install -c +configure:1822: checking whether build environment is sane +configure:1865: result: yes +configure:1930: checking for gawk +configure:1946: found /usr/bin/gawk +configure:1957: result: gawk +configure:1968: checking whether make sets $(MAKE) +configure:1989: result: yes +configure:2235: checking for gcc +configure:2262: result: colorgcc +configure:2500: checking for C compiler version +configure:2507: colorgcc --version >&5 +gcc (GCC) 4.1.2 (Ubuntu 4.1.2-0ubuntu4) +Copyright (C) 2006 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. + +configure:2510: $? = 0 +configure:2517: colorgcc -v >&5 +Using built-in specs. +Target: i486-linux-gnu +Configured with: ../src/configure -v --enable-languages=c,c++,fortran,objc,obj-c++,treelang --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --program-suffix=-4.1 --enable-__cxa_atexit --enable-clocale=gnu --enable-libstdcxx-debug --enable-mpfr --enable-checking=release i486-linux-gnu +Thread model: posix +gcc version 4.1.2 (Ubuntu 4.1.2-0ubuntu4) +configure:2520: $? = 0 +configure:2527: colorgcc -V >&5 +gcc: '-V' option must have argument +configure:2530: $? = 1 +configure:2553: checking for C compiler default output file name +configure:2580: colorgcc -g -DDEBUG conftest.c >&5 +configure:2583: $? = 0 +configure:2621: result: a.out +configure:2638: checking whether the C compiler works +configure:2648: ./a.out +configure:2651: $? = 0 +configure:2668: result: yes +configure:2675: checking whether we are cross compiling +configure:2677: result: no +configure:2680: checking for suffix of executables +configure:2687: colorgcc -o conftest -g -DDEBUG conftest.c >&5 +configure:2690: $? = 0 +configure:2714: result: +configure:2720: checking for suffix of object files +configure:2746: colorgcc -c -g -DDEBUG conftest.c >&5 +configure:2749: $? = 0 +configure:2772: result: o +configure:2776: checking whether we are using the GNU C compiler +configure:2805: colorgcc -c -g -DDEBUG conftest.c >&5 +configure:2811: $? = 0 +configure:2828: result: yes +configure:2833: checking whether colorgcc accepts -g +configure:2863: colorgcc -c -g conftest.c >&5 +configure:2869: $? = 0 +configure:2968: result: yes +configure:2985: checking for colorgcc option to accept ISO C89 +configure:3059: colorgcc -c -g -DDEBUG conftest.c >&5 +configure:3065: $? = 0 +configure:3088: result: none needed +configure:3117: checking for style of include used by make +configure:3145: result: GNU +configure:3173: checking dependency style of colorgcc +configure:3263: result: gcc3 +configure:3293: checking for a BSD-compatible install +configure:3349: result: /usr/bin/install -c +configure:3366: checking how to run the C preprocessor +configure:3406: colorgcc -E conftest.c +configure:3412: $? = 0 +configure:3443: colorgcc -E conftest.c +conftest.c:10:28: error: ac_nonexistent.h: No such file or directory +configure:3449: $? = 1 +configure: failed program was: +| /* confdefs.h. */ +| #define PACKAGE_NAME "SFLPhone" +| #define PACKAGE_TARNAME "sflphone" +| #define PACKAGE_VERSION "0.8" +| #define PACKAGE_STRING "SFLPhone 0.8" +| #define PACKAGE_BUGREPORT "sflphoneteam@savoirfairelinux.com" +| #define PACKAGE "SFLPhone" +| #define VERSION "0.8" +| /* end confdefs.h. */ +| #include <ac_nonexistent.h> +configure:3482: result: colorgcc -E +configure:3511: colorgcc -E conftest.c +configure:3517: $? = 0 +configure:3548: colorgcc -E conftest.c +conftest.c:10:28: error: ac_nonexistent.h: No such file or directory +configure:3554: $? = 1 +configure: failed program was: +| /* confdefs.h. */ +| #define PACKAGE_NAME "SFLPhone" +| #define PACKAGE_TARNAME "sflphone" +| #define PACKAGE_VERSION "0.8" +| #define PACKAGE_STRING "SFLPhone 0.8" +| #define PACKAGE_BUGREPORT "sflphoneteam@savoirfairelinux.com" +| #define PACKAGE "SFLPhone" +| #define VERSION "0.8" +| /* end confdefs.h. */ +| #include <ac_nonexistent.h> +configure:3592: checking for grep that handles long lines and -e +configure:3666: result: /bin/grep +configure:3671: checking for egrep +configure:3749: result: /bin/grep -E +configure:3754: checking for ANSI C header files +configure:3784: colorgcc -c -g -DDEBUG conftest.c >&5 +configure:3790: $? = 0 +configure:3889: colorgcc -o conftest -g -DDEBUG conftest.c >&5 +configure:3892: $? = 0 +configure:3898: ./conftest +configure:3901: $? = 0 +configure:3918: result: yes +configure:3978: checking for pkg-config +configure:3996: found /usr/bin/pkg-config +configure:4008: result: /usr/bin/pkg-config +configure:4037: checking pkg-config is at least version 0.9.0 +configure:4040: result: yes +configure:4051: checking for DEPS +configure:4063: $PKG_CONFIG --exists --print-errors "\ + dbus-glib-1 >= 0.35 \ + gtk+-2.0 >= 2.2 \ + glib-2.0 >= 2.2 \ +" +configure:4070: $? = 0 +configure:4093: $PKG_CONFIG --exists --print-errors "\ + dbus-glib-1 >= 0.35 \ + gtk+-2.0 >= 2.2 \ + glib-2.0 >= 2.2 \ +" +configure:4100: $? = 0 +configure:4196: result: yes +configure:4321: creating ./config.status + +## ---------------------- ## +## Running config.status. ## +## ---------------------- ## + +This file was extended by SFLPhone config.status 0.8, which was +generated by GNU Autoconf 2.61. Invocation command line was + + CONFIG_FILES = + CONFIG_HEADERS = + CONFIG_LINKS = + CONFIG_COMMANDS = + $ ./config.status + +on pierre-luc-desktop + +config.status:638: creating Makefile +config.status:638: creating src/Makefile +config.status:638: creating pixmaps/Makefile +config.status:638: creating config.h +config.status:849: config.h is unchanged +config.status:895: executing depfiles commands + +## ---------------- ## +## Cache variables. ## +## ---------------- ## + +ac_cv_c_compiler_gnu=yes +ac_cv_env_CC_set=set +ac_cv_env_CC_value=colorgcc +ac_cv_env_CFLAGS_set= +ac_cv_env_CFLAGS_value= +ac_cv_env_CPPFLAGS_set= +ac_cv_env_CPPFLAGS_value= +ac_cv_env_CPP_set= +ac_cv_env_CPP_value= +ac_cv_env_DEPS_CFLAGS_set= +ac_cv_env_DEPS_CFLAGS_value= +ac_cv_env_DEPS_LIBS_set= +ac_cv_env_DEPS_LIBS_value= +ac_cv_env_LDFLAGS_set= +ac_cv_env_LDFLAGS_value= +ac_cv_env_LIBS_set= +ac_cv_env_LIBS_value= +ac_cv_env_PKG_CONFIG_set= +ac_cv_env_PKG_CONFIG_value= +ac_cv_env_build_alias_set= +ac_cv_env_build_alias_value= +ac_cv_env_host_alias_set= +ac_cv_env_host_alias_value= +ac_cv_env_target_alias_set= +ac_cv_env_target_alias_value= +ac_cv_header_stdc=yes +ac_cv_objext=o +ac_cv_path_EGREP='/bin/grep -E' +ac_cv_path_GREP=/bin/grep +ac_cv_path_ac_pt_PKG_CONFIG=/usr/bin/pkg-config +ac_cv_path_install='/usr/bin/install -c' +ac_cv_prog_AWK=gawk +ac_cv_prog_CPP='colorgcc -E' +ac_cv_prog_ac_ct_CC=colorgcc +ac_cv_prog_cc_c89= +ac_cv_prog_cc_g=yes +ac_cv_prog_make_make_set=yes +am_cv_CC_dependencies_compiler_type=gcc3 +pkg_cv_DEPS_CFLAGS='-I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/libpng12 ' +pkg_cv_DEPS_LIBS='-ldbus-glib-1 -ldbus-1 -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangocairo-1.0 -lfontconfig -lXext -lXrender -lXinerama -lXi -lXrandr -lXcursor -lXfixes -lpango-1.0 -lcairo -lX11 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 ' + +## ----------------- ## +## Output variables. ## +## ----------------- ## + +ACLOCAL='${SHELL} /home/plbeaudoin/SFLPhone/sflphone-gtk/missing --run aclocal-1.9' +AMDEPBACKSLASH='\' +AMDEP_FALSE='#' +AMDEP_TRUE='' +AMTAR='${SHELL} /home/plbeaudoin/SFLPhone/sflphone-gtk/missing --run tar' +AUTOCONF='${SHELL} /home/plbeaudoin/SFLPhone/sflphone-gtk/missing --run autoconf' +AUTOHEADER='${SHELL} /home/plbeaudoin/SFLPhone/sflphone-gtk/missing --run autoheader' +AUTOMAKE='${SHELL} /home/plbeaudoin/SFLPhone/sflphone-gtk/missing --run automake-1.9' +AWK='gawk' +CC='colorgcc' +CCDEPMODE='depmode=gcc3' +CFLAGS=' -g -DDEBUG' +CPP='colorgcc -E' +CPPFLAGS='' +CYGPATH_W='echo' +DEFS='-DHAVE_CONFIG_H' +DEPDIR='.deps' +DEPS_CFLAGS='-I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/libpng12 ' +DEPS_LIBS='-ldbus-glib-1 -ldbus-1 -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangocairo-1.0 -lfontconfig -lXext -lXrender -lXinerama -lXi -lXrandr -lXcursor -lXfixes -lpango-1.0 -lcairo -lX11 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 ' +ECHO_C='' +ECHO_N='-n' +ECHO_T='' +EGREP='/bin/grep -E' +EXEEXT='' +GREP='/bin/grep' +INSTALL_DATA='${INSTALL} -m 644' +INSTALL_PROGRAM='${INSTALL}' +INSTALL_SCRIPT='${INSTALL}' +INSTALL_STRIP_PROGRAM='${SHELL} $(install_sh) -c -s' +LDFLAGS='' +LIBOBJS='' +LIBS='' +LTLIBOBJS='' +MAKEINFO='${SHELL} /home/plbeaudoin/SFLPhone/sflphone-gtk/missing --run makeinfo' +OBJEXT='o' +PACKAGE='SFLPhone' +PACKAGE_BUGREPORT='sflphoneteam@savoirfairelinux.com' +PACKAGE_NAME='SFLPhone' +PACKAGE_STRING='SFLPhone 0.8' +PACKAGE_TARNAME='sflphone' +PACKAGE_VERSION='0.8' +PATH_SEPARATOR=':' +PKG_CONFIG='/usr/bin/pkg-config' +SET_MAKE='' +SHELL='/bin/bash' +STRIP='' +VERSION='0.8' +ac_ct_CC='colorgcc' +am__fastdepCC_FALSE='#' +am__fastdepCC_TRUE='' +am__include='include' +am__leading_dot='.' +am__quote='' +am__tar='${AMTAR} chof - "$$tardir"' +am__untar='${AMTAR} xf -' +bindir='${exec_prefix}/bin' +build_alias='' +datadir='${datarootdir}' +datarootdir='${prefix}/share' +docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' +dvidir='${docdir}' +exec_prefix='${prefix}' +host_alias='' +htmldir='${docdir}' +includedir='${prefix}/include' +infodir='${datarootdir}/info' +install_sh='/home/plbeaudoin/SFLPhone/sflphone-gtk/install-sh' +libdir='${exec_prefix}/lib' +libexecdir='${exec_prefix}/libexec' +localedir='${datarootdir}/locale' +localstatedir='${prefix}/var' +mandir='${datarootdir}/man' +mkdir_p='mkdir -p --' +oldincludedir='/usr/include' +pdfdir='${docdir}' +prefix='/usr/local' +program_transform_name='s,x,x,' +psdir='${docdir}' +sbindir='${exec_prefix}/sbin' +sharedstatedir='${prefix}/com' +sysconfdir='${prefix}/etc' +target_alias='' + +## ----------- ## +## confdefs.h. ## +## ----------- ## + +#define PACKAGE_NAME "SFLPhone" +#define PACKAGE_TARNAME "sflphone" +#define PACKAGE_VERSION "0.8" +#define PACKAGE_STRING "SFLPhone 0.8" +#define PACKAGE_BUGREPORT "sflphoneteam@savoirfairelinux.com" +#define PACKAGE "SFLPhone" +#define VERSION "0.8" +#define STDC_HEADERS 1 + +configure: exit 0 + +## ---------------------- ## +## Running config.status. ## +## ---------------------- ## + +This file was extended by SFLPhone config.status 0.8, which was +generated by GNU Autoconf 2.61. Invocation command line was + + CONFIG_FILES = + CONFIG_HEADERS = + CONFIG_LINKS = + CONFIG_COMMANDS = + $ ./config.status src/Makefile depfiles + +on pierre-luc-desktop + +config.status:638: creating src/Makefile +config.status:895: executing depfiles commands + +## ---------------------- ## +## Running config.status. ## +## ---------------------- ## + +This file was extended by SFLPhone config.status 0.8, which was +generated by GNU Autoconf 2.61. Invocation command line was + + CONFIG_FILES = + CONFIG_HEADERS = + CONFIG_LINKS = + CONFIG_COMMANDS = + $ ./config.status src/Makefile depfiles + +on pierre-luc-desktop + +config.status:638: creating src/Makefile +config.status:895: executing depfiles commands + +## ---------------------- ## +## Running config.status. ## +## ---------------------- ## + +This file was extended by SFLPhone config.status 0.8, which was +generated by GNU Autoconf 2.61. Invocation command line was + + CONFIG_FILES = + CONFIG_HEADERS = + CONFIG_LINKS = + CONFIG_COMMANDS = + $ ./config.status src/Makefile depfiles + +on pierre-luc-desktop + +config.status:638: creating src/Makefile +config.status:895: executing depfiles commands + +## ---------------------- ## +## Running config.status. ## +## ---------------------- ## + +This file was extended by SFLPhone config.status 0.8, which was +generated by GNU Autoconf 2.61. Invocation command line was + + CONFIG_FILES = + CONFIG_HEADERS = + CONFIG_LINKS = + CONFIG_COMMANDS = + $ ./config.status src/Makefile depfiles + +on pierre-luc-desktop + +config.status:638: creating src/Makefile +config.status:895: executing depfiles commands diff --git a/sflphone-gtk/config.status b/sflphone-gtk/config.status new file mode 100755 index 0000000000000000000000000000000000000000..b128f89cd6cccc668bb6cf7d46581b21b1cd7de4 --- /dev/null +++ b/sflphone-gtk/config.status @@ -0,0 +1,1030 @@ +#! /bin/bash +# Generated by configure. +# Run this file to recreate the current configuration. +# Compiler output produced by configure, useful for debugging +# configure, is in config.log if it exists. + +debug=false +ac_cs_recheck=false +ac_cs_silent=false +SHELL=${CONFIG_SHELL-/bin/bash} +## --------------------- ## +## M4sh Initialization. ## +## --------------------- ## + +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in + *posix*) set -o posix ;; +esac + +fi + + + + +# PATH needs CR +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + echo "#! /bin/sh" >conf$$.sh + echo "exit 0" >>conf$$.sh + chmod +x conf$$.sh + if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then + PATH_SEPARATOR=';' + else + PATH_SEPARATOR=: + fi + rm -f conf$$.sh +fi + +# Support unset when possible. +if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then + as_unset=unset +else + as_unset=false +fi + + +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +as_nl=' +' +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +case $0 in + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break +done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + { (exit 1); exit 1; } +fi + +# Work around bugs in pre-3.0 UWIN ksh. +for as_var in ENV MAIL MAILPATH +do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var +done +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +for as_var in \ + LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ + LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ + LC_TELEPHONE LC_TIME +do + if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then + eval $as_var=C; export $as_var + else + ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var + fi +done + +# Required to use basename. +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + + +# Name of the executable. +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + +# CDPATH. +$as_unset CDPATH + + + + as_lineno_1=$LINENO + as_lineno_2=$LINENO + test "x$as_lineno_1" != "x$as_lineno_2" && + test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { + + # Create $as_me.lineno as a copy of $as_myself, but with $LINENO + # uniformly replaced by the line number. The first 'sed' inserts a + # line-number line after each line using $LINENO; the second 'sed' + # does the real work. The second script uses 'N' to pair each + # line-number line with the line containing $LINENO, and appends + # trailing '-' during substitution so that $LINENO is not a special + # case at line end. + # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the + # scripts with optimization help from Paolo Bonzini. Blame Lee + # E. McMahon (1931-1989) for sed's syntax. :-) + sed -n ' + p + /[$]LINENO/= + ' <$as_myself | + sed ' + s/[$]LINENO.*/&-/ + t lineno + b + :lineno + N + :loop + s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ + t loop + s/-\n.*// + ' >$as_me.lineno && + chmod +x "$as_me.lineno" || + { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 + { (exit 1); exit 1; }; } + + # Don't try to exec as it changes $[0], causing all sort of problems + # (the dirname of $[0] is not the place where we might find the + # original and so on. Autoconf is especially sensitive to this). + . "./$as_me.lineno" + # Exit status is that of the last command. + exit +} + + +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in +-n*) + case `echo 'x\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + *) ECHO_C='\c';; + esac;; +*) + ECHO_N='-n';; +esac + +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir +fi +echo >conf$$.file +if ln -s conf$$.file conf$$ 2>/dev/null; then + as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -p'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -p' +elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln +else + as_ln_s='cp -p' +fi +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null + +if mkdir -p . 2>/dev/null; then + as_mkdir_p=: +else + test -d ./-p && rmdir ./-p + as_mkdir_p=false +fi + +if test -x / >/dev/null 2>&1; then + as_test_x='test -x' +else + if ls -dL / >/dev/null 2>&1; then + as_ls_L_option=L + else + as_ls_L_option= + fi + as_test_x=' + eval sh -c '\'' + if test -d "$1"; then + test -d "$1/."; + else + case $1 in + -*)set "./$1";; + esac; + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in + ???[sx]*):;;*)false;;esac;fi + '\'' sh + ' +fi +as_executable_p=$as_test_x + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" + + +exec 6>&1 + +# Save the log message, to keep $[0] and so on meaningful, and to +# report actual input values of CONFIG_FILES etc. instead of their +# values after options handling. +ac_log=" +This file was extended by SFLPhone $as_me 0.8, which was +generated by GNU Autoconf 2.61. Invocation command line was + + CONFIG_FILES = $CONFIG_FILES + CONFIG_HEADERS = $CONFIG_HEADERS + CONFIG_LINKS = $CONFIG_LINKS + CONFIG_COMMANDS = $CONFIG_COMMANDS + $ $0 $@ + +on `(hostname || uname -n) 2>/dev/null | sed 1q` +" + +# Files that config.status was made for. +config_files=" Makefile src/Makefile pixmaps/Makefile" +config_headers=" config.h" +config_commands=" depfiles" + +ac_cs_usage="\ +\`$as_me' instantiates files from templates according to the +current configuration. + +Usage: $0 [OPTIONS] [FILE]... + + -h, --help print this help, then exit + -V, --version print version number and configuration settings, then exit + -q, --quiet do not print progress messages + -d, --debug don't remove temporary files + --recheck update $as_me by reconfiguring in the same conditions + --file=FILE[:TEMPLATE] + instantiate the configuration file FILE + --header=FILE[:TEMPLATE] + instantiate the configuration header FILE + +Configuration files: +$config_files + +Configuration headers: +$config_headers + +Configuration commands: +$config_commands + +Report bugs to <bug-autoconf@gnu.org>." + +ac_cs_version="\ +SFLPhone config.status 0.8 +configured by ./configure, generated by GNU Autoconf 2.61, + with options \"'--with-debug' 'CC=colorgcc'\" + +Copyright (C) 2006 Free Software Foundation, Inc. +This config.status script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it." + +ac_pwd='/home/plbeaudoin/SFLPhone/sflphone-gtk' +srcdir='.' +INSTALL='/usr/bin/install -c' +# If no file are specified by the user, then we need to provide default +# value. By we need to know if files were specified by the user. +ac_need_defaults=: +while test $# != 0 +do + case $1 in + --*=*) + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` + ac_shift=: + ;; + *) + ac_option=$1 + ac_optarg=$2 + ac_shift=shift + ;; + esac + + case $ac_option in + # Handling of the options. + -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) + ac_cs_recheck=: ;; + --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) + echo "$ac_cs_version"; exit ;; + --debug | --debu | --deb | --de | --d | -d ) + debug=: ;; + --file | --fil | --fi | --f ) + $ac_shift + CONFIG_FILES="$CONFIG_FILES $ac_optarg" + ac_need_defaults=false;; + --header | --heade | --head | --hea ) + $ac_shift + CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" + ac_need_defaults=false;; + --he | --h) + # Conflict between --help and --header + { echo "$as_me: error: ambiguous option: $1 +Try \`$0 --help' for more information." >&2 + { (exit 1); exit 1; }; };; + --help | --hel | -h ) + echo "$ac_cs_usage"; exit ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil | --si | --s) + ac_cs_silent=: ;; + + # This is an error. + -*) { echo "$as_me: error: unrecognized option: $1 +Try \`$0 --help' for more information." >&2 + { (exit 1); exit 1; }; } ;; + + *) ac_config_targets="$ac_config_targets $1" + ac_need_defaults=false ;; + + esac + shift +done + +ac_configure_extra_args= + +if $ac_cs_silent; then + exec 6>/dev/null + ac_configure_extra_args="$ac_configure_extra_args --silent" +fi + +if $ac_cs_recheck; then + echo "running CONFIG_SHELL=/bin/bash /bin/bash ./configure " '--with-debug' 'CC=colorgcc' $ac_configure_extra_args " --no-create --no-recursion" >&6 + CONFIG_SHELL=/bin/bash + export CONFIG_SHELL + exec /bin/bash "./configure" '--with-debug' 'CC=colorgcc' $ac_configure_extra_args --no-create --no-recursion +fi + +exec 5>>config.log +{ + echo + sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX +## Running $as_me. ## +_ASBOX + echo "$ac_log" +} >&5 + +# +# INIT-COMMANDS +# +AMDEP_TRUE="" ac_aux_dir="." + + +# Handling of arguments. +for ac_config_target in $ac_config_targets +do + case $ac_config_target in + "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; + "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; + "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; + "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; + "pixmaps/Makefile") CONFIG_FILES="$CONFIG_FILES pixmaps/Makefile" ;; + + *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 +echo "$as_me: error: invalid argument: $ac_config_target" >&2;} + { (exit 1); exit 1; }; };; + esac +done + + +# If the user did not use the arguments to specify the items to instantiate, +# then the envvar interface is used. Set only those that are not. +# We use the long form for the default assignment because of an extremely +# bizarre bug on SunOS 4.1.3. +if $ac_need_defaults; then + test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files + test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers + test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands +fi + +# Have a temporary directory for convenience. Make it in the build tree +# simply because there is no reason against having it here, and in addition, +# creating and moving files from /tmp can sometimes cause problems. +# Hook for its removal unless debugging. +# Note that there is a small window in which the directory will not be cleaned: +# after its creation but before its name has been assigned to `$tmp'. +$debug || +{ + tmp= + trap 'exit_status=$? + { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status +' 0 + trap '{ (exit 1); exit 1; }' 1 2 13 15 +} +# Create a (secure) tmp directory for tmp files. + +{ + tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && + test -n "$tmp" && test -d "$tmp" +} || +{ + tmp=./conf$$-$RANDOM + (umask 077 && mkdir "$tmp") +} || +{ + echo "$me: cannot create a temporary directory in ." >&2 + { (exit 1); exit 1; } +} + +# +# Set up the sed scripts for CONFIG_FILES section. +# + +# No need to generate the scripts if there are no CONFIG_FILES. +# This happens for instance when ./config.status config.h +if test -n "$CONFIG_FILES"; then + +cat >"$tmp/subs-1.sed" <<\CEOF +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b end +s,@SHELL@,|#_!!_#|/bin/bash,g +s,@PATH_SEPARATOR@,|#_!!_#|:,g +s,@PACKAGE_NAME@,|#_!!_#|SFLPhone,g +s,@PACKAGE_TARNAME@,|#_!!_#|sflphone,g +s,@PACKAGE_VERSION@,|#_!!_#|0.8,g +s,@PACKAGE_STRING@,|#_!!_#|SFLPhone 0.8,g +s,@PACKAGE_BUGREPORT@,|#_!!_#|sflphoneteam@|#_!!_#|savoirfairelinux.com,g +s,@exec_prefix@,|#_!!_#|${prefix},g +s,@prefix@,|#_!!_#|/usr/local,g +s,@program_transform_name@,|#_!!_#|s\,x\,x\,,g +s,@bindir@,|#_!!_#|${exec_prefix}/bin,g +s,@sbindir@,|#_!!_#|${exec_prefix}/sbin,g +s,@libexecdir@,|#_!!_#|${exec_prefix}/libexec,g +s,@datarootdir@,|#_!!_#|${prefix}/share,g +s,@datadir@,|#_!!_#|${datarootdir},g +s,@sysconfdir@,|#_!!_#|${prefix}/etc,g +s,@sharedstatedir@,|#_!!_#|${prefix}/com,g +s,@localstatedir@,|#_!!_#|${prefix}/var,g +s,@includedir@,|#_!!_#|${prefix}/include,g +s,@oldincludedir@,|#_!!_#|/usr/include,g +s,@docdir@,|#_!!_#|${datarootdir}/doc/${PACKAGE_TARNAME},g +s,@infodir@,|#_!!_#|${datarootdir}/info,g +s,@htmldir@,|#_!!_#|${docdir},g +s,@dvidir@,|#_!!_#|${docdir},g +s,@pdfdir@,|#_!!_#|${docdir},g +s,@psdir@,|#_!!_#|${docdir},g +s,@libdir@,|#_!!_#|${exec_prefix}/lib,g +s,@localedir@,|#_!!_#|${datarootdir}/locale,g +s,@mandir@,|#_!!_#|${datarootdir}/man,g +s,@DEFS@,|#_!!_#|-DHAVE_CONFIG_H,g +s,@ECHO_C@,|#_!!_#|,g +s,@ECHO_N@,|#_!!_#|-n,g +s,@ECHO_T@,|#_!!_#|,g +s,@LIBS@,|#_!!_#|,g +s,@build_alias@,|#_!!_#|,g +s,@host_alias@,|#_!!_#|,g +s,@target_alias@,|#_!!_#|,g +s,@INSTALL_PROGRAM@,|#_!!_#|${INSTALL},g +s,@INSTALL_SCRIPT@,|#_!!_#|${INSTALL},g +s,@INSTALL_DATA@,|#_!!_#|${INSTALL} -m 644,g +s,@CYGPATH_W@,|#_!!_#|echo,g +s,@PACKAGE@,|#_!!_#|SFLPhone,g +s,@VERSION@,|#_!!_#|0.8,g +s,@ACLOCAL@,|#_!!_#|${SHELL} /home/plbeaudoin/SFLPhone/sflphone-gtk/missing --run aclocal-1.9,g +s,@AUTOCONF@,|#_!!_#|${SHELL} /home/plbeaudoin/SFLPhone/sflphone-gtk/missing --run autoconf,g +s,@AUTOMAKE@,|#_!!_#|${SHELL} /home/plbeaudoin/SFLPhone/sflphone-gtk/missing --run automake-1.9,g +s,@AUTOHEADER@,|#_!!_#|${SHELL} /home/plbeaudoin/SFLPhone/sflphone-gtk/missing --run autoheader,g +s,@MAKEINFO@,|#_!!_#|${SHELL} /home/plbeaudoin/SFLPhone/sflphone-gtk/missing --run makeinfo,g +s,@install_sh@,|#_!!_#|/home/plbeaudoin/SFLPhone/sflphone-gtk/install-sh,g +s,@STRIP@,|#_!!_#|,g +s,@INSTALL_STRIP_PROGRAM@,|#_!!_#|${SHELL} $(install_sh) -c -s,g +s,@mkdir_p@,|#_!!_#|mkdir -p --,g +s,@AWK@,|#_!!_#|gawk,g +s,@SET_MAKE@,|#_!!_#|,g +s,@am__leading_dot@,|#_!!_#|.,g +s,@AMTAR@,|#_!!_#|${SHELL} /home/plbeaudoin/SFLPhone/sflphone-gtk/missing --run tar,g +s,@am__tar@,|#_!!_#|${AMTAR} chof - "$$tardir",g +s,@am__untar@,|#_!!_#|${AMTAR} xf -,g +s,@CC@,|#_!!_#|colorgcc,g +s,@CFLAGS@,|#_!!_#| -g -DDEBUG,g +s,@LDFLAGS@,|#_!!_#|,g +s,@CPPFLAGS@,|#_!!_#|,g +s,@ac_ct_CC@,|#_!!_#|colorgcc,g +s,@EXEEXT@,|#_!!_#|,g +s,@OBJEXT@,|#_!!_#|o,g +s,@DEPDIR@,|#_!!_#|.deps,g +s,@am__include@,|#_!!_#|include,g +s,@am__quote@,|#_!!_#|,g +s,@AMDEP_TRUE@,|#_!!_#|,g +s,@AMDEP_FALSE@,|#_!!_#|#,g +s,@AMDEPBACKSLASH@,|#_!!_#|\\,g +s,@CCDEPMODE@,|#_!!_#|depmode=gcc3,g +s,@am__fastdepCC_TRUE@,|#_!!_#|,g +s,@am__fastdepCC_FALSE@,|#_!!_#|#,g +s,@CPP@,|#_!!_#|colorgcc -E,g +s,@GREP@,|#_!!_#|/bin/grep,g +s,@EGREP@,|#_!!_#|/bin/grep -E,g +s,@PKG_CONFIG@,|#_!!_#|/usr/bin/pkg-config,g +s,@DEPS_CFLAGS@,|#_!!_#|-I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/libpng12 ,g +s,@DEPS_LIBS@,|#_!!_#|-ldbus-glib-1 -ldbus-1 -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangocairo-1.0 -lfontconfig -lXext -lXrender -lXinerama -lXi -lXrandr -lXcursor -lXfixes -lpango-1.0 -lcairo -lX11 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 ,g +s,@LIBOBJS@,|#_!!_#|,g +s,@LTLIBOBJS@,|#_!!_#|,g +:end +s/|#_!!_#|//g +CEOF +fi # test -n "$CONFIG_FILES" + + +for ac_tag in :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS +do + case $ac_tag in + :[FHLC]) ac_mode=$ac_tag; continue;; + esac + case $ac_mode$ac_tag in + :[FHL]*:*);; + :L* | :C*:*) { { echo "$as_me:$LINENO: error: Invalid tag $ac_tag." >&5 +echo "$as_me: error: Invalid tag $ac_tag." >&2;} + { (exit 1); exit 1; }; };; + :[FH]-) ac_tag=-:-;; + :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; + esac + ac_save_IFS=$IFS + IFS=: + set x $ac_tag + IFS=$ac_save_IFS + shift + ac_file=$1 + shift + + case $ac_mode in + :L) ac_source=$1;; + :[FH]) + ac_file_inputs= + for ac_f + do + case $ac_f in + -) ac_f="$tmp/stdin";; + *) # Look for the file first in the build tree, then in the source tree + # (if the path is not absolute). The absolute path cannot be DOS-style, + # because $ac_f cannot contain `:'. + test -f "$ac_f" || + case $ac_f in + [\\/$]*) false;; + *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; + esac || + { { echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5 +echo "$as_me: error: cannot find input file: $ac_f" >&2;} + { (exit 1); exit 1; }; };; + esac + ac_file_inputs="$ac_file_inputs $ac_f" + done + + # Let's still pretend it is `configure' which instantiates (i.e., don't + # use $as_me), people would be surprised to read: + # /* config.h. Generated by config.status. */ + configure_input="Generated from "`IFS=: + echo $* | sed 's|^[^:]*/||;s|:[^:]*/|, |g'`" by configure." + if test x"$ac_file" != x-; then + configure_input="$ac_file. $configure_input" + { echo "$as_me:$LINENO: creating $ac_file" >&5 +echo "$as_me: creating $ac_file" >&6;} + fi + + case $ac_tag in + *:-:* | *:-) cat >"$tmp/stdin";; + esac + ;; + esac + + ac_dir=`$as_dirname -- "$ac_file" || +$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$ac_file" : 'X\(//\)[^/]' \| \ + X"$ac_file" : 'X\(//\)$' \| \ + X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || +echo X"$ac_file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + { as_dir="$ac_dir" + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 +echo "$as_me: error: cannot create directory $as_dir" >&2;} + { (exit 1); exit 1; }; }; } + ac_builddir=. + +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) + ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix + +case $srcdir in + .) # We are building in place. + ac_srcdir=. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; +esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + + + case $ac_mode in + :F) + # + # CONFIG_FILE + # + + case $INSTALL in + [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; + *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; + esac +# If the template does not know about datarootdir, expand it. +# FIXME: This hack should be removed a few years after 2.60. +ac_datarootdir_hack=; ac_datarootdir_seen= + +case `sed -n '/datarootdir/ { + p + q +} +/@datadir@/p +/@docdir@/p +/@infodir@/p +/@localedir@/p +/@mandir@/p +' $ac_file_inputs` in +*datarootdir*) ac_datarootdir_seen=yes;; +*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) + { echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 +echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} + ac_datarootdir_hack=' + s&@datadir@&${datarootdir}&g + s&@docdir@&${datarootdir}/doc/${PACKAGE_TARNAME}&g + s&@infodir@&${datarootdir}/info&g + s&@localedir@&${datarootdir}/locale&g + s&@mandir@&${datarootdir}/man&g + s&\${datarootdir}&${prefix}/share&g' ;; +esac + sed "/^[ ]*VPATH[ ]*=/{ +s/:*\$(srcdir):*/:/ +s/:*\${srcdir}:*/:/ +s/:*@srcdir@:*/:/ +s/^\([^=]*=[ ]*\):*/\1/ +s/:*$// +s/^[^=]*=[ ]*$// +} + +:t +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b +s&@configure_input@&$configure_input&;t t +s&@top_builddir@&$ac_top_builddir_sub&;t t +s&@srcdir@&$ac_srcdir&;t t +s&@abs_srcdir@&$ac_abs_srcdir&;t t +s&@top_srcdir@&$ac_top_srcdir&;t t +s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t +s&@builddir@&$ac_builddir&;t t +s&@abs_builddir@&$ac_abs_builddir&;t t +s&@abs_top_builddir@&$ac_abs_top_builddir&;t t +s&@INSTALL@&$ac_INSTALL&;t t +$ac_datarootdir_hack +" $ac_file_inputs | sed -f "$tmp/subs-1.sed" >$tmp/out + +test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && + { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && + { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && + { echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined." >&5 +echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined." >&2;} + + rm -f "$tmp/stdin" + case $ac_file in + -) cat "$tmp/out"; rm -f "$tmp/out";; + *) rm -f "$ac_file"; mv "$tmp/out" $ac_file;; + esac + ;; + :H) + # + # CONFIG_HEADER + # + # First, check the format of the line: + cat >"$tmp/defines.sed" <<\CEOF +/^[ ]*#[ ]*undef[ ][ ]*[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*[ ]*$/b def +/^[ ]*#[ ]*define[ ][ ]*[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*[( ]/b def +b +:def +s/$/ / +s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_NAME\)[ (].*,\1define\2 "SFLPhone" , +s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_TARNAME\)[ (].*,\1define\2 "sflphone" , +s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_VERSION\)[ (].*,\1define\2 "0.8" , +s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_STRING\)[ (].*,\1define\2 "SFLPhone 0.8" , +s,^\([ #]*\)[^ ]*\([ ]*PACKAGE_BUGREPORT\)[ (].*,\1define\2 "sflphoneteam@savoirfairelinux.com" , +s,^\([ #]*\)[^ ]*\([ ]*PACKAGE\)[ (].*,\1define\2 "SFLPhone" , +s,^\([ #]*\)[^ ]*\([ ]*VERSION\)[ (].*,\1define\2 "0.8" , +s,^\([ #]*\)[^ ]*\([ ]*STDC_HEADERS\)[ (].*,\1define\2 1 , +s/ $// +s,^[ #]*u.*,/* & */, +CEOF + sed -f "$tmp/defines.sed" $ac_file_inputs >"$tmp/out1" +ac_result="$tmp/out1" + if test x"$ac_file" != x-; then + echo "/* $configure_input */" >"$tmp/config.h" + cat "$ac_result" >>"$tmp/config.h" + if diff $ac_file "$tmp/config.h" >/dev/null 2>&1; then + { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 +echo "$as_me: $ac_file is unchanged" >&6;} + else + rm -f $ac_file + mv "$tmp/config.h" $ac_file + fi + else + echo "/* $configure_input */" + cat "$ac_result" + fi + rm -f "$tmp/out12" +# Compute $ac_file's index in $config_headers. +_am_stamp_count=1 +for _am_header in $config_headers :; do + case $_am_header in + $ac_file | $ac_file:* ) + break ;; + * ) + _am_stamp_count=`expr $_am_stamp_count + 1` ;; + esac +done +echo "timestamp for $ac_file" >`$as_dirname -- $ac_file || +$as_expr X$ac_file : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X$ac_file : 'X\(//\)[^/]' \| \ + X$ac_file : 'X\(//\)$' \| \ + X$ac_file : 'X\(/\)' \| . 2>/dev/null || +echo X$ac_file | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'`/stamp-h$_am_stamp_count + ;; + + :C) { echo "$as_me:$LINENO: executing $ac_file commands" >&5 +echo "$as_me: executing $ac_file commands" >&6;} + ;; + esac + + + case $ac_file$ac_mode in + "depfiles":C) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do + # Strip MF so we end up with the name of the file. + mf=`echo "$mf" | sed -e 's/:.*$//'` + # Check whether this is an Automake generated Makefile or not. + # We used to match only the files named `Makefile.in', but + # some people rename them; so instead we look at the file content. + # Grep'ing the first line is not enough: some people post-process + # each Makefile.in and add a new line on top of each file to say so. + # So let's grep whole file. + if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then + dirpart=`$as_dirname -- "$mf" || +$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$mf" : 'X\(//\)[^/]' \| \ + X"$mf" : 'X\(//\)$' \| \ + X"$mf" : 'X\(/\)' \| . 2>/dev/null || +echo X"$mf" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + else + continue + fi + # Extract the definition of DEPDIR, am__include, and am__quote + # from the Makefile without running `make'. + DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` + test -z "$DEPDIR" && continue + am__include=`sed -n 's/^am__include = //p' < "$mf"` + test -z "am__include" && continue + am__quote=`sed -n 's/^am__quote = //p' < "$mf"` + # When using ansi2knr, U may be empty or an underscore; expand it + U=`sed -n 's/^U = //p' < "$mf"` + # Find all dependency output files, they are included files with + # $(DEPDIR) in their names. We invoke sed twice because it is the + # simplest approach to changing $(DEPDIR) to its actual value in the + # expansion. + for file in `sed -n " + s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ + sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do + # Make sure the directory exists. + test -f "$dirpart/$file" && continue + fdir=`$as_dirname -- "$file" || +$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$file" : 'X\(//\)[^/]' \| \ + X"$file" : 'X\(//\)$' \| \ + X"$file" : 'X\(/\)' \| . 2>/dev/null || +echo X"$file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + { as_dir=$dirpart/$fdir + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 +echo "$as_me: error: cannot create directory $as_dir" >&2;} + { (exit 1); exit 1; }; }; } + # echo "creating $dirpart/$file" + echo '# dummy' > "$dirpart/$file" + done +done + ;; + + esac +done # for ac_tag + + +{ (exit 0); exit 0; } diff --git a/sflphone-gtk/config.sub b/sflphone-gtk/config.sub new file mode 100755 index 0000000000000000000000000000000000000000..1c366dfde9ab35fe6474af49933455433951457f --- /dev/null +++ b/sflphone-gtk/config.sub @@ -0,0 +1,1579 @@ +#! /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-08' + +# 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[24]a | 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[24]a-* | 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 + ;; + sh[1234] | sh[24]a | 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* | -haiku*) + # 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* | -haiku* \ + | -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 + ;; + *-haiku) + os=-haiku + ;; + *-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/sflphone-gtk/configure b/sflphone-gtk/configure new file mode 100755 index 0000000000000000000000000000000000000000..fa9e866ba80c720e01a83bd0c2cce85abb2a51f9 --- /dev/null +++ b/sflphone-gtk/configure @@ -0,0 +1,5526 @@ +#! /bin/sh +# Guess values for system-dependent variables and create Makefiles. +# Generated by GNU Autoconf 2.61 for SFLPhone 0.8. +# +# Report bugs to <sflphoneteam@savoirfairelinux.com>. +# +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, +# 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. +# This configure script is free software; the Free Software Foundation +# gives unlimited permission to copy, distribute and modify it. +## --------------------- ## +## M4sh Initialization. ## +## --------------------- ## + +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in + *posix*) set -o posix ;; +esac + +fi + + + + +# PATH needs CR +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + echo "#! /bin/sh" >conf$$.sh + echo "exit 0" >>conf$$.sh + chmod +x conf$$.sh + if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then + PATH_SEPARATOR=';' + else + PATH_SEPARATOR=: + fi + rm -f conf$$.sh +fi + +# Support unset when possible. +if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then + as_unset=unset +else + as_unset=false +fi + + +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +as_nl=' +' +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +case $0 in + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break +done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + { (exit 1); exit 1; } +fi + +# Work around bugs in pre-3.0 UWIN ksh. +for as_var in ENV MAIL MAILPATH +do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var +done +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +for as_var in \ + LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ + LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ + LC_TELEPHONE LC_TIME +do + if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then + eval $as_var=C; export $as_var + else + ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var + fi +done + +# Required to use basename. +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + + +# Name of the executable. +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + +# CDPATH. +$as_unset CDPATH + + +if test "x$CONFIG_SHELL" = x; then + if (eval ":") 2>/dev/null; then + as_have_required=yes +else + as_have_required=no +fi + + if test $as_have_required = yes && (eval ": +(as_func_return () { + (exit \$1) +} +as_func_success () { + as_func_return 0 +} +as_func_failure () { + as_func_return 1 +} +as_func_ret_success () { + return 0 +} +as_func_ret_failure () { + return 1 +} + +exitcode=0 +if as_func_success; then + : +else + exitcode=1 + echo as_func_success failed. +fi + +if as_func_failure; then + exitcode=1 + echo as_func_failure succeeded. +fi + +if as_func_ret_success; then + : +else + exitcode=1 + echo as_func_ret_success failed. +fi + +if as_func_ret_failure; then + exitcode=1 + echo as_func_ret_failure succeeded. +fi + +if ( set x; as_func_ret_success y && test x = \"\$1\" ); then + : +else + exitcode=1 + echo positional parameters were not saved. +fi + +test \$exitcode = 0) || { (exit 1); exit 1; } + +( + as_lineno_1=\$LINENO + as_lineno_2=\$LINENO + test \"x\$as_lineno_1\" != \"x\$as_lineno_2\" && + test \"x\`expr \$as_lineno_1 + 1\`\" = \"x\$as_lineno_2\") || { (exit 1); exit 1; } +") 2> /dev/null; then + : +else + as_candidate_shells= + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + case $as_dir in + /*) + for as_base in sh bash ksh sh5; do + as_candidate_shells="$as_candidate_shells $as_dir/$as_base" + done;; + esac +done +IFS=$as_save_IFS + + + for as_shell in $as_candidate_shells $SHELL; do + # Try only shells that exist, to save several forks. + if { test -f "$as_shell" || test -f "$as_shell.exe"; } && + { ("$as_shell") 2> /dev/null <<\_ASEOF +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in + *posix*) set -o posix ;; +esac + +fi + + +: +_ASEOF +}; then + CONFIG_SHELL=$as_shell + as_have_required=yes + if { "$as_shell" 2> /dev/null <<\_ASEOF +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in + *posix*) set -o posix ;; +esac + +fi + + +: +(as_func_return () { + (exit $1) +} +as_func_success () { + as_func_return 0 +} +as_func_failure () { + as_func_return 1 +} +as_func_ret_success () { + return 0 +} +as_func_ret_failure () { + return 1 +} + +exitcode=0 +if as_func_success; then + : +else + exitcode=1 + echo as_func_success failed. +fi + +if as_func_failure; then + exitcode=1 + echo as_func_failure succeeded. +fi + +if as_func_ret_success; then + : +else + exitcode=1 + echo as_func_ret_success failed. +fi + +if as_func_ret_failure; then + exitcode=1 + echo as_func_ret_failure succeeded. +fi + +if ( set x; as_func_ret_success y && test x = "$1" ); then + : +else + exitcode=1 + echo positional parameters were not saved. +fi + +test $exitcode = 0) || { (exit 1); exit 1; } + +( + as_lineno_1=$LINENO + as_lineno_2=$LINENO + test "x$as_lineno_1" != "x$as_lineno_2" && + test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2") || { (exit 1); exit 1; } + +_ASEOF +}; then + break +fi + +fi + + done + + if test "x$CONFIG_SHELL" != x; then + for as_var in BASH_ENV ENV + do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var + done + export CONFIG_SHELL + exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"} +fi + + + if test $as_have_required = no; then + echo This script requires a shell more modern than all the + echo shells that I found on your system. Please install a + echo modern shell, or manually run the script under such a + echo shell if you do have one. + { (exit 1); exit 1; } +fi + + +fi + +fi + + + +(eval "as_func_return () { + (exit \$1) +} +as_func_success () { + as_func_return 0 +} +as_func_failure () { + as_func_return 1 +} +as_func_ret_success () { + return 0 +} +as_func_ret_failure () { + return 1 +} + +exitcode=0 +if as_func_success; then + : +else + exitcode=1 + echo as_func_success failed. +fi + +if as_func_failure; then + exitcode=1 + echo as_func_failure succeeded. +fi + +if as_func_ret_success; then + : +else + exitcode=1 + echo as_func_ret_success failed. +fi + +if as_func_ret_failure; then + exitcode=1 + echo as_func_ret_failure succeeded. +fi + +if ( set x; as_func_ret_success y && test x = \"\$1\" ); then + : +else + exitcode=1 + echo positional parameters were not saved. +fi + +test \$exitcode = 0") || { + echo No shell found that supports shell functions. + echo Please tell autoconf@gnu.org about your system, + echo including any error possibly output before this + echo message +} + + + + as_lineno_1=$LINENO + as_lineno_2=$LINENO + test "x$as_lineno_1" != "x$as_lineno_2" && + test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { + + # Create $as_me.lineno as a copy of $as_myself, but with $LINENO + # uniformly replaced by the line number. The first 'sed' inserts a + # line-number line after each line using $LINENO; the second 'sed' + # does the real work. The second script uses 'N' to pair each + # line-number line with the line containing $LINENO, and appends + # trailing '-' during substitution so that $LINENO is not a special + # case at line end. + # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the + # scripts with optimization help from Paolo Bonzini. Blame Lee + # E. McMahon (1931-1989) for sed's syntax. :-) + sed -n ' + p + /[$]LINENO/= + ' <$as_myself | + sed ' + s/[$]LINENO.*/&-/ + t lineno + b + :lineno + N + :loop + s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ + t loop + s/-\n.*// + ' >$as_me.lineno && + chmod +x "$as_me.lineno" || + { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 + { (exit 1); exit 1; }; } + + # Don't try to exec as it changes $[0], causing all sort of problems + # (the dirname of $[0] is not the place where we might find the + # original and so on. Autoconf is especially sensitive to this). + . "./$as_me.lineno" + # Exit status is that of the last command. + exit +} + + +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in +-n*) + case `echo 'x\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + *) ECHO_C='\c';; + esac;; +*) + ECHO_N='-n';; +esac + +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir +fi +echo >conf$$.file +if ln -s conf$$.file conf$$ 2>/dev/null; then + as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -p'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -p' +elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln +else + as_ln_s='cp -p' +fi +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null + +if mkdir -p . 2>/dev/null; then + as_mkdir_p=: +else + test -d ./-p && rmdir ./-p + as_mkdir_p=false +fi + +if test -x / >/dev/null 2>&1; then + as_test_x='test -x' +else + if ls -dL / >/dev/null 2>&1; then + as_ls_L_option=L + else + as_ls_L_option= + fi + as_test_x=' + eval sh -c '\'' + if test -d "$1"; then + test -d "$1/."; + else + case $1 in + -*)set "./$1";; + esac; + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in + ???[sx]*):;;*)false;;esac;fi + '\'' sh + ' +fi +as_executable_p=$as_test_x + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" + + + +exec 7<&0 </dev/null 6>&1 + +# Name of the host. +# hostname on some systems (SVR3.2, Linux) returns a bogus exit status, +# so uname gets run too. +ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` + +# +# Initializations. +# +ac_default_prefix=/usr/local +ac_clean_files= +ac_config_libobj_dir=. +LIBOBJS= +cross_compiling=no +subdirs= +MFLAGS= +MAKEFLAGS= +SHELL=${CONFIG_SHELL-/bin/sh} + +# Identity of this package. +PACKAGE_NAME='SFLPhone' +PACKAGE_TARNAME='sflphone' +PACKAGE_VERSION='0.8' +PACKAGE_STRING='SFLPhone 0.8' +PACKAGE_BUGREPORT='sflphoneteam@savoirfairelinux.com' + +ac_subst_vars='SHELL +PATH_SEPARATOR +PACKAGE_NAME +PACKAGE_TARNAME +PACKAGE_VERSION +PACKAGE_STRING +PACKAGE_BUGREPORT +exec_prefix +prefix +program_transform_name +bindir +sbindir +libexecdir +datarootdir +datadir +sysconfdir +sharedstatedir +localstatedir +includedir +oldincludedir +docdir +infodir +htmldir +dvidir +pdfdir +psdir +libdir +localedir +mandir +DEFS +ECHO_C +ECHO_N +ECHO_T +LIBS +build_alias +host_alias +target_alias +INSTALL_PROGRAM +INSTALL_SCRIPT +INSTALL_DATA +CYGPATH_W +PACKAGE +VERSION +ACLOCAL +AUTOCONF +AUTOMAKE +AUTOHEADER +MAKEINFO +install_sh +STRIP +INSTALL_STRIP_PROGRAM +mkdir_p +AWK +SET_MAKE +am__leading_dot +AMTAR +am__tar +am__untar +CC +CFLAGS +LDFLAGS +CPPFLAGS +ac_ct_CC +EXEEXT +OBJEXT +DEPDIR +am__include +am__quote +AMDEP_TRUE +AMDEP_FALSE +AMDEPBACKSLASH +CCDEPMODE +am__fastdepCC_TRUE +am__fastdepCC_FALSE +CPP +GREP +EGREP +PKG_CONFIG +DEPS_CFLAGS +DEPS_LIBS +LIBOBJS +LTLIBOBJS' +ac_subst_files='' + ac_precious_vars='build_alias +host_alias +target_alias +CC +CFLAGS +LDFLAGS +LIBS +CPPFLAGS +CPP +PKG_CONFIG +DEPS_CFLAGS +DEPS_LIBS' + + +# Initialize some variables set by options. +ac_init_help= +ac_init_version=false +# The variables have the same names as the options, with +# dashes changed to underlines. +cache_file=/dev/null +exec_prefix=NONE +no_create= +no_recursion= +prefix=NONE +program_prefix=NONE +program_suffix=NONE +program_transform_name=s,x,x, +silent= +site= +srcdir= +verbose= +x_includes=NONE +x_libraries=NONE + +# Installation directory options. +# These are left unexpanded so users can "make install exec_prefix=/foo" +# and all the variables that are supposed to be based on exec_prefix +# by default will actually change. +# Use braces instead of parens because sh, perl, etc. also accept them. +# (The list follows the same order as the GNU Coding Standards.) +bindir='${exec_prefix}/bin' +sbindir='${exec_prefix}/sbin' +libexecdir='${exec_prefix}/libexec' +datarootdir='${prefix}/share' +datadir='${datarootdir}' +sysconfdir='${prefix}/etc' +sharedstatedir='${prefix}/com' +localstatedir='${prefix}/var' +includedir='${prefix}/include' +oldincludedir='/usr/include' +docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' +infodir='${datarootdir}/info' +htmldir='${docdir}' +dvidir='${docdir}' +pdfdir='${docdir}' +psdir='${docdir}' +libdir='${exec_prefix}/lib' +localedir='${datarootdir}/locale' +mandir='${datarootdir}/man' + +ac_prev= +ac_dashdash= +for ac_option +do + # If the previous option needs an argument, assign it. + if test -n "$ac_prev"; then + eval $ac_prev=\$ac_option + ac_prev= + continue + fi + + case $ac_option in + *=*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; + *) ac_optarg=yes ;; + esac + + # Accept the important Cygnus configure options, so we can diagnose typos. + + case $ac_dashdash$ac_option in + --) + ac_dashdash=yes ;; + + -bindir | --bindir | --bindi | --bind | --bin | --bi) + ac_prev=bindir ;; + -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) + bindir=$ac_optarg ;; + + -build | --build | --buil | --bui | --bu) + ac_prev=build_alias ;; + -build=* | --build=* | --buil=* | --bui=* | --bu=*) + build_alias=$ac_optarg ;; + + -cache-file | --cache-file | --cache-fil | --cache-fi \ + | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) + ac_prev=cache_file ;; + -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ + | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) + cache_file=$ac_optarg ;; + + --config-cache | -C) + cache_file=config.cache ;; + + -datadir | --datadir | --datadi | --datad) + ac_prev=datadir ;; + -datadir=* | --datadir=* | --datadi=* | --datad=*) + datadir=$ac_optarg ;; + + -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ + | --dataroo | --dataro | --datar) + ac_prev=datarootdir ;; + -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ + | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) + datarootdir=$ac_optarg ;; + + -disable-* | --disable-*) + ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null && + { echo "$as_me: error: invalid feature name: $ac_feature" >&2 + { (exit 1); exit 1; }; } + ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'` + eval enable_$ac_feature=no ;; + + -docdir | --docdir | --docdi | --doc | --do) + ac_prev=docdir ;; + -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) + docdir=$ac_optarg ;; + + -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) + ac_prev=dvidir ;; + -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) + dvidir=$ac_optarg ;; + + -enable-* | --enable-*) + ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null && + { echo "$as_me: error: invalid feature name: $ac_feature" >&2 + { (exit 1); exit 1; }; } + ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'` + eval enable_$ac_feature=\$ac_optarg ;; + + -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ + | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ + | --exec | --exe | --ex) + ac_prev=exec_prefix ;; + -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ + | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ + | --exec=* | --exe=* | --ex=*) + exec_prefix=$ac_optarg ;; + + -gas | --gas | --ga | --g) + # Obsolete; use --with-gas. + with_gas=yes ;; + + -help | --help | --hel | --he | -h) + ac_init_help=long ;; + -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) + ac_init_help=recursive ;; + -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) + ac_init_help=short ;; + + -host | --host | --hos | --ho) + ac_prev=host_alias ;; + -host=* | --host=* | --hos=* | --ho=*) + host_alias=$ac_optarg ;; + + -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) + ac_prev=htmldir ;; + -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ + | --ht=*) + htmldir=$ac_optarg ;; + + -includedir | --includedir | --includedi | --included | --include \ + | --includ | --inclu | --incl | --inc) + ac_prev=includedir ;; + -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ + | --includ=* | --inclu=* | --incl=* | --inc=*) + includedir=$ac_optarg ;; + + -infodir | --infodir | --infodi | --infod | --info | --inf) + ac_prev=infodir ;; + -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) + infodir=$ac_optarg ;; + + -libdir | --libdir | --libdi | --libd) + ac_prev=libdir ;; + -libdir=* | --libdir=* | --libdi=* | --libd=*) + libdir=$ac_optarg ;; + + -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ + | --libexe | --libex | --libe) + ac_prev=libexecdir ;; + -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ + | --libexe=* | --libex=* | --libe=*) + libexecdir=$ac_optarg ;; + + -localedir | --localedir | --localedi | --localed | --locale) + ac_prev=localedir ;; + -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) + localedir=$ac_optarg ;; + + -localstatedir | --localstatedir | --localstatedi | --localstated \ + | --localstate | --localstat | --localsta | --localst | --locals) + ac_prev=localstatedir ;; + -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ + | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) + localstatedir=$ac_optarg ;; + + -mandir | --mandir | --mandi | --mand | --man | --ma | --m) + ac_prev=mandir ;; + -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) + mandir=$ac_optarg ;; + + -nfp | --nfp | --nf) + # Obsolete; use --without-fp. + with_fp=no ;; + + -no-create | --no-create | --no-creat | --no-crea | --no-cre \ + | --no-cr | --no-c | -n) + no_create=yes ;; + + -no-recursion | --no-recursion | --no-recursio | --no-recursi \ + | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) + no_recursion=yes ;; + + -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ + | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ + | --oldin | --oldi | --old | --ol | --o) + ac_prev=oldincludedir ;; + -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ + | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ + | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) + oldincludedir=$ac_optarg ;; + + -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) + ac_prev=prefix ;; + -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) + prefix=$ac_optarg ;; + + -program-prefix | --program-prefix | --program-prefi | --program-pref \ + | --program-pre | --program-pr | --program-p) + ac_prev=program_prefix ;; + -program-prefix=* | --program-prefix=* | --program-prefi=* \ + | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) + program_prefix=$ac_optarg ;; + + -program-suffix | --program-suffix | --program-suffi | --program-suff \ + | --program-suf | --program-su | --program-s) + ac_prev=program_suffix ;; + -program-suffix=* | --program-suffix=* | --program-suffi=* \ + | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) + program_suffix=$ac_optarg ;; + + -program-transform-name | --program-transform-name \ + | --program-transform-nam | --program-transform-na \ + | --program-transform-n | --program-transform- \ + | --program-transform | --program-transfor \ + | --program-transfo | --program-transf \ + | --program-trans | --program-tran \ + | --progr-tra | --program-tr | --program-t) + ac_prev=program_transform_name ;; + -program-transform-name=* | --program-transform-name=* \ + | --program-transform-nam=* | --program-transform-na=* \ + | --program-transform-n=* | --program-transform-=* \ + | --program-transform=* | --program-transfor=* \ + | --program-transfo=* | --program-transf=* \ + | --program-trans=* | --program-tran=* \ + | --progr-tra=* | --program-tr=* | --program-t=*) + program_transform_name=$ac_optarg ;; + + -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) + ac_prev=pdfdir ;; + -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) + pdfdir=$ac_optarg ;; + + -psdir | --psdir | --psdi | --psd | --ps) + ac_prev=psdir ;; + -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) + psdir=$ac_optarg ;; + + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil) + silent=yes ;; + + -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) + ac_prev=sbindir ;; + -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ + | --sbi=* | --sb=*) + sbindir=$ac_optarg ;; + + -sharedstatedir | --sharedstatedir | --sharedstatedi \ + | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ + | --sharedst | --shareds | --shared | --share | --shar \ + | --sha | --sh) + ac_prev=sharedstatedir ;; + -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ + | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ + | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ + | --sha=* | --sh=*) + sharedstatedir=$ac_optarg ;; + + -site | --site | --sit) + ac_prev=site ;; + -site=* | --site=* | --sit=*) + site=$ac_optarg ;; + + -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) + ac_prev=srcdir ;; + -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) + srcdir=$ac_optarg ;; + + -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ + | --syscon | --sysco | --sysc | --sys | --sy) + ac_prev=sysconfdir ;; + -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ + | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) + sysconfdir=$ac_optarg ;; + + -target | --target | --targe | --targ | --tar | --ta | --t) + ac_prev=target_alias ;; + -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) + target_alias=$ac_optarg ;; + + -v | -verbose | --verbose | --verbos | --verbo | --verb) + verbose=yes ;; + + -version | --version | --versio | --versi | --vers | -V) + ac_init_version=: ;; + + -with-* | --with-*) + ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null && + { echo "$as_me: error: invalid package name: $ac_package" >&2 + { (exit 1); exit 1; }; } + ac_package=`echo $ac_package | sed 's/[-.]/_/g'` + eval with_$ac_package=\$ac_optarg ;; + + -without-* | --without-*) + ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null && + { echo "$as_me: error: invalid package name: $ac_package" >&2 + { (exit 1); exit 1; }; } + ac_package=`echo $ac_package | sed 's/[-.]/_/g'` + eval with_$ac_package=no ;; + + --x) + # Obsolete; use --with-x. + with_x=yes ;; + + -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ + | --x-incl | --x-inc | --x-in | --x-i) + ac_prev=x_includes ;; + -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ + | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) + x_includes=$ac_optarg ;; + + -x-libraries | --x-libraries | --x-librarie | --x-librari \ + | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) + ac_prev=x_libraries ;; + -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ + | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) + x_libraries=$ac_optarg ;; + + -*) { echo "$as_me: error: unrecognized option: $ac_option +Try \`$0 --help' for more information." >&2 + { (exit 1); exit 1; }; } + ;; + + *=*) + ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` + # Reject names that are not valid shell variable names. + expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && + { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 + { (exit 1); exit 1; }; } + eval $ac_envvar=\$ac_optarg + export $ac_envvar ;; + + *) + # FIXME: should be removed in autoconf 3.0. + echo "$as_me: WARNING: you should use --build, --host, --target" >&2 + expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && + echo "$as_me: WARNING: invalid host type: $ac_option" >&2 + : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} + ;; + + esac +done + +if test -n "$ac_prev"; then + ac_option=--`echo $ac_prev | sed 's/_/-/g'` + { echo "$as_me: error: missing argument to $ac_option" >&2 + { (exit 1); exit 1; }; } +fi + +# Be sure to have absolute directory names. +for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ + datadir sysconfdir sharedstatedir localstatedir includedir \ + oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ + libdir localedir mandir +do + eval ac_val=\$$ac_var + case $ac_val in + [\\/$]* | ?:[\\/]* ) continue;; + NONE | '' ) case $ac_var in *prefix ) continue;; esac;; + esac + { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 + { (exit 1); exit 1; }; } +done + +# There might be people who depend on the old broken behavior: `$host' +# used to hold the argument of --host etc. +# FIXME: To remove some day. +build=$build_alias +host=$host_alias +target=$target_alias + +# FIXME: To remove some day. +if test "x$host_alias" != x; then + if test "x$build_alias" = x; then + cross_compiling=maybe + echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. + If a cross compiler is detected then cross compile mode will be used." >&2 + elif test "x$build_alias" != "x$host_alias"; then + cross_compiling=yes + fi +fi + +ac_tool_prefix= +test -n "$host_alias" && ac_tool_prefix=$host_alias- + +test "$silent" = yes && exec 6>/dev/null + + +ac_pwd=`pwd` && test -n "$ac_pwd" && +ac_ls_di=`ls -di .` && +ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || + { echo "$as_me: error: Working directory cannot be determined" >&2 + { (exit 1); exit 1; }; } +test "X$ac_ls_di" = "X$ac_pwd_ls_di" || + { echo "$as_me: error: pwd does not report name of working directory" >&2 + { (exit 1); exit 1; }; } + + +# Find the source files, if location was not specified. +if test -z "$srcdir"; then + ac_srcdir_defaulted=yes + # Try the directory containing this script, then the parent directory. + ac_confdir=`$as_dirname -- "$0" || +$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$0" : 'X\(//\)[^/]' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +echo X"$0" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + srcdir=$ac_confdir + if test ! -r "$srcdir/$ac_unique_file"; then + srcdir=.. + fi +else + ac_srcdir_defaulted=no +fi +if test ! -r "$srcdir/$ac_unique_file"; then + test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." + { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 + { (exit 1); exit 1; }; } +fi +ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" +ac_abs_confdir=`( + cd "$srcdir" && test -r "./$ac_unique_file" || { echo "$as_me: error: $ac_msg" >&2 + { (exit 1); exit 1; }; } + pwd)` +# When building in place, set srcdir=. +if test "$ac_abs_confdir" = "$ac_pwd"; then + srcdir=. +fi +# Remove unnecessary trailing slashes from srcdir. +# Double slashes in file names in object file debugging info +# mess up M-x gdb in Emacs. +case $srcdir in +*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; +esac +for ac_var in $ac_precious_vars; do + eval ac_env_${ac_var}_set=\${${ac_var}+set} + eval ac_env_${ac_var}_value=\$${ac_var} + eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} + eval ac_cv_env_${ac_var}_value=\$${ac_var} +done + +# +# Report the --help message. +# +if test "$ac_init_help" = "long"; then + # Omit some internal or obsolete options to make the list less imposing. + # This message is too long to be a string in the A/UX 3.1 sh. + cat <<_ACEOF +\`configure' configures SFLPhone 0.8 to adapt to many kinds of systems. + +Usage: $0 [OPTION]... [VAR=VALUE]... + +To assign environment variables (e.g., CC, CFLAGS...), specify them as +VAR=VALUE. See below for descriptions of some of the useful variables. + +Defaults for the options are specified in brackets. + +Configuration: + -h, --help display this help and exit + --help=short display options specific to this package + --help=recursive display the short help of all the included packages + -V, --version display version information and exit + -q, --quiet, --silent do not print \`checking...' messages + --cache-file=FILE cache test results in FILE [disabled] + -C, --config-cache alias for \`--cache-file=config.cache' + -n, --no-create do not create output files + --srcdir=DIR find the sources in DIR [configure dir or \`..'] + +Installation directories: + --prefix=PREFIX install architecture-independent files in PREFIX + [$ac_default_prefix] + --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX + [PREFIX] + +By default, \`make install' will install all the files in +\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify +an installation prefix other than \`$ac_default_prefix' using \`--prefix', +for instance \`--prefix=\$HOME'. + +For better control, use the options below. + +Fine tuning of the installation directories: + --bindir=DIR user executables [EPREFIX/bin] + --sbindir=DIR system admin executables [EPREFIX/sbin] + --libexecdir=DIR program executables [EPREFIX/libexec] + --sysconfdir=DIR read-only single-machine data [PREFIX/etc] + --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] + --localstatedir=DIR modifiable single-machine data [PREFIX/var] + --libdir=DIR object code libraries [EPREFIX/lib] + --includedir=DIR C header files [PREFIX/include] + --oldincludedir=DIR C header files for non-gcc [/usr/include] + --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] + --datadir=DIR read-only architecture-independent data [DATAROOTDIR] + --infodir=DIR info documentation [DATAROOTDIR/info] + --localedir=DIR locale-dependent data [DATAROOTDIR/locale] + --mandir=DIR man documentation [DATAROOTDIR/man] + --docdir=DIR documentation root [DATAROOTDIR/doc/sflphone] + --htmldir=DIR html documentation [DOCDIR] + --dvidir=DIR dvi documentation [DOCDIR] + --pdfdir=DIR pdf documentation [DOCDIR] + --psdir=DIR ps documentation [DOCDIR] +_ACEOF + + cat <<\_ACEOF + +Program names: + --program-prefix=PREFIX prepend PREFIX to installed program names + --program-suffix=SUFFIX append SUFFIX to installed program names + --program-transform-name=PROGRAM run sed PROGRAM on installed program names +_ACEOF +fi + +if test -n "$ac_init_help"; then + case $ac_init_help in + short | recursive ) echo "Configuration of SFLPhone 0.8:";; + esac + cat <<\_ACEOF + +Optional Features: + --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) + --enable-FEATURE[=ARG] include FEATURE [ARG=yes] + --disable-dependency-tracking speeds up one-time build + --enable-dependency-tracking do not reject slow dependency extractors + +Optional Packages: + --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] + --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) + --with-debug Set 'full' to enable debugging information + [default=no] + +Some influential environment variables: + CC C compiler command + CFLAGS C compiler flags + LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a + nonstandard directory <lib dir> + LIBS libraries to pass to the linker, e.g. -l<library> + CPPFLAGS C/C++/Objective C preprocessor flags, e.g. -I<include dir> if + you have headers in a nonstandard directory <include dir> + CPP C preprocessor + PKG_CONFIG path to pkg-config utility + DEPS_CFLAGS C compiler flags for DEPS, overriding pkg-config + DEPS_LIBS linker flags for DEPS, overriding pkg-config + +Use these variables to override the choices made by `configure' or to help +it to find libraries and programs with nonstandard names/locations. + +Report bugs to <sflphoneteam@savoirfairelinux.com>. +_ACEOF +ac_status=$? +fi + +if test "$ac_init_help" = "recursive"; then + # If there are subdirs, report their specific --help. + for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue + test -d "$ac_dir" || continue + ac_builddir=. + +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) + ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix + +case $srcdir in + .) # We are building in place. + ac_srcdir=. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; +esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + + cd "$ac_dir" || { ac_status=$?; continue; } + # Check for guested configure. + if test -f "$ac_srcdir/configure.gnu"; then + echo && + $SHELL "$ac_srcdir/configure.gnu" --help=recursive + elif test -f "$ac_srcdir/configure"; then + echo && + $SHELL "$ac_srcdir/configure" --help=recursive + else + echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 + fi || ac_status=$? + cd "$ac_pwd" || { ac_status=$?; break; } + done +fi + +test -n "$ac_init_help" && exit $ac_status +if $ac_init_version; then + cat <<\_ACEOF +SFLPhone configure 0.8 +generated by GNU Autoconf 2.61 + +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, +2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. +This configure script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it. +_ACEOF + exit +fi +cat >config.log <<_ACEOF +This file contains any messages produced by compilers while +running configure, to aid debugging if configure makes a mistake. + +It was created by SFLPhone $as_me 0.8, which was +generated by GNU Autoconf 2.61. Invocation command line was + + $ $0 $@ + +_ACEOF +exec 5>>config.log +{ +cat <<_ASUNAME +## --------- ## +## Platform. ## +## --------- ## + +hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` +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 || echo unknown` +/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` + +/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` +/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` +/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` +/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` +/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` +/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` +/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` + +_ASUNAME + +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + echo "PATH: $as_dir" +done +IFS=$as_save_IFS + +} >&5 + +cat >&5 <<_ACEOF + + +## ----------- ## +## Core tests. ## +## ----------- ## + +_ACEOF + + +# Keep a trace of the command line. +# Strip out --no-create and --no-recursion so they do not pile up. +# Strip out --silent because we don't want to record it for future runs. +# Also quote any args containing shell meta-characters. +# Make two passes to allow for proper duplicate-argument suppression. +ac_configure_args= +ac_configure_args0= +ac_configure_args1= +ac_must_keep_next=false +for ac_pass in 1 2 +do + for ac_arg + do + case $ac_arg in + -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil) + continue ;; + *\'*) + ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + case $ac_pass in + 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; + 2) + ac_configure_args1="$ac_configure_args1 '$ac_arg'" + if test $ac_must_keep_next = true; then + ac_must_keep_next=false # Got value, back to normal. + else + case $ac_arg in + *=* | --config-cache | -C | -disable-* | --disable-* \ + | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ + | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ + | -with-* | --with-* | -without-* | --without-* | --x) + case "$ac_configure_args0 " in + "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; + esac + ;; + -* ) ac_must_keep_next=true ;; + esac + fi + ac_configure_args="$ac_configure_args '$ac_arg'" + ;; + esac + done +done +$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } +$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } + +# When interrupted or exit'd, cleanup temporary files, and complete +# config.log. We remove comments because anyway the quotes in there +# would cause problems or look ugly. +# WARNING: Use '\'' to represent an apostrophe within the trap. +# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. +trap 'exit_status=$? + # Save into config.log some information that might help in debugging. + { + echo + + cat <<\_ASBOX +## ---------------- ## +## Cache variables. ## +## ---------------- ## +_ASBOX + echo + # The following way of writing the cache mishandles newlines in values, +( + for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do + eval ac_val=\$$ac_var + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( + *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5 +echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( + *) $as_unset $ac_var ;; + esac ;; + esac + done + (set) 2>&1 | + case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( + *${as_nl}ac_space=\ *) + sed -n \ + "s/'\''/'\''\\\\'\'''\''/g; + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" + ;; #( + *) + sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" + ;; + esac | + sort +) + echo + + cat <<\_ASBOX +## ----------------- ## +## Output variables. ## +## ----------------- ## +_ASBOX + echo + for ac_var in $ac_subst_vars + do + eval ac_val=\$$ac_var + case $ac_val in + *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + esac + echo "$ac_var='\''$ac_val'\''" + done | sort + echo + + if test -n "$ac_subst_files"; then + cat <<\_ASBOX +## ------------------- ## +## File substitutions. ## +## ------------------- ## +_ASBOX + echo + for ac_var in $ac_subst_files + do + eval ac_val=\$$ac_var + case $ac_val in + *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + esac + echo "$ac_var='\''$ac_val'\''" + done | sort + echo + fi + + if test -s confdefs.h; then + cat <<\_ASBOX +## ----------- ## +## confdefs.h. ## +## ----------- ## +_ASBOX + echo + cat confdefs.h + echo + fi + test "$ac_signal" != 0 && + echo "$as_me: caught signal $ac_signal" + echo "$as_me: exit $exit_status" + } >&5 + rm -f core *.core core.conftest.* && + rm -f -r conftest* confdefs* conf$$* $ac_clean_files && + exit $exit_status +' 0 +for ac_signal in 1 2 13 15; do + trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal +done +ac_signal=0 + +# confdefs.h avoids OS command line length limits that DEFS can exceed. +rm -f -r conftest* confdefs.h + +# Predefined preprocessor variables. + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_NAME "$PACKAGE_NAME" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_TARNAME "$PACKAGE_TARNAME" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_VERSION "$PACKAGE_VERSION" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_STRING "$PACKAGE_STRING" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" +_ACEOF + + +# Let the site file select an alternate cache file if it wants to. +# Prefer explicitly selected file to automatically selected ones. +if test -n "$CONFIG_SITE"; then + set x "$CONFIG_SITE" +elif test "x$prefix" != xNONE; then + set x "$prefix/share/config.site" "$prefix/etc/config.site" +else + set x "$ac_default_prefix/share/config.site" \ + "$ac_default_prefix/etc/config.site" +fi +shift +for ac_site_file +do + if test -r "$ac_site_file"; then + { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 +echo "$as_me: loading site script $ac_site_file" >&6;} + sed 's/^/| /' "$ac_site_file" >&5 + . "$ac_site_file" + fi +done + +if test -r "$cache_file"; then + # Some versions of bash will fail to source /dev/null (special + # files actually), so we avoid doing that. + if test -f "$cache_file"; then + { echo "$as_me:$LINENO: loading cache $cache_file" >&5 +echo "$as_me: loading cache $cache_file" >&6;} + case $cache_file in + [\\/]* | ?:[\\/]* ) . "$cache_file";; + *) . "./$cache_file";; + esac + fi +else + { echo "$as_me:$LINENO: creating cache $cache_file" >&5 +echo "$as_me: creating cache $cache_file" >&6;} + >$cache_file +fi + +# Check that the precious variables saved in the cache have kept the same +# value. +ac_cache_corrupted=false +for ac_var in $ac_precious_vars; do + eval ac_old_set=\$ac_cv_env_${ac_var}_set + eval ac_new_set=\$ac_env_${ac_var}_set + eval ac_old_val=\$ac_cv_env_${ac_var}_value + eval ac_new_val=\$ac_env_${ac_var}_value + case $ac_old_set,$ac_new_set in + set,) + { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 +echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} + ac_cache_corrupted=: ;; + ,set) + { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 +echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} + ac_cache_corrupted=: ;; + ,);; + *) + if test "x$ac_old_val" != "x$ac_new_val"; then + { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 +echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} + { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 +echo "$as_me: former value: $ac_old_val" >&2;} + { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 +echo "$as_me: current value: $ac_new_val" >&2;} + ac_cache_corrupted=: + fi;; + esac + # Pass precious variables to config.status. + if test "$ac_new_set" = set; then + case $ac_new_val in + *\'*) ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; + *) ac_arg=$ac_var=$ac_new_val ;; + esac + case " $ac_configure_args " in + *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. + *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; + esac + fi +done +if $ac_cache_corrupted; then + { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 +echo "$as_me: error: changes in the environment can compromise the build" >&2;} + { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 +echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} + { (exit 1); exit 1; }; } +fi + + + + + + + + + + + + + + + + + + + + + + + + + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + +ac_config_headers="$ac_config_headers config.h" + + +PACKAGE=SFLPhone +VERSION=0.8 + +am__api_version="1.9" +ac_aux_dir= +for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do + if test -f "$ac_dir/install-sh"; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install-sh -c" + break + elif test -f "$ac_dir/install.sh"; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install.sh -c" + break + elif test -f "$ac_dir/shtool"; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/shtool install -c" + break + fi +done +if test -z "$ac_aux_dir"; then + { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&5 +echo "$as_me: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&2;} + { (exit 1); exit 1; }; } +fi + +# These three variables are undocumented and unsupported, +# and are intended to be withdrawn in a future Autoconf release. +# They can cause serious problems if a builder's source tree is in a directory +# whose full name contains unusual characters. +ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. +ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. +ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. + + +# Find a good install program. We prefer a C program (faster), +# so one script is as good as another. But avoid the broken or +# incompatible versions: +# SysV /etc/install, /usr/sbin/install +# SunOS /usr/etc/install +# IRIX /sbin/install +# AIX /bin/install +# AmigaOS /C/install, which installs bootblocks on floppy discs +# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag +# AFS /usr/afsws/bin/install, which mishandles nonexistent args +# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" +# OS/2's system install, which has a completely different semantic +# ./install, which can be erroneously created by make from ./install.sh. +{ echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 +echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6; } +if test -z "$INSTALL"; then +if test "${ac_cv_path_install+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + # Account for people who put trailing slashes in PATH elements. +case $as_dir/ in + ./ | .// | /cC/* | \ + /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ + ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \ + /usr/ucb/* ) ;; + *) + # OSF1 and SCO ODT 3.0 have their own names for install. + # Don't use installbsd from OSF since it installs stuff as root + # by default. + for ac_prog in ginstall scoinst install; do + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then + if test $ac_prog = install && + grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + # AIX install. It has an incompatible calling convention. + : + elif test $ac_prog = install && + grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + # program-specific install script used by HP pwplus--don't use. + : + else + ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" + break 3 + fi + fi + done + done + ;; +esac +done +IFS=$as_save_IFS + + +fi + if test "${ac_cv_path_install+set}" = set; then + INSTALL=$ac_cv_path_install + else + # As a last resort, use the slow shell script. Don't cache a + # value for INSTALL within a source directory, because that will + # break other packages using the cache if that directory is + # removed, or if the value is a relative name. + INSTALL=$ac_install_sh + fi +fi +{ echo "$as_me:$LINENO: result: $INSTALL" >&5 +echo "${ECHO_T}$INSTALL" >&6; } + +# Use test -z because SunOS4 sh mishandles braces in ${var-val}. +# It thinks the first close brace ends the variable substitution. +test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' + +test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' + +test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' + +{ echo "$as_me:$LINENO: checking whether build environment is sane" >&5 +echo $ECHO_N "checking whether build environment is sane... $ECHO_C" >&6; } +# Just in case +sleep 1 +echo timestamp > conftest.file +# Do `set' in a subshell so we don't clobber the current shell's +# arguments. Must try -L first in case configure is actually a +# symlink; some systems play weird games with the mod time of symlinks +# (eg FreeBSD returns the mod time of the symlink's containing +# directory). +if ( + set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null` + if test "$*" = "X"; then + # -L didn't work. + set X `ls -t $srcdir/configure conftest.file` + fi + rm -f conftest.file + if test "$*" != "X $srcdir/configure conftest.file" \ + && test "$*" != "X conftest.file $srcdir/configure"; then + + # If neither matched, then we have a broken ls. This can happen + # if, for instance, CONFIG_SHELL is bash and it inherits a + # broken ls alias from the environment. This has actually + # happened. Such a system could not be considered "sane". + { { echo "$as_me:$LINENO: error: ls -t appears to fail. Make sure there is not a broken +alias in your environment" >&5 +echo "$as_me: error: ls -t appears to fail. Make sure there is not a broken +alias in your environment" >&2;} + { (exit 1); exit 1; }; } + fi + + test "$2" = conftest.file + ) +then + # Ok. + : +else + { { echo "$as_me:$LINENO: error: newly created file is older than distributed files! +Check your system clock" >&5 +echo "$as_me: error: newly created file is older than distributed files! +Check your system clock" >&2;} + { (exit 1); exit 1; }; } +fi +{ echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } +test "$program_prefix" != NONE && + program_transform_name="s&^&$program_prefix&;$program_transform_name" +# Use a double $ so make ignores it. +test "$program_suffix" != NONE && + program_transform_name="s&\$&$program_suffix&;$program_transform_name" +# Double any \ or $. echo might interpret backslashes. +# By default was `s,x,x', remove it if useless. +cat <<\_ACEOF >conftest.sed +s/[\\$]/&&/g;s/;s,x,x,$// +_ACEOF +program_transform_name=`echo $program_transform_name | sed -f conftest.sed` +rm -f conftest.sed + +# expand $ac_aux_dir to an absolute path +am_aux_dir=`cd $ac_aux_dir && pwd` + +test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing" +# Use eval to expand $SHELL +if eval "$MISSING --run true"; then + am_missing_run="$MISSING --run " +else + am_missing_run= + { echo "$as_me:$LINENO: WARNING: \`missing' script is too old or missing" >&5 +echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;} +fi + +if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then + # We used to keeping the `.' as first argument, in order to + # allow $(mkdir_p) to be used without argument. As in + # $(mkdir_p) $(somedir) + # where $(somedir) is conditionally defined. However this is wrong + # for two reasons: + # 1. if the package is installed by a user who cannot write `.' + # make install will fail, + # 2. the above comment should most certainly read + # $(mkdir_p) $(DESTDIR)$(somedir) + # so it does not work when $(somedir) is undefined and + # $(DESTDIR) is not. + # To support the latter case, we have to write + # test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir), + # so the `.' trick is pointless. + mkdir_p='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. + for d in ./-p ./--version; + do + test -d $d && rmdir $d + done + # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists. + if test -f "$ac_aux_dir/mkinstalldirs"; then + mkdir_p='$(mkinstalldirs)' + else + mkdir_p='$(install_sh) -d' + fi +fi + +for ac_prog in gawk mawk nawk awk +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } +if test "${ac_cv_prog_AWK+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -n "$AWK"; then + ac_cv_prog_AWK="$AWK" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_AWK="$ac_prog" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + +fi +fi +AWK=$ac_cv_prog_AWK +if test -n "$AWK"; then + { echo "$as_me:$LINENO: result: $AWK" >&5 +echo "${ECHO_T}$AWK" >&6; } +else + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } +fi + + + test -n "$AWK" && break +done + +{ echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 +echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6; } +set x ${MAKE-make}; ac_make=`echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` +if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.make <<\_ACEOF +SHELL = /bin/sh +all: + @echo '@@@%%%=$(MAKE)=@@@%%%' +_ACEOF +# GNU make sometimes prints "make[1]: Entering...", which would confuse us. +case `${MAKE-make} -f conftest.make 2>/dev/null` in + *@@@%%%=?*=@@@%%%*) + eval ac_cv_prog_make_${ac_make}_set=yes;; + *) + eval ac_cv_prog_make_${ac_make}_set=no;; +esac +rm -f conftest.make +fi +if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then + { echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } + SET_MAKE= +else + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } + SET_MAKE="MAKE=${MAKE-make}" +fi + +rm -rf .tst 2>/dev/null +mkdir .tst 2>/dev/null +if test -d .tst; then + am__leading_dot=. +else + am__leading_dot=_ +fi +rmdir .tst 2>/dev/null + +# test to see if srcdir already configured +if test "`cd $srcdir && pwd`" != "`pwd`" && + test -f $srcdir/config.status; then + { { echo "$as_me:$LINENO: error: source directory already configured; run \"make distclean\" there first" >&5 +echo "$as_me: error: source directory already configured; run \"make distclean\" there first" >&2;} + { (exit 1); exit 1; }; } +fi + +# test whether we have cygpath +if test -z "$CYGPATH_W"; then + if (cygpath --version) >/dev/null 2>/dev/null; then + CYGPATH_W='cygpath -w' + else + CYGPATH_W=echo + fi +fi + + +# Define the identity of the package. + PACKAGE=$PACKAGE + VERSION=$VERSION + + +cat >>confdefs.h <<_ACEOF +#define PACKAGE "$PACKAGE" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define VERSION "$VERSION" +_ACEOF + +# Some tools Automake needs. + +ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"} + + +AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"} + + +AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"} + + +AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"} + + +MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} + +install_sh=${install_sh-"$am_aux_dir/install-sh"} + +# Installed binaries are usually stripped using `strip' when the user +# run `make install-strip'. However `strip' might not be the right +# tool to use in cross-compilation environments, therefore Automake +# will honor the `STRIP' environment variable to overrule this program. +if test "$cross_compiling" != no; then + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. +set dummy ${ac_tool_prefix}strip; ac_word=$2 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } +if test "${ac_cv_prog_STRIP+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -n "$STRIP"; then + ac_cv_prog_STRIP="$STRIP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_STRIP="${ac_tool_prefix}strip" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + +fi +fi +STRIP=$ac_cv_prog_STRIP +if test -n "$STRIP"; then + { echo "$as_me:$LINENO: result: $STRIP" >&5 +echo "${ECHO_T}$STRIP" >&6; } +else + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_STRIP"; then + ac_ct_STRIP=$STRIP + # Extract the first word of "strip", so it can be a program name with args. +set dummy strip; ac_word=$2 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } +if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -n "$ac_ct_STRIP"; then + ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_ac_ct_STRIP="strip" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + +fi +fi +ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP +if test -n "$ac_ct_STRIP"; then + { echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5 +echo "${ECHO_T}$ac_ct_STRIP" >&6; } +else + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } +fi + + if test "x$ac_ct_STRIP" = x; then + STRIP=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&5 +echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&2;} +ac_tool_warned=yes ;; +esac + STRIP=$ac_ct_STRIP + fi +else + STRIP="$ac_cv_prog_STRIP" +fi + +fi +INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s" + +# We need awk for the "check" target. The system "awk" is bad on +# some platforms. +# Always define AMTAR for backward compatibility. + +AMTAR=${AMTAR-"${am_missing_run}tar"} + +am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -' + + + + + + + +# Check whether --with-debug was given. +if test "${with_debug+set}" = set; then + withval=$with_debug; with_debug=${withval} +else + with_debug=no + +fi + +if test "x$with_debug" = "xfull" -o "x$with_debug" = "xyes"; then + CFLAGS="$CFLAGS -g -DDEBUG" +fi + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. +set dummy ${ac_tool_prefix}gcc; ac_word=$2 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } +if test "${ac_cv_prog_CC+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_CC="${ac_tool_prefix}gcc" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { echo "$as_me:$LINENO: result: $CC" >&5 +echo "${ECHO_T}$CC" >&6; } +else + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_CC"; then + ac_ct_CC=$CC + # Extract the first word of "gcc", so it can be a program name with args. +set dummy gcc; ac_word=$2 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } +if test "${ac_cv_prog_ac_ct_CC+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -n "$ac_ct_CC"; then + ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_ac_ct_CC="gcc" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + +fi +fi +ac_ct_CC=$ac_cv_prog_ac_ct_CC +if test -n "$ac_ct_CC"; then + { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 +echo "${ECHO_T}$ac_ct_CC" >&6; } +else + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } +fi + + if test "x$ac_ct_CC" = x; then + CC="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&5 +echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&2;} +ac_tool_warned=yes ;; +esac + CC=$ac_ct_CC + fi +else + CC="$ac_cv_prog_CC" +fi + +if test -z "$CC"; then + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. +set dummy ${ac_tool_prefix}cc; ac_word=$2 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } +if test "${ac_cv_prog_CC+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_CC="${ac_tool_prefix}cc" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { echo "$as_me:$LINENO: result: $CC" >&5 +echo "${ECHO_T}$CC" >&6; } +else + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } +fi + + + fi +fi +if test -z "$CC"; then + # Extract the first word of "cc", so it can be a program name with args. +set dummy cc; ac_word=$2 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } +if test "${ac_cv_prog_CC+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else + ac_prog_rejected=no +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then + ac_prog_rejected=yes + continue + fi + ac_cv_prog_CC="cc" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + +if test $ac_prog_rejected = yes; then + # We found a bogon in the path, so make sure we never use it. + set dummy $ac_cv_prog_CC + shift + if test $# != 0; then + # We chose a different compiler from the bogus one. + # However, it has the same basename, so the bogon will be chosen + # first if we set CC to just the basename; use the full file name. + shift + ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" + fi +fi +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { echo "$as_me:$LINENO: result: $CC" >&5 +echo "${ECHO_T}$CC" >&6; } +else + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } +fi + + +fi +if test -z "$CC"; then + if test -n "$ac_tool_prefix"; then + for ac_prog in cl.exe + do + # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. +set dummy $ac_tool_prefix$ac_prog; ac_word=$2 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } +if test "${ac_cv_prog_CC+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_CC="$ac_tool_prefix$ac_prog" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { echo "$as_me:$LINENO: result: $CC" >&5 +echo "${ECHO_T}$CC" >&6; } +else + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } +fi + + + test -n "$CC" && break + done +fi +if test -z "$CC"; then + ac_ct_CC=$CC + for ac_prog in cl.exe +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } +if test "${ac_cv_prog_ac_ct_CC+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -n "$ac_ct_CC"; then + ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_ac_ct_CC="$ac_prog" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + +fi +fi +ac_ct_CC=$ac_cv_prog_ac_ct_CC +if test -n "$ac_ct_CC"; then + { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 +echo "${ECHO_T}$ac_ct_CC" >&6; } +else + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } +fi + + + test -n "$ac_ct_CC" && break +done + + if test "x$ac_ct_CC" = x; then + CC="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&5 +echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&2;} +ac_tool_warned=yes ;; +esac + CC=$ac_ct_CC + fi +fi + +fi + + +test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH +See \`config.log' for more details." >&5 +echo "$as_me: error: no acceptable C compiler found in \$PATH +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } + +# Provide some information about the compiler. +echo "$as_me:$LINENO: checking for C compiler version" >&5 +ac_compiler=`set X $ac_compile; echo $2` +{ (ac_try="$ac_compiler --version >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compiler --version >&5") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } +{ (ac_try="$ac_compiler -v >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compiler -v >&5") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } +{ (ac_try="$ac_compiler -V >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compiler -V >&5") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } + +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +ac_clean_files_save=$ac_clean_files +ac_clean_files="$ac_clean_files a.out a.exe b.out" +# Try to create an executable without -o first, disregard a.out. +# It will help us diagnose broken compilers, and finding out an intuition +# of exeext. +{ echo "$as_me:$LINENO: checking for C compiler default output file name" >&5 +echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6; } +ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` +# +# List of possible output files, starting from the most likely. +# The algorithm is not robust to junk in `.', hence go to wildcards (a.*) +# only as a last resort. b.out is created by i960 compilers. +ac_files='a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out' +# +# The IRIX 6 linker writes into existing files which may not be +# executable, retaining their permissions. Remove them first so a +# subsequent execution test works. +ac_rmfiles= +for ac_file in $ac_files +do + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;; + * ) ac_rmfiles="$ac_rmfiles $ac_file";; + esac +done +rm -f $ac_rmfiles + +if { (ac_try="$ac_link_default" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link_default") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; then + # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. +# So ignore a value of `no', otherwise this would lead to `EXEEXT = no' +# in a Makefile. We should not override ac_cv_exeext if it was cached, +# so that the user can short-circuit this test for compilers unknown to +# Autoconf. +for ac_file in $ac_files '' +do + test -f "$ac_file" || continue + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) + ;; + [ab].out ) + # We found the default executable, but exeext='' is most + # certainly right. + break;; + *.* ) + if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; + then :; else + ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` + fi + # We set ac_cv_exeext here because the later test for it is not + # safe: cross compilers may not add the suffix if given an `-o' + # argument, so we may need to know it at that point already. + # Even if this section looks crufty: it has the advantage of + # actually working. + break;; + * ) + break;; + esac +done +test "$ac_cv_exeext" = no && ac_cv_exeext= + +else + ac_file='' +fi + +{ echo "$as_me:$LINENO: result: $ac_file" >&5 +echo "${ECHO_T}$ac_file" >&6; } +if test -z "$ac_file"; then + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +{ { echo "$as_me:$LINENO: error: C compiler cannot create executables +See \`config.log' for more details." >&5 +echo "$as_me: error: C compiler cannot create executables +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; } +fi + +ac_exeext=$ac_cv_exeext + +# Check that the compiler produces executables we can run. If not, either +# the compiler is broken, or we cross compile. +{ echo "$as_me:$LINENO: checking whether the C compiler works" >&5 +echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6; } +# FIXME: These cross compiler hacks should be removed for Autoconf 3.0 +# If not cross compiling, check that we can run a simple program. +if test "$cross_compiling" != yes; then + if { ac_try='./$ac_file' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + cross_compiling=no + else + if test "$cross_compiling" = maybe; then + cross_compiling=yes + else + { { echo "$as_me:$LINENO: error: cannot run C compiled programs. +If you meant to cross compile, use \`--host'. +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot run C compiled programs. +If you meant to cross compile, use \`--host'. +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } + fi + fi +fi +{ echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } + +rm -f a.out a.exe conftest$ac_cv_exeext b.out +ac_clean_files=$ac_clean_files_save +# Check that the compiler produces executables we can run. If not, either +# the compiler is broken, or we cross compile. +{ echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 +echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6; } +{ echo "$as_me:$LINENO: result: $cross_compiling" >&5 +echo "${ECHO_T}$cross_compiling" >&6; } + +{ echo "$as_me:$LINENO: checking for suffix of executables" >&5 +echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6; } +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; then + # If both `conftest.exe' and `conftest' are `present' (well, observable) +# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will +# work properly (i.e., refer to `conftest.exe'), while it won't with +# `rm'. +for ac_file in conftest.exe conftest conftest.*; do + test -f "$ac_file" || continue + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;; + *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` + break;; + * ) break;; + esac +done +else + { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute suffix of executables: cannot compile and link +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } +fi + +rm -f conftest$ac_cv_exeext +{ echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 +echo "${ECHO_T}$ac_cv_exeext" >&6; } + +rm -f conftest.$ac_ext +EXEEXT=$ac_cv_exeext +ac_exeext=$EXEEXT +{ echo "$as_me:$LINENO: checking for suffix of object files" >&5 +echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6; } +if test "${ac_cv_objext+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.o conftest.obj +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; then + for ac_file in conftest.o conftest.obj conftest.*; do + test -f "$ac_file" || continue; + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf ) ;; + *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` + break;; + esac +done +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute suffix of object files: cannot compile +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } +fi + +rm -f conftest.$ac_cv_objext conftest.$ac_ext +fi +{ echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 +echo "${ECHO_T}$ac_cv_objext" >&6; } +OBJEXT=$ac_cv_objext +ac_objext=$OBJEXT +{ echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 +echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6; } +if test "${ac_cv_c_compiler_gnu+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ +#ifndef __GNUC__ + choke me +#endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_compiler_gnu=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_compiler_gnu=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +ac_cv_c_compiler_gnu=$ac_compiler_gnu + +fi +{ echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 +echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6; } +GCC=`test $ac_compiler_gnu = yes && echo yes` +ac_test_CFLAGS=${CFLAGS+set} +ac_save_CFLAGS=$CFLAGS +{ echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 +echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6; } +if test "${ac_cv_prog_cc_g+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_save_c_werror_flag=$ac_c_werror_flag + ac_c_werror_flag=yes + ac_cv_prog_cc_g=no + CFLAGS="-g" + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_prog_cc_g=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + CFLAGS="" + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_c_werror_flag=$ac_save_c_werror_flag + CFLAGS="-g" + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_prog_cc_g=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_c_werror_flag=$ac_save_c_werror_flag +fi +{ echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 +echo "${ECHO_T}$ac_cv_prog_cc_g" >&6; } +if test "$ac_test_CFLAGS" = set; then + CFLAGS=$ac_save_CFLAGS +elif test $ac_cv_prog_cc_g = yes; then + if test "$GCC" = yes; then + CFLAGS="-g -O2" + else + CFLAGS="-g" + fi +else + if test "$GCC" = yes; then + CFLAGS="-O2" + else + CFLAGS= + fi +fi +{ echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5 +echo $ECHO_N "checking for $CC option to accept ISO C89... $ECHO_C" >&6; } +if test "${ac_cv_prog_cc_c89+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_cv_prog_cc_c89=no +ac_save_CC=$CC +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <stdarg.h> +#include <stdio.h> +#include <sys/types.h> +#include <sys/stat.h> +/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ +struct buf { int x; }; +FILE * (*rcsopen) (struct buf *, struct stat *, int); +static char *e (p, i) + char **p; + int i; +{ + return p[i]; +} +static char *f (char * (*g) (char **, int), char **p, ...) +{ + char *s; + va_list v; + va_start (v,p); + s = g (p, va_arg (v,int)); + va_end (v); + return s; +} + +/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has + function prototypes and stuff, but not '\xHH' hex character constants. + These don't provoke an error unfortunately, instead are silently treated + as 'x'. The following induces an error, until -std is added to get + proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an + array size at least. It's necessary to write '\x00'==0 to get something + that's true only with -std. */ +int osf4_cc_array ['\x00' == 0 ? 1 : -1]; + +/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters + inside strings and character constants. */ +#define FOO(x) 'x' +int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; + +int test (int i, double x); +struct s1 {int (*f) (int a);}; +struct s2 {int (*f) (double a);}; +int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); +int argc; +char **argv; +int +main () +{ +return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; + ; + return 0; +} +_ACEOF +for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ + -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" +do + CC="$ac_save_CC $ac_arg" + rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_prog_cc_c89=$ac_arg +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext + test "x$ac_cv_prog_cc_c89" != "xno" && break +done +rm -f conftest.$ac_ext +CC=$ac_save_CC + +fi +# AC_CACHE_VAL +case "x$ac_cv_prog_cc_c89" in + x) + { echo "$as_me:$LINENO: result: none needed" >&5 +echo "${ECHO_T}none needed" >&6; } ;; + xno) + { echo "$as_me:$LINENO: result: unsupported" >&5 +echo "${ECHO_T}unsupported" >&6; } ;; + *) + CC="$CC $ac_cv_prog_cc_c89" + { echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5 +echo "${ECHO_T}$ac_cv_prog_cc_c89" >&6; } ;; +esac + + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu +DEPDIR="${am__leading_dot}deps" + +ac_config_commands="$ac_config_commands depfiles" + + +am_make=${MAKE-make} +cat > confinc << 'END' +am__doit: + @echo done +.PHONY: am__doit +END +# If we don't find an include directive, just comment out the code. +{ echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5 +echo $ECHO_N "checking for style of include used by $am_make... $ECHO_C" >&6; } +am__include="#" +am__quote= +_am_result=none +# First try GNU make style include. +echo "include confinc" > confmf +# We grep out `Entering directory' and `Leaving directory' +# messages which can occur if `w' ends up in MAKEFLAGS. +# In particular we don't look at `^make:' because GNU make might +# be invoked under some other name (usually "gmake"), in which +# case it prints its new name instead of `make'. +if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then + am__include=include + am__quote= + _am_result=GNU +fi +# Now try BSD make style include. +if test "$am__include" = "#"; then + echo '.include "confinc"' > confmf + if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then + am__include=.include + am__quote="\"" + _am_result=BSD + fi +fi + + +{ echo "$as_me:$LINENO: result: $_am_result" >&5 +echo "${ECHO_T}$_am_result" >&6; } +rm -f confinc confmf + +# Check whether --enable-dependency-tracking was given. +if test "${enable_dependency_tracking+set}" = set; then + enableval=$enable_dependency_tracking; +fi + +if test "x$enable_dependency_tracking" != xno; then + am_depcomp="$ac_aux_dir/depcomp" + AMDEPBACKSLASH='\' +fi + + +if test "x$enable_dependency_tracking" != xno; then + AMDEP_TRUE= + AMDEP_FALSE='#' +else + AMDEP_TRUE='#' + AMDEP_FALSE= +fi + + + + +depcc="$CC" am_compiler_list= + +{ echo "$as_me:$LINENO: checking dependency style of $depcc" >&5 +echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6; } +if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then + # We make a subdir and do the tests there. Otherwise we can end up + # making bogus files that we don't know about and never remove. For + # instance it was reported that on HP-UX the gcc test will end up + # making a dummy file named `D' -- because `-MD' means `put the output + # in D'. + mkdir conftest.dir + # Copy depcomp to subdir because otherwise we won't find it if we're + # using a relative directory. + cp "$am_depcomp" conftest.dir + cd conftest.dir + # We will build objects and dependencies in a subdirectory because + # it helps to detect inapplicable dependency modes. For instance + # both Tru64's cc and ICC support -MD to output dependencies as a + # side effect of compilation, but ICC will put the dependencies in + # the current directory while Tru64 will put them in the object + # directory. + mkdir sub + + am_cv_CC_dependencies_compiler_type=none + if test "$am_compiler_list" = ""; then + am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` + fi + for depmode in $am_compiler_list; do + # Setup a source with many dependencies, because some compilers + # like to wrap large dependency lists on column 80 (with \), and + # we should not choose a depcomp mode which is confused by this. + # + # We need to recreate these files for each test, as the compiler may + # overwrite some of them when testing with obscure command lines. + # This happens at least with the AIX C compiler. + : > sub/conftest.c + for i in 1 2 3 4 5 6; do + echo '#include "conftst'$i'.h"' >> sub/conftest.c + # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with + # Solaris 8's {/usr,}/bin/sh. + touch sub/conftst$i.h + done + echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf + + case $depmode in + nosideeffect) + # after this tag, mechanisms are not by side-effect, so they'll + # only be used when explicitly requested + if test "x$enable_dependency_tracking" = xyes; then + continue + else + break + fi + ;; + none) break ;; + esac + # We check with `-c' and `-o' for the sake of the "dashmstdout" + # mode. It turns out that the SunPro C++ compiler does not properly + # handle `-M -o', and we need to detect this. + if depmode=$depmode \ + source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \ + depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ + $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \ + >/dev/null 2>conftest.err && + grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && + grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 && + ${MAKE-make} -s -f confmf > /dev/null 2>&1; then + # icc doesn't choke on unknown options, it will just issue warnings + # or remarks (even with -Werror). So we grep stderr for any message + # that says an option was ignored or not supported. + # When given -MP, icc 7.0 and 7.1 complain thusly: + # icc: Command line warning: ignoring option '-M'; no argument required + # The diagnosis changed in icc 8.0: + # icc: Command line remark: option '-MP' not supported + if (grep 'ignoring option' conftest.err || + grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else + am_cv_CC_dependencies_compiler_type=$depmode + break + fi + fi + done + + cd .. + rm -rf conftest.dir +else + am_cv_CC_dependencies_compiler_type=none +fi + +fi +{ echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5 +echo "${ECHO_T}$am_cv_CC_dependencies_compiler_type" >&6; } +CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type + + + +if + test "x$enable_dependency_tracking" != xno \ + && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then + am__fastdepCC_TRUE= + am__fastdepCC_FALSE='#' +else + am__fastdepCC_TRUE='#' + am__fastdepCC_FALSE= +fi + + +# Find a good install program. We prefer a C program (faster), +# so one script is as good as another. But avoid the broken or +# incompatible versions: +# SysV /etc/install, /usr/sbin/install +# SunOS /usr/etc/install +# IRIX /sbin/install +# AIX /bin/install +# AmigaOS /C/install, which installs bootblocks on floppy discs +# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag +# AFS /usr/afsws/bin/install, which mishandles nonexistent args +# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" +# OS/2's system install, which has a completely different semantic +# ./install, which can be erroneously created by make from ./install.sh. +{ echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 +echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6; } +if test -z "$INSTALL"; then +if test "${ac_cv_path_install+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + # Account for people who put trailing slashes in PATH elements. +case $as_dir/ in + ./ | .// | /cC/* | \ + /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ + ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \ + /usr/ucb/* ) ;; + *) + # OSF1 and SCO ODT 3.0 have their own names for install. + # Don't use installbsd from OSF since it installs stuff as root + # by default. + for ac_prog in ginstall scoinst install; do + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then + if test $ac_prog = install && + grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + # AIX install. It has an incompatible calling convention. + : + elif test $ac_prog = install && + grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + # program-specific install script used by HP pwplus--don't use. + : + else + ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" + break 3 + fi + fi + done + done + ;; +esac +done +IFS=$as_save_IFS + + +fi + if test "${ac_cv_path_install+set}" = set; then + INSTALL=$ac_cv_path_install + else + # As a last resort, use the slow shell script. Don't cache a + # value for INSTALL within a source directory, because that will + # break other packages using the cache if that directory is + # removed, or if the value is a relative name. + INSTALL=$ac_install_sh + fi +fi +{ echo "$as_me:$LINENO: result: $INSTALL" >&5 +echo "${ECHO_T}$INSTALL" >&6; } + +# Use test -z because SunOS4 sh mishandles braces in ${var-val}. +# It thinks the first close brace ends the variable substitution. +test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' + +test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' + +test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' + + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu +{ echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 +echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6; } +# On Suns, sometimes $CPP names a directory. +if test -n "$CPP" && test -d "$CPP"; then + CPP= +fi +if test -z "$CPP"; then + if test "${ac_cv_prog_CPP+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + # Double quotes because CPP needs to be expanded + for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" + do + ac_preproc_ok=false +for ac_c_preproc_warn_flag in '' yes +do + # Use a header file that comes with gcc, so configuring glibc + # with a fresh cross-compiler works. + # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since + # <limits.h> exists even on freestanding compilers. + # On the NeXT, cc -E runs the code through the compiler's parser, + # not just through cpp. "Syntax error" is here to catch this case. + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#ifdef __STDC__ +# include <limits.h> +#else +# include <assert.h> +#endif + Syntax error +_ACEOF +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + : +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + # Broken: fails on valid input. +continue +fi + +rm -f conftest.err conftest.$ac_ext + + # OK, works on sane cases. Now check whether nonexistent headers + # can be detected and how. + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <ac_nonexistent.h> +_ACEOF +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + # Broken: success on invalid input. +continue +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + # Passes both tests. +ac_preproc_ok=: +break +fi + +rm -f conftest.err conftest.$ac_ext + +done +# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. +rm -f conftest.err conftest.$ac_ext +if $ac_preproc_ok; then + break +fi + + done + ac_cv_prog_CPP=$CPP + +fi + CPP=$ac_cv_prog_CPP +else + ac_cv_prog_CPP=$CPP +fi +{ echo "$as_me:$LINENO: result: $CPP" >&5 +echo "${ECHO_T}$CPP" >&6; } +ac_preproc_ok=false +for ac_c_preproc_warn_flag in '' yes +do + # Use a header file that comes with gcc, so configuring glibc + # with a fresh cross-compiler works. + # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since + # <limits.h> exists even on freestanding compilers. + # On the NeXT, cc -E runs the code through the compiler's parser, + # not just through cpp. "Syntax error" is here to catch this case. + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#ifdef __STDC__ +# include <limits.h> +#else +# include <assert.h> +#endif + Syntax error +_ACEOF +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + : +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + # Broken: fails on valid input. +continue +fi + +rm -f conftest.err conftest.$ac_ext + + # OK, works on sane cases. Now check whether nonexistent headers + # can be detected and how. + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <ac_nonexistent.h> +_ACEOF +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then + # Broken: success on invalid input. +continue +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + # Passes both tests. +ac_preproc_ok=: +break +fi + +rm -f conftest.err conftest.$ac_ext + +done +# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. +rm -f conftest.err conftest.$ac_ext +if $ac_preproc_ok; then + : +else + { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check +See \`config.log' for more details." >&5 +echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } +fi + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + +{ echo "$as_me:$LINENO: checking for grep that handles long lines and -e" >&5 +echo $ECHO_N "checking for grep that handles long lines and -e... $ECHO_C" >&6; } +if test "${ac_cv_path_GREP+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + # Extract the first word of "grep ggrep" to use in msg output +if test -z "$GREP"; then +set dummy grep ggrep; ac_prog_name=$2 +if test "${ac_cv_path_GREP+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_path_GREP_found=false +# Loop through the user's path and test for each of PROGNAME-LIST +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in grep ggrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" + { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue + # Check for GNU ac_path_GREP and select it if it is found. + # Check for GNU $ac_path_GREP +case `"$ac_path_GREP" --version 2>&1` in +*GNU*) + ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; +*) + ac_count=0 + echo $ECHO_N "0123456789$ECHO_C" >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + echo 'GREP' >> "conftest.nl" + "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + ac_count=`expr $ac_count + 1` + if test $ac_count -gt ${ac_path_GREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_GREP="$ac_path_GREP" + ac_path_GREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + + $ac_path_GREP_found && break 3 + done +done + +done +IFS=$as_save_IFS + + +fi + +GREP="$ac_cv_path_GREP" +if test -z "$GREP"; then + { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5 +echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;} + { (exit 1); exit 1; }; } +fi + +else + ac_cv_path_GREP=$GREP +fi + + +fi +{ echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5 +echo "${ECHO_T}$ac_cv_path_GREP" >&6; } + GREP="$ac_cv_path_GREP" + + +{ echo "$as_me:$LINENO: checking for egrep" >&5 +echo $ECHO_N "checking for egrep... $ECHO_C" >&6; } +if test "${ac_cv_path_EGREP+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 + then ac_cv_path_EGREP="$GREP -E" + else + # Extract the first word of "egrep" to use in msg output +if test -z "$EGREP"; then +set dummy egrep; ac_prog_name=$2 +if test "${ac_cv_path_EGREP+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_path_EGREP_found=false +# Loop through the user's path and test for each of PROGNAME-LIST +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in egrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" + { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue + # Check for GNU ac_path_EGREP and select it if it is found. + # Check for GNU $ac_path_EGREP +case `"$ac_path_EGREP" --version 2>&1` in +*GNU*) + ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; +*) + ac_count=0 + echo $ECHO_N "0123456789$ECHO_C" >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + echo 'EGREP' >> "conftest.nl" + "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + ac_count=`expr $ac_count + 1` + if test $ac_count -gt ${ac_path_EGREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_EGREP="$ac_path_EGREP" + ac_path_EGREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + + $ac_path_EGREP_found && break 3 + done +done + +done +IFS=$as_save_IFS + + +fi + +EGREP="$ac_cv_path_EGREP" +if test -z "$EGREP"; then + { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5 +echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;} + { (exit 1); exit 1; }; } +fi + +else + ac_cv_path_EGREP=$EGREP +fi + + + fi +fi +{ echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5 +echo "${ECHO_T}$ac_cv_path_EGREP" >&6; } + EGREP="$ac_cv_path_EGREP" + + +{ echo "$as_me:$LINENO: checking for ANSI C header files" >&5 +echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6; } +if test "${ac_cv_header_stdc+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <stdlib.h> +#include <stdarg.h> +#include <string.h> +#include <float.h> + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_header_stdc=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_header_stdc=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +if test $ac_cv_header_stdc = yes; then + # SunOS 4.x string.h does not declare mem*, contrary to ANSI. + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <string.h> + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "memchr" >/dev/null 2>&1; then + : +else + ac_cv_header_stdc=no +fi +rm -f conftest* + +fi + +if test $ac_cv_header_stdc = yes; then + # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <stdlib.h> + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "free" >/dev/null 2>&1; then + : +else + ac_cv_header_stdc=no +fi +rm -f conftest* + +fi + +if test $ac_cv_header_stdc = yes; then + # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. + if test "$cross_compiling" = yes; then + : +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <ctype.h> +#include <stdlib.h> +#if ((' ' & 0x0FF) == 0x020) +# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') +# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) +#else +# define ISLOWER(c) \ + (('a' <= (c) && (c) <= 'i') \ + || ('j' <= (c) && (c) <= 'r') \ + || ('s' <= (c) && (c) <= 'z')) +# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) +#endif + +#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) +int +main () +{ + int i; + for (i = 0; i < 256; i++) + if (XOR (islower (i), ISLOWER (i)) + || toupper (i) != TOUPPER (i)) + return 2; + return 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + : +else + echo "$as_me: program exited with status $ac_status" >&5 +echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +ac_cv_header_stdc=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi +fi +{ echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 +echo "${ECHO_T}$ac_cv_header_stdc" >&6; } +if test $ac_cv_header_stdc = yes; then + +cat >>confdefs.h <<\_ACEOF +#define STDC_HEADERS 1 +_ACEOF + +fi + + + + +if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. +set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } +if test "${ac_cv_path_PKG_CONFIG+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + case $PKG_CONFIG in + [\\/]* | ?:[\\/]*) + ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + + ;; +esac +fi +PKG_CONFIG=$ac_cv_path_PKG_CONFIG +if test -n "$PKG_CONFIG"; then + { echo "$as_me:$LINENO: result: $PKG_CONFIG" >&5 +echo "${ECHO_T}$PKG_CONFIG" >&6; } +else + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } +fi + + +fi +if test -z "$ac_cv_path_PKG_CONFIG"; then + ac_pt_PKG_CONFIG=$PKG_CONFIG + # Extract the first word of "pkg-config", so it can be a program name with args. +set dummy pkg-config; ac_word=$2 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } +if test "${ac_cv_path_ac_pt_PKG_CONFIG+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + case $ac_pt_PKG_CONFIG in + [\\/]* | ?:[\\/]*) + ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + + ;; +esac +fi +ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG +if test -n "$ac_pt_PKG_CONFIG"; then + { echo "$as_me:$LINENO: result: $ac_pt_PKG_CONFIG" >&5 +echo "${ECHO_T}$ac_pt_PKG_CONFIG" >&6; } +else + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } +fi + + if test "x$ac_pt_PKG_CONFIG" = x; then + PKG_CONFIG="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&5 +echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&2;} +ac_tool_warned=yes ;; +esac + PKG_CONFIG=$ac_pt_PKG_CONFIG + fi +else + PKG_CONFIG="$ac_cv_path_PKG_CONFIG" +fi + +fi +if test -n "$PKG_CONFIG"; then + _pkg_min_version=0.9.0 + { echo "$as_me:$LINENO: checking pkg-config is at least version $_pkg_min_version" >&5 +echo $ECHO_N "checking pkg-config is at least version $_pkg_min_version... $ECHO_C" >&6; } + if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then + { echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } + else + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } + PKG_CONFIG="" + fi + +fi + +pkg_failed=no +{ echo "$as_me:$LINENO: checking for DEPS" >&5 +echo $ECHO_N "checking for DEPS... $ECHO_C" >&6; } + +if test -n "$PKG_CONFIG"; then + if test -n "$DEPS_CFLAGS"; then + pkg_cv_DEPS_CFLAGS="$DEPS_CFLAGS" + else + if test -n "$PKG_CONFIG" && \ + { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\\ + dbus-glib-1 >= 0.35 \\ + gtk+-2.0 >= 2.2 \\ + glib-2.0 >= 2.2 \\ +\"") >&5 + ($PKG_CONFIG --exists --print-errors "\ + dbus-glib-1 >= 0.35 \ + gtk+-2.0 >= 2.2 \ + glib-2.0 >= 2.2 \ +") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; then + pkg_cv_DEPS_CFLAGS=`$PKG_CONFIG --cflags "\ + dbus-glib-1 >= 0.35 \ + gtk+-2.0 >= 2.2 \ + glib-2.0 >= 2.2 \ +" 2>/dev/null` +else + pkg_failed=yes +fi + fi +else + pkg_failed=untried +fi +if test -n "$PKG_CONFIG"; then + if test -n "$DEPS_LIBS"; then + pkg_cv_DEPS_LIBS="$DEPS_LIBS" + else + if test -n "$PKG_CONFIG" && \ + { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\\ + dbus-glib-1 >= 0.35 \\ + gtk+-2.0 >= 2.2 \\ + glib-2.0 >= 2.2 \\ +\"") >&5 + ($PKG_CONFIG --exists --print-errors "\ + dbus-glib-1 >= 0.35 \ + gtk+-2.0 >= 2.2 \ + glib-2.0 >= 2.2 \ +") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; then + pkg_cv_DEPS_LIBS=`$PKG_CONFIG --libs "\ + dbus-glib-1 >= 0.35 \ + gtk+-2.0 >= 2.2 \ + glib-2.0 >= 2.2 \ +" 2>/dev/null` +else + pkg_failed=yes +fi + fi +else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + DEPS_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "\ + dbus-glib-1 >= 0.35 \ + gtk+-2.0 >= 2.2 \ + glib-2.0 >= 2.2 \ +"` + else + DEPS_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "\ + dbus-glib-1 >= 0.35 \ + gtk+-2.0 >= 2.2 \ + glib-2.0 >= 2.2 \ +"` + fi + # Put the nasty error message in config.log where it belongs + echo "$DEPS_PKG_ERRORS" >&5 + + { { echo "$as_me:$LINENO: error: Package requirements (\ + dbus-glib-1 >= 0.35 \ + gtk+-2.0 >= 2.2 \ + glib-2.0 >= 2.2 \ +) were not met: + +$DEPS_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables DEPS_CFLAGS +and DEPS_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. +" >&5 +echo "$as_me: error: Package requirements (\ + dbus-glib-1 >= 0.35 \ + gtk+-2.0 >= 2.2 \ + glib-2.0 >= 2.2 \ +) were not met: + +$DEPS_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables DEPS_CFLAGS +and DEPS_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. +" >&2;} + { (exit 1); exit 1; }; } +elif test $pkg_failed = untried; then + { { echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables DEPS_CFLAGS +and DEPS_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://www.freedesktop.org/software/pkgconfig>. +See \`config.log' for more details." >&5 +echo "$as_me: error: The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables DEPS_CFLAGS +and DEPS_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see <http://www.freedesktop.org/software/pkgconfig>. +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } +else + DEPS_CFLAGS=$pkg_cv_DEPS_CFLAGS + DEPS_LIBS=$pkg_cv_DEPS_LIBS + { echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } + : +fi + + + + + +ac_config_files="$ac_config_files Makefile src/Makefile pixmaps/Makefile" + +cat >confcache <<\_ACEOF +# This file is a shell script that caches the results of configure +# tests run on this system so they can be shared between configure +# scripts and configure runs, see configure's option --config-cache. +# It is not useful on other systems. If it contains results you don't +# want to keep, you may remove or edit it. +# +# config.status only pays attention to the cache file if you give it +# the --recheck option to rerun configure. +# +# `ac_cv_env_foo' variables (set or unset) will be overridden when +# loading this file, other *unset* `ac_cv_foo' will be assigned the +# following values. + +_ACEOF + +# The following way of writing the cache mishandles newlines in values, +# but we know of no workaround that is simple, portable, and efficient. +# So, we kill variables containing newlines. +# Ultrix sh set writes to stderr and can't be redirected directly, +# and sets the high bit in the cache file unless we assign to the vars. +( + for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do + eval ac_val=\$$ac_var + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( + *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5 +echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( + *) $as_unset $ac_var ;; + esac ;; + esac + done + + (set) 2>&1 | + case $as_nl`(ac_space=' '; set) 2>&1` in #( + *${as_nl}ac_space=\ *) + # `set' does not quote correctly, so add quotes (double-quote + # substitution turns \\\\ into \\, and sed turns \\ into \). + sed -n \ + "s/'/'\\\\''/g; + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" + ;; #( + *) + # `set' quotes correctly as required by POSIX, so do not add quotes. + sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" + ;; + esac | + sort +) | + sed ' + /^ac_cv_env_/b end + t clear + :clear + s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ + t end + s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ + :end' >>confcache +if diff "$cache_file" confcache >/dev/null 2>&1; then :; else + if test -w "$cache_file"; then + test "x$cache_file" != "x/dev/null" && + { echo "$as_me:$LINENO: updating cache $cache_file" >&5 +echo "$as_me: updating cache $cache_file" >&6;} + cat confcache >$cache_file + else + { echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5 +echo "$as_me: not updating unwritable cache $cache_file" >&6;} + fi +fi +rm -f confcache + +test "x$prefix" = xNONE && prefix=$ac_default_prefix +# Let make expand exec_prefix. +test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' + +DEFS=-DHAVE_CONFIG_H + +ac_libobjs= +ac_ltlibobjs= +for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue + # 1. Remove the extension, and $U if already installed. + ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' + ac_i=`echo "$ac_i" | sed "$ac_script"` + # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR + # will be set to the directory where LIBOBJS objects are built. + ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext" + ac_ltlibobjs="$ac_ltlibobjs \${LIBOBJDIR}$ac_i"'$U.lo' +done +LIBOBJS=$ac_libobjs + +LTLIBOBJS=$ac_ltlibobjs + + +if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then + { { echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined. +Usually this means the macro was only invoked conditionally." >&5 +echo "$as_me: error: conditional \"AMDEP\" was never defined. +Usually this means the macro was only invoked conditionally." >&2;} + { (exit 1); exit 1; }; } +fi +if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then + { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never defined. +Usually this means the macro was only invoked conditionally." >&5 +echo "$as_me: error: conditional \"am__fastdepCC\" was never defined. +Usually this means the macro was only invoked conditionally." >&2;} + { (exit 1); exit 1; }; } +fi + +: ${CONFIG_STATUS=./config.status} +ac_clean_files_save=$ac_clean_files +ac_clean_files="$ac_clean_files $CONFIG_STATUS" +{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 +echo "$as_me: creating $CONFIG_STATUS" >&6;} +cat >$CONFIG_STATUS <<_ACEOF +#! $SHELL +# Generated by $as_me. +# Run this file to recreate the current configuration. +# Compiler output produced by configure, useful for debugging +# configure, is in config.log if it exists. + +debug=false +ac_cs_recheck=false +ac_cs_silent=false +SHELL=\${CONFIG_SHELL-$SHELL} +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF +## --------------------- ## +## M4sh Initialization. ## +## --------------------- ## + +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in + *posix*) set -o posix ;; +esac + +fi + + + + +# PATH needs CR +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + echo "#! /bin/sh" >conf$$.sh + echo "exit 0" >>conf$$.sh + chmod +x conf$$.sh + if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then + PATH_SEPARATOR=';' + else + PATH_SEPARATOR=: + fi + rm -f conf$$.sh +fi + +# Support unset when possible. +if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then + as_unset=unset +else + as_unset=false +fi + + +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +as_nl=' +' +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +case $0 in + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break +done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + { (exit 1); exit 1; } +fi + +# Work around bugs in pre-3.0 UWIN ksh. +for as_var in ENV MAIL MAILPATH +do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var +done +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +for as_var in \ + LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ + LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ + LC_TELEPHONE LC_TIME +do + if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then + eval $as_var=C; export $as_var + else + ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var + fi +done + +# Required to use basename. +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + + +# Name of the executable. +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + +# CDPATH. +$as_unset CDPATH + + + + as_lineno_1=$LINENO + as_lineno_2=$LINENO + test "x$as_lineno_1" != "x$as_lineno_2" && + test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { + + # Create $as_me.lineno as a copy of $as_myself, but with $LINENO + # uniformly replaced by the line number. The first 'sed' inserts a + # line-number line after each line using $LINENO; the second 'sed' + # does the real work. The second script uses 'N' to pair each + # line-number line with the line containing $LINENO, and appends + # trailing '-' during substitution so that $LINENO is not a special + # case at line end. + # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the + # scripts with optimization help from Paolo Bonzini. Blame Lee + # E. McMahon (1931-1989) for sed's syntax. :-) + sed -n ' + p + /[$]LINENO/= + ' <$as_myself | + sed ' + s/[$]LINENO.*/&-/ + t lineno + b + :lineno + N + :loop + s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ + t loop + s/-\n.*// + ' >$as_me.lineno && + chmod +x "$as_me.lineno" || + { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 + { (exit 1); exit 1; }; } + + # Don't try to exec as it changes $[0], causing all sort of problems + # (the dirname of $[0] is not the place where we might find the + # original and so on. Autoconf is especially sensitive to this). + . "./$as_me.lineno" + # Exit status is that of the last command. + exit +} + + +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in +-n*) + case `echo 'x\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + *) ECHO_C='\c';; + esac;; +*) + ECHO_N='-n';; +esac + +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir +fi +echo >conf$$.file +if ln -s conf$$.file conf$$ 2>/dev/null; then + as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -p'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -p' +elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln +else + as_ln_s='cp -p' +fi +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null + +if mkdir -p . 2>/dev/null; then + as_mkdir_p=: +else + test -d ./-p && rmdir ./-p + as_mkdir_p=false +fi + +if test -x / >/dev/null 2>&1; then + as_test_x='test -x' +else + if ls -dL / >/dev/null 2>&1; then + as_ls_L_option=L + else + as_ls_L_option= + fi + as_test_x=' + eval sh -c '\'' + if test -d "$1"; then + test -d "$1/."; + else + case $1 in + -*)set "./$1";; + esac; + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in + ???[sx]*):;;*)false;;esac;fi + '\'' sh + ' +fi +as_executable_p=$as_test_x + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" + + +exec 6>&1 + +# Save the log message, to keep $[0] and so on meaningful, and to +# report actual input values of CONFIG_FILES etc. instead of their +# values after options handling. +ac_log=" +This file was extended by SFLPhone $as_me 0.8, which was +generated by GNU Autoconf 2.61. Invocation command line was + + CONFIG_FILES = $CONFIG_FILES + CONFIG_HEADERS = $CONFIG_HEADERS + CONFIG_LINKS = $CONFIG_LINKS + CONFIG_COMMANDS = $CONFIG_COMMANDS + $ $0 $@ + +on `(hostname || uname -n) 2>/dev/null | sed 1q` +" + +_ACEOF + +cat >>$CONFIG_STATUS <<_ACEOF +# Files that config.status was made for. +config_files="$ac_config_files" +config_headers="$ac_config_headers" +config_commands="$ac_config_commands" + +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF +ac_cs_usage="\ +\`$as_me' instantiates files from templates according to the +current configuration. + +Usage: $0 [OPTIONS] [FILE]... + + -h, --help print this help, then exit + -V, --version print version number and configuration settings, then exit + -q, --quiet do not print progress messages + -d, --debug don't remove temporary files + --recheck update $as_me by reconfiguring in the same conditions + --file=FILE[:TEMPLATE] + instantiate the configuration file FILE + --header=FILE[:TEMPLATE] + instantiate the configuration header FILE + +Configuration files: +$config_files + +Configuration headers: +$config_headers + +Configuration commands: +$config_commands + +Report bugs to <bug-autoconf@gnu.org>." + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF +ac_cs_version="\\ +SFLPhone config.status 0.8 +configured by $0, generated by GNU Autoconf 2.61, + with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" + +Copyright (C) 2006 Free Software Foundation, Inc. +This config.status script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it." + +ac_pwd='$ac_pwd' +srcdir='$srcdir' +INSTALL='$INSTALL' +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF +# If no file are specified by the user, then we need to provide default +# value. By we need to know if files were specified by the user. +ac_need_defaults=: +while test $# != 0 +do + case $1 in + --*=*) + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` + ac_shift=: + ;; + *) + ac_option=$1 + ac_optarg=$2 + ac_shift=shift + ;; + esac + + case $ac_option in + # Handling of the options. + -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) + ac_cs_recheck=: ;; + --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) + echo "$ac_cs_version"; exit ;; + --debug | --debu | --deb | --de | --d | -d ) + debug=: ;; + --file | --fil | --fi | --f ) + $ac_shift + CONFIG_FILES="$CONFIG_FILES $ac_optarg" + ac_need_defaults=false;; + --header | --heade | --head | --hea ) + $ac_shift + CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" + ac_need_defaults=false;; + --he | --h) + # Conflict between --help and --header + { echo "$as_me: error: ambiguous option: $1 +Try \`$0 --help' for more information." >&2 + { (exit 1); exit 1; }; };; + --help | --hel | -h ) + echo "$ac_cs_usage"; exit ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil | --si | --s) + ac_cs_silent=: ;; + + # This is an error. + -*) { echo "$as_me: error: unrecognized option: $1 +Try \`$0 --help' for more information." >&2 + { (exit 1); exit 1; }; } ;; + + *) ac_config_targets="$ac_config_targets $1" + ac_need_defaults=false ;; + + esac + shift +done + +ac_configure_extra_args= + +if $ac_cs_silent; then + exec 6>/dev/null + ac_configure_extra_args="$ac_configure_extra_args --silent" +fi + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF +if \$ac_cs_recheck; then + echo "running CONFIG_SHELL=$SHELL $SHELL $0 "$ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 + CONFIG_SHELL=$SHELL + export CONFIG_SHELL + exec $SHELL "$0"$ac_configure_args \$ac_configure_extra_args --no-create --no-recursion +fi + +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF +exec 5>>config.log +{ + echo + sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX +## Running $as_me. ## +_ASBOX + echo "$ac_log" +} >&5 + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF +# +# INIT-COMMANDS +# +AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" + +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF + +# Handling of arguments. +for ac_config_target in $ac_config_targets +do + case $ac_config_target in + "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; + "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; + "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; + "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; + "pixmaps/Makefile") CONFIG_FILES="$CONFIG_FILES pixmaps/Makefile" ;; + + *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 +echo "$as_me: error: invalid argument: $ac_config_target" >&2;} + { (exit 1); exit 1; }; };; + esac +done + + +# If the user did not use the arguments to specify the items to instantiate, +# then the envvar interface is used. Set only those that are not. +# We use the long form for the default assignment because of an extremely +# bizarre bug on SunOS 4.1.3. +if $ac_need_defaults; then + test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files + test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers + test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands +fi + +# Have a temporary directory for convenience. Make it in the build tree +# simply because there is no reason against having it here, and in addition, +# creating and moving files from /tmp can sometimes cause problems. +# Hook for its removal unless debugging. +# Note that there is a small window in which the directory will not be cleaned: +# after its creation but before its name has been assigned to `$tmp'. +$debug || +{ + tmp= + trap 'exit_status=$? + { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status +' 0 + trap '{ (exit 1); exit 1; }' 1 2 13 15 +} +# Create a (secure) tmp directory for tmp files. + +{ + tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && + test -n "$tmp" && test -d "$tmp" +} || +{ + tmp=./conf$$-$RANDOM + (umask 077 && mkdir "$tmp") +} || +{ + echo "$me: cannot create a temporary directory in ." >&2 + { (exit 1); exit 1; } +} + +# +# Set up the sed scripts for CONFIG_FILES section. +# + +# No need to generate the scripts if there are no CONFIG_FILES. +# This happens for instance when ./config.status config.h +if test -n "$CONFIG_FILES"; then + +_ACEOF + + + +ac_delim='%!_!# ' +for ac_last_try in false false false false false :; do + cat >conf$$subs.sed <<_ACEOF +SHELL!$SHELL$ac_delim +PATH_SEPARATOR!$PATH_SEPARATOR$ac_delim +PACKAGE_NAME!$PACKAGE_NAME$ac_delim +PACKAGE_TARNAME!$PACKAGE_TARNAME$ac_delim +PACKAGE_VERSION!$PACKAGE_VERSION$ac_delim +PACKAGE_STRING!$PACKAGE_STRING$ac_delim +PACKAGE_BUGREPORT!$PACKAGE_BUGREPORT$ac_delim +exec_prefix!$exec_prefix$ac_delim +prefix!$prefix$ac_delim +program_transform_name!$program_transform_name$ac_delim +bindir!$bindir$ac_delim +sbindir!$sbindir$ac_delim +libexecdir!$libexecdir$ac_delim +datarootdir!$datarootdir$ac_delim +datadir!$datadir$ac_delim +sysconfdir!$sysconfdir$ac_delim +sharedstatedir!$sharedstatedir$ac_delim +localstatedir!$localstatedir$ac_delim +includedir!$includedir$ac_delim +oldincludedir!$oldincludedir$ac_delim +docdir!$docdir$ac_delim +infodir!$infodir$ac_delim +htmldir!$htmldir$ac_delim +dvidir!$dvidir$ac_delim +pdfdir!$pdfdir$ac_delim +psdir!$psdir$ac_delim +libdir!$libdir$ac_delim +localedir!$localedir$ac_delim +mandir!$mandir$ac_delim +DEFS!$DEFS$ac_delim +ECHO_C!$ECHO_C$ac_delim +ECHO_N!$ECHO_N$ac_delim +ECHO_T!$ECHO_T$ac_delim +LIBS!$LIBS$ac_delim +build_alias!$build_alias$ac_delim +host_alias!$host_alias$ac_delim +target_alias!$target_alias$ac_delim +INSTALL_PROGRAM!$INSTALL_PROGRAM$ac_delim +INSTALL_SCRIPT!$INSTALL_SCRIPT$ac_delim +INSTALL_DATA!$INSTALL_DATA$ac_delim +CYGPATH_W!$CYGPATH_W$ac_delim +PACKAGE!$PACKAGE$ac_delim +VERSION!$VERSION$ac_delim +ACLOCAL!$ACLOCAL$ac_delim +AUTOCONF!$AUTOCONF$ac_delim +AUTOMAKE!$AUTOMAKE$ac_delim +AUTOHEADER!$AUTOHEADER$ac_delim +MAKEINFO!$MAKEINFO$ac_delim +install_sh!$install_sh$ac_delim +STRIP!$STRIP$ac_delim +INSTALL_STRIP_PROGRAM!$INSTALL_STRIP_PROGRAM$ac_delim +mkdir_p!$mkdir_p$ac_delim +AWK!$AWK$ac_delim +SET_MAKE!$SET_MAKE$ac_delim +am__leading_dot!$am__leading_dot$ac_delim +AMTAR!$AMTAR$ac_delim +am__tar!$am__tar$ac_delim +am__untar!$am__untar$ac_delim +CC!$CC$ac_delim +CFLAGS!$CFLAGS$ac_delim +LDFLAGS!$LDFLAGS$ac_delim +CPPFLAGS!$CPPFLAGS$ac_delim +ac_ct_CC!$ac_ct_CC$ac_delim +EXEEXT!$EXEEXT$ac_delim +OBJEXT!$OBJEXT$ac_delim +DEPDIR!$DEPDIR$ac_delim +am__include!$am__include$ac_delim +am__quote!$am__quote$ac_delim +AMDEP_TRUE!$AMDEP_TRUE$ac_delim +AMDEP_FALSE!$AMDEP_FALSE$ac_delim +AMDEPBACKSLASH!$AMDEPBACKSLASH$ac_delim +CCDEPMODE!$CCDEPMODE$ac_delim +am__fastdepCC_TRUE!$am__fastdepCC_TRUE$ac_delim +am__fastdepCC_FALSE!$am__fastdepCC_FALSE$ac_delim +CPP!$CPP$ac_delim +GREP!$GREP$ac_delim +EGREP!$EGREP$ac_delim +PKG_CONFIG!$PKG_CONFIG$ac_delim +DEPS_CFLAGS!$DEPS_CFLAGS$ac_delim +DEPS_LIBS!$DEPS_LIBS$ac_delim +LIBOBJS!$LIBOBJS$ac_delim +LTLIBOBJS!$LTLIBOBJS$ac_delim +_ACEOF + + if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 82; then + break + elif $ac_last_try; then + { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 +echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} + { (exit 1); exit 1; }; } + else + ac_delim="$ac_delim!$ac_delim _$ac_delim!! " + fi +done + +ac_eof=`sed -n '/^CEOF[0-9]*$/s/CEOF/0/p' conf$$subs.sed` +if test -n "$ac_eof"; then + ac_eof=`echo "$ac_eof" | sort -nru | sed 1q` + ac_eof=`expr $ac_eof + 1` +fi + +cat >>$CONFIG_STATUS <<_ACEOF +cat >"\$tmp/subs-1.sed" <<\CEOF$ac_eof +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b end +_ACEOF +sed ' +s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g +s/^/s,@/; s/!/@,|#_!!_#|/ +:n +t n +s/'"$ac_delim"'$/,g/; t +s/$/\\/; p +N; s/^.*\n//; s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g; b n +' >>$CONFIG_STATUS <conf$$subs.sed +rm -f conf$$subs.sed +cat >>$CONFIG_STATUS <<_ACEOF +:end +s/|#_!!_#|//g +CEOF$ac_eof +_ACEOF + + +# VPATH may cause trouble with some makes, so we remove $(srcdir), +# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and +# trailing colons and then remove the whole line if VPATH becomes empty +# (actually we leave an empty line to preserve line numbers). +if test "x$srcdir" = x.; then + ac_vpsub='/^[ ]*VPATH[ ]*=/{ +s/:*\$(srcdir):*/:/ +s/:*\${srcdir}:*/:/ +s/:*@srcdir@:*/:/ +s/^\([^=]*=[ ]*\):*/\1/ +s/:*$// +s/^[^=]*=[ ]*$// +}' +fi + +cat >>$CONFIG_STATUS <<\_ACEOF +fi # test -n "$CONFIG_FILES" + + +for ac_tag in :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS +do + case $ac_tag in + :[FHLC]) ac_mode=$ac_tag; continue;; + esac + case $ac_mode$ac_tag in + :[FHL]*:*);; + :L* | :C*:*) { { echo "$as_me:$LINENO: error: Invalid tag $ac_tag." >&5 +echo "$as_me: error: Invalid tag $ac_tag." >&2;} + { (exit 1); exit 1; }; };; + :[FH]-) ac_tag=-:-;; + :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; + esac + ac_save_IFS=$IFS + IFS=: + set x $ac_tag + IFS=$ac_save_IFS + shift + ac_file=$1 + shift + + case $ac_mode in + :L) ac_source=$1;; + :[FH]) + ac_file_inputs= + for ac_f + do + case $ac_f in + -) ac_f="$tmp/stdin";; + *) # Look for the file first in the build tree, then in the source tree + # (if the path is not absolute). The absolute path cannot be DOS-style, + # because $ac_f cannot contain `:'. + test -f "$ac_f" || + case $ac_f in + [\\/$]*) false;; + *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; + esac || + { { echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5 +echo "$as_me: error: cannot find input file: $ac_f" >&2;} + { (exit 1); exit 1; }; };; + esac + ac_file_inputs="$ac_file_inputs $ac_f" + done + + # Let's still pretend it is `configure' which instantiates (i.e., don't + # use $as_me), people would be surprised to read: + # /* config.h. Generated by config.status. */ + configure_input="Generated from "`IFS=: + echo $* | sed 's|^[^:]*/||;s|:[^:]*/|, |g'`" by configure." + if test x"$ac_file" != x-; then + configure_input="$ac_file. $configure_input" + { echo "$as_me:$LINENO: creating $ac_file" >&5 +echo "$as_me: creating $ac_file" >&6;} + fi + + case $ac_tag in + *:-:* | *:-) cat >"$tmp/stdin";; + esac + ;; + esac + + ac_dir=`$as_dirname -- "$ac_file" || +$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$ac_file" : 'X\(//\)[^/]' \| \ + X"$ac_file" : 'X\(//\)$' \| \ + X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || +echo X"$ac_file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + { as_dir="$ac_dir" + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 +echo "$as_me: error: cannot create directory $as_dir" >&2;} + { (exit 1); exit 1; }; }; } + ac_builddir=. + +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) + ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix + +case $srcdir in + .) # We are building in place. + ac_srcdir=. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; +esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + + + case $ac_mode in + :F) + # + # CONFIG_FILE + # + + case $INSTALL in + [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; + *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; + esac +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF +# If the template does not know about datarootdir, expand it. +# FIXME: This hack should be removed a few years after 2.60. +ac_datarootdir_hack=; ac_datarootdir_seen= + +case `sed -n '/datarootdir/ { + p + q +} +/@datadir@/p +/@docdir@/p +/@infodir@/p +/@localedir@/p +/@mandir@/p +' $ac_file_inputs` in +*datarootdir*) ac_datarootdir_seen=yes;; +*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) + { echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 +echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF + ac_datarootdir_hack=' + s&@datadir@&$datadir&g + s&@docdir@&$docdir&g + s&@infodir@&$infodir&g + s&@localedir@&$localedir&g + s&@mandir@&$mandir&g + s&\\\${datarootdir}&$datarootdir&g' ;; +esac +_ACEOF + +# Neutralize VPATH when `$srcdir' = `.'. +# Shell code in configure.ac might set extrasub. +# FIXME: do we really want to maintain this feature? +cat >>$CONFIG_STATUS <<_ACEOF + sed "$ac_vpsub +$extrasub +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF +:t +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b +s&@configure_input@&$configure_input&;t t +s&@top_builddir@&$ac_top_builddir_sub&;t t +s&@srcdir@&$ac_srcdir&;t t +s&@abs_srcdir@&$ac_abs_srcdir&;t t +s&@top_srcdir@&$ac_top_srcdir&;t t +s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t +s&@builddir@&$ac_builddir&;t t +s&@abs_builddir@&$ac_abs_builddir&;t t +s&@abs_top_builddir@&$ac_abs_top_builddir&;t t +s&@INSTALL@&$ac_INSTALL&;t t +$ac_datarootdir_hack +" $ac_file_inputs | sed -f "$tmp/subs-1.sed" >$tmp/out + +test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && + { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && + { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && + { echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined." >&5 +echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined." >&2;} + + rm -f "$tmp/stdin" + case $ac_file in + -) cat "$tmp/out"; rm -f "$tmp/out";; + *) rm -f "$ac_file"; mv "$tmp/out" $ac_file;; + esac + ;; + :H) + # + # CONFIG_HEADER + # +_ACEOF + +# Transform confdefs.h into a sed script `conftest.defines', that +# substitutes the proper values into config.h.in to produce config.h. +rm -f conftest.defines conftest.tail +# First, append a space to every undef/define line, to ease matching. +echo 's/$/ /' >conftest.defines +# Then, protect against being on the right side of a sed subst, or in +# an unquoted here document, in config.status. If some macros were +# called several times there might be several #defines for the same +# symbol, which is useless. But do not sort them, since the last +# AC_DEFINE must be honored. +ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* +# These sed commands are passed to sed as "A NAME B PARAMS C VALUE D", where +# NAME is the cpp macro being defined, VALUE is the value it is being given. +# PARAMS is the parameter list in the macro definition--in most cases, it's +# just an empty string. +ac_dA='s,^\\([ #]*\\)[^ ]*\\([ ]*' +ac_dB='\\)[ (].*,\\1define\\2' +ac_dC=' ' +ac_dD=' ,' + +uniq confdefs.h | + sed -n ' + t rset + :rset + s/^[ ]*#[ ]*define[ ][ ]*// + t ok + d + :ok + s/[\\&,]/\\&/g + s/^\('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/ '"$ac_dA"'\1'"$ac_dB"'\2'"${ac_dC}"'\3'"$ac_dD"'/p + s/^\('"$ac_word_re"'\)[ ]*\(.*\)/'"$ac_dA"'\1'"$ac_dB$ac_dC"'\2'"$ac_dD"'/p + ' >>conftest.defines + +# Remove the space that was appended to ease matching. +# Then replace #undef with comments. This is necessary, for +# example, in the case of _POSIX_SOURCE, which is predefined and required +# on some systems where configure will not decide to define it. +# (The regexp can be short, since the line contains either #define or #undef.) +echo 's/ $// +s,^[ #]*u.*,/* & */,' >>conftest.defines + +# Break up conftest.defines: +ac_max_sed_lines=50 + +# First sed command is: sed -f defines.sed $ac_file_inputs >"$tmp/out1" +# Second one is: sed -f defines.sed "$tmp/out1" >"$tmp/out2" +# Third one will be: sed -f defines.sed "$tmp/out2" >"$tmp/out1" +# et cetera. +ac_in='$ac_file_inputs' +ac_out='"$tmp/out1"' +ac_nxt='"$tmp/out2"' + +while : +do + # Write a here document: + cat >>$CONFIG_STATUS <<_ACEOF + # First, check the format of the line: + cat >"\$tmp/defines.sed" <<\\CEOF +/^[ ]*#[ ]*undef[ ][ ]*$ac_word_re[ ]*\$/b def +/^[ ]*#[ ]*define[ ][ ]*$ac_word_re[( ]/b def +b +:def +_ACEOF + sed ${ac_max_sed_lines}q conftest.defines >>$CONFIG_STATUS + echo 'CEOF + sed -f "$tmp/defines.sed"' "$ac_in >$ac_out" >>$CONFIG_STATUS + ac_in=$ac_out; ac_out=$ac_nxt; ac_nxt=$ac_in + sed 1,${ac_max_sed_lines}d conftest.defines >conftest.tail + grep . conftest.tail >/dev/null || break + rm -f conftest.defines + mv conftest.tail conftest.defines +done +rm -f conftest.defines conftest.tail + +echo "ac_result=$ac_in" >>$CONFIG_STATUS +cat >>$CONFIG_STATUS <<\_ACEOF + if test x"$ac_file" != x-; then + echo "/* $configure_input */" >"$tmp/config.h" + cat "$ac_result" >>"$tmp/config.h" + if diff $ac_file "$tmp/config.h" >/dev/null 2>&1; then + { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 +echo "$as_me: $ac_file is unchanged" >&6;} + else + rm -f $ac_file + mv "$tmp/config.h" $ac_file + fi + else + echo "/* $configure_input */" + cat "$ac_result" + fi + rm -f "$tmp/out12" +# Compute $ac_file's index in $config_headers. +_am_stamp_count=1 +for _am_header in $config_headers :; do + case $_am_header in + $ac_file | $ac_file:* ) + break ;; + * ) + _am_stamp_count=`expr $_am_stamp_count + 1` ;; + esac +done +echo "timestamp for $ac_file" >`$as_dirname -- $ac_file || +$as_expr X$ac_file : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X$ac_file : 'X\(//\)[^/]' \| \ + X$ac_file : 'X\(//\)$' \| \ + X$ac_file : 'X\(/\)' \| . 2>/dev/null || +echo X$ac_file | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'`/stamp-h$_am_stamp_count + ;; + + :C) { echo "$as_me:$LINENO: executing $ac_file commands" >&5 +echo "$as_me: executing $ac_file commands" >&6;} + ;; + esac + + + case $ac_file$ac_mode in + "depfiles":C) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do + # Strip MF so we end up with the name of the file. + mf=`echo "$mf" | sed -e 's/:.*$//'` + # Check whether this is an Automake generated Makefile or not. + # We used to match only the files named `Makefile.in', but + # some people rename them; so instead we look at the file content. + # Grep'ing the first line is not enough: some people post-process + # each Makefile.in and add a new line on top of each file to say so. + # So let's grep whole file. + if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then + dirpart=`$as_dirname -- "$mf" || +$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$mf" : 'X\(//\)[^/]' \| \ + X"$mf" : 'X\(//\)$' \| \ + X"$mf" : 'X\(/\)' \| . 2>/dev/null || +echo X"$mf" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + else + continue + fi + # Extract the definition of DEPDIR, am__include, and am__quote + # from the Makefile without running `make'. + DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` + test -z "$DEPDIR" && continue + am__include=`sed -n 's/^am__include = //p' < "$mf"` + test -z "am__include" && continue + am__quote=`sed -n 's/^am__quote = //p' < "$mf"` + # When using ansi2knr, U may be empty or an underscore; expand it + U=`sed -n 's/^U = //p' < "$mf"` + # Find all dependency output files, they are included files with + # $(DEPDIR) in their names. We invoke sed twice because it is the + # simplest approach to changing $(DEPDIR) to its actual value in the + # expansion. + for file in `sed -n " + s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ + sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do + # Make sure the directory exists. + test -f "$dirpart/$file" && continue + fdir=`$as_dirname -- "$file" || +$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$file" : 'X\(//\)[^/]' \| \ + X"$file" : 'X\(//\)$' \| \ + X"$file" : 'X\(/\)' \| . 2>/dev/null || +echo X"$file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + { as_dir=$dirpart/$fdir + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 +echo "$as_me: error: cannot create directory $as_dir" >&2;} + { (exit 1); exit 1; }; }; } + # echo "creating $dirpart/$file" + echo '# dummy' > "$dirpart/$file" + done +done + ;; + + esac +done # for ac_tag + + +{ (exit 0); exit 0; } +_ACEOF +chmod +x $CONFIG_STATUS +ac_clean_files=$ac_clean_files_save + + +# configure is writing to config.log, and then calls config.status. +# config.status does its own redirection, appending to config.log. +# Unfortunately, on DOS this fails, as config.log is still kept open +# by configure, so config.status won't be able to write to it; its +# output is simply discarded. So we exec the FD to /dev/null, +# effectively closing config.log, so it can be properly (re)opened and +# appended to by config.status. When coming back to configure, we +# need to make the FD available again. +if test "$no_create" != yes; then + ac_cs_success=: + ac_config_status_args= + test "$silent" = yes && + ac_config_status_args="$ac_config_status_args --quiet" + exec 5>/dev/null + $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false + exec 5>>config.log + # Use ||, not &&, to avoid exiting from the if with $? = 1, which + # would make configure fail if this is the last instruction. + $ac_cs_success || { (exit 1); exit 1; } +fi + + + diff --git a/sflphone-gtk/configure.ac b/sflphone-gtk/configure.ac new file mode 100644 index 0000000000000000000000000000000000000000..a1fc282d70ae2470414a07d962e6887dc61117e1 --- /dev/null +++ b/sflphone-gtk/configure.ac @@ -0,0 +1,41 @@ +AC_INIT([SFLPhone],[0.8],[sflphoneteam@savoirfairelinux.com],[sflphone]) +AM_CONFIG_HEADER(config.h) + +PACKAGE=SFLPhone +VERSION=0.8 + +AM_INIT_AUTOMAKE($PACKAGE,$VERSION) + +AC_ARG_WITH(debug, + AS_HELP_STRING( + [--with-debug], + [Set 'full' to enable debugging information @<:@default=no@:>@] + ), + [with_debug=${withval}], + [with_debug=no] + ) +if test "x$with_debug" = "xfull" -o "x$with_debug" = "xyes"; then + CFLAGS="$CFLAGS -g -DDEBUG" +fi + +AC_PROG_CC +AC_PROG_INSTALL +AC_STDC_HEADERS + +PKG_CHECK_MODULES(DEPS, \ + dbus-glib-1 >= 0.35 \ + gtk+-2.0 >= 2.2 \ + glib-2.0 >= 2.2 \ +) + + +AC_SUBST(DEPS_CFLAGS) +AC_SUBST(DEPS_LIBS) + +AC_OUTPUT([ +Makefile +src/Makefile +pixmaps/Makefile +]) + + diff --git a/sflphone-gtk/depcomp b/sflphone-gtk/depcomp new file mode 100755 index 0000000000000000000000000000000000000000..04701da536f33a7c39d7bb01b87a70ae3a776df5 --- /dev/null +++ b/sflphone-gtk/depcomp @@ -0,0 +1,530 @@ +#! /bin/sh +# depcomp - compile a program generating dependencies as side-effects + +scriptversion=2005-07-09.11 + +# 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 -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \ + -e '/^#line [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/sflphone-gtk/install-sh b/sflphone-gtk/install-sh new file mode 100755 index 0000000000000000000000000000000000000000..4d4a9519eaf88b18fb157dfe5fae59c1c5d005c7 --- /dev/null +++ b/sflphone-gtk/install-sh @@ -0,0 +1,323 @@ +#!/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/sflphone-gtk/missing b/sflphone-gtk/missing new file mode 100755 index 0000000000000000000000000000000000000000..894e786e16c1d0d94dfc08d6b475270fe1418d6a --- /dev/null +++ b/sflphone-gtk/missing @@ -0,0 +1,360 @@ +#! /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/sflphone-gtk/mkinstalldirs b/sflphone-gtk/mkinstalldirs new file mode 100755 index 0000000000000000000000000000000000000000..259dbfcd35789bd0f087803d193cfd924f9a5f34 --- /dev/null +++ b/sflphone-gtk/mkinstalldirs @@ -0,0 +1,158 @@ +#! /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/sflphone-gtk/pixmaps/Makefile.am b/sflphone-gtk/pixmaps/Makefile.am new file mode 100644 index 0000000000000000000000000000000000000000..696acfe02451aae728d589db07780829380aee9f --- /dev/null +++ b/sflphone-gtk/pixmaps/Makefile.am @@ -0,0 +1,3 @@ +pixmapsdir = $(datadir)/pixmaps +pixmaps_DATA = sflphone.png accept.svg transfert.svg hang_up.svg hold.svg unhold.svg refuse.svg call.svg ring.svg +EXTRA_DIST = $(pixmaps_DATA) diff --git a/sflphone-gtk/pixmaps/accept.svg b/sflphone-gtk/pixmaps/accept.svg new file mode 100644 index 0000000000000000000000000000000000000000..2d8b20f1ee1f778f53a171521441ecefc0246be4 --- /dev/null +++ b/sflphone-gtk/pixmaps/accept.svg @@ -0,0 +1,193 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="24" + height="24" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.43" + version="1.0" + sodipodi:docbase="/home/pierre/SFLPhone-0.8/pixmaps" + sodipodi:docname="accept.svg"> + <defs + id="defs4"> + <linearGradient + id="linearGradient4269"> + <stop + style="stop-color:#26b000;stop-opacity:1;" + offset="0" + id="stop4271" /> + <stop + style="stop-color:#26b000;stop-opacity:0;" + offset="1" + id="stop4273" /> + </linearGradient> + <linearGradient + id="linearGradient4183"> + <stop + id="stop4185" + offset="0" + style="stop-color:#26b000;stop-opacity:1;" /> + <stop + id="stop4187" + offset="1" + style="stop-color:#145f00;stop-opacity:1;" /> + </linearGradient> + <linearGradient + id="linearGradient4167"> + <stop + style="stop-color:#80000e;stop-opacity:1;" + offset="0" + id="stop4169" /> + <stop + style="stop-color:#b00014;stop-opacity:0;" + offset="1" + id="stop4171" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient4181" + x1="1.0046476" + y1="12.825893" + x2="7.9239235" + y2="12.825893" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(1.262691,-1.100752)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient4195" + x1="24.397505" + y1="12.535715" + x2="31.31678" + y2="12.535715" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(-0.947018,-0.885198)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient4203" + x1="15.647213" + y1="2.7028866" + x2="14.013638" + y2="10.576721" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4269" + id="linearGradient4256" + x1="2.0651877" + y1="12.625902" + x2="6.8378897" + y2="13.920053" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(0.426158,-2.762136)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4269" + id="linearGradient4260" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(-1,0,0,1,32.04188,-2.86473)" + x1="2.0651877" + y1="12.625902" + x2="6.8378897" + y2="13.920053" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4269" + id="linearGradient4275" + x1="15.630395" + y1="22.874208" + x2="15.806232" + y2="6.6770978" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.256521,0,0,-1.256521,-7.854319,30.036)" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="11.2" + inkscape:cx="22.267841" + inkscape:cy="2.68512" + inkscape:document-units="px" + inkscape:current-layer="layer1" + width="32px" + height="32px" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1014" + inkscape:window-height="691" + inkscape:window-x="0" + inkscape:window-y="25"> + <sodipodi:guide + orientation="horizontal" + position="8.0357143" + id="guide3144" /> + <sodipodi:guide + orientation="vertical" + position="15.982143" + id="guide3146" /> + </sodipodi:namedview> + <metadata + id="metadata7"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Calque 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="opacity:1;fill:url(#linearGradient4275);fill-opacity:1;stroke:none;stroke-width:0.625;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + d="M 7.3417195,23.165396 L 7.3417195,10.717993 L 3.2972955,10.717993 L 12.250001,1.2940921 L 21.202707,10.717993 L 17.158282,10.717993 L 17.158282,23.165396 L 7.3417195,23.165396 z " + id="rect4262" /> + <g + id="g4160" + transform="matrix(0.771283,0,0,0.771283,-0.334425,10.76339)"> + <path + sodipodi:nodetypes="cccsccsccsccc" + id="path3153" + d="M 16.100095,4.59375 C 10.946289,4.7477067 6.5661943,5.7999634 2.7626907,7.28125 L 2.5751907,10.227679 C 3.1252737,10.972881 4.3542457,11.508929 5.7626907,11.508929 C 7.1318907,11.508929 8.3164327,11.004648 8.8876907,10.290179 L 8.8876907,9.1875 C 11.3092,8.682612 12.862258,8.4375 16.125,8.4375 C 19.479577,8.4375001 21.34842,8.6842603 23.771732,9.15625 L 23.771732,10.165179 C 24.34299,10.879648 25.527531,11.383929 26.896732,11.383929 C 28.305177,11.383929 29.5029,10.847881 30.052982,10.102679 L 29.865482,7.15625 C 25.053357,5.4212686 21.355113,4.6256244 16.100095,4.59375 z " + style="opacity:1;fill:url(#linearGradient4203);fill-opacity:1;stroke:#0f5600;stroke-width:0.625;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path3161" + d="M 5.7481338,13.019293 C 7.1288536,13.019293 8.3245284,12.610489 8.9005927,12.01696 L 8.9005927,10.430989 C 8.1637843,11.109285 7.1297974,11.494948 5.7481338,11.494948 C 4.3260338,11.494948 3.32872,11.13019 2.5533599,10.48174 L 2.5533599,11.966208 C 3.108071,12.585269 4.3278389,13.019293 5.7481338,13.019293 z " + style="opacity:1;fill:url(#linearGradient4181);fill-opacity:1;stroke:#0f5600;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path4140" + d="M 26.931282,12.944669 C 28.312002,12.944669 29.507677,12.535865 30.083741,11.942336 L 30.083741,10.356365 C 29.346933,11.034661 28.312946,11.420324 26.931282,11.420324 C 25.509182,11.420324 24.511868,11.055566 23.736508,10.407116 L 23.736508,11.891584 C 24.291219,12.510645 25.510987,12.944669 26.931282,12.944669 z " + style="opacity:1;fill:url(#linearGradient4195);fill-opacity:1;stroke:#0f5600;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path4246" + d="M 5.9721413,11.157918 C 7.3528611,11.157918 8.0434596,10.73333 8.6195239,10.139801 L 9.1877347,7.4805434 C 8.4509263,8.1588394 7.4169394,8.5445024 6.0352758,8.5445024 C 4.6131758,8.5445024 3.789482,8.1797444 3.0141219,7.5312944 L 2.7773674,10.104833 C 3.3320785,10.723894 4.5518464,11.157918 5.9721413,11.157918 z " + style="opacity:1;fill:url(#linearGradient4256);fill-opacity:1;stroke:none;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path4258" + d="M 26.495901,11.055324 C 25.115181,11.055324 24.424582,10.630736 23.848518,10.037207 L 23.280307,7.3779497 C 24.017116,8.0562457 25.051103,8.4419087 26.432766,8.4419087 C 27.854866,8.4419087 28.67856,8.0771507 29.45392,7.4287007 L 29.690675,10.002239 C 29.135964,10.6213 27.916196,11.055324 26.495901,11.055324 z " + style="opacity:1;fill:url(#linearGradient4260);fill-opacity:1;stroke:none;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + </g> + </g> +</svg> diff --git a/sflphone-gtk/pixmaps/call.svg b/sflphone-gtk/pixmaps/call.svg new file mode 100644 index 0000000000000000000000000000000000000000..218cccfe82964d307a91f7e2a86652f993ae535c --- /dev/null +++ b/sflphone-gtk/pixmaps/call.svg @@ -0,0 +1,389 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="24" + height="24" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.43" + version="1.0" + sodipodi:docbase="/home/pierre/SFLPhone-0.8/pixmaps" + sodipodi:docname="call.svg"> + <defs + id="defs4"> + <linearGradient + id="linearGradient4045"> + <stop + style="stop-color:#ffffff;stop-opacity:0" + offset="0" + id="stop4047" /> + <stop + style="stop-color:#fcfbcb;stop-opacity:1" + offset="1" + id="stop4049" /> + </linearGradient> + <linearGradient + id="linearGradient4269"> + <stop + style="stop-color:#1db000;stop-opacity:1;" + offset="0" + id="stop4271" /> + <stop + style="stop-color:#1db000;stop-opacity:0;" + offset="1" + id="stop4273" /> + </linearGradient> + <linearGradient + id="linearGradient4183"> + <stop + id="stop4185" + offset="0" + style="stop-color:#1db000;stop-opacity:1;" /> + <stop + id="stop4187" + offset="1" + style="stop-color:#0f5f00;stop-opacity:1;" /> + </linearGradient> + <linearGradient + id="linearGradient4167"> + <stop + style="stop-color:#80000e;stop-opacity:1;" + offset="0" + id="stop4169" /> + <stop + style="stop-color:#b00014;stop-opacity:0;" + offset="1" + id="stop4171" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient4181" + x1="10.57493" + y1="12.115559" + x2="-0.68574232" + y2="12.115559" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(1.262691,-1.100752)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient4195" + x1="31.692968" + y1="11.264216" + x2="23.888865" + y2="13.35532" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(-0.947018,-0.885198)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient4203" + x1="15.647213" + y1="2.7028866" + x2="14.013638" + y2="10.576721" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4269" + id="linearGradient4256" + x1="7.8517423" + y1="15.912388" + x2="7.1114841" + y2="11.597325" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(0.426158,-2.762136)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4269" + id="linearGradient4260" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(-1,2.986977e-17,2.986977e-17,1,32.04188,-2.86473)" + x1="2.0651877" + y1="12.625902" + x2="6.8378897" + y2="13.920053" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient2224" + x1="16.826796" + y1="6.7288713" + x2="27.5625" + y2="22.512505" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.875025,0,0,0.875025,0.666703,0.177907)" /> + <linearGradient + gradientTransform="matrix(1.62913,0,0,-1.62913,-10.06608,39.71987)" + gradientUnits="userSpaceOnUse" + y2="6.6770978" + x2="15.806232" + y1="22.874208" + x1="15.630395" + id="linearGradient4275" + xlink:href="#linearGradient4269" + inkscape:collect="always" /> + <linearGradient + y2="13.920053" + x2="6.8378897" + y1="12.625902" + x1="2.0651877" + gradientTransform="matrix(-1,0,0,1,32.04188,-2.86473)" + gradientUnits="userSpaceOnUse" + id="linearGradient1388" + xlink:href="#linearGradient4269" + inkscape:collect="always" /> + <linearGradient + gradientTransform="translate(0.426158,-2.762136)" + gradientUnits="userSpaceOnUse" + y2="13.920053" + x2="6.8378897" + y1="12.625902" + x1="2.0651877" + id="linearGradient1386" + xlink:href="#linearGradient4269" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="10.576721" + x2="14.013638" + y1="2.7028866" + x1="15.647213" + id="linearGradient1384" + xlink:href="#linearGradient4183" + inkscape:collect="always" /> + <linearGradient + gradientTransform="translate(-0.947018,-0.885198)" + gradientUnits="userSpaceOnUse" + y2="12.535715" + x2="31.31678" + y1="12.535715" + x1="24.397505" + id="linearGradient1382" + xlink:href="#linearGradient4183" + inkscape:collect="always" /> + <linearGradient + gradientTransform="translate(1.262691,-1.100752)" + gradientUnits="userSpaceOnUse" + y2="12.825893" + x2="7.9239235" + y1="12.825893" + x1="1.0046476" + id="linearGradient1380" + xlink:href="#linearGradient4183" + inkscape:collect="always" /> + <linearGradient + id="linearGradient1374"> + <stop + id="stop1376" + offset="0" + style="stop-color:#80000e;stop-opacity:1;" /> + <stop + id="stop1378" + offset="1" + style="stop-color:#b00014;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient1368"> + <stop + style="stop-color:#26b000;stop-opacity:1;" + offset="0" + id="stop1370" /> + <stop + style="stop-color:#145f00;stop-opacity:1;" + offset="1" + id="stop1372" /> + </linearGradient> + <linearGradient + id="linearGradient1362"> + <stop + id="stop1364" + offset="0" + style="stop-color:#26b000;stop-opacity:1;" /> + <stop + id="stop1366" + offset="1" + style="stop-color:#26b000;stop-opacity:0;" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient1406" + gradientUnits="userSpaceOnUse" + x1="15.647213" + y1="2.7028866" + x2="14.013638" + y2="10.576721" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient1408" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(1.262691,-1.100752)" + x1="10.57493" + y1="12.115559" + x2="-0.68574232" + y2="12.115559" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient1410" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(-0.947018,-0.885198)" + x1="31.692968" + y1="11.264216" + x2="23.888865" + y2="13.35532" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4269" + id="linearGradient1412" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(0.426158,-2.762136)" + x1="7.8517423" + y1="15.912388" + x2="7.1114841" + y2="11.597325" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4269" + id="linearGradient1414" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(-1,0,0,1,32.04188,-2.86473)" + x1="2.0651877" + y1="12.625902" + x2="6.8378897" + y2="13.920053" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4045" + id="radialGradient4051" + cx="19.285715" + cy="9.8571424" + fx="19.285715" + fy="9.8571424" + r="10.885714" + gradientUnits="userSpaceOnUse" + spreadMethod="reflect" + gradientTransform="matrix(0.418975,2.444023e-18,-2.444023e-18,0.418975,11.20548,5.727248)" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="7.919596" + inkscape:cx="45.648084" + inkscape:cy="8.3397435" + inkscape:document-units="px" + inkscape:current-layer="layer1" + width="32px" + height="32px" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1014" + inkscape:window-height="691" + inkscape:window-x="0" + inkscape:window-y="25"> + <sodipodi:guide + orientation="vertical" + position="15.982143" + id="guide3146" /> + </sodipodi:namedview> + <metadata + id="metadata7"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Calque 1" + inkscape:groupmode="layer" + id="layer1"> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient4051);fill-opacity:1;stroke:none;stroke-width:5.69999981;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + id="path3162" + sodipodi:cx="19.285715" + sodipodi:cy="9.8571424" + sodipodi:rx="8.0357141" + sodipodi:ry="8.0357141" + d="M 27.321429 9.8571424 A 8.0357141 8.0357141 0 1 1 11.250001,9.8571424 A 8.0357141 8.0357141 0 1 1 27.321429 9.8571424 z" + transform="matrix(0.723409,0,0,0.723409,1.772732,0.64261)" /> + <g + id="g4160" + transform="matrix(-0.361705,-0.62649,0.62649,-0.361705,8.314454,27.18825)"> + <path + sodipodi:nodetypes="cccsccsccsccc" + id="path3153" + d="M 16.100095,4.59375 C 10.946289,4.7477067 6.5661943,5.7999634 2.7626907,7.28125 L 2.5751907,10.227679 C 3.1252737,10.972881 4.3542457,11.508929 5.7626907,11.508929 C 7.1318907,11.508929 8.3164327,11.004648 8.8876907,10.290179 L 8.8876907,9.1875 C 11.3092,8.682612 12.862258,8.4375 16.125,8.4375 C 19.479577,8.4375001 21.34842,8.6842603 23.771732,9.15625 L 23.771732,10.165179 C 24.34299,10.879648 25.527531,11.383929 26.896732,11.383929 C 28.305177,11.383929 29.5029,10.847881 30.052982,10.102679 L 29.865482,7.15625 C 25.053357,5.4212686 21.355113,4.6256244 16.100095,4.59375 z " + style="opacity:1;fill:url(#linearGradient4203);fill-opacity:1;stroke:#137300;stroke-width:0.625;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path3161" + d="M 5.7481338,13.019293 C 7.1288536,13.019293 8.3245284,12.610489 8.9005927,12.01696 L 8.9005927,10.430989 C 8.1637843,11.109285 7.1297974,11.494948 5.7481338,11.494948 C 4.3260338,11.494948 3.32872,11.13019 2.5533599,10.48174 L 2.5533599,11.966208 C 3.108071,12.585269 4.3278389,13.019293 5.7481338,13.019293 z " + style="opacity:1;fill:url(#linearGradient4181);fill-opacity:1;stroke:#137300;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path4140" + d="M 26.931282,12.944669 C 28.312002,12.944669 29.507677,12.535865 30.083741,11.942336 L 30.083741,10.356365 C 29.346933,11.034661 28.312946,11.420324 26.931282,11.420324 C 25.509182,11.420324 24.511868,11.055566 23.736508,10.407116 L 23.736508,11.891584 C 24.291219,12.510645 25.510987,12.944669 26.931282,12.944669 z " + style="opacity:1;fill:url(#linearGradient4195);fill-opacity:1;stroke:#137300;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path4246" + d="M 5.9721413,11.157918 C 7.3528611,11.157918 8.0434596,10.73333 8.6195239,10.139801 L 9.1877347,7.4805434 C 8.4509263,8.1588394 7.4169394,8.5445024 6.0352758,8.5445024 C 4.6131758,8.5445024 3.789482,8.1797444 3.0141219,7.5312944 L 2.7773674,10.104833 C 3.3320785,10.723894 4.5518464,11.157918 5.9721413,11.157918 z " + style="opacity:1;fill:url(#linearGradient4256);fill-opacity:1;stroke:none;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path4258" + d="M 26.495901,11.055324 C 25.115181,11.055324 24.424582,10.630736 23.848518,10.037207 L 23.280307,7.3779497 C 24.017116,8.0562457 25.051103,8.4419087 26.432766,8.4419087 C 27.854866,8.4419087 28.67856,8.0771507 29.45392,7.4287007 L 29.690675,10.002239 C 29.135964,10.6213 27.916196,11.055324 26.495901,11.055324 z " + style="opacity:1;fill:url(#linearGradient4260);fill-opacity:1;stroke:none;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + </g> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#2a6f1d;stroke-width:0.51589537px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.49408282" + d="M 15.724195,5.2432362 L 15.724195,1.880704" + id="path2257" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#2a6f1d;stroke-width:0.51589537px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.49408282" + d="M 17.657019,6.380202 L 20.569056,4.6989359" + id="path2259" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#2a6f1d;stroke-width:0.51589537px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.49408282" + d="M 17.657019,8.8683213 L 20.569056,10.549588" + id="path2261" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#2a6f1d;stroke-width:0.51589537px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.49408282" + d="M 15.724195,10.005288 L 15.724195,13.36782" + id="path2263" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#2a6f1d;stroke-width:0.51589537px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.49408282" + d="M 13.807083,8.868322 L 10.895045,10.549587" + id="path2265" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#2a6f1d;stroke-width:0.51589537px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:0.49408282" + d="M 13.807083,6.3802018 L 10.895046,4.698936" + id="path2267" + sodipodi:nodetypes="cc" /> + </g> +</svg> diff --git a/sflphone-gtk/pixmaps/hang_up.svg b/sflphone-gtk/pixmaps/hang_up.svg new file mode 100644 index 0000000000000000000000000000000000000000..6923cc0062d71c6ddca9d0dc23ef6014df5a2616 --- /dev/null +++ b/sflphone-gtk/pixmaps/hang_up.svg @@ -0,0 +1,216 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="24" + height="24" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.43" + version="1.0" + sodipodi:docbase="/home/pierre/SFLPhone-0.8/pixmaps" + sodipodi:docname="hang_up.svg"> + <defs + id="defs4"> + <linearGradient + inkscape:collect="always" + id="linearGradient4269"> + <stop + style="stop-color:#b00014;stop-opacity:1;" + offset="0" + id="stop4271" /> + <stop + style="stop-color:#b00014;stop-opacity:0;" + offset="1" + id="stop4273" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + id="linearGradient4250"> + <stop + style="stop-color:#b00014;stop-opacity:1;" + offset="0" + id="stop4252" /> + <stop + style="stop-color:#b00014;stop-opacity:0;" + offset="1" + id="stop4254" /> + </linearGradient> + <linearGradient + id="linearGradient4183"> + <stop + id="stop4185" + offset="0" + style="stop-color:#b00014;stop-opacity:1;" /> + <stop + id="stop4187" + offset="1" + style="stop-color:#70000c;stop-opacity:1;" /> + </linearGradient> + <linearGradient + id="linearGradient4167"> + <stop + style="stop-color:#80000e;stop-opacity:1;" + offset="0" + id="stop4169" /> + <stop + style="stop-color:#b00014;stop-opacity:0;" + offset="1" + id="stop4171" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4167" + id="linearGradient4173" + x1="7.1249466" + y1="23.946518" + x2="20.06057" + y2="16.478132" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(6.313453e-2,-0.384275)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient4181" + x1="1.0046476" + y1="12.825893" + x2="7.9239235" + y2="12.825893" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(1.262691,-1.100752)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient4195" + x1="24.397505" + y1="12.535715" + x2="31.31678" + y2="12.535715" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(-0.947018,-0.885198)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient4203" + x1="15.647213" + y1="2.7028866" + x2="14.013638" + y2="10.576721" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4250" + id="linearGradient4256" + x1="2.0651877" + y1="12.625902" + x2="6.8378897" + y2="13.920053" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(0.426158,-2.762136)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4250" + id="linearGradient4260" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(-1,0,0,1,32.04188,-2.86473)" + x1="2.0651877" + y1="12.625902" + x2="6.8378897" + y2="13.920053" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4269" + id="linearGradient4275" + x1="15.630395" + y1="22.874208" + x2="15.806232" + y2="6.6770978" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.158192,0,0,1.158192,-6.593576,-4.413854)" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="11.2" + inkscape:cx="20.387389" + inkscape:cy="14.427209" + inkscape:document-units="px" + inkscape:current-layer="layer1" + width="32px" + height="32px" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1014" + inkscape:window-height="691" + inkscape:window-x="0" + inkscape:window-y="25"> + <sodipodi:guide + orientation="horizontal" + position="8.0357143" + id="guide3144" /> + <sodipodi:guide + orientation="vertical" + position="15.982143" + id="guide3146" /> + </sodipodi:namedview> + <metadata + id="metadata7"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Calque 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="opacity:1;fill:url(#linearGradient4275);fill-opacity:1;stroke:none;stroke-width:0.625;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + d="M 7.4133112,1.9190921 L 7.4133112,13.392435 L 3.6853797,13.392435 L 11.9375,22.078878 L 20.18962,13.392435 L 16.461688,13.392435 L 16.461688,1.9190921 L 7.4133112,1.9190921 z " + id="rect4262" /> + <g + id="g4160" + transform="matrix(0.710927,0,0,0.710927,0.337856,1.379942)"> + <path + sodipodi:nodetypes="cccsccsccsccc" + id="path3153" + d="M 16.100095,4.59375 C 10.946289,4.7477067 6.5661943,5.7999634 2.7626907,7.28125 L 2.5751907,10.227679 C 3.1252737,10.972881 4.3542457,11.508929 5.7626907,11.508929 C 7.1318907,11.508929 8.3164327,11.004648 8.8876907,10.290179 L 8.8876907,9.1875 C 11.3092,8.682612 12.862258,8.4375 16.125,8.4375 C 19.479577,8.4375001 21.34842,8.6842603 23.771732,9.15625 L 23.771732,10.165179 C 24.34299,10.879648 25.527531,11.383929 26.896732,11.383929 C 28.305177,11.383929 29.5029,10.847881 30.052982,10.102679 L 29.865482,7.15625 C 25.053357,5.4212686 21.355113,4.6256244 16.100095,4.59375 z " + style="opacity:1;fill:url(#linearGradient4203);fill-opacity:1;stroke:#3c0006;stroke-width:0.625;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path3161" + d="M 5.7481338,13.019293 C 7.1288536,13.019293 8.3245284,12.610489 8.9005927,12.01696 L 8.9005927,10.430989 C 8.1637843,11.109285 7.1297974,11.494948 5.7481338,11.494948 C 4.3260338,11.494948 3.32872,11.13019 2.5533599,10.48174 L 2.5533599,11.966208 C 3.108071,12.585269 4.3278389,13.019293 5.7481338,13.019293 z " + style="opacity:1;fill:url(#linearGradient4181);fill-opacity:1;stroke:#3c0006;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path4140" + d="M 26.931282,12.944669 C 28.312002,12.944669 29.507677,12.535865 30.083741,11.942336 L 30.083741,10.356365 C 29.346933,11.034661 28.312946,11.420324 26.931282,11.420324 C 25.509182,11.420324 24.511868,11.055566 23.736508,10.407116 L 23.736508,11.891584 C 24.291219,12.510645 25.510987,12.944669 26.931282,12.944669 z " + style="opacity:1;fill:url(#linearGradient4195);fill-opacity:1;stroke:#3c0006;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path4246" + d="M 5.9721413,11.157918 C 7.3528611,11.157918 8.0434596,10.73333 8.6195239,10.139801 L 9.1877347,7.4805434 C 8.4509263,8.1588394 7.4169394,8.5445024 6.0352758,8.5445024 C 4.6131758,8.5445024 3.789482,8.1797444 3.0141219,7.5312944 L 2.7773674,10.104833 C 3.3320785,10.723894 4.5518464,11.157918 5.9721413,11.157918 z " + style="opacity:1;fill:url(#linearGradient4256);fill-opacity:1;stroke:none;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path4258" + d="M 26.495901,11.055324 C 25.115181,11.055324 24.424582,10.630736 23.848518,10.037207 L 23.280307,7.3779497 C 24.017116,8.0562457 25.051103,8.4419087 26.432766,8.4419087 C 27.854866,8.4419087 28.67856,8.0771507 29.45392,7.4287007 L 29.690675,10.002239 C 29.135964,10.6213 27.916196,11.055324 26.495901,11.055324 z " + style="opacity:1;fill:url(#linearGradient4260);fill-opacity:1;stroke:none;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + </g> + </g> +</svg> diff --git a/sflphone-gtk/pixmaps/hold.svg b/sflphone-gtk/pixmaps/hold.svg new file mode 100644 index 0000000000000000000000000000000000000000..2a0a3b4bc889241137a60aa88eb2d76405e2bc46 --- /dev/null +++ b/sflphone-gtk/pixmaps/hold.svg @@ -0,0 +1,193 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="24" + height="24" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.43" + version="1.0" + sodipodi:docbase="/home/pierre/SFLPhone-0.8/pixmaps" + sodipodi:docname="hold.svg"> + <defs + id="defs4"> + <linearGradient + id="linearGradient4269"> + <stop + style="stop-color:#00a6b0;stop-opacity:1;" + offset="0" + id="stop4271" /> + <stop + style="stop-color:#00a6b0;stop-opacity:0;" + offset="1" + id="stop4273" /> + </linearGradient> + <linearGradient + id="linearGradient4183"> + <stop + id="stop4185" + offset="0" + style="stop-color:#00a5b0;stop-opacity:1;" /> + <stop + id="stop4187" + offset="1" + style="stop-color:#00595f;stop-opacity:1;" /> + </linearGradient> + <linearGradient + id="linearGradient4167"> + <stop + style="stop-color:#80000e;stop-opacity:1;" + offset="0" + id="stop4169" /> + <stop + style="stop-color:#b00014;stop-opacity:0;" + offset="1" + id="stop4171" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient4181" + x1="10.57493" + y1="12.115559" + x2="-0.68574232" + y2="12.115559" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(1.262691,-1.100752)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient4195" + x1="31.692968" + y1="11.264216" + x2="23.888865" + y2="13.35532" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(-0.947018,-0.885198)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient4203" + x1="15.647213" + y1="2.7028866" + x2="14.013638" + y2="10.576721" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4269" + id="linearGradient4256" + x1="7.8517423" + y1="15.912388" + x2="7.1114841" + y2="11.597325" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(0.426158,-2.762136)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4269" + id="linearGradient4260" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(-1,-1.726592e-17,-1.726592e-17,1,32.04188,-2.86473)" + x1="2.0651877" + y1="12.625902" + x2="6.8378897" + y2="13.920053" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient2224" + x1="16.826796" + y1="6.7288713" + x2="27.5625" + y2="22.512505" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.632388,0,0,0.632388,3.258093,0.894991)" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="5.6" + inkscape:cx="48.338279" + inkscape:cy="8.9621787" + inkscape:document-units="px" + inkscape:current-layer="layer1" + width="32px" + height="32px" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1014" + inkscape:window-height="691" + inkscape:window-x="0" + inkscape:window-y="25"> + <sodipodi:guide + orientation="horizontal" + position="8.0357143" + id="guide3144" /> + <sodipodi:guide + orientation="vertical" + position="15.982143" + id="guide3146" /> + </sodipodi:namedview> + <metadata + id="metadata7"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Calque 1" + inkscape:groupmode="layer" + id="layer1"> + <g + id="g4160" + transform="matrix(-0.361354,-0.625883,0.625883,-0.361354,9.569749,27.47989)"> + <path + sodipodi:nodetypes="cccsccsccsccc" + id="path3153" + d="M 16.100095,4.59375 C 10.946289,4.7477067 6.5661943,5.7999634 2.7626907,7.28125 L 2.5751907,10.227679 C 3.1252737,10.972881 4.3542457,11.508929 5.7626907,11.508929 C 7.1318907,11.508929 8.3164327,11.004648 8.8876907,10.290179 L 8.8876907,9.1875 C 11.3092,8.682612 12.862258,8.4375 16.125,8.4375 C 19.479577,8.4375001 21.34842,8.6842603 23.771732,9.15625 L 23.771732,10.165179 C 24.34299,10.879648 25.527531,11.383929 26.896732,11.383929 C 28.305177,11.383929 29.5029,10.847881 30.052982,10.102679 L 29.865482,7.15625 C 25.053357,5.4212686 21.355113,4.6256244 16.100095,4.59375 z " + style="opacity:1;fill:url(#linearGradient4203);fill-opacity:1;stroke:#006c73;stroke-width:0.625;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path3161" + d="M 5.7481338,13.019293 C 7.1288536,13.019293 8.3245284,12.610489 8.9005927,12.01696 L 8.9005927,10.430989 C 8.1637843,11.109285 7.1297974,11.494948 5.7481338,11.494948 C 4.3260338,11.494948 3.32872,11.13019 2.5533599,10.48174 L 2.5533599,11.966208 C 3.108071,12.585269 4.3278389,13.019293 5.7481338,13.019293 z " + style="opacity:1;fill:url(#linearGradient4181);fill-opacity:1;stroke:#006c73;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path4140" + d="M 26.931282,12.944669 C 28.312002,12.944669 29.507677,12.535865 30.083741,11.942336 L 30.083741,10.356365 C 29.346933,11.034661 28.312946,11.420324 26.931282,11.420324 C 25.509182,11.420324 24.511868,11.055566 23.736508,10.407116 L 23.736508,11.891584 C 24.291219,12.510645 25.510987,12.944669 26.931282,12.944669 z " + style="opacity:1;fill:url(#linearGradient4195);fill-opacity:1;stroke:#006c73;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path4246" + d="M 5.9721413,11.157918 C 7.3528611,11.157918 8.0434596,10.73333 8.6195239,10.139801 L 9.1877347,7.4805434 C 8.4509263,8.1588394 7.4169394,8.5445024 6.0352758,8.5445024 C 4.6131758,8.5445024 3.789482,8.1797444 3.0141219,7.5312944 L 2.7773674,10.104833 C 3.3320785,10.723894 4.5518464,11.157918 5.9721413,11.157918 z " + style="opacity:1;fill:url(#linearGradient4256);fill-opacity:1;stroke:none;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path4258" + d="M 26.495901,11.055324 C 25.115181,11.055324 24.424582,10.630736 23.848518,10.037207 L 23.280307,7.3779497 C 24.017116,8.0562457 25.051103,8.4419087 26.432766,8.4419087 C 27.854866,8.4419087 28.67856,8.0771507 29.45392,7.4287007 L 29.690675,10.002239 C 29.135964,10.6213 27.916196,11.055324 26.495901,11.055324 z " + style="opacity:1;fill:url(#linearGradient4260);fill-opacity:1;stroke:none;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + </g> + <path + style="fill:url(#linearGradient2224);fill-opacity:1;stroke:#1d6a6f;stroke-width:0.45169228;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="M 20.490646,2.9897742 L 14.562015,4.5707424 L 14.562015,10.617945 C 14.122032,10.524443 13.567112,10.630003 13.040334,10.934139 C 12.162369,11.441033 11.717626,12.330801 12.052229,12.910349 C 12.386831,13.489898 13.367856,13.535817 14.245821,13.028922 C 14.972886,12.60915 15.397327,11.93807 15.332737,11.388667 L 15.352499,11.388667 L 15.352499,5.5983718 L 19.680399,4.4324077 L 19.680399,9.1357875 C 19.24244,9.047258 18.68001,9.1510128 18.158717,9.4519815 C 17.280753,9.9588749 16.836009,10.848643 17.170613,11.428192 C 17.505215,12.00774 18.48624,12.053657 19.364206,11.546764 C 20.091271,11.126992 20.535474,10.455913 20.470884,9.9065097 L 20.490646,9.9065097 L 20.490646,4.2150246 L 20.490646,2.9897742 z " + id="path1328" /> + </g> +</svg> diff --git a/sflphone-gtk/pixmaps/refuse.svg b/sflphone-gtk/pixmaps/refuse.svg new file mode 100644 index 0000000000000000000000000000000000000000..a0d5b756dfb3ee07b3491e14ee68734d5ac1900a --- /dev/null +++ b/sflphone-gtk/pixmaps/refuse.svg @@ -0,0 +1,200 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="24" + height="24" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.43" + version="1.0" + sodipodi:docbase="/home/pierre/SFLPhone-0.8/pixmaps" + sodipodi:docname="refuse.svg"> + <defs + id="defs4"> + <linearGradient + inkscape:collect="always" + id="linearGradient4250"> + <stop + style="stop-color:#b00014;stop-opacity:1;" + offset="0" + id="stop4252" /> + <stop + style="stop-color:#b00014;stop-opacity:0;" + offset="1" + id="stop4254" /> + </linearGradient> + <linearGradient + id="linearGradient4183"> + <stop + id="stop4185" + offset="0" + style="stop-color:#b00014;stop-opacity:1;" /> + <stop + id="stop4187" + offset="1" + style="stop-color:#70000c;stop-opacity:1;" /> + </linearGradient> + <linearGradient + id="linearGradient4167"> + <stop + style="stop-color:#80000e;stop-opacity:1;" + offset="0" + id="stop4169" /> + <stop + style="stop-color:#b00014;stop-opacity:0;" + offset="1" + id="stop4171" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4167" + id="linearGradient4173" + x1="7.1249466" + y1="23.946518" + x2="20.06057" + y2="16.478132" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(6.313453e-2,-0.384275)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient4181" + x1="1.0046476" + y1="12.825893" + x2="7.9239235" + y2="12.825893" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(1.262691,-1.100752)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient4195" + x1="24.397505" + y1="12.535715" + x2="31.31678" + y2="12.535715" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(-0.947018,-0.885198)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient4203" + x1="15.647213" + y1="2.7028866" + x2="14.013638" + y2="10.576721" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4250" + id="linearGradient4256" + x1="2.0651877" + y1="12.625902" + x2="6.8378897" + y2="13.920053" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(0.426158,-2.762136)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4250" + id="linearGradient4260" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(-1,0,0,1,32.04188,-2.86473)" + x1="2.0651877" + y1="12.625902" + x2="6.8378897" + y2="13.920053" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="11.2" + inkscape:cx="21.034591" + inkscape:cy="10.811622" + inkscape:document-units="px" + inkscape:current-layer="layer1" + width="32px" + height="32px" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1014" + inkscape:window-height="691" + inkscape:window-x="0" + inkscape:window-y="25"> + <sodipodi:guide + orientation="horizontal" + position="8.0357143" + id="guide3144" /> + <sodipodi:guide + orientation="vertical" + position="15.982143" + id="guide3146" /> + </sodipodi:namedview> + <metadata + id="metadata7"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Calque 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#5c0008;stroke-width:4.48463202;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="M 3.7084718,3.5269014 L 20.778737,20.597165" + id="path1332" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#5c0008;stroke-width:4.48463202;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="M 3.7084715,20.597165 L 20.778737,3.5269017" + id="path1334" + sodipodi:nodetypes="cc" /> + <g + id="g4160" + transform="matrix(0.786778,0,0,0.786778,-0.726628,4.603105)"> + <path + sodipodi:nodetypes="cccsccsccsccc" + id="path3153" + d="M 16.100095,4.59375 C 10.946289,4.7477067 6.5661943,5.7999634 2.7626907,7.28125 L 2.5751907,10.227679 C 3.1252737,10.972881 4.3542457,11.508929 5.7626907,11.508929 C 7.1318907,11.508929 8.3164327,11.004648 8.8876907,10.290179 L 8.8876907,9.1875 C 11.3092,8.682612 12.862258,8.4375 16.125,8.4375 C 19.479577,8.4375001 21.34842,8.6842603 23.771732,9.15625 L 23.771732,10.165179 C 24.34299,10.879648 25.527531,11.383929 26.896732,11.383929 C 28.305177,11.383929 29.5029,10.847881 30.052982,10.102679 L 29.865482,7.15625 C 25.053357,5.4212686 21.355113,4.6256244 16.100095,4.59375 z " + style="opacity:1;fill:url(#linearGradient4203);fill-opacity:1;stroke:#5c0008;stroke-width:0.625;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path3161" + d="M 5.7481338,13.019293 C 7.1288536,13.019293 8.3245284,12.610489 8.9005927,12.01696 L 8.9005927,10.430989 C 8.1637843,11.109285 7.1297974,11.494948 5.7481338,11.494948 C 4.3260338,11.494948 3.32872,11.13019 2.5533599,10.48174 L 2.5533599,11.966208 C 3.108071,12.585269 4.3278389,13.019293 5.7481338,13.019293 z " + style="opacity:1;fill:url(#linearGradient4181);fill-opacity:1;stroke:#5c0008;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path4140" + d="M 26.931282,12.944669 C 28.312002,12.944669 29.507677,12.535865 30.083741,11.942336 L 30.083741,10.356365 C 29.346933,11.034661 28.312946,11.420324 26.931282,11.420324 C 25.509182,11.420324 24.511868,11.055566 23.736508,10.407116 L 23.736508,11.891584 C 24.291219,12.510645 25.510987,12.944669 26.931282,12.944669 z " + style="opacity:1;fill:url(#linearGradient4195);fill-opacity:1;stroke:#5c0008;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path4246" + d="M 5.9721413,11.157918 C 7.3528611,11.157918 8.0434596,10.73333 8.6195239,10.139801 L 9.1877347,7.4805434 C 8.4509263,8.1588394 7.4169394,8.5445024 6.0352758,8.5445024 C 4.6131758,8.5445024 3.789482,8.1797444 3.0141219,7.5312944 L 2.7773674,10.104833 C 3.3320785,10.723894 4.5518464,11.157918 5.9721413,11.157918 z " + style="opacity:1;fill:url(#linearGradient4256);fill-opacity:1;stroke:none;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path4258" + d="M 26.495901,11.055324 C 25.115181,11.055324 24.424582,10.630736 23.848518,10.037207 L 23.280307,7.3779497 C 24.017116,8.0562457 25.051103,8.4419087 26.432766,8.4419087 C 27.854866,8.4419087 28.67856,8.0771507 29.45392,7.4287007 L 29.690675,10.002239 C 29.135964,10.6213 27.916196,11.055324 26.495901,11.055324 z " + style="opacity:1;fill:url(#linearGradient4260);fill-opacity:1;stroke:none;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + </g> + </g> +</svg> diff --git a/sflphone-gtk/pixmaps/ring.svg b/sflphone-gtk/pixmaps/ring.svg new file mode 100644 index 0000000000000000000000000000000000000000..6efc8decf64f92c7003363798cebdbcb1b22237f --- /dev/null +++ b/sflphone-gtk/pixmaps/ring.svg @@ -0,0 +1,381 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="24" + height="24" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.45" + version="1.0" + sodipodi:docbase="/home/plbeaudoin/SFLPhone/sflphone-gtk/pixmaps" + sodipodi:docname="ring.svg" + inkscape:output_extension="org.inkscape.output.svg.inkscape" + sodipodi:modified="true"> + <defs + id="defs4"> + <linearGradient + id="linearGradient4045"> + <stop + style="stop-color:#ffffff;stop-opacity:0" + offset="0" + id="stop4047" /> + <stop + style="stop-color:#fcfbcb;stop-opacity:1" + offset="1" + id="stop4049" /> + </linearGradient> + <linearGradient + id="linearGradient4269"> + <stop + style="stop-color:#1db000;stop-opacity:1;" + offset="0" + id="stop4271" /> + <stop + style="stop-color:#1db000;stop-opacity:0;" + offset="1" + id="stop4273" /> + </linearGradient> + <linearGradient + id="linearGradient4183"> + <stop + id="stop4185" + offset="0" + style="stop-color:#1db000;stop-opacity:1;" /> + <stop + id="stop4187" + offset="1" + style="stop-color:#0f5f00;stop-opacity:1;" /> + </linearGradient> + <linearGradient + id="linearGradient4167"> + <stop + style="stop-color:#80000e;stop-opacity:1;" + offset="0" + id="stop4169" /> + <stop + style="stop-color:#b00014;stop-opacity:0;" + offset="1" + id="stop4171" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient4181" + x1="10.57493" + y1="12.115559" + x2="-0.68574232" + y2="12.115559" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(1.262691,-1.100752)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient4195" + x1="31.692968" + y1="11.264216" + x2="23.888865" + y2="13.35532" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(-0.947018,-0.885198)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient4203" + x1="15.647213" + y1="2.7028866" + x2="14.013638" + y2="10.576721" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4269" + id="linearGradient4256" + x1="7.8517423" + y1="15.912388" + x2="7.1114841" + y2="11.597325" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(0.426158,-2.762136)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4269" + id="linearGradient4260" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(-1,0,0,1,32.04188,-2.86473)" + x1="2.0651877" + y1="12.625902" + x2="6.8378897" + y2="13.920053" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient2224" + x1="16.826796" + y1="6.7288713" + x2="27.5625" + y2="22.512505" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.875025,0,0,0.875025,0.666703,0.177907)" /> + <linearGradient + gradientTransform="matrix(1.62913,0,0,-1.62913,-10.06608,39.71987)" + gradientUnits="userSpaceOnUse" + y2="6.6770978" + x2="15.806232" + y1="22.874208" + x1="15.630395" + id="linearGradient4275" + xlink:href="#linearGradient4269" + inkscape:collect="always" /> + <linearGradient + y2="13.920053" + x2="6.8378897" + y1="12.625902" + x1="2.0651877" + gradientTransform="matrix(-1,0,0,1,32.04188,-2.86473)" + gradientUnits="userSpaceOnUse" + id="linearGradient1388" + xlink:href="#linearGradient4269" + inkscape:collect="always" /> + <linearGradient + gradientTransform="translate(0.426158,-2.762136)" + gradientUnits="userSpaceOnUse" + y2="13.920053" + x2="6.8378897" + y1="12.625902" + x1="2.0651877" + id="linearGradient1386" + xlink:href="#linearGradient4269" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="10.576721" + x2="14.013638" + y1="2.7028866" + x1="15.647213" + id="linearGradient1384" + xlink:href="#linearGradient4183" + inkscape:collect="always" /> + <linearGradient + gradientTransform="translate(-0.947018,-0.885198)" + gradientUnits="userSpaceOnUse" + y2="12.535715" + x2="31.31678" + y1="12.535715" + x1="24.397505" + id="linearGradient1382" + xlink:href="#linearGradient4183" + inkscape:collect="always" /> + <linearGradient + gradientTransform="translate(1.262691,-1.100752)" + gradientUnits="userSpaceOnUse" + y2="12.825893" + x2="7.9239235" + y1="12.825893" + x1="1.0046476" + id="linearGradient1380" + xlink:href="#linearGradient4183" + inkscape:collect="always" /> + <linearGradient + id="linearGradient1374"> + <stop + id="stop1376" + offset="0" + style="stop-color:#80000e;stop-opacity:1;" /> + <stop + id="stop1378" + offset="1" + style="stop-color:#b00014;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient1368"> + <stop + style="stop-color:#26b000;stop-opacity:1;" + offset="0" + id="stop1370" /> + <stop + style="stop-color:#145f00;stop-opacity:1;" + offset="1" + id="stop1372" /> + </linearGradient> + <linearGradient + id="linearGradient1362"> + <stop + id="stop1364" + offset="0" + style="stop-color:#26b000;stop-opacity:1;" /> + <stop + id="stop1366" + offset="1" + style="stop-color:#26b000;stop-opacity:0;" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient1406" + gradientUnits="userSpaceOnUse" + x1="15.647213" + y1="2.7028866" + x2="14.013638" + y2="10.576721" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient1408" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(1.262691,-1.100752)" + x1="10.57493" + y1="12.115559" + x2="-0.68574232" + y2="12.115559" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient1410" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(-0.947018,-0.885198)" + x1="31.692968" + y1="11.264216" + x2="23.888865" + y2="13.35532" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4269" + id="linearGradient1412" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(0.426158,-2.762136)" + x1="7.8517423" + y1="15.912388" + x2="7.1114841" + y2="11.597325" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4269" + id="linearGradient1414" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(-1,0,0,1,32.04188,-2.86473)" + x1="2.0651877" + y1="12.625902" + x2="6.8378897" + y2="13.920053" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4045" + id="radialGradient4051" + cx="19.285715" + cy="9.8571424" + fx="19.285715" + fy="9.8571424" + r="10.885714" + gradientUnits="userSpaceOnUse" + spreadMethod="reflect" + gradientTransform="matrix(0.418975,0,0,0.418975,11.20548,5.727248)" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="11.2" + inkscape:cx="14.665531" + inkscape:cy="15.043598" + inkscape:document-units="px" + inkscape:current-layer="layer1" + width="32px" + height="32px" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1014" + inkscape:window-height="691" + inkscape:window-x="486" + inkscape:window-y="323"> + <sodipodi:guide + orientation="vertical" + position="11.237947" + id="guide3146" /> + </sodipodi:namedview> + <metadata + id="metadata7"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Calque 1" + inkscape:groupmode="layer" + id="layer1"> + <g + id="g4160" + transform="matrix(0.7234088,-7.1867585e-7,7.1867585e-7,0.7234088,0.168481,5.706212)"> + <path + sodipodi:nodetypes="cccsccsccsccc" + id="path3153" + d="M 16.100095,4.59375 C 10.946289,4.7477067 6.5661943,5.7999634 2.7626907,7.28125 L 2.5751907,10.227679 C 3.1252737,10.972881 4.3542457,11.508929 5.7626907,11.508929 C 7.1318907,11.508929 8.3164327,11.004648 8.8876907,10.290179 L 8.8876907,9.1875 C 11.3092,8.682612 12.862258,8.4375 16.125,8.4375 C 19.479577,8.4375001 21.34842,8.6842603 23.771732,9.15625 L 23.771732,10.165179 C 24.34299,10.879648 25.527531,11.383929 26.896732,11.383929 C 28.305177,11.383929 29.5029,10.847881 30.052982,10.102679 L 29.865482,7.15625 C 25.053357,5.4212686 21.355113,4.6256244 16.100095,4.59375 z " + style="opacity:1;fill:url(#linearGradient4203);fill-opacity:1;stroke:#137300;stroke-width:0.625;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path3161" + d="M 5.7481338,13.019293 C 7.1288536,13.019293 8.3245284,12.610489 8.9005927,12.01696 L 8.9005927,10.430989 C 8.1637843,11.109285 7.1297974,11.494948 5.7481338,11.494948 C 4.3260338,11.494948 3.32872,11.13019 2.5533599,10.48174 L 2.5533599,11.966208 C 3.108071,12.585269 4.3278389,13.019293 5.7481338,13.019293 z " + style="opacity:1;fill:url(#linearGradient4181);fill-opacity:1;stroke:#137300;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path4140" + d="M 26.931282,12.944669 C 28.312002,12.944669 29.507677,12.535865 30.083741,11.942336 L 30.083741,10.356365 C 29.346933,11.034661 28.312946,11.420324 26.931282,11.420324 C 25.509182,11.420324 24.511868,11.055566 23.736508,10.407116 L 23.736508,11.891584 C 24.291219,12.510645 25.510987,12.944669 26.931282,12.944669 z " + style="opacity:1;fill:url(#linearGradient4195);fill-opacity:1;stroke:#137300;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path4246" + d="M 5.9721413,11.157918 C 7.3528611,11.157918 8.0434596,10.73333 8.6195239,10.139801 L 9.1877347,7.4805434 C 8.4509263,8.1588394 7.4169394,8.5445024 6.0352758,8.5445024 C 4.6131758,8.5445024 3.789482,8.1797444 3.0141219,7.5312944 L 2.7773674,10.104833 C 3.3320785,10.723894 4.5518464,11.157918 5.9721413,11.157918 z " + style="opacity:1;fill:url(#linearGradient4256);fill-opacity:1;stroke:none;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path4258" + d="M 26.495901,11.055324 C 25.115181,11.055324 24.424582,10.630736 23.848518,10.037207 L 23.280307,7.3779497 C 24.017116,8.0562457 25.051103,8.4419087 26.432766,8.4419087 C 27.854866,8.4419087 28.67856,8.0771507 29.45392,7.4287007 L 29.690675,10.002239 C 29.135964,10.6213 27.916196,11.055324 26.495901,11.055324 z " + style="opacity:1;fill:url(#linearGradient4260);fill-opacity:1;stroke:none;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + </g> + <path + style="fill:none;fill-opacity:1;stroke:#137300;stroke-width:1.14272487;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1" + d="M 4.7534689,5.5674731 C 7.1269878,2.5572153 12.389832,1.5246362 16.500888,3.2626094 C 17.87124,3.8419337 18.857426,4.5640529 19.648599,5.5674721" + id="path2210" + sodipodi:nodetypes="csc" /> + <path + style="opacity:0.7538941;fill:none;fill-opacity:1;stroke:#137300;stroke-width:0.78610826;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1" + d="M 7.1087815,6.6902168 C 8.7415829,4.6193872 12.362022,3.9090509 15.190117,5.104645 C 16.132816,5.5031762 16.811237,5.9999396 17.355504,6.690216" + id="path3184" + sodipodi:nodetypes="csc" /> + <path + style="opacity:0.53582554;fill:none;fill-opacity:1;stroke:#137300;stroke-width:0.52458936;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1" + d="M 8.7239117,7.6245476 C 9.8135207,6.242632 12.229529,5.7686071 14.116787,6.5664565 C 14.745873,6.8324062 15.1986,7.1639086 15.561803,7.6245471" + id="path3186" + sodipodi:nodetypes="csc" /> + <path + style="fill:none;fill-opacity:1;stroke:#137300;stroke-width:1.14272487;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1" + d="M 19.501136,18.567453 C 17.127617,21.57771 11.864773,22.61029 7.7537171,20.872316 C 6.3833651,20.292992 5.3971791,19.570873 4.6060061,18.567454" + id="path3188" + sodipodi:nodetypes="csc" /> + <path + style="opacity:0.7538941;fill:none;fill-opacity:1;stroke:#137300;stroke-width:0.78610826;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1" + d="M 17.145823,17.444709 C 15.513022,19.515539 11.892583,20.225875 9.0644881,19.030281 C 8.1217891,18.63175 7.4433681,18.134986 6.8991011,17.44471" + id="path3190" + sodipodi:nodetypes="csc" /> + <path + style="opacity:0.54205609;fill:none;fill-opacity:1;stroke:#137300;stroke-width:0.52458936;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1" + d="M 15.530693,16.510378 C 14.441084,17.892294 12.025076,18.366319 10.137818,17.568469 C 9.5087321,17.30252 9.0560051,16.971017 8.6928021,16.510379" + id="path3192" + sodipodi:nodetypes="csc" /> + </g> +</svg> diff --git a/sflphone-gtk/pixmaps/sflphone.png b/sflphone-gtk/pixmaps/sflphone.png new file mode 100644 index 0000000000000000000000000000000000000000..d40cbdb2a827b91e537d23e4282520e5008f2427 Binary files /dev/null and b/sflphone-gtk/pixmaps/sflphone.png differ diff --git a/sflphone-gtk/pixmaps/transfert.svg b/sflphone-gtk/pixmaps/transfert.svg new file mode 100644 index 0000000000000000000000000000000000000000..d5011d14ea3528a86d61b29012efbca2a123c088 --- /dev/null +++ b/sflphone-gtk/pixmaps/transfert.svg @@ -0,0 +1,193 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="24" + height="24" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.43" + version="1.0" + sodipodi:docbase="/home/pierre/SFLPhone-0.8/pixmaps" + sodipodi:docname="transfert.svg"> + <defs + id="defs4"> + <linearGradient + id="linearGradient4269"> + <stop + style="stop-color:#0040b0;stop-opacity:1;" + offset="0" + id="stop4271" /> + <stop + style="stop-color:#0040b0;stop-opacity:0;" + offset="1" + id="stop4273" /> + </linearGradient> + <linearGradient + id="linearGradient4183"> + <stop + id="stop4185" + offset="0" + style="stop-color:#0040b0;stop-opacity:1;" /> + <stop + id="stop4187" + offset="1" + style="stop-color:#00225f;stop-opacity:1;" /> + </linearGradient> + <linearGradient + id="linearGradient4167"> + <stop + style="stop-color:#80000e;stop-opacity:1;" + offset="0" + id="stop4169" /> + <stop + style="stop-color:#b00014;stop-opacity:0;" + offset="1" + id="stop4171" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient4181" + x1="10.57493" + y1="12.115559" + x2="-0.68574232" + y2="12.115559" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(1.262691,-1.100752)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient4195" + x1="31.692968" + y1="11.264216" + x2="23.888865" + y2="13.35532" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(-0.947018,-0.885198)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient4203" + x1="15.647213" + y1="2.7028866" + x2="14.013638" + y2="10.576721" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4269" + id="linearGradient4256" + x1="7.8517423" + y1="15.912388" + x2="7.1114841" + y2="11.597325" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(0.426158,-2.762136)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4269" + id="linearGradient4260" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(-1,1.130281e-17,1.130281e-17,1,32.04188,-2.86473)" + x1="2.0651877" + y1="12.625902" + x2="6.8378897" + y2="13.920053" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4269" + id="linearGradient4275" + x1="15.630395" + y1="22.874208" + x2="15.630395" + y2="6.2345462" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.360718e-8,1.128928,1.128928,-1.360718e-8,-2.675976,-6.510667)" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="7.919596" + inkscape:cx="31.718776" + inkscape:cy="6.8428916" + inkscape:document-units="px" + inkscape:current-layer="layer1" + width="32px" + height="32px" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1014" + inkscape:window-height="691" + inkscape:window-x="0" + inkscape:window-y="25"> + <sodipodi:guide + orientation="horizontal" + position="8.0357143" + id="guide3144" /> + <sodipodi:guide + orientation="vertical" + position="15.982143" + id="guide3146" /> + </sodipodi:namedview> + <metadata + id="metadata7"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Calque 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="opacity:1;fill:url(#linearGradient4275);fill-opacity:1;stroke:none;stroke-width:0.625;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + d="M 3.4969519,7.1423006 L 14.680393,7.1423007 L 14.680393,3.5085644 L 23.147351,11.552174 L 14.680393,19.595785 L 14.680394,15.962049 L 3.496952,15.962049 L 3.4969519,7.1423006 z " + id="rect4262" /> + <g + id="g4160" + transform="matrix(-0.346482,-0.600124,0.600124,-0.346482,7.758483,26.07881)"> + <path + sodipodi:nodetypes="cccsccsccsccc" + id="path3153" + d="M 16.100095,4.59375 C 10.946289,4.7477067 6.5661943,5.7999634 2.7626907,7.28125 L 2.5751907,10.227679 C 3.1252737,10.972881 4.3542457,11.508929 5.7626907,11.508929 C 7.1318907,11.508929 8.3164327,11.004648 8.8876907,10.290179 L 8.8876907,9.1875 C 11.3092,8.682612 12.862258,8.4375 16.125,8.4375 C 19.479577,8.4375001 21.34842,8.6842603 23.771732,9.15625 L 23.771732,10.165179 C 24.34299,10.879648 25.527531,11.383929 26.896732,11.383929 C 28.305177,11.383929 29.5029,10.847881 30.052982,10.102679 L 29.865482,7.15625 C 25.053357,5.4212686 21.355113,4.6256244 16.100095,4.59375 z " + style="opacity:1;fill:url(#linearGradient4203);fill-opacity:1;stroke:#002973;stroke-width:0.625;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path3161" + d="M 5.7481338,13.019293 C 7.1288536,13.019293 8.3245284,12.610489 8.9005927,12.01696 L 8.9005927,10.430989 C 8.1637843,11.109285 7.1297974,11.494948 5.7481338,11.494948 C 4.3260338,11.494948 3.32872,11.13019 2.5533599,10.48174 L 2.5533599,11.966208 C 3.108071,12.585269 4.3278389,13.019293 5.7481338,13.019293 z " + style="opacity:1;fill:url(#linearGradient4181);fill-opacity:1;stroke:#002973;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path4140" + d="M 26.931282,12.944669 C 28.312002,12.944669 29.507677,12.535865 30.083741,11.942336 L 30.083741,10.356365 C 29.346933,11.034661 28.312946,11.420324 26.931282,11.420324 C 25.509182,11.420324 24.511868,11.055566 23.736508,10.407116 L 23.736508,11.891584 C 24.291219,12.510645 25.510987,12.944669 26.931282,12.944669 z " + style="opacity:1;fill:url(#linearGradient4195);fill-opacity:1;stroke:#002973;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path4246" + d="M 5.9721413,11.157918 C 7.3528611,11.157918 8.0434596,10.73333 8.6195239,10.139801 L 9.1877347,7.4805434 C 8.4509263,8.1588394 7.4169394,8.5445024 6.0352758,8.5445024 C 4.6131758,8.5445024 3.789482,8.1797444 3.0141219,7.5312944 L 2.7773674,10.104833 C 3.3320785,10.723894 4.5518464,11.157918 5.9721413,11.157918 z " + style="opacity:1;fill:url(#linearGradient4256);fill-opacity:1;stroke:none;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path4258" + d="M 26.495901,11.055324 C 25.115181,11.055324 24.424582,10.630736 23.848518,10.037207 L 23.280307,7.3779497 C 24.017116,8.0562457 25.051103,8.4419087 26.432766,8.4419087 C 27.854866,8.4419087 28.67856,8.0771507 29.45392,7.4287007 L 29.690675,10.002239 C 29.135964,10.6213 27.916196,11.055324 26.495901,11.055324 z " + style="opacity:1;fill:url(#linearGradient4260);fill-opacity:1;stroke:none;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + </g> + </g> +</svg> diff --git a/sflphone-gtk/pixmaps/unhold.svg b/sflphone-gtk/pixmaps/unhold.svg new file mode 100644 index 0000000000000000000000000000000000000000..79eaa9689d494ae162cf6a185ccd0e76d52f3276 --- /dev/null +++ b/sflphone-gtk/pixmaps/unhold.svg @@ -0,0 +1,307 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="24" + height="24" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.43" + version="1.0" + sodipodi:docbase="/home/pierre/SFLPhone-0.8/pixmaps" + sodipodi:docname="unhold.svg"> + <defs + id="defs4"> + <linearGradient + id="linearGradient4269"> + <stop + style="stop-color:#00a6b0;stop-opacity:1;" + offset="0" + id="stop4271" /> + <stop + style="stop-color:#00a6b0;stop-opacity:0;" + offset="1" + id="stop4273" /> + </linearGradient> + <linearGradient + id="linearGradient4183"> + <stop + id="stop4185" + offset="0" + style="stop-color:#00a5b0;stop-opacity:1;" /> + <stop + id="stop4187" + offset="1" + style="stop-color:#00595f;stop-opacity:1;" /> + </linearGradient> + <linearGradient + id="linearGradient4167"> + <stop + style="stop-color:#80000e;stop-opacity:1;" + offset="0" + id="stop4169" /> + <stop + style="stop-color:#b00014;stop-opacity:0;" + offset="1" + id="stop4171" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient4181" + x1="10.57493" + y1="12.115559" + x2="-0.68574232" + y2="12.115559" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(1.262691,-1.100752)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient4195" + x1="31.692968" + y1="11.264216" + x2="23.888865" + y2="13.35532" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(-0.947018,-0.885198)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient4203" + x1="15.647213" + y1="2.7028866" + x2="14.013638" + y2="10.576721" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4269" + id="linearGradient4256" + x1="7.8517423" + y1="15.912388" + x2="7.1114841" + y2="11.597325" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(0.426158,-2.762136)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4269" + id="linearGradient4260" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(-1,-1.791644e-17,-1.791644e-17,1,32.04188,-2.86473)" + x1="2.0651877" + y1="12.625902" + x2="6.8378897" + y2="13.920053" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4183" + id="linearGradient2224" + x1="16.826796" + y1="6.7288713" + x2="27.5625" + y2="22.512505" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.684918,0,0,0.684918,2.618701,-0.775487)" /> + <linearGradient + y2="13.920053" + x2="6.8378897" + y1="12.625902" + x1="2.0651877" + gradientTransform="matrix(-1,0,0,1,32.04188,-2.86473)" + gradientUnits="userSpaceOnUse" + id="linearGradient1416" + xlink:href="#linearGradient4250" + inkscape:collect="always" /> + <linearGradient + gradientTransform="translate(0.426158,-2.762136)" + gradientUnits="userSpaceOnUse" + y2="13.920053" + x2="6.8378897" + y1="12.625902" + x1="2.0651877" + id="linearGradient1414" + xlink:href="#linearGradient4250" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="10.576721" + x2="14.013638" + y1="2.7028866" + x1="15.647213" + id="linearGradient1412" + xlink:href="#linearGradient4183" + inkscape:collect="always" /> + <linearGradient + gradientTransform="translate(-0.947018,-0.885198)" + gradientUnits="userSpaceOnUse" + y2="12.535715" + x2="31.31678" + y1="12.535715" + x1="24.397505" + id="linearGradient1410" + xlink:href="#linearGradient4183" + inkscape:collect="always" /> + <linearGradient + gradientTransform="translate(1.262691,-1.100752)" + gradientUnits="userSpaceOnUse" + y2="12.825893" + x2="7.9239235" + y1="12.825893" + x1="1.0046476" + id="linearGradient1408" + xlink:href="#linearGradient4183" + inkscape:collect="always" /> + <linearGradient + gradientTransform="translate(6.313453e-2,-0.384275)" + gradientUnits="userSpaceOnUse" + y2="16.478132" + x2="20.06057" + y1="23.946518" + x1="7.1249466" + id="linearGradient4173" + xlink:href="#linearGradient4167" + inkscape:collect="always" /> + <linearGradient + id="linearGradient1401"> + <stop + id="stop1403" + offset="0" + style="stop-color:#80000e;stop-opacity:1;" /> + <stop + id="stop1405" + offset="1" + style="stop-color:#b00014;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient1395"> + <stop + style="stop-color:#b00014;stop-opacity:1;" + offset="0" + id="stop1397" /> + <stop + style="stop-color:#70000c;stop-opacity:1;" + offset="1" + id="stop1399" /> + </linearGradient> + <linearGradient + id="linearGradient4250" + inkscape:collect="always"> + <stop + id="stop4252" + offset="0" + style="stop-color:#b00014;stop-opacity:1;" /> + <stop + id="stop4254" + offset="1" + style="stop-color:#b00014;stop-opacity:0;" /> + </linearGradient> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="7.9195959" + inkscape:cx="41.093674" + inkscape:cy="10.492804" + inkscape:document-units="px" + inkscape:current-layer="layer1" + width="32px" + height="32px" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1014" + inkscape:window-height="691" + inkscape:window-x="0" + inkscape:window-y="25"> + <sodipodi:guide + orientation="horizontal" + position="8.0357143" + id="guide3144" /> + <sodipodi:guide + orientation="vertical" + position="15.982143" + id="guide3146" /> + </sodipodi:namedview> + <metadata + id="metadata7"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Calque 1" + inkscape:groupmode="layer" + id="layer1"> + <g + id="g4160" + transform="matrix(-0.391371,-0.677874,0.677874,-0.391371,9.454654,28.01777)"> + <path + sodipodi:nodetypes="cccsccsccsccc" + id="path3153" + d="M 16.100095,4.59375 C 10.946289,4.7477067 6.5661943,5.7999634 2.7626907,7.28125 L 2.5751907,10.227679 C 3.1252737,10.972881 4.3542457,11.508929 5.7626907,11.508929 C 7.1318907,11.508929 8.3164327,11.004648 8.8876907,10.290179 L 8.8876907,9.1875 C 11.3092,8.682612 12.862258,8.4375 16.125,8.4375 C 19.479577,8.4375001 21.34842,8.6842603 23.771732,9.15625 L 23.771732,10.165179 C 24.34299,10.879648 25.527531,11.383929 26.896732,11.383929 C 28.305177,11.383929 29.5029,10.847881 30.052982,10.102679 L 29.865482,7.15625 C 25.053357,5.4212686 21.355113,4.6256244 16.100095,4.59375 z " + style="opacity:1;fill:url(#linearGradient4203);fill-opacity:1;stroke:#006c73;stroke-width:0.625;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path3161" + d="M 5.7481338,13.019293 C 7.1288536,13.019293 8.3245284,12.610489 8.9005927,12.01696 L 8.9005927,10.430989 C 8.1637843,11.109285 7.1297974,11.494948 5.7481338,11.494948 C 4.3260338,11.494948 3.32872,11.13019 2.5533599,10.48174 L 2.5533599,11.966208 C 3.108071,12.585269 4.3278389,13.019293 5.7481338,13.019293 z " + style="opacity:1;fill:url(#linearGradient4181);fill-opacity:1;stroke:#006c73;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path4140" + d="M 26.931282,12.944669 C 28.312002,12.944669 29.507677,12.535865 30.083741,11.942336 L 30.083741,10.356365 C 29.346933,11.034661 28.312946,11.420324 26.931282,11.420324 C 25.509182,11.420324 24.511868,11.055566 23.736508,10.407116 L 23.736508,11.891584 C 24.291219,12.510645 25.510987,12.944669 26.931282,12.944669 z " + style="opacity:1;fill:url(#linearGradient4195);fill-opacity:1;stroke:#006c73;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path4246" + d="M 5.9721413,11.157918 C 7.3528611,11.157918 8.0434596,10.73333 8.6195239,10.139801 L 9.1877347,7.4805434 C 8.4509263,8.1588394 7.4169394,8.5445024 6.0352758,8.5445024 C 4.6131758,8.5445024 3.789482,8.1797444 3.0141219,7.5312944 L 2.7773674,10.104833 C 3.3320785,10.723894 4.5518464,11.157918 5.9721413,11.157918 z " + style="opacity:1;fill:url(#linearGradient4256);fill-opacity:1;stroke:none;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <path + sodipodi:nodetypes="cccsccc" + id="path4258" + d="M 26.495901,11.055324 C 25.115181,11.055324 24.424582,10.630736 23.848518,10.037207 L 23.280307,7.3779497 C 24.017116,8.0562457 25.051103,8.4419087 26.432766,8.4419087 C 27.854866,8.4419087 28.67856,8.0771507 29.45392,7.4287007 L 29.690675,10.002239 C 29.135964,10.6213 27.916196,11.055324 26.495901,11.055324 z " + style="opacity:1;fill:url(#linearGradient4260);fill-opacity:1;stroke:none;stroke-width:0.57204324;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + </g> + <path + style="opacity:0.27893174;fill:url(#linearGradient2224);fill-opacity:1;stroke:#1d6a6f;stroke-width:0.48921341;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="M 21.282726,1.493306 L 14.861617,3.2056019 L 14.861617,9.7551332 C 14.385085,9.6538632 13.78407,9.7681922 13.213533,10.097593 C 12.262636,10.646593 11.78095,11.610272 12.143347,12.237962 C 12.505744,12.865653 13.568262,12.915386 14.519158,12.366384 C 15.306618,11.911743 15.766317,11.184918 15.696361,10.589877 L 15.717765,10.589877 L 15.717765,4.3185942 L 20.405175,3.055776 L 20.405175,8.1498557 C 19.930835,8.0539723 19.321685,8.1663458 18.75709,8.4923152 C 17.806194,9.0413152 17.324507,10.004994 17.686905,10.632685 C 18.049302,11.260375 19.111819,11.310107 20.062716,10.761107 C 20.850176,10.306466 21.331278,9.5796412 21.261323,8.9846002 L 21.282726,8.9846002 L 21.282726,2.8203353 L 21.282726,1.493306 z " + id="path1328" /> + <g + id="g1418" + inkscape:label="Calque 1" + transform="matrix(0.653807,0,0,0.653807,29.75345,1.99076)" + style="stroke:#006c73;stroke-opacity:1"> + <g + id="g1444" + transform="matrix(0.491592,0,0,0.491592,-26.9581,-0.76797)" + style="stroke:#006c73;stroke-opacity:1"> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#006c73;stroke-width:4.62944794;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="M 5.3208165,5.0274423 L 27.017246,26.72387" + id="path1332" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#006c73;stroke-width:4.62944794;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="M 5.3208161,26.72387 L 27.017246,5.0274427" + id="path1334" + sodipodi:nodetypes="cc" /> + </g> + </g> + </g> +</svg> diff --git a/sflphone-gtk/src/Makefile.am b/sflphone-gtk/src/Makefile.am new file mode 100644 index 0000000000000000000000000000000000000000..885b48f2ca37c8ce207a169bde434ab587fd4687 --- /dev/null +++ b/sflphone-gtk/src/Makefile.am @@ -0,0 +1,25 @@ +bin_PROGRAMS = sflphone-gtk + +sflphone_gtk_SOURCES = \ + main.c \ + dbus.c \ + mainwindow.c \ + calllist.c \ + dialpad.c \ + menus.c \ + calltree.c \ + screen.c \ + actions.c \ + configwindow.c \ + accountlist.c \ + accountwindow.c \ + marshaller.c + +noinst_HEADERS = actions.h dbus.h mainwindow.h calllist.h dialpad.h \ + callmanager-glue.h menus.h calltree.h screen.h configwindow.h \ + accountlist.h accountwindow.h marshaller.h +EXTRA_DIST = marshaller.list +sflphone_gtk_LDADD = $(DEPS_LIBS) + +AM_CPPFLAGS = $(DEPS_CFLAGS) \ + -DPIXMAPS_DIR=\""$(datadir)/pixmaps"\" diff --git a/sflphone-gtk/src/accountlist.c b/sflphone-gtk/src/accountlist.c new file mode 100644 index 0000000000000000000000000000000000000000..544429eeeeaf1f4b1b869241b145d13ec6c7892a --- /dev/null +++ b/sflphone-gtk/src/accountlist.c @@ -0,0 +1,128 @@ +/* + * Copyright (C) 2007 Savoir-Faire Linux inc. + * Author: Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.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 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., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include <accountlist.h> + +GQueue * accountQueue; + +/* GCompareFunc to compare a accountID (gchar* and a account_t) */ +gint +is_accountID_struct ( gconstpointer a, gconstpointer b) +{ + account_t * c = (account_t*)a; + if(strcmp(c->accountID, (gchar*) b) == 0) + { + return 0; + } + else + { + return 1; + } +} + +/* GCompareFunc to get current call (gchar* and a account_t) */ +gint +get_state_struct ( gconstpointer a, gconstpointer b) +{ + account_t * c = (account_t*)a; + if( c->state == *((account_state_t*)b)) + { + return 0; + } + else + { + return 1; + } +} + +void +account_list_init () +{ + accountQueue = g_queue_new (); +} + +void +account_list_clean () +{ + g_queue_free (accountQueue); +} + +void +account_list_add (account_t * c) +{ + g_queue_push_tail (accountQueue, (gpointer *) c); +} + + +void +account_list_remove (const gchar * accountID) +{ + GList * c = g_queue_find_custom (accountQueue, accountID, is_accountID_struct); + if (c) + { + g_queue_remove(accountQueue, c->data); + } +} + + +account_t * +account_list_get_by_state (account_state_t state ) +{ + GList * c = g_queue_find_custom (accountQueue, &state, get_state_struct); + if (c) + { + return (account_t *)c->data; + } + else + { + return NULL; + } + +} + +guint +account_list_get_size ( ) +{ + return g_queue_get_length (accountQueue); +} + +account_t * +account_list_get_nth ( guint n ) +{ + return g_queue_peek_nth (accountQueue, n); +} + +const gchar * account_state_name(account_state_t s) +{ + gchar * state; + switch(s) + { + case ACCOUNT_STATE_REGISTERED: + state = "Registered"; + break; + case ACCOUNT_STATE_UNREGISTERED: + state = "Not Registered"; + break; + default: + state = "Invalid"; + break; + } + return state; +} + diff --git a/sflphone-gtk/src/accountlist.h b/sflphone-gtk/src/accountlist.h new file mode 100644 index 0000000000000000000000000000000000000000..f47c66dd6d9abaa5a2019f693c528e8ce469444b --- /dev/null +++ b/sflphone-gtk/src/accountlist.h @@ -0,0 +1,71 @@ +/* + * Copyright (C) 2007 Savoir-Faire Linux inc. + * Author: Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.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 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., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#ifndef __ACCOUNTLIST_H__ +#define __ACCOUNTLIST_H__ + +#include <gtk/gtk.h> + +#define ACCOUNT_TYPE "Account.type" +#define ACCOUNT_ALIAS "Account.alias" +#define ACCOUNT_ENABLED "Account.enable" +#define ACCOUNT_REGISTER "Account.autoregister" + +#define ACCOUNT_SIP_FULL_NAME "SIP.fullName" +#define ACCOUNT_SIP_USER_PART "SIP.userPart" +#define ACCOUNT_SIP_AUTH_NAME "SIP.username" +#define ACCOUNT_SIP_PASSWORD "SIP.password" +#define ACCOUNT_SIP_HOST_PART "SIP.hostPart" +#define ACCOUNT_SIP_PROXY "SIP.proxy" + +#define ACCOUNT_IAX_HOST "IAX.host" +#define ACCOUNT_IAX_USER "IAX.user" +#define ACCOUNT_IAX_PASS "IAX.pass" + +typedef enum +{ + ACCOUNT_STATE_INVALID = 0, + ACCOUNT_STATE_REGISTERED, + ACCOUNT_STATE_UNREGISTERED +} account_state_t; + + +typedef struct { + gchar * accountID; + account_state_t state; + GHashTable * properties; +} account_t; + +void account_list_init (); + +void account_list_clean (); + +void account_list_add (account_t * a); + +void account_list_remove (const gchar * accountID); + +/** Return the first account that corresponds to the state */ +account_t * account_list_get_by_state ( account_state_t state); + +guint account_list_get_size ( ); + +account_t * account_list_get_nth ( guint n ); + +const gchar * account_state_name(account_state_t s); +#endif diff --git a/sflphone-gtk/src/accountwindow.c b/sflphone-gtk/src/accountwindow.c new file mode 100644 index 0000000000000000000000000000000000000000..f66604190be7bd673802d75d864bc7f998003693 --- /dev/null +++ b/sflphone-gtk/src/accountwindow.c @@ -0,0 +1,205 @@ +/* + * Copyright (C) 2007 Savoir-Faire Linux inc. + * Author: Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.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 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., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include <config.h> +#include <mainwindow.h> +#include <accountlist.h> +#include <gtk/gtk.h> + +/** Local variables */ +account_t * currentAccount; + +/** + * Delete an account + */ +/*static void +delete_account( GtkWidget *widget, gpointer data ) +{ + sflphone_remove_account(currentAccount); +}*/ + + +void +show_account_window (account_t * a) +{ + + GtkDialog * dialog; + GtkWidget * table; + GtkWidget * label; + GtkWidget * entryID; + GtkWidget * entryName; + GtkWidget * entryProtocol; + GtkWidget * entryEnabled; + GtkWidget * entryRegister; + GtkWidget * entryFullName; + GtkWidget * entryUserPart; + GtkWidget * entryHostPart; + GtkWidget * entryUsername; + GtkWidget * entryPassword; + guint response; + + currentAccount = a; + + dialog = GTK_DIALOG(gtk_dialog_new_with_buttons ("Account settings", + GTK_WINDOW(get_main_window()), + GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT, + GTK_STOCK_CANCEL, + GTK_RESPONSE_CANCEL, + GTK_STOCK_SAVE, + GTK_RESPONSE_ACCEPT, + NULL)); + + gtk_dialog_set_has_separator(dialog, TRUE); + gtk_container_set_border_width (GTK_CONTAINER(dialog), 0); + + table = gtk_table_new ( 8, 2 , FALSE /* homogeneous */); + gtk_table_set_row_spacings( GTK_TABLE(table), 10); + gtk_table_set_col_spacings( GTK_TABLE(table), 10); + +#ifdef DEBUG + label = gtk_label_new_with_mnemonic ("ID:"); + gtk_table_attach ( GTK_TABLE( table ), label, 0, 1, 0, 1, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + gtk_misc_set_alignment(GTK_MISC (label), 0, 0.5); + entryID = gtk_entry_new(); + gtk_label_set_mnemonic_widget (GTK_LABEL (label), entryID); + gtk_entry_set_text(GTK_ENTRY(entryID), a->accountID); + gtk_widget_set_sensitive( GTK_WIDGET(entryID), FALSE); + gtk_table_attach ( GTK_TABLE( table ), entryID, 1, 2, 0, 1, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); +#endif + + entryEnabled = gtk_check_button_new_with_mnemonic("_Enabled"); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(entryEnabled), + strcmp(g_hash_table_lookup(currentAccount->properties, ACCOUNT_ENABLED),"TRUE") == 0 ? TRUE: FALSE); + gtk_table_attach ( GTK_TABLE( table ), entryEnabled, 0, 2, 1, 2, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + + entryRegister = gtk_check_button_new_with_mnemonic("_Register on startup "); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(entryRegister), + strcmp(g_hash_table_lookup(currentAccount->properties, ACCOUNT_REGISTER),"TRUE") == 0 ? TRUE: FALSE); + gtk_table_attach ( GTK_TABLE( table ), entryRegister, 0, 2, 2, 3, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + + label = gtk_label_new_with_mnemonic ("_Alias:"); + gtk_table_attach ( GTK_TABLE( table ), label, 0, 1, 3, 4, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + gtk_misc_set_alignment(GTK_MISC (label), 0, 0.5); + entryName = gtk_entry_new(); + gtk_label_set_mnemonic_widget (GTK_LABEL (label), entryName); + gtk_entry_set_text(GTK_ENTRY(entryName), g_hash_table_lookup(currentAccount->properties, ACCOUNT_ALIAS)); + gtk_table_attach ( GTK_TABLE( table ), entryName, 1, 2, 3, 4, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + + label = gtk_label_new_with_mnemonic ("_Protocol:"); + gtk_table_attach ( GTK_TABLE( table ), label, 0, 1, 4, 5, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + gtk_misc_set_alignment(GTK_MISC (label), 0, 0.5); + entryProtocol = gtk_combo_box_new_text(); + gtk_label_set_mnemonic_widget (GTK_LABEL (label), entryProtocol); + gtk_widget_set_sensitive( GTK_WIDGET(entryProtocol), FALSE); /* TODO When IAX is ok */ + gtk_combo_box_append_text(GTK_COMBO_BOX(entryProtocol), "SIP"); + gtk_combo_box_append_text(GTK_COMBO_BOX(entryProtocol), "IAX"); + if(strcmp(g_hash_table_lookup(a->properties, ACCOUNT_TYPE), "SIP") == 0) + { + gtk_combo_box_set_active(GTK_COMBO_BOX(entryProtocol),0); + } + else + { + gtk_combo_box_set_active(GTK_COMBO_BOX(entryProtocol),1); + } + gtk_table_attach ( GTK_TABLE( table ), entryProtocol, 1, 2, 4, 5, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + + label = gtk_label_new_with_mnemonic ("_Full Name:"); + gtk_table_attach ( GTK_TABLE( table ), label, 0, 1, 5, 6, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + gtk_misc_set_alignment(GTK_MISC (label), 0, 0.5); + entryFullName = gtk_entry_new(); + gtk_label_set_mnemonic_widget (GTK_LABEL (label), entryFullName); + gtk_entry_set_text(GTK_ENTRY(entryFullName), g_hash_table_lookup(currentAccount->properties, ACCOUNT_SIP_FULL_NAME)); + gtk_table_attach ( GTK_TABLE( table ), entryFullName, 1, 2, 5, 6, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + + label = gtk_label_new_with_mnemonic ("_User part:"); + gtk_table_attach ( GTK_TABLE( table ), label, 0, 1, 6, 7, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + gtk_misc_set_alignment(GTK_MISC (label), 0, 0.5); + entryUserPart = gtk_entry_new(); + gtk_label_set_mnemonic_widget (GTK_LABEL (label), entryUserPart); + gtk_entry_set_text(GTK_ENTRY(entryUserPart), g_hash_table_lookup(currentAccount->properties, ACCOUNT_SIP_USER_PART)); + gtk_table_attach ( GTK_TABLE( table ), entryUserPart, 1, 2, 6, 7, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + + label = gtk_label_new_with_mnemonic ("_Host part:"); + gtk_table_attach ( GTK_TABLE( table ), label, 0, 1, 7, 8, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + gtk_misc_set_alignment(GTK_MISC (label), 0, 0.5); + entryHostPart = gtk_entry_new(); + gtk_label_set_mnemonic_widget (GTK_LABEL (label), entryHostPart); + gtk_entry_set_text(GTK_ENTRY(entryHostPart), g_hash_table_lookup(currentAccount->properties, ACCOUNT_SIP_HOST_PART)); + gtk_table_attach ( GTK_TABLE( table ), entryHostPart, 1, 2, 7, 8, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + + label = gtk_label_new_with_mnemonic ("U_sername:"); + gtk_table_attach ( GTK_TABLE( table ), label, 0, 1, 8, 9, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + gtk_misc_set_alignment(GTK_MISC (label), 0, 0.5); + entryUsername = gtk_entry_new(); + gtk_label_set_mnemonic_widget (GTK_LABEL (label), entryUsername); + gtk_entry_set_text(GTK_ENTRY(entryUsername), g_hash_table_lookup(currentAccount->properties, ACCOUNT_SIP_AUTH_NAME)); + gtk_table_attach ( GTK_TABLE( table ), entryUsername, 1, 2, 8, 9, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + + label = gtk_label_new_with_mnemonic ("_Password:"); + gtk_table_attach ( GTK_TABLE( table ), label, 0, 1, 9, 10, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + gtk_misc_set_alignment(GTK_MISC (label), 0, 0.5); + entryPassword = gtk_entry_new(); + gtk_entry_set_visibility(GTK_ENTRY(entryPassword), FALSE); + gtk_label_set_mnemonic_widget (GTK_LABEL (label), entryPassword); + gtk_entry_set_text(GTK_ENTRY(entryPassword), g_hash_table_lookup(currentAccount->properties, ACCOUNT_SIP_PASSWORD)); + gtk_table_attach ( GTK_TABLE( table ), entryPassword, 1, 2, 9, 10, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + + + + gtk_box_pack_start (GTK_BOX (dialog->vbox), table, TRUE, TRUE, 0); + gtk_container_set_border_width (GTK_CONTAINER(table), 10); + + gtk_widget_show_all(table); + + response = gtk_dialog_run (GTK_DIALOG (dialog)); + if(response == GTK_RESPONSE_ACCEPT) + { + g_hash_table_replace(currentAccount->properties, + g_strdup(ACCOUNT_ENABLED), + g_strdup(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(entryEnabled)) ? "TRUE": "FALSE")); + g_hash_table_replace(currentAccount->properties, + g_strdup(ACCOUNT_REGISTER), + g_strdup(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(entryRegister)) ? "TRUE": "FALSE")); + /* TODO Add SIP/IAX when IAX is ok */ + g_hash_table_replace(currentAccount->properties, + g_strdup(ACCOUNT_ALIAS), + g_strdup((gchar *)gtk_entry_get_text(GTK_ENTRY(entryName)))); + g_hash_table_replace(currentAccount->properties, + g_strdup(ACCOUNT_SIP_FULL_NAME), + g_strdup((gchar *)gtk_entry_get_text(GTK_ENTRY(entryFullName)))); + g_hash_table_replace(currentAccount->properties, + g_strdup(ACCOUNT_SIP_USER_PART), + g_strdup((gchar *)gtk_entry_get_text(GTK_ENTRY(entryUserPart)))); + g_hash_table_replace(currentAccount->properties, + g_strdup(ACCOUNT_SIP_HOST_PART), + g_strdup((gchar *)gtk_entry_get_text(GTK_ENTRY(entryHostPart)))); + g_hash_table_replace(currentAccount->properties, + g_strdup(ACCOUNT_SIP_AUTH_NAME), + g_strdup((gchar *)gtk_entry_get_text(GTK_ENTRY(entryUsername)))); + g_hash_table_replace(currentAccount->properties, + g_strdup(ACCOUNT_SIP_PASSWORD), + g_strdup((gchar *)gtk_entry_get_text(GTK_ENTRY(entryPassword)))); + + dbus_set_account_details(currentAccount); + } + gtk_widget_destroy (GTK_WIDGET(dialog)); + + +} + diff --git a/sflphone-gtk/src/accountwindow.h b/sflphone-gtk/src/accountwindow.h new file mode 100644 index 0000000000000000000000000000000000000000..f724c2dfee31711c3be3064190252618839e8bbf --- /dev/null +++ b/sflphone-gtk/src/accountwindow.h @@ -0,0 +1,26 @@ +/* + * Copyright (C) 2007 Savoir-Faire Linux inc. + * Author: Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.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 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., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#ifndef __ACCOUNTWINDOW_H__ +#define __ACCOUNTWINDOW_H__ + +void show_account_window ( account_t * a ); + + +#endif diff --git a/sflphone-gtk/src/actions.c b/sflphone-gtk/src/actions.c new file mode 100644 index 0000000000000000000000000000000000000000..942cf6734d31aed1445ffb7b26591a5f9ea06b8b --- /dev/null +++ b/sflphone-gtk/src/actions.c @@ -0,0 +1,274 @@ +/* + * Copyright (C) 2007 Savoir-Faire Linux inc. + * Author: Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.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 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., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include <actions.h> +#include <accountlist.h> +#include <gtk/gtk.h> + +/** + * Terminate the gtk program + */ +gboolean +sflphone_quit () +{ + gboolean quit = FALSE; + guint count = call_list_get_size(); + if(count > 0){ + quit = main_window_ask_quit(); + } + else{ + quit = TRUE; + } + + if (quit) + { + dbus_clean (); + //call_list_clean(); TODO + gtk_main_quit (); + } + return quit; +} + +/** + * Put the line on hold + */ +void +sflphone_hold(call_t * c ) +{ + c->state = CALL_STATE_HOLD; + update_call_tree(); + screen_clear(); +} + + + +/* Fill account list */ +void +sflphone_fill_account_list() +{ + gchar ** array = (gchar **)dbus_account_list(); + gchar ** accountID; + for (accountID = array; *accountID; accountID++) + { + account_t * a = g_new0(account_t,1); + a->accountID = g_strdup(*accountID); + account_list_add(a); + } + g_strfreev (array); + + int i; + for( i = 0; i < account_list_get_size(); i++) + { + account_t * a = account_list_get_nth (i); + GHashTable * details = (GHashTable *) dbus_account_details(a->accountID); + a->properties = details; + + gchar * status = g_hash_table_lookup(details, "Status"); + if(strcmp(status, "REGISTERED") == 0) + { + a->state = ACCOUNT_STATE_REGISTERED; + } + else if(strcmp(status, "UNREGISTERED") == 0) + { + a->state = ACCOUNT_STATE_UNREGISTERED; + } + else + { + a->state = ACCOUNT_STATE_INVALID; + } + + } + +} + +gboolean +sflphone_init() +{ + call_list_init (); + account_list_init (); + if(!dbus_connect ()) + { + main_window_error_message("Unable to connect to the SFLPhone server.\nMake sure the daemon is running."); + return FALSE; + } + else + { + sflphone_fill_account_list(); + return TRUE; + } +} + +/** + * Put the line on hold + */ +void +sflphone_unhold(call_t * c ) +{ + c->state = CALL_STATE_CURRENT; + update_call_tree(); + screen_set_call(c); +} + +/** + * Hang up the line + */ +void +sflphone_hang_up( call_t * c ) +{ + call_list_remove(c->callID); + update_call_tree(); + screen_clear(); +} + +/** + * Incoming call + */ +void +sflphone_current( call_t * c ) +{ + c->state = CALL_STATE_CURRENT; + update_call_tree(); + screen_set_call(c); +} + +/** + * Transfert the line + */ +void +sflphone_transfert( call_t * c, gchar * to ) +{ + screen_clear(); + update_call_tree(); +} + +/** + * Signal Incoming Call + */ +void +sflphone_incoming_call (call_t * c) +{ + call_list_add ( c ); + update_call_tree(); +} +/** + * Signal Hung up + */ +void +sflphone_hung_up (call_t * c ) +{ + call_list_remove(c->callID); + update_call_tree(); + screen_clear(); +} + +void +sflphone_keypad( guint keyval, gchar * key) +{ + call_t * c = (call_t*) call_list_get_by_state (CALL_STATE_DIALING); + if(c) // Currently dialing => edit number + { + switch (keyval) + { + case 65293: /* ENTER */ + sflphone_place_call(c); + break; + case 65307: /* ESCAPE */ + sflphone_hang_up(c); + break; + case 65288: /* BACKSPACE */ + case 65289: /* TAB */ + case 65513: /* ALT */ + case 65507: /* CTRL */ + case 65515: /* SUPER */ + case 65509: /* CAPS */ + case 65505: /* SHIFT */ + break; + default: + if (keyval < 255 || (keyval >65453 && keyval < 65466)) + { /* Brackets mandatory because of local vars */ + gchar * before = c->to; + c->to = g_strconcat(c->to, key, NULL); + g_free(before); + g_print("TO: %s\n", c->to); + + g_free(c->from); + c->from = g_strconcat("\"\" <", c->to, ">", NULL); + screen_set_call(c); + } + break; + } + + + } + else + { + call_t * c = (call_t*) call_list_get_by_state (CALL_STATE_CURRENT); + if(c) // Currently in a call => send number to server + { + switch (keyval) + { + case 65307: /* ESCAPE */ + sflphone_hang_up(c); + break; + } + } + else // Not in a call, not dialing, create a new call + { + if (keyval < 255 || (keyval >65453 && keyval < 65466)) + { + /* Brackets mandatory because of local vars */ + call_t * c = g_new0 (call_t, 1); + c->state = CALL_STATE_DIALING; + c->from = g_strconcat("\"\" <", key, ">", NULL); + c->callID = "asdf"; // TODO generate a unique number + c->to = g_strdup(key); + call_list_add(c); + screen_set_call(c); + + } + } + } +} + +void +sflphone_place_call ( call_t * c ) +{ + if(c->state == CALL_STATE_DIALING) + { + account_t * a = account_list_get_by_state (ACCOUNT_STATE_REGISTERED); + if(a) + { + c->accountID = a->accountID; + dbus_place_call(c); + } + else + { + main_window_error_message("There are no registered accounts to make this call with."); + } + + } +} + +void +sflphone_remove_account ( account_t * a ) +{ + dbus_remove_account (a); +} + + diff --git a/sflphone-gtk/src/actions.h b/sflphone-gtk/src/actions.h new file mode 100644 index 0000000000000000000000000000000000000000..618817d0bf5aa9d5640d87d560f1121e390ea8ec --- /dev/null +++ b/sflphone-gtk/src/actions.h @@ -0,0 +1,65 @@ +/* + * Copyright (C) 2007 Savoir-Faire Linux inc. + * Author: Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.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 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., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#ifndef __ACTIONS_H__ +#define __ACTIONS_H__ + +#include <calllist.h> + +/** + * Initialize lists and configurations + * @return TRUE if succeeded, FALSE otherwise + */ +gboolean sflphone_init ( ) ; + +/** + * Steps when closing the application. Will ask for confirmation if a call is in progress. + * @return TRUE if the user wants to quit, FALSE otherwise. + */ +gboolean sflphone_quit ( ) ; + +void sflphone_hang_up ( call_t * c); + +void sflphone_transfert ( call_t * c, gchar * to ); + +void sflphone_hold ( call_t * c); + +void sflphone_unhold ( call_t * c); + +/* signals */ +void sflphone_hung_up( call_t * c); + +/* void sflphone_ring */ +void sflphone_incoming_call ( call_t * c); + +/** + * Dial the number + * If the call is in DIALING state, the char will be append to the number + * TODO If the call is in CURRENT state, the char will be also sent to the server + * @param c A call in CALL_STATE_DIALING state + */ +void sflphone_keypad ( guint keyval, gchar * key); + +/** + * Place a call + * @param c A call in CALL_STATE_DIALING state + */ +void sflphone_place_call ( call_t * c ); + +#endif diff --git a/sflphone-gtk/src/calllist.c b/sflphone-gtk/src/calllist.c new file mode 100644 index 0000000000000000000000000000000000000000..32e5dea0ce02a929d3c82a9a56707fe4e678b4c3 --- /dev/null +++ b/sflphone-gtk/src/calllist.c @@ -0,0 +1,142 @@ +/* + * Copyright (C) 2007 Savoir-Faire Linux inc. + * Author: Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.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 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., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include <calllist.h> + +GQueue * callQueue; + +/* GCompareFunc to compare a callID (gchar* and a call_t) */ +gint +is_callID_callstruct ( gconstpointer a, gconstpointer b) +{ + call_t * c = (call_t*)a; + if(strcmp(c->callID, (const gchar*) b) == 0) + { + return 0; + } + else + { + return 1; + } +} + +/* GCompareFunc to get current call (gchar* and a call_t) */ +gint +get_state_callstruct ( gconstpointer a, gconstpointer b) +{ + call_t * c = (call_t*)a; + if( c->state == *((call_state_t*)b)) + { + return 0; + } + else + { + return 1; + } +} + +void +call_list_init () +{ + callQueue = g_queue_new (); +} + +void +call_list_clean () +{ + g_queue_free (callQueue); +} + +void +call_list_add (call_t * c) +{ + g_queue_push_tail (callQueue, (gpointer *) c); +} + + +void +call_list_remove (const gchar * callID) +{ + call_t * c = call_list_get(callID); + if (c) + { + g_queue_remove(callQueue, c); + } +} + + +call_t * +call_list_get_by_state (call_state_t state ) +{ + GList * c = g_queue_find_custom (callQueue, &state, get_state_callstruct); + if (c) + { + return (call_t *)c->data; + } + else + { + return NULL; + } + +} + +guint +call_list_get_size ( ) +{ + return g_queue_get_length (callQueue); +} + +call_t * +call_list_get_nth ( guint n ) +{ + return g_queue_peek_nth (callQueue, n); +} + +gchar * +call_get_name (const call_t * c) +{ + gchar * end = g_strrstr(c->from, "\""); + gchar * name = c->from +1; + name = g_strndup(name, end - name ); + return name; +} + +gchar * +call_get_number (const call_t * c) +{ + gchar * number = g_strrstr(c->from, "<") + 1; + gchar * end = g_strrstr(c->from, ">"); + number = g_strndup(number, end - number ); + return number; +} + + +call_t * +call_list_get ( const gchar * callID ) +{ + GList * c = g_queue_find_custom (callQueue, callID, is_callID_callstruct); + if (c) + { + return (call_t *)c->data; + } + else + { + return NULL; + } +} diff --git a/sflphone-gtk/src/calllist.h b/sflphone-gtk/src/calllist.h new file mode 100644 index 0000000000000000000000000000000000000000..2b5bb5085f34fc7a15fb23faaa368d19e6d5b0fd --- /dev/null +++ b/sflphone-gtk/src/calllist.h @@ -0,0 +1,61 @@ +/* + * Copyright (C) 2007 Savoir-Faire Linux inc. + * Author: Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.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 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., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#ifndef __CALLLIST_H__ +#define __CALLLIST_H__ + +#include <gtk/gtk.h> + +typedef enum +{ + CALL_STATE_INVALID = 0, + CALL_STATE_INCOMING, + CALL_STATE_CURRENT, + CALL_STATE_DIALING, + CALL_STATE_HOLD +} call_state_t; + +typedef struct { + gchar * callID; + gchar * accountID; + gchar * from; + gchar * to; + call_state_t state; +} call_t; + +void call_list_init (); + +void call_list_clean (); + +void call_list_add (call_t * c); + +void call_list_remove (const gchar * callID); + +call_t * call_list_get_by_state ( call_state_t state); + +guint call_list_get_size ( ); + +call_t * call_list_get_nth ( guint n ); +call_t * call_list_get ( const gchar * callID ); + +gchar * call_get_name (const call_t * c); + +gchar * call_get_number (const call_t * c); + +#endif diff --git a/sflphone-gtk/src/callmanager-glue.h b/sflphone-gtk/src/callmanager-glue.h new file mode 100644 index 0000000000000000000000000000000000000000..ce61baa8405dfe4eaad20838f14d22d91b1e6046 --- /dev/null +++ b/sflphone-gtk/src/callmanager-glue.h @@ -0,0 +1,424 @@ +/* Generated by dbus-binding-tool; do not edit! */ + +#include <glib/gtypes.h> +#include <glib/gerror.h> +#include <dbus/dbus-glib.h> + +G_BEGIN_DECLS + +#ifndef DBUS_GLIB_CLIENT_WRAPPERS_org_sflphone_SFLPhone_CallManager +#define DBUS_GLIB_CLIENT_WRAPPERS_org_sflphone_SFLPhone_CallManager + +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_CallManager_place_call (DBusGProxy *proxy, const char * IN_accountID, const char * IN_callID, const char * IN_to, GError **error) + +{ + return dbus_g_proxy_call (proxy, "placeCall", error, G_TYPE_STRING, IN_accountID, G_TYPE_STRING, IN_callID, G_TYPE_STRING, IN_to, G_TYPE_INVALID, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_CallManager_place_call_reply) (DBusGProxy *proxy, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_CallManager_place_call_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_CallManager_place_call_reply)data->cb) (proxy, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_CallManager_place_call_async (DBusGProxy *proxy, const char * IN_accountID, const char * IN_callID, const char * IN_to, org_sflphone_SFLPhone_CallManager_place_call_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "placeCall", org_sflphone_SFLPhone_CallManager_place_call_async_callback, stuff, g_free, G_TYPE_STRING, IN_accountID, G_TYPE_STRING, IN_callID, G_TYPE_STRING, IN_to, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_CallManager_refuse (DBusGProxy *proxy, const char * IN_callID, GError **error) + +{ + return dbus_g_proxy_call (proxy, "refuse", error, G_TYPE_STRING, IN_callID, G_TYPE_INVALID, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_CallManager_refuse_reply) (DBusGProxy *proxy, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_CallManager_refuse_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_CallManager_refuse_reply)data->cb) (proxy, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_CallManager_refuse_async (DBusGProxy *proxy, const char * IN_callID, org_sflphone_SFLPhone_CallManager_refuse_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "refuse", org_sflphone_SFLPhone_CallManager_refuse_async_callback, stuff, g_free, G_TYPE_STRING, IN_callID, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_CallManager_accept (DBusGProxy *proxy, const char * IN_callID, GError **error) + +{ + return dbus_g_proxy_call (proxy, "accept", error, G_TYPE_STRING, IN_callID, G_TYPE_INVALID, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_CallManager_accept_reply) (DBusGProxy *proxy, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_CallManager_accept_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_CallManager_accept_reply)data->cb) (proxy, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_CallManager_accept_async (DBusGProxy *proxy, const char * IN_callID, org_sflphone_SFLPhone_CallManager_accept_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "accept", org_sflphone_SFLPhone_CallManager_accept_async_callback, stuff, g_free, G_TYPE_STRING, IN_callID, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_CallManager_hang_up (DBusGProxy *proxy, const char * IN_callID, GError **error) + +{ + return dbus_g_proxy_call (proxy, "hangUp", error, G_TYPE_STRING, IN_callID, G_TYPE_INVALID, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_CallManager_hang_up_reply) (DBusGProxy *proxy, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_CallManager_hang_up_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_CallManager_hang_up_reply)data->cb) (proxy, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_CallManager_hang_up_async (DBusGProxy *proxy, const char * IN_callID, org_sflphone_SFLPhone_CallManager_hang_up_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "hangUp", org_sflphone_SFLPhone_CallManager_hang_up_async_callback, stuff, g_free, G_TYPE_STRING, IN_callID, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_CallManager_hold (DBusGProxy *proxy, const char * IN_callID, GError **error) + +{ + return dbus_g_proxy_call (proxy, "hold", error, G_TYPE_STRING, IN_callID, G_TYPE_INVALID, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_CallManager_hold_reply) (DBusGProxy *proxy, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_CallManager_hold_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_CallManager_hold_reply)data->cb) (proxy, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_CallManager_hold_async (DBusGProxy *proxy, const char * IN_callID, org_sflphone_SFLPhone_CallManager_hold_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "hold", org_sflphone_SFLPhone_CallManager_hold_async_callback, stuff, g_free, G_TYPE_STRING, IN_callID, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_CallManager_unhold (DBusGProxy *proxy, const char * IN_callID, GError **error) + +{ + return dbus_g_proxy_call (proxy, "unhold", error, G_TYPE_STRING, IN_callID, G_TYPE_INVALID, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_CallManager_unhold_reply) (DBusGProxy *proxy, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_CallManager_unhold_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_CallManager_unhold_reply)data->cb) (proxy, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_CallManager_unhold_async (DBusGProxy *proxy, const char * IN_callID, org_sflphone_SFLPhone_CallManager_unhold_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "unhold", org_sflphone_SFLPhone_CallManager_unhold_async_callback, stuff, g_free, G_TYPE_STRING, IN_callID, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_CallManager_transfert (DBusGProxy *proxy, const char * IN_callID, const char * IN_to, GError **error) + +{ + return dbus_g_proxy_call (proxy, "transfert", error, G_TYPE_STRING, IN_callID, G_TYPE_STRING, IN_to, G_TYPE_INVALID, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_CallManager_transfert_reply) (DBusGProxy *proxy, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_CallManager_transfert_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_CallManager_transfert_reply)data->cb) (proxy, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_CallManager_transfert_async (DBusGProxy *proxy, const char * IN_callID, const char * IN_to, org_sflphone_SFLPhone_CallManager_transfert_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "transfert", org_sflphone_SFLPhone_CallManager_transfert_async_callback, stuff, g_free, G_TYPE_STRING, IN_callID, G_TYPE_STRING, IN_to, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_CallManager_set_volume (DBusGProxy *proxy, const char * IN_device, const gdouble IN_value, GError **error) + +{ + return dbus_g_proxy_call (proxy, "setVolume", error, G_TYPE_STRING, IN_device, G_TYPE_DOUBLE, IN_value, G_TYPE_INVALID, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_CallManager_set_volume_reply) (DBusGProxy *proxy, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_CallManager_set_volume_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_CallManager_set_volume_reply)data->cb) (proxy, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_CallManager_set_volume_async (DBusGProxy *proxy, const char * IN_device, const gdouble IN_value, org_sflphone_SFLPhone_CallManager_set_volume_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "setVolume", org_sflphone_SFLPhone_CallManager_set_volume_async_callback, stuff, g_free, G_TYPE_STRING, IN_device, G_TYPE_DOUBLE, IN_value, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_CallManager_get_volume (DBusGProxy *proxy, const char * IN_device, gdouble* OUT_value, GError **error) + +{ + return dbus_g_proxy_call (proxy, "getVolume", error, G_TYPE_STRING, IN_device, G_TYPE_INVALID, G_TYPE_DOUBLE, OUT_value, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_CallManager_get_volume_reply) (DBusGProxy *proxy, gdouble OUT_value, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_CallManager_get_volume_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + gdouble OUT_value; + dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_DOUBLE, &OUT_value, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_CallManager_get_volume_reply)data->cb) (proxy, OUT_value, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_CallManager_get_volume_async (DBusGProxy *proxy, const char * IN_device, org_sflphone_SFLPhone_CallManager_get_volume_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "getVolume", org_sflphone_SFLPhone_CallManager_get_volume_async_callback, stuff, g_free, G_TYPE_STRING, IN_device, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_CallManager_get_call_details (DBusGProxy *proxy, const char * IN_callID, GHashTable** OUT_infos, GError **error) + +{ + return dbus_g_proxy_call (proxy, "getCallDetails", error, G_TYPE_STRING, IN_callID, G_TYPE_INVALID, dbus_g_type_get_map ("GHashTable", G_TYPE_STRING, G_TYPE_STRING), OUT_infos, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_CallManager_get_call_details_reply) (DBusGProxy *proxy, GHashTable *OUT_infos, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_CallManager_get_call_details_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + GHashTable* OUT_infos; + dbus_g_proxy_end_call (proxy, call, &error, dbus_g_type_get_map ("GHashTable", G_TYPE_STRING, G_TYPE_STRING), &OUT_infos, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_CallManager_get_call_details_reply)data->cb) (proxy, OUT_infos, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_CallManager_get_call_details_async (DBusGProxy *proxy, const char * IN_callID, org_sflphone_SFLPhone_CallManager_get_call_details_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "getCallDetails", org_sflphone_SFLPhone_CallManager_get_call_details_async_callback, stuff, g_free, G_TYPE_STRING, IN_callID, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_CallManager_get_current_call_id (DBusGProxy *proxy, char ** OUT_callID, GError **error) + +{ + return dbus_g_proxy_call (proxy, "getCurrentCallID", error, G_TYPE_INVALID, G_TYPE_STRING, OUT_callID, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_CallManager_get_current_call_id_reply) (DBusGProxy *proxy, char * OUT_callID, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_CallManager_get_current_call_id_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + char * OUT_callID; + dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_STRING, &OUT_callID, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_CallManager_get_current_call_id_reply)data->cb) (proxy, OUT_callID, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_CallManager_get_current_call_id_async (DBusGProxy *proxy, org_sflphone_SFLPhone_CallManager_get_current_call_id_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "getCurrentCallID", org_sflphone_SFLPhone_CallManager_get_current_call_id_async_callback, stuff, g_free, G_TYPE_INVALID); +} +#endif /* defined DBUS_GLIB_CLIENT_WRAPPERS_org_sflphone_SFLPhone_CallManager */ + +G_END_DECLS diff --git a/sflphone-gtk/src/calltree.c b/sflphone-gtk/src/calltree.c new file mode 100644 index 0000000000000000000000000000000000000000..f2bc69b6831ebd91d8d0d49cc4047e5d8df46762 --- /dev/null +++ b/sflphone-gtk/src/calltree.c @@ -0,0 +1,251 @@ +/* + * Copyright (C) 2007 Savoir-Faire Linux inc. + * Author: Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.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 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., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include <gtk/gtk.h> +#include <calltree.h> +#include <calllist.h> + +GtkListStore * store; +GtkWidget * acceptButton; +GtkWidget * refuseButton; +GtkWidget * unholdButton; + +call_t * selectedCall; + +/* Call back when the user click on a call in the list */ +static void +selected(GtkTreeSelection *sel, GtkTreeModel *model) +{ + GtkTreeIter iter; + GValue val; + + if (! gtk_tree_selection_get_selected (sel, &model, &iter)) + return; + + val.g_type = G_TYPE_POINTER; + gtk_tree_model_get_value (model, &iter, 2, &val); + + selectedCall = (call_t*) g_value_get_pointer(&val); + g_value_unset(&val); + + if(selectedCall) + { + if( selectedCall->state == CALL_STATE_INCOMING) + { + gtk_widget_set_sensitive( GTK_WIDGET(acceptButton), TRUE); + gtk_widget_set_sensitive( GTK_WIDGET(refuseButton), TRUE); + gtk_widget_set_sensitive( GTK_WIDGET(unholdButton), FALSE); + + } + else if( selectedCall->state == CALL_STATE_HOLD) + { + gtk_widget_set_sensitive( GTK_WIDGET(acceptButton), FALSE); + gtk_widget_set_sensitive( GTK_WIDGET(refuseButton), FALSE); + gtk_widget_set_sensitive( GTK_WIDGET(unholdButton), TRUE); + } + + } + +} + +/** + * Accept incoming call + */ +static void +accept( GtkWidget *widget, gpointer data ) +{ + if(selectedCall) + { + dbus_accept(selectedCall); + } +} + +/** + * Refuse incoming call + */ +static void +refuse( GtkWidget *widget, gpointer data ) +{ + if(selectedCall) + { + dbus_refuse(selectedCall); + } +} + +/** + * Unhold call + */ +static void +unhold( GtkWidget *widget, gpointer data ) +{ + if(selectedCall) + { + dbus_unhold(selectedCall); + } +} + +GtkWidget * +create_call_tree (){ + GtkWidget *ret; + GtkWidget *sw; + GtkWidget *hbox; + GtkWidget *view; + GtkWidget *image; + GtkWidget *bbox; + GtkCellRenderer *rend; + GtkTreeViewColumn *col; + GtkTreeSelection *sel; + GtkTargetEntry te[2] = {{"text/uri-list", 0, 1},{"STRING", 0, 2}}; + + ret = gtk_vbox_new(FALSE, 10); + gtk_container_set_border_width (GTK_CONTAINER (ret), 0); + + sw = gtk_scrolled_window_new( NULL, NULL); + gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); + gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(sw), GTK_SHADOW_IN); + + gtk_box_pack_start(GTK_BOX(ret), sw, TRUE, TRUE, 0); + store = gtk_list_store_new (3, + GDK_TYPE_PIXBUF,// Icon + G_TYPE_STRING, // Description + G_TYPE_POINTER // Pointer to the Object + ); + + + view = gtk_tree_view_new_with_model (GTK_TREE_MODEL(store)); + + + /*g_signal_connect(G_OBJECT(rend), "toggled", + G_CALLBACK(module_toggled), module_store);*/ + + rend = gtk_cell_renderer_pixbuf_new(); + col = gtk_tree_view_column_new_with_attributes ("Icon", + rend, + "pixbuf", 0, + NULL); + gtk_tree_view_append_column (GTK_TREE_VIEW(view), col); + + rend = gtk_cell_renderer_text_new(); + col = gtk_tree_view_column_new_with_attributes ("Description", + rend, + "markup", 1, + NULL); + gtk_tree_view_append_column (GTK_TREE_VIEW(view), col); + g_object_unref(G_OBJECT(store)); + gtk_container_add(GTK_CONTAINER(sw), view); + + sel = gtk_tree_view_get_selection (GTK_TREE_VIEW (view)); + g_signal_connect (G_OBJECT (sel), "changed", + G_CALLBACK (selected), + store); + + /* Action button */ + hbox = gtk_hbutton_box_new (); + gtk_button_box_set_spacing ( hbox, 10); + gtk_button_box_set_layout ( GTK_BUTTON_BOX(hbox), GTK_BUTTONBOX_START); + + acceptButton = gtk_button_new_with_label ("Accept"); + image = gtk_image_new_from_file( PIXMAPS_DIR "/accept.svg"); + gtk_image_set_pixel_size(GTK_IMAGE(image), 16); + gtk_button_set_image(GTK_BUTTON(acceptButton), image); + gtk_widget_set_state( GTK_WIDGET(acceptButton), GTK_STATE_INSENSITIVE); + gtk_box_pack_start (GTK_BOX (hbox), acceptButton, TRUE /*expand*/, TRUE /*fill*/, 10 /*padding*/); + g_signal_connect (G_OBJECT (acceptButton), "clicked", + G_CALLBACK (accept), NULL); + + refuseButton = gtk_button_new_with_label ("Refuse"); + image = gtk_image_new_from_file( PIXMAPS_DIR "/refuse.svg"); + gtk_button_set_image(GTK_BUTTON(refuseButton), image); + gtk_widget_set_state( GTK_WIDGET(refuseButton), GTK_STATE_INSENSITIVE); + gtk_box_pack_start (GTK_BOX (hbox), refuseButton, TRUE /*expand*/, TRUE /*fill*/, 10 /*padding*/); + g_signal_connect (G_OBJECT (refuseButton), "clicked", + G_CALLBACK (refuse), NULL); + + unholdButton = gtk_button_new_with_label ("Unhold"); + image = gtk_image_new_from_file( PIXMAPS_DIR "/unhold.svg"); + gtk_button_set_image(GTK_BUTTON(unholdButton), image); + gtk_widget_set_state( GTK_WIDGET(unholdButton), GTK_STATE_INSENSITIVE); + gtk_box_pack_start (GTK_BOX (hbox), unholdButton, TRUE /*expand*/, TRUE /*fill*/, 10 /*padding*/); + g_signal_connect (G_OBJECT (unholdButton), "clicked", + G_CALLBACK (unhold), NULL); + + + gtk_box_pack_start (GTK_BOX (ret), hbox, FALSE /*expand*/, TRUE /*fill*/, 0 /*padding*/); + + gtk_widget_show(ret); + + return ret; + +} + +void +update_call_tree () +{ + GdkPixbuf *pixbuf; + GtkTreeIter iter; + + gtk_list_store_clear(store); + int i; + for( i = 0; i < call_list_get_size(); i++) + { + call_t * c = call_list_get_nth (i); + if (c && c->state != CALL_STATE_CURRENT && c->state != CALL_STATE_DIALING ) + { + gchar * markup = g_markup_printf_escaped("<b>%s</b>\n" + "%s", + call_get_name(c), + call_get_number(c)); + gtk_list_store_append (store, &iter); + + if (c->state == CALL_STATE_HOLD) + { + pixbuf = gdk_pixbuf_new_from_file(PIXMAPS_DIR "/hold.svg", NULL); + } + else if (c->state == CALL_STATE_INCOMING) + { + pixbuf = gdk_pixbuf_new_from_file(PIXMAPS_DIR "/ring.svg", NULL); + } + //Resize it + if(pixbuf) + { + if(gdk_pixbuf_get_width(pixbuf) > 32 || gdk_pixbuf_get_height(pixbuf) > 32) + { + pixbuf = gdk_pixbuf_scale_simple(pixbuf, 32, 32, GDK_INTERP_BILINEAR); + } + } + gtk_list_store_set(store, &iter, + 0, pixbuf, // Icon + 1, markup, // Description + 2, c, // Pointer + -1); + + if (pixbuf != NULL) + g_object_unref(G_OBJECT(pixbuf)); + + //g_free(markup); + + } + + } + + gtk_widget_set_sensitive( GTK_WIDGET(acceptButton), FALSE); + gtk_widget_set_sensitive( GTK_WIDGET(refuseButton), FALSE); + gtk_widget_set_sensitive( GTK_WIDGET(unholdButton), FALSE); + //return row_ref; +} diff --git a/sflphone-gtk/src/calltree.h b/sflphone-gtk/src/calltree.h new file mode 100644 index 0000000000000000000000000000000000000000..655d856a05db15d493b401ea7ff254af5aabc2bb --- /dev/null +++ b/sflphone-gtk/src/calltree.h @@ -0,0 +1,29 @@ +/* + * Copyright (C) 2007 Savoir-Faire Linux inc. + * Author: Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.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 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., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#ifndef __CALLTREE_H__ +#define __CALLTREE_H__ + +#include <gtk/gtk.h> + +GtkWidget * create_call_tree(); + +void update_call_tree (); + +#endif diff --git a/sflphone-gtk/src/configurationmanager-glue.h b/sflphone-gtk/src/configurationmanager-glue.h new file mode 100644 index 0000000000000000000000000000000000000000..263642380723f8a0627a3e3fe181b54859821b01 --- /dev/null +++ b/sflphone-gtk/src/configurationmanager-glue.h @@ -0,0 +1,617 @@ +/* Generated by dbus-binding-tool; do not edit! */ + +#include <glib/gtypes.h> +#include <glib/gerror.h> +#include <dbus/dbus-glib.h> + +G_BEGIN_DECLS + +#ifndef DBUS_GLIB_CLIENT_WRAPPERS_org_sflphone_SFLPhone_ConfigurationManager +#define DBUS_GLIB_CLIENT_WRAPPERS_org_sflphone_SFLPhone_ConfigurationManager + +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_ConfigurationManager_get_account_details (DBusGProxy *proxy, const char * IN_accountID, GHashTable** OUT_details, GError **error) + +{ + return dbus_g_proxy_call (proxy, "getAccountDetails", error, G_TYPE_STRING, IN_accountID, G_TYPE_INVALID, dbus_g_type_get_map ("GHashTable", G_TYPE_STRING, G_TYPE_STRING), OUT_details, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_ConfigurationManager_get_account_details_reply) (DBusGProxy *proxy, GHashTable *OUT_details, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_ConfigurationManager_get_account_details_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + GHashTable* OUT_details; + dbus_g_proxy_end_call (proxy, call, &error, dbus_g_type_get_map ("GHashTable", G_TYPE_STRING, G_TYPE_STRING), &OUT_details, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_ConfigurationManager_get_account_details_reply)data->cb) (proxy, OUT_details, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_ConfigurationManager_get_account_details_async (DBusGProxy *proxy, const char * IN_accountID, org_sflphone_SFLPhone_ConfigurationManager_get_account_details_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "getAccountDetails", org_sflphone_SFLPhone_ConfigurationManager_get_account_details_async_callback, stuff, g_free, G_TYPE_STRING, IN_accountID, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_ConfigurationManager_set_account_details (DBusGProxy *proxy, const char * IN_accountID, const GHashTable* IN_details, GError **error) + +{ + return dbus_g_proxy_call (proxy, "setAccountDetails", error, G_TYPE_STRING, IN_accountID, dbus_g_type_get_map ("GHashTable", G_TYPE_STRING, G_TYPE_STRING), IN_details, G_TYPE_INVALID, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_ConfigurationManager_set_account_details_reply) (DBusGProxy *proxy, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_ConfigurationManager_set_account_details_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_ConfigurationManager_set_account_details_reply)data->cb) (proxy, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_ConfigurationManager_set_account_details_async (DBusGProxy *proxy, const char * IN_accountID, const GHashTable* IN_details, org_sflphone_SFLPhone_ConfigurationManager_set_account_details_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "setAccountDetails", org_sflphone_SFLPhone_ConfigurationManager_set_account_details_async_callback, stuff, g_free, G_TYPE_STRING, IN_accountID, dbus_g_type_get_map ("GHashTable", G_TYPE_STRING, G_TYPE_STRING), IN_details, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_ConfigurationManager_add_account (DBusGProxy *proxy, const GHashTable* IN_details, GError **error) + +{ + return dbus_g_proxy_call (proxy, "addAccount", error, dbus_g_type_get_map ("GHashTable", G_TYPE_STRING, G_TYPE_STRING), IN_details, G_TYPE_INVALID, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_ConfigurationManager_add_account_reply) (DBusGProxy *proxy, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_ConfigurationManager_add_account_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_ConfigurationManager_add_account_reply)data->cb) (proxy, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_ConfigurationManager_add_account_async (DBusGProxy *proxy, const GHashTable* IN_details, org_sflphone_SFLPhone_ConfigurationManager_add_account_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "addAccount", org_sflphone_SFLPhone_ConfigurationManager_add_account_async_callback, stuff, g_free, dbus_g_type_get_map ("GHashTable", G_TYPE_STRING, G_TYPE_STRING), IN_details, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_ConfigurationManager_remove_account (DBusGProxy *proxy, const char * IN_accoundID, GError **error) + +{ + return dbus_g_proxy_call (proxy, "removeAccount", error, G_TYPE_STRING, IN_accoundID, G_TYPE_INVALID, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_ConfigurationManager_remove_account_reply) (DBusGProxy *proxy, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_ConfigurationManager_remove_account_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_ConfigurationManager_remove_account_reply)data->cb) (proxy, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_ConfigurationManager_remove_account_async (DBusGProxy *proxy, const char * IN_accoundID, org_sflphone_SFLPhone_ConfigurationManager_remove_account_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "removeAccount", org_sflphone_SFLPhone_ConfigurationManager_remove_account_async_callback, stuff, g_free, G_TYPE_STRING, IN_accoundID, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_ConfigurationManager_get_account_list (DBusGProxy *proxy, char *** OUT_list, GError **error) + +{ + return dbus_g_proxy_call (proxy, "getAccountList", error, G_TYPE_INVALID, G_TYPE_STRV, OUT_list, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_ConfigurationManager_get_account_list_reply) (DBusGProxy *proxy, char * *OUT_list, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_ConfigurationManager_get_account_list_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + char ** OUT_list; + dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_STRV, &OUT_list, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_ConfigurationManager_get_account_list_reply)data->cb) (proxy, OUT_list, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_ConfigurationManager_get_account_list_async (DBusGProxy *proxy, org_sflphone_SFLPhone_ConfigurationManager_get_account_list_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "getAccountList", org_sflphone_SFLPhone_ConfigurationManager_get_account_list_async_callback, stuff, g_free, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_ConfigurationManager_get_version (DBusGProxy *proxy, char ** OUT_version, GError **error) + +{ + return dbus_g_proxy_call (proxy, "getVersion", error, G_TYPE_INVALID, G_TYPE_STRING, OUT_version, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_ConfigurationManager_get_version_reply) (DBusGProxy *proxy, char * OUT_version, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_ConfigurationManager_get_version_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + char * OUT_version; + dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_STRING, &OUT_version, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_ConfigurationManager_get_version_reply)data->cb) (proxy, OUT_version, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_ConfigurationManager_get_version_async (DBusGProxy *proxy, org_sflphone_SFLPhone_ConfigurationManager_get_version_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "getVersion", org_sflphone_SFLPhone_ConfigurationManager_get_version_async_callback, stuff, g_free, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_ConfigurationManager_get_ringtone_list (DBusGProxy *proxy, char *** OUT_list, GError **error) + +{ + return dbus_g_proxy_call (proxy, "getRingtoneList", error, G_TYPE_INVALID, G_TYPE_STRV, OUT_list, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_ConfigurationManager_get_ringtone_list_reply) (DBusGProxy *proxy, char * *OUT_list, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_ConfigurationManager_get_ringtone_list_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + char ** OUT_list; + dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_STRV, &OUT_list, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_ConfigurationManager_get_ringtone_list_reply)data->cb) (proxy, OUT_list, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_ConfigurationManager_get_ringtone_list_async (DBusGProxy *proxy, org_sflphone_SFLPhone_ConfigurationManager_get_ringtone_list_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "getRingtoneList", org_sflphone_SFLPhone_ConfigurationManager_get_ringtone_list_async_callback, stuff, g_free, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_ConfigurationManager_get_codec_list (DBusGProxy *proxy, char *** OUT_list, GError **error) + +{ + return dbus_g_proxy_call (proxy, "getCodecList", error, G_TYPE_INVALID, G_TYPE_STRV, OUT_list, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_ConfigurationManager_get_codec_list_reply) (DBusGProxy *proxy, char * *OUT_list, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_ConfigurationManager_get_codec_list_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + char ** OUT_list; + dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_STRV, &OUT_list, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_ConfigurationManager_get_codec_list_reply)data->cb) (proxy, OUT_list, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_ConfigurationManager_get_codec_list_async (DBusGProxy *proxy, org_sflphone_SFLPhone_ConfigurationManager_get_codec_list_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "getCodecList", org_sflphone_SFLPhone_ConfigurationManager_get_codec_list_async_callback, stuff, g_free, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_ConfigurationManager_get_tone_locale_list (DBusGProxy *proxy, char *** OUT_list, GError **error) + +{ + return dbus_g_proxy_call (proxy, "getToneLocaleList", error, G_TYPE_INVALID, G_TYPE_STRV, OUT_list, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_ConfigurationManager_get_tone_locale_list_reply) (DBusGProxy *proxy, char * *OUT_list, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_ConfigurationManager_get_tone_locale_list_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + char ** OUT_list; + dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_STRV, &OUT_list, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_ConfigurationManager_get_tone_locale_list_reply)data->cb) (proxy, OUT_list, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_ConfigurationManager_get_tone_locale_list_async (DBusGProxy *proxy, org_sflphone_SFLPhone_ConfigurationManager_get_tone_locale_list_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "getToneLocaleList", org_sflphone_SFLPhone_ConfigurationManager_get_tone_locale_list_async_callback, stuff, g_free, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_ConfigurationManager_set_codec_prefered_order (DBusGProxy *proxy, const char ** IN_ringtone, GError **error) + +{ + return dbus_g_proxy_call (proxy, "setCodecPreferedOrder", error, G_TYPE_STRV, IN_ringtone, G_TYPE_INVALID, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_ConfigurationManager_set_codec_prefered_order_reply) (DBusGProxy *proxy, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_ConfigurationManager_set_codec_prefered_order_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_ConfigurationManager_set_codec_prefered_order_reply)data->cb) (proxy, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_ConfigurationManager_set_codec_prefered_order_async (DBusGProxy *proxy, const char ** IN_ringtone, org_sflphone_SFLPhone_ConfigurationManager_set_codec_prefered_order_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "setCodecPreferedOrder", org_sflphone_SFLPhone_ConfigurationManager_set_codec_prefered_order_async_callback, stuff, g_free, G_TYPE_STRV, IN_ringtone, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_ConfigurationManager_get_codec_prefered_order (DBusGProxy *proxy, char *** OUT_ringtone, GError **error) + +{ + return dbus_g_proxy_call (proxy, "getCodecPreferedOrder", error, G_TYPE_INVALID, G_TYPE_STRV, OUT_ringtone, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_ConfigurationManager_get_codec_prefered_order_reply) (DBusGProxy *proxy, char * *OUT_ringtone, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_ConfigurationManager_get_codec_prefered_order_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + char ** OUT_ringtone; + dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_STRV, &OUT_ringtone, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_ConfigurationManager_get_codec_prefered_order_reply)data->cb) (proxy, OUT_ringtone, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_ConfigurationManager_get_codec_prefered_order_async (DBusGProxy *proxy, org_sflphone_SFLPhone_ConfigurationManager_get_codec_prefered_order_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "getCodecPreferedOrder", org_sflphone_SFLPhone_ConfigurationManager_get_codec_prefered_order_async_callback, stuff, g_free, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_ConfigurationManager_get_playback_device_list (DBusGProxy *proxy, char *** OUT_list, GError **error) + +{ + return dbus_g_proxy_call (proxy, "getPlaybackDeviceList", error, G_TYPE_INVALID, G_TYPE_STRV, OUT_list, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_ConfigurationManager_get_playback_device_list_reply) (DBusGProxy *proxy, char * *OUT_list, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_ConfigurationManager_get_playback_device_list_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + char ** OUT_list; + dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_STRV, &OUT_list, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_ConfigurationManager_get_playback_device_list_reply)data->cb) (proxy, OUT_list, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_ConfigurationManager_get_playback_device_list_async (DBusGProxy *proxy, org_sflphone_SFLPhone_ConfigurationManager_get_playback_device_list_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "getPlaybackDeviceList", org_sflphone_SFLPhone_ConfigurationManager_get_playback_device_list_async_callback, stuff, g_free, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_ConfigurationManager_get_record_device_list (DBusGProxy *proxy, char *** OUT_list, GError **error) + +{ + return dbus_g_proxy_call (proxy, "getRecordDeviceList", error, G_TYPE_INVALID, G_TYPE_STRV, OUT_list, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_ConfigurationManager_get_record_device_list_reply) (DBusGProxy *proxy, char * *OUT_list, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_ConfigurationManager_get_record_device_list_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + char ** OUT_list; + dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_STRV, &OUT_list, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_ConfigurationManager_get_record_device_list_reply)data->cb) (proxy, OUT_list, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_ConfigurationManager_get_record_device_list_async (DBusGProxy *proxy, org_sflphone_SFLPhone_ConfigurationManager_get_record_device_list_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "getRecordDeviceList", org_sflphone_SFLPhone_ConfigurationManager_get_record_device_list_async_callback, stuff, g_free, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_ConfigurationManager_get_sample_rate_list (DBusGProxy *proxy, char *** OUT_list, GError **error) + +{ + return dbus_g_proxy_call (proxy, "getSampleRateList", error, G_TYPE_INVALID, G_TYPE_STRV, OUT_list, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_ConfigurationManager_get_sample_rate_list_reply) (DBusGProxy *proxy, char * *OUT_list, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_ConfigurationManager_get_sample_rate_list_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + char ** OUT_list; + dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_STRV, &OUT_list, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_ConfigurationManager_get_sample_rate_list_reply)data->cb) (proxy, OUT_list, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_ConfigurationManager_get_sample_rate_list_async (DBusGProxy *proxy, org_sflphone_SFLPhone_ConfigurationManager_get_sample_rate_list_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "getSampleRateList", org_sflphone_SFLPhone_ConfigurationManager_get_sample_rate_list_async_callback, stuff, g_free, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_ConfigurationManager_get_parameters (DBusGProxy *proxy, GHashTable** OUT_parameters, GError **error) + +{ + return dbus_g_proxy_call (proxy, "getParameters", error, G_TYPE_INVALID, dbus_g_type_get_map ("GHashTable", G_TYPE_STRING, G_TYPE_STRING), OUT_parameters, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_ConfigurationManager_get_parameters_reply) (DBusGProxy *proxy, GHashTable *OUT_parameters, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_ConfigurationManager_get_parameters_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + GHashTable* OUT_parameters; + dbus_g_proxy_end_call (proxy, call, &error, dbus_g_type_get_map ("GHashTable", G_TYPE_STRING, G_TYPE_STRING), &OUT_parameters, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_ConfigurationManager_get_parameters_reply)data->cb) (proxy, OUT_parameters, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_ConfigurationManager_get_parameters_async (DBusGProxy *proxy, org_sflphone_SFLPhone_ConfigurationManager_get_parameters_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "getParameters", org_sflphone_SFLPhone_ConfigurationManager_get_parameters_async_callback, stuff, g_free, G_TYPE_INVALID); +} +static +#ifdef G_HAVE_INLINE +inline +#endif +gboolean +org_sflphone_SFLPhone_ConfigurationManager_set_parameters (DBusGProxy *proxy, const GHashTable* IN_parameters, GError **error) + +{ + return dbus_g_proxy_call (proxy, "setParameters", error, dbus_g_type_get_map ("GHashTable", G_TYPE_STRING, G_TYPE_STRING), IN_parameters, G_TYPE_INVALID, G_TYPE_INVALID); +} + +typedef void (*org_sflphone_SFLPhone_ConfigurationManager_set_parameters_reply) (DBusGProxy *proxy, GError *error, gpointer userdata); + +static void +org_sflphone_SFLPhone_ConfigurationManager_set_parameters_async_callback (DBusGProxy *proxy, DBusGProxyCall *call, void *user_data) +{ + DBusGAsyncData *data = (DBusGAsyncData*) user_data; + GError *error = NULL; + dbus_g_proxy_end_call (proxy, call, &error, G_TYPE_INVALID); + (*(org_sflphone_SFLPhone_ConfigurationManager_set_parameters_reply)data->cb) (proxy, error, data->userdata); + return; +} + +static +#ifdef G_HAVE_INLINE +inline +#endif +DBusGProxyCall* +org_sflphone_SFLPhone_ConfigurationManager_set_parameters_async (DBusGProxy *proxy, const GHashTable* IN_parameters, org_sflphone_SFLPhone_ConfigurationManager_set_parameters_reply callback, gpointer userdata) + +{ + DBusGAsyncData *stuff; + stuff = g_new (DBusGAsyncData, 1); + stuff->cb = G_CALLBACK (callback); + stuff->userdata = userdata; + return dbus_g_proxy_begin_call (proxy, "setParameters", org_sflphone_SFLPhone_ConfigurationManager_set_parameters_async_callback, stuff, g_free, dbus_g_type_get_map ("GHashTable", G_TYPE_STRING, G_TYPE_STRING), IN_parameters, G_TYPE_INVALID); +} +#endif /* defined DBUS_GLIB_CLIENT_WRAPPERS_org_sflphone_SFLPhone_ConfigurationManager */ + +G_END_DECLS diff --git a/sflphone-gtk/src/configwindow.c b/sflphone-gtk/src/configwindow.c new file mode 100644 index 0000000000000000000000000000000000000000..793be9befcf0f8b632a462f7b9e4f9e51db534f3 --- /dev/null +++ b/sflphone-gtk/src/configwindow.c @@ -0,0 +1,259 @@ +/* + * Copyright (C) 2007 Savoir-Faire Linux inc. + * Author: Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.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 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., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include <config.h> +#include <mainwindow.h> +#include <accountlist.h> +#include <gtk/gtk.h> + +/** Local variables */ +GtkListStore *account_store; +GtkWidget * addButton; +GtkWidget * editButton; +GtkWidget * deleteButton; + +account_t * selectedAccount; + +/** Fills the treelist with accounts */ +void +fill_account_list () +{ + GtkTreeIter iter; + + gtk_list_store_clear(account_store); + int i; + for( i = 0; i < account_list_get_size(); i++) + { + account_t * a = account_list_get_nth (i); + if (a) + { + gtk_list_store_append (account_store, &iter); + + gtk_list_store_set(account_store, &iter, + 0, g_hash_table_lookup(a->properties, ACCOUNT_ALIAS), // Name + 1, g_hash_table_lookup(a->properties, ACCOUNT_TYPE), // Protocol + 2, account_state_name(a->state), // Status + 3, a, // Pointer + -1); + + } + + } + + gtk_widget_set_sensitive( GTK_WIDGET(editButton), FALSE); + gtk_widget_set_sensitive( GTK_WIDGET(deleteButton), FALSE); +} +/** + * Delete an account + */ +static void +delete_account( GtkWidget *widget, gpointer data ) +{ + if(selectedAccount) + { + sflphone_remove_account(selectedAccount); + fill_account_list (); + } +} + +/** + * Delete an account + */ +static void +edit_account( GtkWidget *widget, gpointer data ) +{ + if(selectedAccount) + { + show_account_window(selectedAccount); + fill_account_list (); + } +} + +/* Call back when the user click on an account in the list */ +static void +select_account(GtkTreeSelection *sel, GtkTreeModel *model) +{ + GtkTreeIter iter; + GValue val; + + if (! gtk_tree_selection_get_selected (sel, &model, &iter)) + { + selectedAccount = NULL; + return; + } + + val.g_type = G_TYPE_POINTER; + gtk_tree_model_get_value (model, &iter, 3, &val); + + selectedAccount = (account_t*) g_value_get_pointer(&val); + g_value_unset(&val); + + if(selectedAccount) + { + gtk_widget_set_sensitive( GTK_WIDGET(editButton), TRUE); + /*TODO Set to TRUE when removeAccount is implemented */ + gtk_widget_set_sensitive( GTK_WIDGET(deleteButton), FALSE); + } + g_printf("select"); + +} + + + +GtkWidget * +create_accounts_tab() +{ + GtkWidget *ret; + GtkWidget *sw; + GtkWidget *view; + GtkWidget *bbox; + GtkWidget *button; + GtkCellRenderer *rend; + GtkTreeViewColumn *col; + GtkTreeSelection *sel; + GtkTreeRowReference *rowref; + GtkWidget *label; + GtkTargetEntry te[3] = {{"text/plain", 0, 0},{"text/plain", 0, 1},{"text/plain", 0, 2}}; + + selectedAccount = NULL; + + ret = gtk_vbox_new(FALSE, 10); + gtk_container_set_border_width (GTK_CONTAINER (ret), 10); + + label = gtk_label_new("This is the list of accounts previously setup."); + + gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); + gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5); + gtk_label_set_justify(GTK_LABEL(label), GTK_JUSTIFY_LEFT); + + gtk_box_pack_start(GTK_BOX(ret), label, FALSE, TRUE, 0); + gtk_widget_show(label); + + sw = gtk_scrolled_window_new(NULL,NULL); + gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); + gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(sw), GTK_SHADOW_IN); + + gtk_box_pack_start(GTK_BOX(ret), sw, TRUE, TRUE, 0); + account_store = gtk_list_store_new (4, + G_TYPE_STRING, // Name + G_TYPE_STRING, // Protocol + G_TYPE_STRING, // Status + G_TYPE_POINTER // Pointer to the Object + ); + + view = gtk_tree_view_new_with_model (GTK_TREE_MODEL(account_store)); + + sel = gtk_tree_view_get_selection (GTK_TREE_VIEW (view)); + g_signal_connect (G_OBJECT (sel), "changed", + G_CALLBACK (select_account), + account_store); + + gtk_tree_sortable_set_sort_column_id(GTK_TREE_SORTABLE(account_store), + 2, GTK_SORT_ASCENDING); + + rend = gtk_cell_renderer_text_new(); + col = gtk_tree_view_column_new_with_attributes ("Alias", + rend, + "markup", 0, + NULL); + gtk_tree_view_append_column (GTK_TREE_VIEW(view), col); + + rend = gtk_cell_renderer_text_new(); + col = gtk_tree_view_column_new_with_attributes ("Protocol", + rend, + "markup", 1, + NULL); + gtk_tree_view_append_column (GTK_TREE_VIEW(view), col); + + rend = gtk_cell_renderer_text_new(); + col = gtk_tree_view_column_new_with_attributes ("Status", + rend, + "markup", 2, + NULL); + gtk_tree_view_append_column (GTK_TREE_VIEW(view), col); + g_object_unref(G_OBJECT(account_store)); + gtk_container_add(GTK_CONTAINER(sw), view); + + /* The buttons to press! */ + bbox = gtk_hbutton_box_new(); + gtk_box_set_spacing(GTK_BOX(bbox), 10); //GAIM_HIG_BOX_SPACE + gtk_button_box_set_layout(GTK_BUTTON_BOX(bbox), GTK_BUTTONBOX_START); + gtk_box_pack_start(GTK_BOX(ret), bbox, FALSE, FALSE, 0); + gtk_widget_show (bbox); + + addButton = gtk_button_new_from_stock (GTK_STOCK_ADD); + /*g_signal_connect_swapped(G_OBJECT(addButton), "clicked", + G_CALLBACK(config_module), _gtkWindow);*/ + gtk_box_pack_start(GTK_BOX(bbox), addButton, FALSE, FALSE, 0); + gtk_widget_show(addButton); + /* TODO Set to TRUE when AddAccount is implemented */ + gtk_widget_set_sensitive( GTK_WIDGET(addButton), FALSE); + + editButton = gtk_button_new_from_stock (GTK_STOCK_EDIT); + g_signal_connect_swapped(G_OBJECT(editButton), "clicked", + G_CALLBACK(edit_account), NULL); + gtk_box_pack_start(GTK_BOX(bbox), editButton, FALSE, FALSE, 0); + gtk_widget_show(editButton); + + deleteButton = gtk_button_new_from_stock (GTK_STOCK_REMOVE); + g_signal_connect_swapped(G_OBJECT(deleteButton), "clicked", + G_CALLBACK(delete_account), NULL); + gtk_box_pack_start(GTK_BOX(bbox), deleteButton, FALSE, FALSE, 0); + gtk_widget_show(deleteButton); + + gtk_widget_show_all(ret); + + fill_account_list(); + + return ret; +} + +void +show_config_window () +{ + GtkDialog * dialog; + GtkWidget * notebook; + GtkWidget * tab; + + dialog = GTK_DIALOG(gtk_dialog_new_with_buttons ("Preferences", + GTK_WINDOW(get_main_window()), + GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT, + GTK_STOCK_CLOSE, + GTK_RESPONSE_ACCEPT, + NULL)); + + gtk_dialog_set_has_separator(dialog, FALSE); + gtk_window_set_default_size( GTK_WINDOW(dialog), 400, 400); + gtk_container_set_border_width (GTK_CONTAINER(dialog), 0); + + notebook = gtk_notebook_new (); + gtk_box_pack_start (GTK_BOX (dialog->vbox), notebook, TRUE, TRUE, 0); + gtk_container_set_border_width (GTK_CONTAINER(notebook), 10); + gtk_widget_show(notebook); + + /* Create tabs */ + tab = create_accounts_tab(); + gtk_notebook_append_page(GTK_NOTEBOOK(notebook), tab, gtk_label_new("Accounts")); + gtk_notebook_page_num(GTK_NOTEBOOK(notebook), tab); + + gtk_dialog_run (dialog); + + gtk_widget_destroy (GTK_WIDGET(dialog)); +} + diff --git a/sflphone-gtk/src/configwindow.h b/sflphone-gtk/src/configwindow.h new file mode 100644 index 0000000000000000000000000000000000000000..0acea098d71fc3872643d38d97a0c3603ed873f7 --- /dev/null +++ b/sflphone-gtk/src/configwindow.h @@ -0,0 +1,29 @@ +/* + * Copyright (C) 2007 Savoir-Faire Linux inc. + * Author: Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.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 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., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#ifndef __CONFIGWINDOW_H__ +#define __CONFIGWINDOW_H__ + +#include <calllist.h> + + +void show_config_window ( ); + + +#endif diff --git a/sflphone-gtk/src/dbus.c b/sflphone-gtk/src/dbus.c new file mode 100644 index 0000000000000000000000000000000000000000..db378da4ed717afd3f55182814bfa48179c1b191 --- /dev/null +++ b/sflphone-gtk/src/dbus.c @@ -0,0 +1,419 @@ +/* + * Copyright (C) 2007 Savoir-Faire Linux inc. + * Author: Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.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 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., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include <callmanager-glue.h> +#include <configurationmanager-glue.h> +#include <calllist.h> +#include <accountlist.h> +#include <marshaller.h> +#include <mainwindow.h> + +#include <dbus/dbus-glib.h> + +DBusGConnection * connection; +DBusGProxy * callManagerProxy; +DBusGProxy * configurationManagerProxy; + +static void +incoming_call_cb (DBusGProxy *proxy, + const gchar* accountID, + const gchar* callID, + const gchar* from, + void * foo ) +{ + g_print ("Incoming call! %s\n",callID); + call_t * c = g_new0 (call_t, 1); + c->accountID = g_strdup(accountID); + c->callID = g_strdup(callID); + c->from = g_strdup(from); + c->state = CALL_STATE_INCOMING; + + sflphone_incoming_call (c); +} + +static void +voice_mail_cb (DBusGProxy *proxy, + const gchar* accountID, + const gint nb, + void * foo ) +{ + g_print ("%d Voice mail waiting! \n",nb); + +} + +static void +incoming_message_cb (DBusGProxy *proxy, + const gchar* accountID, + const gchar* msg, + void * foo ) +{ + g_print ("Messge %s! \n",msg); + +} + +static void +call_state_cb (DBusGProxy *proxy, + const gchar* callID, + const gchar* state, + void * foo ) +{ + g_print ("Call %s state %s\n",callID, state); + call_t * c = call_list_get(callID); + if(c) + { + if ( strcmp(state, "HUNGUP") == 0 ) + { + sflphone_hung_up (c); + } + else if ( strcmp(state, "HOLD") == 0 ) + { + sflphone_hold (c); + } + else if ( strcmp(state, "UNHOLD") == 0 ) + { + sflphone_unhold (c); + } + else if ( strcmp(state, "RINGING") == 0 ) + { + //sflphone_hung_up (c); + } + else if ( strcmp(state, "CURRENT") == 0 ) + { + sflphone_current (c); + } + } +} + +static void +accounts_changed_cb (DBusGProxy *proxy, + void * foo ) +{ + g_print ("Accounts changed\n"); +} + +gboolean +dbus_connect () +{ + GError *error = NULL; + + g_type_init (); + + error = NULL; + connection = dbus_g_bus_get (DBUS_BUS_SESSION, + &error); + if (connection == NULL) + { + g_printerr ("Failed to open connection to bus: %s\n", + error->message); + g_error_free (error); + return FALSE; + } + + /* Create a proxy object for the "bus driver" (name "org.freedesktop.DBus") */ + + callManagerProxy = dbus_g_proxy_new_for_name_owner (connection, + "org.sflphone.SFLPhone", + "/org/sflphone/SFLPhone/CallManager", + "org.sflphone.SFLPhone.CallManager", + &error); + if (error) + { + g_printerr ("Failed to get proxy to CallManager: %s\n", + error->message); + g_error_free (error); + return FALSE; + } + + g_print ("DBus connected to CallManager\n"); + /* Incoming call */ + dbus_g_object_register_marshaller(g_cclosure_user_marshal_VOID__STRING_STRING_STRING, + G_TYPE_NONE, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID); + dbus_g_proxy_add_signal (callManagerProxy, + "incomingCall", G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID); + dbus_g_proxy_connect_signal (callManagerProxy, + "incomingCall", G_CALLBACK(incoming_call_cb), NULL, NULL); + + /* Register a marshaller for STRING,STRING */ + dbus_g_object_register_marshaller(g_cclosure_user_marshal_VOID__STRING_STRING, + G_TYPE_NONE, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID); + dbus_g_proxy_add_signal (callManagerProxy, "callStateChanged", + G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID); + dbus_g_proxy_connect_signal (callManagerProxy, + "callStateChanged", G_CALLBACK(call_state_cb), NULL, NULL); + + dbus_g_object_register_marshaller(g_cclosure_user_marshal_VOID__STRING_INT, + G_TYPE_NONE, G_TYPE_STRING, G_TYPE_INT, G_TYPE_INVALID); + dbus_g_proxy_add_signal (callManagerProxy, + "voiceMailNotify", G_TYPE_STRING, G_TYPE_INT, G_TYPE_INVALID); + dbus_g_proxy_connect_signal (callManagerProxy, + "voiceMailNotify", G_CALLBACK(voice_mail_cb), NULL, NULL); + + dbus_g_proxy_add_signal (callManagerProxy, + "incomingMessage", G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID); + dbus_g_proxy_connect_signal (callManagerProxy, + "incomingMessage", G_CALLBACK(incoming_message_cb), NULL, NULL); + + + configurationManagerProxy = dbus_g_proxy_new_for_name_owner (connection, + "org.sflphone.SFLPhone", + "/org/sflphone/SFLPhone/ConfigurationManager", + "org.sflphone.SFLPhone.ConfigurationManager", + &error); + if (error) + { + g_printerr ("Failed to get proxy to ConfigurationManager: %s\n", + error->message); + g_error_free (error); + return FALSE; + } + + dbus_g_proxy_add_signal (configurationManagerProxy, + "accountsChanged", G_TYPE_INVALID); + dbus_g_proxy_connect_signal (configurationManagerProxy, + "accountsChanged", G_CALLBACK(accounts_changed_cb), NULL, NULL); + + return TRUE; +} + +void +dbus_clean () +{ + g_object_unref (callManagerProxy); +} + +void +dbus_hold (const call_t * c) +{ + GError *error = NULL; + org_sflphone_SFLPhone_CallManager_hold ( callManagerProxy, c->callID, &error); + if (error) + { + g_printerr ("Failed to call hold() on CallManager: %s\n", + error->message); + g_error_free (error); + } + else + { + g_print ("DBus called hold() on CallManager\n"); + } + +} + +void +dbus_unhold (const call_t * c) +{ + GError *error = NULL; + org_sflphone_SFLPhone_CallManager_unhold ( callManagerProxy, c->callID, &error); + if (error) + { + g_printerr ("Failed to call unhold() on CallManager: %s\n", + error->message); + g_error_free (error); + } + else + { + g_print ("DBus called unhold() on CallManager\n"); + + } + +} + +void +dbus_hang_up (const call_t * c) +{ + GError *error = NULL; + org_sflphone_SFLPhone_CallManager_hang_up ( callManagerProxy, c->callID, &error); + if (error) + { + g_printerr ("Failed to call hang_up() on CallManager: %s\n", + error->message); + g_error_free (error); + } + else + { + g_print ("DBus called hang_up() on CallManager\n"); + } + +} + +void +dbus_transfert (const call_t * c, gchar * to ) +{ + GError *error = NULL; + org_sflphone_SFLPhone_CallManager_transfert ( callManagerProxy, c->callID, to, &error); + if (error) + { + g_printerr ("Failed to call transfert() on CallManager: %s\n", + error->message); + g_error_free (error); + } + else + { + g_print ("DBus called transfert() on CallManager\n"); + } + +} + +void +dbus_accept (const call_t * c) +{ + GError *error = NULL; + org_sflphone_SFLPhone_CallManager_accept ( callManagerProxy, c->callID, &error); + if (error) + { + g_printerr ("Failed to call accept(%s) on CallManager: %s\n", c->callID, + (error->message == NULL ? g_quark_to_string(error->domain): error->message)); + g_error_free (error); + } + else + { + g_print ("DBus called accept(%s) on CallManager\n", c->callID); + } + +} + +void +dbus_refuse (const call_t * c) +{ + GError *error = NULL; + org_sflphone_SFLPhone_CallManager_refuse ( callManagerProxy, c->callID, &error); + if (error) + { + g_printerr ("Failed to call refuse() on CallManager: %s\n", + error->message); + g_error_free (error); + } + else + { + g_print ("DBus called refuse() on CallManager\n"); + + } + +} + + +void +dbus_place_call (const call_t * c) +{ + GError *error = NULL; + org_sflphone_SFLPhone_CallManager_place_call ( callManagerProxy, c->accountID, c->callID, c->to, &error); + if (error) + { + g_printerr ("Failed to call placeCall() on CallManager: %s\n", + error->message); + g_error_free (error); + } + else + { + g_print ("DBus called placeCall() on CallManager\n"); + + } + +} + +gchar ** +dbus_account_list() +{ + GError *error = NULL; + char ** array; + org_sflphone_SFLPhone_ConfigurationManager_get_account_list ( + configurationManagerProxy, + &array, + &error); + if (error) + { + g_printerr ("Failed to call get_account_list() on ConfigurationManager: %s\n", + error->message); + g_error_free (error); + } + else + { + g_print ("DBus called get_account_list() on ConfigurationManager\n"); + + } + return array; +} + +GHashTable * +dbus_account_details(gchar * accountID) +{ + GError *error = NULL; + GHashTable * details; + org_sflphone_SFLPhone_ConfigurationManager_get_account_details ( + configurationManagerProxy, + accountID, + &details, + &error); + if (error) + { + g_printerr ("Failed to call get_account_details() on ConfigurationManager: %s\n", + error->message); + g_error_free (error); + } + else + { + g_print ("DBus called get_account_details() on ConfigurationManager\n"); + + } + return details; +} + +void +dbus_remove_account(gchar * accountID) +{ + GError *error = NULL; + char ** array; + org_sflphone_SFLPhone_ConfigurationManager_remove_account ( + configurationManagerProxy, + accountID, + &error); + if (error) + { + g_printerr ("Failed to call remove_account() on ConfigurationManager: %s\n", + error->message); + g_error_free (error); + } + else + { + g_print ("DBus called remove_account() on ConfigurationManager\n"); + + } +} + +void +dbus_set_account_details(account_t *a) +{ + GError *error = NULL; + org_sflphone_SFLPhone_ConfigurationManager_set_account_details ( + configurationManagerProxy, + a->accountID, + a->properties, + &error); + if (error) + { + g_printerr ("Failed to call get_account_details() on ConfigurationManager: %s\n", + error->message); + g_error_free (error); + } + else + { + g_print ("DBus called get_account_details() on ConfigurationManager\n"); + + } +} diff --git a/sflphone-gtk/src/dbus.h b/sflphone-gtk/src/dbus.h new file mode 100644 index 0000000000000000000000000000000000000000..8d1b9253e5b998eeb20198d3454f5edb668d6181 --- /dev/null +++ b/sflphone-gtk/src/dbus.h @@ -0,0 +1,46 @@ +/* + * Copyright (C) 2007 Savoir-Faire Linux inc. + * Author: Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.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 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., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + + +#ifndef __DBUS_H__ +#define __DBUS_H__ + +#include <accountlist.h> +#include <calllist.h> + +/** @return TRUE if connection succeeded, FALSE otherwise */ +void dbus_connect (); +void dbus_clean (); + +/* CallManager */ +void dbus_hold (const call_t * c ); +void dbus_unhold (const call_t * c ); +void dbus_hang_up (const call_t * c ); +void dbus_transfert (const call_t * c, gchar * to ); +void dbus_accept (const call_t * c); +void dbus_refuse (const call_t * c); +void dbus_place_call (const call_t * c); + +/* ConfigurationManager */ +gchar ** dbus_account_list(); +GHashTable * dbus_account_details(gchar * accountID); +void dbus_set_account_details(account_t *a); +void dbus_remove_account(gchar * accountID); + +#endif diff --git a/sflphone-gtk/src/dialpad.c b/sflphone-gtk/src/dialpad.c new file mode 100644 index 0000000000000000000000000000000000000000..402066a39a17ed0f7c4b852cf2ae075d6f52ad04 --- /dev/null +++ b/sflphone-gtk/src/dialpad.c @@ -0,0 +1,106 @@ +/* + * Copyright (C) 2007 Savoir-Faire Linux inc. + * Author: Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.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 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., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include <dialpad.h> + +/** + * button pressed event + */ +static void +dialpad_pressed (GtkWidget * widget, gpointer data) +{ + sflphone_keypad(0, (gchar*) data); +} + +GtkWidget * +get_numpad_button (const gchar* number, gboolean twolines, const gchar * letters) +{ + GtkWidget * button; + GtkWidget * label; + gchar * markup; + + button = gtk_button_new (); + label = gtk_label_new ( "1" ); + gtk_label_set_single_line_mode ( GTK_LABEL(label), FALSE ); + gtk_label_set_justify( GTK_LABEL(label), GTK_JUSTIFY_CENTER ); + markup = g_markup_printf_escaped("<big><b>%s</b></big>%s%s", number, (twolines == TRUE ? "\n": ""), letters); + gtk_label_set_markup ( GTK_LABEL(label), markup); + gtk_container_add (GTK_CONTAINER (button), label); + g_signal_connect (G_OBJECT (button), "clicked", + G_CALLBACK (dialpad_pressed), (gchar*)number); + + return button; +} + +GtkWidget * +create_dialpad() +{ + GtkWidget * ext; + GtkWidget * button; + GtkWidget * table; + + ext = gtk_expander_new ("Dialpad"); + gtk_expander_set_spacing ( GTK_EXPANDER(ext), 10 ); + table = gtk_table_new ( 4, 3, TRUE /* homogeneous */); + gtk_table_set_row_spacings( GTK_TABLE(table), 10); + gtk_table_set_col_spacings( GTK_TABLE(table), 10); + + button = get_numpad_button("1", TRUE, ""); + gtk_table_attach ( GTK_TABLE( table ), button, 0, 1, 0, 1, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + + button = get_numpad_button("2", TRUE, "a b c"); + gtk_table_attach ( GTK_TABLE( table ), button, 1, 2, 0, 1, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + + button = get_numpad_button("3", TRUE, "d e f"); + gtk_table_attach ( GTK_TABLE( table ), button, 2, 3, 0, 1, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + + + button = get_numpad_button("4", TRUE, "g h i"); + gtk_table_attach ( GTK_TABLE( table ), button, 0, 1, 1, 2, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + + button = get_numpad_button("5", TRUE, "j k l"); + gtk_table_attach ( GTK_TABLE( table ), button, 1, 2, 1, 2, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + + button = get_numpad_button("6", TRUE, "m n o"); + gtk_table_attach ( GTK_TABLE( table ), button, 2, 3, 1, 2, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + + + button = get_numpad_button("7", TRUE, "p q r s"); + gtk_table_attach ( GTK_TABLE( table ), button, 0, 1, 2, 3, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + + button = get_numpad_button("8", TRUE, "t u v"); + gtk_table_attach ( GTK_TABLE( table ), button, 1, 2, 2, 3, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + + button = get_numpad_button("9", TRUE, "w x y z"); + gtk_table_attach ( GTK_TABLE( table ), button, 2, 3, 2, 3, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + + + button = get_numpad_button("#", FALSE, ""); + gtk_table_attach ( GTK_TABLE( table ), button, 0, 1, 3, 4, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + + button = get_numpad_button("0", FALSE, ""); + gtk_table_attach ( GTK_TABLE( table ), button, 1, 2, 3, 4, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + + button = get_numpad_button("*", FALSE, ""); + gtk_table_attach ( GTK_TABLE( table ), button, 2, 3, 3, 4, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + + gtk_container_add (GTK_CONTAINER (ext), table); + return ext; + +} diff --git a/sflphone-gtk/src/dialpad.h b/sflphone-gtk/src/dialpad.h new file mode 100644 index 0000000000000000000000000000000000000000..940aedd8bb4f551254c18e009f324984606dc2bb --- /dev/null +++ b/sflphone-gtk/src/dialpad.h @@ -0,0 +1,27 @@ +/* + * Copyright (C) 2007 Savoir-Faire Linux inc. + * Author: Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.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 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., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#ifndef __DIALPAD_H__ +#define __DIALPAD_H__ + +#include <gtk/gtk.h> + +GtkWidget * create_dialpad(); + +#endif diff --git a/sflphone-gtk/src/main.c b/sflphone-gtk/src/main.c new file mode 100644 index 0000000000000000000000000000000000000000..b4de656bf1e74ff85841ba6124a0f6565a7d50e1 --- /dev/null +++ b/sflphone-gtk/src/main.c @@ -0,0 +1,49 @@ +/* + * Copyright (C) 2007 Savoir-Faire Linux inc. + * Author: Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.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 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., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include <config.h> +#include <calllist.h> +#include <dbus.h> +#include <mainwindow.h> + +#include <gtk/gtk.h> + + + +int +main (int argc, char *argv[]) +{ + gtk_init (&argc, &argv); + + g_print("%s\n", PACKAGE_STRING); + g_print("Copyright (c) 2007 Savoir-faire Linux Inc.\n"); + g_print("This is free software. You may redistribute copies of it under the terms of\n\ +the GNU General Public License <http://www.gnu.org/licenses/gpl.html>.\n\ +There is NO WARRANTY, to the extent permitted by law.\n\n"); + + if(sflphone_init()) + { + create_main_window (); + + /* start the main loop */ + gtk_main (); + } + return 0; +} + diff --git a/sflphone-gtk/src/mainwindow.c b/sflphone-gtk/src/mainwindow.c new file mode 100644 index 0000000000000000000000000000000000000000..bc29f38928912b35e5d08412c3312c4cfc2e1c37 --- /dev/null +++ b/sflphone-gtk/src/mainwindow.c @@ -0,0 +1,195 @@ +/* + * Copyright (C) 2007 Savoir-Faire Linux inc. + * Author: Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.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 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., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include <config.h> +#include <actions.h> +#include <calllist.h> +#include <dialpad.h> +#include <menus.h> +#include <screen.h> +#include <calltree.h> + +#include <gtk/gtk.h> + +/** Local variables */ +GtkAccelGroup * accelGroup; +GtkWidget * window; + +/** + * Terminate the main loop. + */ +static gboolean +on_delete (GtkWidget * widget, gpointer data) +{ + /* Must return FALSE to have the window destroyed */ + return !sflphone_quit(); +} + +/** Ask the user if he wants to hangup current calls */ +gboolean +main_window_ask_quit(){ + guint count = call_list_get_size(); + GtkWidget * dialog; + guint response; + gchar * question; + + if(count == 1) + { + question = "<b>There is one call in progress.</b>\nDo you still want to quit?"; + } + else + { + question = "<b>There are calls in progress.</b>\nDo you still want to quit?"; + } + + dialog = gtk_message_dialog_new_with_markup (GTK_WINDOW(window) , + GTK_DIALOG_MODAL, + GTK_MESSAGE_QUESTION, + GTK_BUTTONS_YES_NO, + question); + + response = gtk_dialog_run (GTK_DIALOG (dialog)); + + gtk_widget_destroy (dialog); + if(response == GTK_RESPONSE_YES) + { + return TRUE; + } + else if(response == GTK_RESPONSE_NO) + { + return FALSE; + } + return TRUE; +} + +static gboolean +on_key_released (GtkWidget *widget, + GdkEventKey *event, + gpointer user_data) +{ +#ifdef DEBUG + g_print("KEY %s, %d\n", event->string, event->keyval); +#endif + // If a modifier key is pressed, it's a shortcut, pass along + if(event->state & GDK_CONTROL_MASK || + event->state & GDK_SHIFT_MASK || + event->state & GDK_MOD1_MASK ) + return FALSE; + sflphone_keypad(event->keyval, event->string); + return TRUE; +} + +void +create_main_window () +{ + GtkWidget *button; + GtkWidget *hbox; + GtkWidget *vbox; + GtkWidget *subvbox; + + window = gtk_window_new (GTK_WINDOW_TOPLEVEL); + gtk_container_set_border_width (GTK_CONTAINER (window), 0); + gtk_window_set_title (GTK_WINDOW (window), PACKAGE); + gtk_window_set_default_size (GTK_WINDOW (window), 200, 50); + gtk_window_set_default_icon_from_file (PIXMAPS_DIR "/sflphone.png", + NULL); + + /* Connect the destroy event of the window with our on_destroy function + * When the window is about to be destroyed we get a notificaiton and + * stop the main GTK loop + * TODO: Disconnect from dbus + */ + g_signal_connect (G_OBJECT (window), "delete-event", + G_CALLBACK (on_delete), NULL); + g_signal_connect (G_OBJECT (window), "key-press-event", + G_CALLBACK (on_key_released), NULL); + + /* Create an accel group for window's shortcuts */ + accelGroup = gtk_accel_group_new (); + gtk_window_add_accel_group(GTK_WINDOW(window), accelGroup); + + /* Create a new hbox with the appropriate homogeneous + * and spacing settings */ + + vbox = gtk_vbox_new ( FALSE /*homogeneous*/, 0 /*spacing*/); + subvbox = gtk_vbox_new ( FALSE /*homogeneous*/, 10 /*spacing*/); + gtk_container_set_border_width (GTK_CONTAINER(subvbox), 10); + + button = create_menus(); + gtk_box_pack_start (GTK_BOX (vbox), button, FALSE /*expand*/, TRUE /*fill*/, 0 /*padding*/); + gtk_box_pack_start (GTK_BOX (vbox), subvbox, TRUE /*expand*/, TRUE /*fill*/, 0 /*padding*/); + /* Call label */ + button = create_screen(); + gtk_box_pack_start (GTK_BOX (subvbox), button, FALSE /*expand*/, TRUE /*fill*/, 0 /*padding*/); + + gtk_box_pack_start (GTK_BOX (subvbox), create_dialpad(), FALSE /*expand*/, TRUE /*fill*/, 0 /*padding*/); + gtk_box_pack_start (GTK_BOX (subvbox), create_call_tree(), TRUE /*expand*/, TRUE /*fill*/, 0 /*padding*/); + + gtk_container_add (GTK_CONTAINER (window), vbox); + + /* make sure that everything, window and label, are visible */ + gtk_widget_show_all (window); + + screen_clear(); +} + +GtkAccelGroup * +get_accel_group() +{ + return accelGroup; +} + +GtkWidget * +get_main_window() +{ + return window; +} + +void +main_window_message(GtkMessageType type, gchar * markup){ + GtkWidget * dialog = gtk_message_dialog_new_with_markup (GTK_WINDOW(get_main_window()), + GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT, + type, + GTK_BUTTONS_CLOSE, + markup); + gtk_dialog_run (GTK_DIALOG(dialog)); + + gtk_widget_destroy (GTK_WIDGET(dialog)); +} + +void +main_window_error_message(gchar * markup){ + main_window_message(GTK_MESSAGE_ERROR, markup); +} + +void +main_window_warning_message(gchar * markup){ + main_window_message(GTK_MESSAGE_WARNING, markup); +} + +void +main_window_info_message(gchar * markup){ + main_window_message(GTK_MESSAGE_INFO, markup); +} + + + + + + diff --git a/sflphone-gtk/src/mainwindow.h b/sflphone-gtk/src/mainwindow.h new file mode 100644 index 0000000000000000000000000000000000000000..3a1e3fd71641aa0920dba894c7d51b53cc48d788 --- /dev/null +++ b/sflphone-gtk/src/mainwindow.h @@ -0,0 +1,32 @@ +/* + * Copyright (C) 2007 Savoir-Faire Linux inc. + * Author: Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.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 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., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#ifndef __MAINWINDOW_H__ +#define __MAINWINDOW_H__ + +#include <calllist.h> + +GtkAccelGroup * get_accel_group(); +GtkWidget * get_main_window(); + +void create_main_window ( ); + +void main_window_ask_quit() ; + +#endif diff --git a/sflphone-gtk/src/marshaller.c b/sflphone-gtk/src/marshaller.c new file mode 100644 index 0000000000000000000000000000000000000000..876679b381d6b0cc01f9ee8810522d9b3fad32f0 --- /dev/null +++ b/sflphone-gtk/src/marshaller.c @@ -0,0 +1,162 @@ + +#include <glib-object.h> + + +#ifdef G_ENABLE_DEBUG +#define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) +#define g_marshal_value_peek_char(v) g_value_get_char (v) +#define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) +#define g_marshal_value_peek_int(v) g_value_get_int (v) +#define g_marshal_value_peek_uint(v) g_value_get_uint (v) +#define g_marshal_value_peek_long(v) g_value_get_long (v) +#define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) +#define g_marshal_value_peek_int64(v) g_value_get_int64 (v) +#define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) +#define g_marshal_value_peek_enum(v) g_value_get_enum (v) +#define g_marshal_value_peek_flags(v) g_value_get_flags (v) +#define g_marshal_value_peek_float(v) g_value_get_float (v) +#define g_marshal_value_peek_double(v) g_value_get_double (v) +#define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) +#define g_marshal_value_peek_param(v) g_value_get_param (v) +#define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) +#define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) +#define g_marshal_value_peek_object(v) g_value_get_object (v) +#else /* !G_ENABLE_DEBUG */ +/* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. + * Do not access GValues directly in your code. Instead, use the + * g_value_get_*() functions + */ +#define g_marshal_value_peek_boolean(v) (v)->data[0].v_int +#define g_marshal_value_peek_char(v) (v)->data[0].v_int +#define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint +#define g_marshal_value_peek_int(v) (v)->data[0].v_int +#define g_marshal_value_peek_uint(v) (v)->data[0].v_uint +#define g_marshal_value_peek_long(v) (v)->data[0].v_long +#define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong +#define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 +#define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 +#define g_marshal_value_peek_enum(v) (v)->data[0].v_long +#define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong +#define g_marshal_value_peek_float(v) (v)->data[0].v_float +#define g_marshal_value_peek_double(v) (v)->data[0].v_double +#define g_marshal_value_peek_string(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_param(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_object(v) (v)->data[0].v_pointer +#endif /* !G_ENABLE_DEBUG */ + + +/* VOID:STRING,STRING,STRING (marshaller.list:1) */ +void +g_cclosure_user_marshal_VOID__STRING_STRING_STRING (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__STRING_STRING_STRING) (gpointer data1, + gpointer arg_1, + gpointer arg_2, + gpointer arg_3, + gpointer data2); + register GMarshalFunc_VOID__STRING_STRING_STRING callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 4); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__STRING_STRING_STRING) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_marshal_value_peek_string (param_values + 1), + g_marshal_value_peek_string (param_values + 2), + g_marshal_value_peek_string (param_values + 3), + data2); +} + +/* VOID:STRING,STRING (marshaller.list:2) */ +void +g_cclosure_user_marshal_VOID__STRING_STRING (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__STRING_STRING) (gpointer data1, + gpointer arg_1, + gpointer arg_2, + gpointer data2); + register GMarshalFunc_VOID__STRING_STRING callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__STRING_STRING) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_marshal_value_peek_string (param_values + 1), + g_marshal_value_peek_string (param_values + 2), + data2); +} + +/* VOID:STRING,INT (marshaller.list:3) */ +void +g_cclosure_user_marshal_VOID__STRING_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__STRING_INT) (gpointer data1, + gpointer arg_1, + gint arg_2, + gpointer data2); + register GMarshalFunc_VOID__STRING_INT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__STRING_INT) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_marshal_value_peek_string (param_values + 1), + g_marshal_value_peek_int (param_values + 2), + data2); +} + diff --git a/sflphone-gtk/src/marshaller.h b/sflphone-gtk/src/marshaller.h new file mode 100644 index 0000000000000000000000000000000000000000..924c97257f9e466c3c1ef5ed1f3564762289a622 --- /dev/null +++ b/sflphone-gtk/src/marshaller.h @@ -0,0 +1,36 @@ + +#ifndef __g_cclosure_user_marshal_MARSHAL_H__ +#define __g_cclosure_user_marshal_MARSHAL_H__ + +#include <glib-object.h> + +G_BEGIN_DECLS + +/* VOID:STRING,STRING,STRING (marshaller.list:1) */ +extern void g_cclosure_user_marshal_VOID__STRING_STRING_STRING (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); + +/* VOID:STRING,STRING (marshaller.list:2) */ +extern void g_cclosure_user_marshal_VOID__STRING_STRING (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); + +/* VOID:STRING,INT (marshaller.list:3) */ +extern void g_cclosure_user_marshal_VOID__STRING_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); + +G_END_DECLS + +#endif /* __g_cclosure_user_marshal_MARSHAL_H__ */ + diff --git a/sflphone-gtk/src/marshaller.list b/sflphone-gtk/src/marshaller.list new file mode 100644 index 0000000000000000000000000000000000000000..c6d168f95eb45d4cc900da72611714af88be3638 --- /dev/null +++ b/sflphone-gtk/src/marshaller.list @@ -0,0 +1,3 @@ +VOID:STRING,STRING,STRING +VOID:STRING,STRING +VOID:STRING,INT diff --git a/sflphone-gtk/src/menus.c b/sflphone-gtk/src/menus.c new file mode 100644 index 0000000000000000000000000000000000000000..a04d1e620ccbef93bb881bb62f513da4b68f9c12 --- /dev/null +++ b/sflphone-gtk/src/menus.c @@ -0,0 +1,197 @@ +/* + * Copyright (C) 2007 Savoir-Faire Linux inc. + * Author: Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.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 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., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include <menus.h> +#include <config.h> +#include <calllist.h> +#include <mainwindow.h> +#include <configwindow.h> +/* ----------------------------------------------------------------- */ +void +help_about ( void * foo) +{ + gchar *authors[] = { + "Yan Morin <yan.morin@savoirfairelinux.com>", + "Jérôme Oufella <jerome.oufella@savoirfairelinux.com>", + "Julien Plissonneau Duquene <julien.plissonneau.duquene@savoirfairelinux.com>", + "Alexandre Bourget <alexandre.bourget@savoirfairelinux.com>", + "Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.net>", + "Imran Akbar", + "Jean-Philippe Barrette-LaPierre", + "Laurielle Lea", + "Mikael Magnusson", + "Sherry Yang", + NULL}; + gchar *artists[] = { + "Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.net>", + NULL}; + + gtk_show_about_dialog( GTK_WINDOW(get_main_window()), + "name", PACKAGE, + "title", "About SFLPhone", + "version", VERSION, + "website", "http://www.sflphone.org", + "copyright", "Copyright © 2004-2007 Savoir-faire Linux Inc.", + "translator-credits", "Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.net>", + "comments", "SFLPhone is a VOIP client compatible with SIP and IAX protocols.", + "artists", artists, + "authors", authors, + NULL); +} + + +GtkWidget * +create_help_menu() +{ + GtkWidget * menu; + GtkWidget * root_menu; + GtkWidget * menu_items; + + menu = gtk_menu_new (); + + /*menu_items = gtk_separator_menu_item_new (); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items); + */ + menu_items = gtk_image_menu_item_new_from_stock( GTK_STOCK_ABOUT, get_accel_group()); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items); + g_signal_connect_swapped (G_OBJECT (menu_items), "activate", + G_CALLBACK (help_about), + NULL); + gtk_widget_show (menu_items); + + + root_menu = gtk_menu_item_new_with_mnemonic ("_Help"); + gtk_menu_item_set_submenu (GTK_MENU_ITEM (root_menu), menu); + + return root_menu; +} +/* ----------------------------------------------------------------- */ +void +call_quit ( void * foo) +{ + sflphone_quit(); +} + +void +call_preferences ( void * foo) +{ + show_config_window(); +} + +GtkWidget * +create_call_menu() +{ + GtkWidget * menu; + GtkWidget * root_menu; + GtkWidget * menu_items; + + menu = gtk_menu_new (); + + menu_items = gtk_image_menu_item_new_from_stock( GTK_STOCK_PREFERENCES, get_accel_group()); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items); + g_signal_connect_swapped (G_OBJECT (menu_items), "activate", + G_CALLBACK (call_preferences), + NULL); + gtk_widget_show (menu_items); + + menu_items = gtk_separator_menu_item_new (); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items); + + menu_items = gtk_image_menu_item_new_from_stock( GTK_STOCK_QUIT, get_accel_group()); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items); + g_signal_connect_swapped (G_OBJECT (menu_items), "activate", + G_CALLBACK (call_quit), + NULL); + gtk_widget_show (menu_items); + + + root_menu = gtk_menu_item_new_with_mnemonic ("_Call"); + gtk_menu_item_set_submenu (GTK_MENU_ITEM (root_menu), menu); + + return root_menu; +} +/* ----------------------------------------------------------------- */ +void +debug_hang_up( void* foo) +{ + call_t * c = (call_t*) call_list_get_by_state (CALL_STATE_CURRENT); + if(c) + { + sflphone_hang_up(c); + } +} + +GtkWidget * +create_debug_menu() +{ + GtkWidget * menu; + GtkWidget * root_menu; + GtkWidget * menu_items; + + menu = gtk_menu_new (); + + menu_items = gtk_menu_item_new_with_label ("Hang up current call"); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items); + g_signal_connect_swapped (G_OBJECT (menu_items), "activate", + G_CALLBACK (debug_hang_up), + NULL); + gtk_widget_show (menu_items); + + /*menu_items = gtk_menu_item_new_with_label ("Transfert current call"); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items); + g_signal_connect_swapped (G_OBJECT (menu_items), "activate", + G_CALLBACK (debug_transfert), + NULL); + gtk_widget_show (menu_items);*/ + + root_menu = gtk_menu_item_new_with_mnemonic ("_Debug"); + gtk_menu_item_set_submenu (GTK_MENU_ITEM (root_menu), menu); + + return root_menu; +} +/* ----------------------------------------------------------------- */ +GtkWidget * +create_menus ( ) +{ + + GtkWidget * menu_bar; + GtkWidget * root_menu; + + + menu_bar = gtk_menu_bar_new (); + + root_menu = create_call_menu(); + gtk_menu_shell_append (GTK_MENU_SHELL (menu_bar), root_menu); + +#ifdef DEBUG + root_menu = create_debug_menu(); + gtk_menu_shell_append (GTK_MENU_SHELL (menu_bar), root_menu); +#endif + + root_menu = create_help_menu(); + gtk_menu_shell_append (GTK_MENU_SHELL (menu_bar), root_menu); + + + + gtk_widget_show (menu_bar); + + + return menu_bar; +} + diff --git a/sflphone-gtk/src/menus.h b/sflphone-gtk/src/menus.h new file mode 100644 index 0000000000000000000000000000000000000000..f4b84d32dbe135ea10652749be1875cb6ccf9334 --- /dev/null +++ b/sflphone-gtk/src/menus.h @@ -0,0 +1,27 @@ +/* + * Copyright (C) 2007 Savoir-Faire Linux inc. + * Author: Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.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 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., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#ifndef __MENUS_H__ +#define __MENUS_H__ + +#include <gtk/gtk.h> + +GtkWidget * create_menus(); + +#endif diff --git a/sflphone-gtk/src/screen.c b/sflphone-gtk/src/screen.c new file mode 100644 index 0000000000000000000000000000000000000000..fd7138766a27c2041a9383473f83683772d52166 --- /dev/null +++ b/sflphone-gtk/src/screen.c @@ -0,0 +1,211 @@ +/* + * Copyright (C) 2007 Savoir-Faire Linux inc. + * Author: Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.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 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., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include <dialpad.h> +#include <screen.h> + + +GtkWidget * label; +GtkWidget * callButton; +GtkWidget * hangupButton; +GtkWidget * hbox; +GtkWidget * holdButton; +GtkWidget * transfertButton; + + +/** + * Hold the line + */ +static void +hold( GtkWidget *widget, gpointer data ) +{ + call_t * c = (call_t*) call_list_get_by_state (CALL_STATE_CURRENT); + if(c) + { + dbus_hold (c); + } + + +} + +/** + * Make a call + */ +static void +place_call( GtkWidget *widget, gpointer data ) +{ + call_t * c = (call_t*) call_list_get_by_state (CALL_STATE_DIALING); + if(c) + { + sflphone_place_call(c); + } +} + +/** + * Hang up the line + */ +static void +hang_up( GtkWidget *widget, gpointer data ) +{ + call_t * c = (call_t*) call_list_get_by_state (CALL_STATE_CURRENT); + if(c) + { + dbus_hang_up(c); + } +} + + +/** + * Transfert the line + */ +static void +transfert( GtkWidget *widget, gpointer data ) +{ + call_t * c = (call_t*) call_list_get_by_state (CALL_STATE_CURRENT); + if(c) + { + dbus_transfert(c,"124"); + } +} + +GtkWidget * +create_screen() +{ + GtkWidget * event; + GtkWidget * sw; + GtkWidget *subvbox; + GtkWidget *image; + + GdkColor color; + gdk_color_parse ("white", &color); + + subvbox = gtk_vbox_new ( FALSE /*homogeneous*/, 10 /*spacing*/); + + sw = gtk_scrolled_window_new( NULL, NULL); + gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw), GTK_POLICY_NEVER, GTK_POLICY_NEVER); + gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(sw), GTK_SHADOW_NONE); + + event = gtk_event_box_new (); + gtk_widget_modify_bg (event, GTK_STATE_NORMAL, &color); + + label = gtk_label_new ("test"); + gtk_label_set_justify(GTK_LABEL(label), GTK_JUSTIFY_LEFT); + gtk_misc_set_padding(GTK_MISC(label), 5, 5); + gtk_misc_set_alignment(GTK_MISC(label), 0,0); + gtk_container_add (GTK_CONTAINER (event), label); + gtk_scrolled_window_add_with_viewport (GTK_SCROLLED_WINDOW (sw), event); + + gtk_box_pack_start (GTK_BOX (subvbox), sw, FALSE /*expand*/, TRUE /*fill*/, 0 /*padding*/); + + /* First row */ + hbox = gtk_hbutton_box_new (); + gtk_button_box_set_spacing ( GTK_BUTTON_BOX(hbox), 10); + gtk_button_box_set_layout ( GTK_BUTTON_BOX(hbox), GTK_BUTTONBOX_START); + + /* Creates a new button with the label "Call". */ + callButton = gtk_button_new_with_label ("Call"); + gtk_widget_set_state( GTK_WIDGET(callButton), GTK_STATE_INSENSITIVE); + image = gtk_image_new_from_file( PIXMAPS_DIR "/call.svg"); + gtk_button_set_image(GTK_BUTTON(callButton), image); + //gtk_button_set_image_position( button, GTK_POS_TOP); + gtk_box_pack_start (GTK_BOX (hbox), callButton, TRUE /*expand*/, TRUE /*fill*/, 10 /*padding*/); + g_signal_connect (G_OBJECT (callButton), "clicked", + G_CALLBACK (place_call), NULL); + + /* Creates a new button with the label "Hang up". */ + hangupButton = gtk_button_new_with_label ("Hang up"); + gtk_widget_hide( hangupButton ); + gtk_widget_set_state( GTK_WIDGET(hangupButton), GTK_STATE_INSENSITIVE); + image = gtk_image_new_from_file( PIXMAPS_DIR "/hang_up.svg"); + gtk_button_set_image(GTK_BUTTON(hangupButton), image); + //gtk_button_set_image_position( button, GTK_POS_TOP); + g_signal_connect (G_OBJECT (hangupButton), "clicked", + G_CALLBACK (hang_up), NULL); + + holdButton = gtk_button_new_with_label ("Hold"); + gtk_widget_set_state( GTK_WIDGET(holdButton), GTK_STATE_INSENSITIVE); + image = gtk_image_new_from_file( PIXMAPS_DIR "/hold.svg"); + gtk_box_pack_end (GTK_BOX (hbox), holdButton, TRUE /*expand*/, TRUE /*fill*/, 10 /*padding*/); + gtk_button_set_image(GTK_BUTTON(holdButton), image); + g_signal_connect (G_OBJECT (holdButton), "clicked", + G_CALLBACK (hold), NULL); + + transfertButton = gtk_button_new_with_label ("Transfert"); + gtk_widget_set_state( GTK_WIDGET(transfertButton), GTK_STATE_INSENSITIVE); + image = gtk_image_new_from_file( PIXMAPS_DIR "/transfert.svg"); + gtk_button_set_image(GTK_BUTTON(transfertButton), image); + gtk_box_pack_end (GTK_BOX (hbox), transfertButton, TRUE /*expand*/, TRUE /*fill*/, 10 /*padding*/); + g_signal_connect (G_OBJECT (transfertButton), "clicked", + G_CALLBACK (transfert), NULL); + + + /* Pack the vbox (box) which now contains all our widgets, into the + * main window. */ + gtk_box_pack_start (GTK_BOX (subvbox), hbox, FALSE /*expand*/, TRUE /*fill*/, 0 /*padding*/); + + screen_clear(); + + return subvbox; + +} + +void +screen_clear() +{ + gtk_label_set_markup(GTK_LABEL(label), "<big><b>Welcome to SFLPhone</b></big>\n"); + + gtk_widget_hide( hangupButton ); + gtk_widget_show( callButton ); + gtk_widget_set_sensitive( GTK_WIDGET(callButton), FALSE); + gtk_widget_set_sensitive( GTK_WIDGET(hangupButton), FALSE); + gtk_widget_set_sensitive( GTK_WIDGET(holdButton), FALSE); + gtk_widget_set_sensitive( GTK_WIDGET(transfertButton), FALSE); +} + +void +screen_set_call(const call_t * c) +{ + gchar * markup = g_strconcat("<big><b>", call_get_name(c), "</b></big>\n", call_get_number(c), NULL); + gtk_label_set_markup(GTK_LABEL(label), markup); + g_free(markup); + + if(c->state == CALL_STATE_DIALING) + { + gtk_widget_hide( hangupButton ); + gtk_widget_show( callButton ); + gtk_widget_set_sensitive( GTK_WIDGET(callButton), TRUE); + gtk_widget_set_sensitive( GTK_WIDGET(hangupButton), FALSE); + gtk_widget_set_sensitive( GTK_WIDGET(holdButton), FALSE); + gtk_widget_set_sensitive( GTK_WIDGET(transfertButton), FALSE); + } + else if (c->state == CALL_STATE_CURRENT) + { + gtk_widget_hide( callButton ); + /* Hack : if hangupButton is put on the window in create_screen() + * the hbox will request space for 4 buttons making the window larger than needed */ + gtk_box_pack_start (GTK_BOX (hbox), hangupButton, TRUE /*expand*/, TRUE /*fill*/, 10 /*padding*/); + gtk_box_reorder_child(GTK_BOX (hbox), hangupButton, 0); + gtk_widget_show( hangupButton ); + gtk_widget_set_sensitive( GTK_WIDGET(callButton), FALSE); + gtk_widget_set_sensitive( GTK_WIDGET(hangupButton), TRUE); + gtk_widget_set_sensitive( GTK_WIDGET(holdButton), TRUE); + gtk_widget_set_sensitive( GTK_WIDGET(transfertButton), TRUE); + } + +} diff --git a/sflphone-gtk/src/screen.h b/sflphone-gtk/src/screen.h new file mode 100644 index 0000000000000000000000000000000000000000..44db782f2c780b98f51a79641a57ee8b90992db7 --- /dev/null +++ b/sflphone-gtk/src/screen.h @@ -0,0 +1,32 @@ +/* + * Copyright (C) 2007 Savoir-Faire Linux inc. + * Author: Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.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 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., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#ifndef __SCREEN_H__ +#define __SCREEN_H__ + +#include <gtk/gtk.h> +#include <calllist.h> + +GtkWidget * create_screen(); + +void screen_clear(); + +void screen_set_call(const call_t * c); + +#endif diff --git a/sflphone-gtk/stamp-h b/sflphone-gtk/stamp-h new file mode 100644 index 0000000000000000000000000000000000000000..9788f70238c91894045d22366fa941580826c3c1 --- /dev/null +++ b/sflphone-gtk/stamp-h @@ -0,0 +1 @@ +timestamp diff --git a/sflphone-gtk/stamp-h.in b/sflphone-gtk/stamp-h.in new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/sflphone-gtk/stamp-h1 b/sflphone-gtk/stamp-h1 new file mode 100644 index 0000000000000000000000000000000000000000..4547fe1b5efa99ebbf20e1fa55fdbd528abd3a97 --- /dev/null +++ b/sflphone-gtk/stamp-h1 @@ -0,0 +1 @@ +timestamp for config.h diff --git a/src/account.h b/src/account.h index 54e0c748ba500353a7827f73bfaaef4e265b2651..1dba69675df9fb87c8950423bf56d3c426c663cb 100644 --- a/src/account.h +++ b/src/account.h @@ -106,6 +106,7 @@ public: * Tell if the latest registration succeed or failed */ bool setState(bool state) { _state = state; } + bool getState() { return _state; } private: /** diff --git a/src/dbus/callmanager-glue.h b/src/dbus/callmanager-glue.h index 952287791b76959193dfe3d7f4b73fbb83877365..f53e037dceba385fdd1631a63ae08f68360c9c0d 100644 --- a/src/dbus/callmanager-glue.h +++ b/src/dbus/callmanager-glue.h @@ -29,7 +29,6 @@ public: register_method(CallManager, transfert, _transfert_stub); register_method(CallManager, setVolume, _setVolume_stub); register_method(CallManager, getVolume, _getVolume_stub); - register_method(CallManager, getVoiceMailCount, _getVoiceMailCount_stub); register_method(CallManager, getCallDetails, _getCallDetails_stub); register_method(CallManager, getCurrentCallID, _getCurrentCallID_stub); } @@ -86,11 +85,6 @@ public: { "value", "d", false }, { 0, 0, 0 } }; - static ::DBus::IntrospectedArgument getVoiceMailCount_args[] = - { - { "count", "i", false }, - { 0, 0, 0 } - }; static ::DBus::IntrospectedArgument getCallDetails_args[] = { { "callID", "s", true }, @@ -112,22 +106,19 @@ public: static ::DBus::IntrospectedArgument incomingMessage_args[] = { { "accountID", "s", false }, - { "from", "s", false }, - { 0, 0, 0 } - }; - static ::DBus::IntrospectedArgument ring_args[] = - { - { "callID", "s", false }, + { "message", "s", false }, { 0, 0, 0 } }; - static ::DBus::IntrospectedArgument pickedUp_args[] = + static ::DBus::IntrospectedArgument callStateChanged_args[] = { { "callID", "s", false }, + { "state", "s", false }, { 0, 0, 0 } }; - static ::DBus::IntrospectedArgument hungUp_args[] = + static ::DBus::IntrospectedArgument voiceMailNotify_args[] = { - { "callID", "s", false }, + { "accountID", "s", false }, + { "count", "i", false }, { 0, 0, 0 } }; static ::DBus::IntrospectedArgument volumeChanged_args[] = @@ -152,7 +143,6 @@ public: { "transfert", transfert_args }, { "setVolume", setVolume_args }, { "getVolume", getVolume_args }, - { "getVoiceMailCount", getVoiceMailCount_args }, { "getCallDetails", getCallDetails_args }, { "getCurrentCallID", getCurrentCallID_args }, { 0, 0 } @@ -161,9 +151,8 @@ public: { { "incomingCall", incomingCall_args }, { "incomingMessage", incomingMessage_args }, - { "ring", ring_args }, - { "pickedUp", pickedUp_args }, - { "hungUp", hungUp_args }, + { "callStateChanged", callStateChanged_args }, + { "voiceMailNotify", voiceMailNotify_args }, { "volumeChanged", volumeChanged_args }, { "error", error_args }, { 0, 0 } @@ -202,7 +191,6 @@ public: virtual void transfert( const ::DBus::String& callID, const ::DBus::String& to ) = 0; virtual void setVolume( const ::DBus::String& device, const ::DBus::Double& value ) = 0; virtual ::DBus::Double getVolume( const ::DBus::String& device ) = 0; - virtual ::DBus::Int32 getVoiceMailCount( ) = 0; virtual std::map< ::DBus::String, ::DBus::String > getCallDetails( const ::DBus::String& callID ) = 0; virtual ::DBus::String getCurrentCallID( ) = 0; @@ -227,25 +215,20 @@ public: wi << arg2; emit_signal(sig); } - void ring( const ::DBus::String& arg1 ) + void callStateChanged( const ::DBus::String& arg1, const ::DBus::String& arg2 ) { - ::DBus::SignalMessage sig("ring"); - ::DBus::MessageIter wi = sig.writer(); - wi << arg1; - emit_signal(sig); - } - void pickedUp( const ::DBus::String& arg1 ) - { - ::DBus::SignalMessage sig("pickedUp"); + ::DBus::SignalMessage sig("callStateChanged"); ::DBus::MessageIter wi = sig.writer(); wi << arg1; + wi << arg2; emit_signal(sig); } - void hungUp( const ::DBus::String& arg1 ) + void voiceMailNotify( const ::DBus::String& arg1, const ::DBus::Int32& arg2 ) { - ::DBus::SignalMessage sig("hungUp"); + ::DBus::SignalMessage sig("voiceMailNotify"); ::DBus::MessageIter wi = sig.writer(); wi << arg1; + wi << arg2; emit_signal(sig); } void volumeChanged( const ::DBus::String& arg1, const ::DBus::Double& arg2 ) @@ -355,16 +338,6 @@ private: wi << argout1; return reply; } - ::DBus::Message _getVoiceMailCount_stub( const ::DBus::CallMessage& call ) - { - ::DBus::MessageIter ri = call.reader(); - - ::DBus::Int32 argout1 = getVoiceMailCount(); - ::DBus::ReturnMessage reply(call); - ::DBus::MessageIter wi = reply.writer(); - wi << argout1; - return reply; - } ::DBus::Message _getCallDetails_stub( const ::DBus::CallMessage& call ) { ::DBus::MessageIter ri = call.reader(); diff --git a/src/dbus/callmanager-introspec.xml b/src/dbus/callmanager-introspec.xml index 50c4846f202a6cc874c88e249a4a8d824e9909d8..423a92a5e198745d8ce99c5eff566a30be4801ea 100644 --- a/src/dbus/callmanager-introspec.xml +++ b/src/dbus/callmanager-introspec.xml @@ -43,10 +43,6 @@ <arg type="d" name="value" direction="out"/> </method> - <method name="getVoiceMailCount"> - <arg type="i" name="count" direction="out"/> - </method> - <method name="getCallDetails"> <arg type="s" name="callID" direction="in"/> <arg type="a{ss}" name="infos" direction="out"/> @@ -63,29 +59,28 @@ </signal> <signal name="incomingMessage"> - <arg type="s" name="accountID" /> - <arg type="s" name="from" /> + <arg type="s" name="accountID" direction="out" /> + <arg type="s" name="message" direction="out"/> </signal> - <signal name="ring"> - <arg type="s" name="callID" /> + <signal name="callStateChanged"> + <arg type="s" name="callID" direction="out"/> + <arg type="s" name="state" direction="out"/> </signal> - <signal name="pickedUp"> - <arg type="s" name="callID" /> + <signal name="voiceMailNotify"> + <arg type="s" name="accountID" direction="out"/> + <arg type="i" name="count" direction="out"/> </signal> - <signal name="hungUp"> - <arg type="s" name="callID" /> - </signal> <signal name="volumeChanged"> - <arg type="s" name="device" /> - <arg type="d" name="value" /> + <arg type="s" name="device" direction="out"/> + <arg type="d" name="value" direction="out"/> </signal> <signal name="error"> - <arg type="a{ss}" name="details" /> + <arg type="a{ss}" name="details" direction="out"/> </signal> </interface> </node> diff --git a/src/dbus/callmanager.cpp b/src/dbus/callmanager.cpp index d82ef3cfcd5d575448f78d04a1d3f2f8324f9b75..37cc4643913d00d8bb9b1461e0cbe74de619c963 100644 --- a/src/dbus/callmanager.cpp +++ b/src/dbus/callmanager.cpp @@ -41,6 +41,7 @@ CallManager::refuse( const ::DBus::String& callID ) { _debug("CallManager::refuse received\n"); Manager::instance().refuseCall(callID); + callStateChanged(callID, "HUNGUP"); } void @@ -48,6 +49,7 @@ CallManager::accept( const ::DBus::String& callID ) { _debug("CallManager::accept received\n"); Manager::instance().answerCall(callID); + callStateChanged(callID, "CURRENT"); } void @@ -55,6 +57,7 @@ CallManager::hangUp( const ::DBus::String& callID ) { _debug("CallManager::hangUp received\n"); Manager::instance().hangupCall(callID); + callStateChanged(callID, "HUNGUP"); } @@ -63,6 +66,8 @@ CallManager::hold( const ::DBus::String& callID ) { _debug("CallManager::hold received\n"); Manager::instance().onHoldCall(callID); + callStateChanged(callID, "HOLD"); + } void @@ -70,6 +75,7 @@ CallManager::unhold( const ::DBus::String& callID ) { _debug("CallManager::unhold received\n"); Manager::instance().offHoldCall(callID); + callStateChanged(callID, "UNHOLD"); } void @@ -77,6 +83,7 @@ CallManager::transfert( const ::DBus::String& callID, const ::DBus::String& to ) { _debug("CallManager::transfert received\n"); Manager::instance().transferCall(callID, to); + callStateChanged(callID, "HUNGUP"); } void @@ -98,13 +105,6 @@ CallManager::getVolume( const ::DBus::String& device ) return 0; } -::DBus::Int32 -CallManager::getVoiceMailCount( ) -{ - _debug("CallManager::getVoiceMailCount received\n"); - return 0; -} - std::map< ::DBus::String, ::DBus::String > CallManager::getCallDetails( const ::DBus::String& callID ) { diff --git a/src/dbus/callmanager.h b/src/dbus/callmanager.h index cfeaf18f0f225e9a51b4f648eb5a1f7eac80824e..f4b4ef4999aca01901efedf9beb0b6285518d041 100644 --- a/src/dbus/callmanager.h +++ b/src/dbus/callmanager.h @@ -48,7 +48,6 @@ public: void transfert( const ::DBus::String& callID, const ::DBus::String& to ); void setVolume( const ::DBus::String& device, const ::DBus::Double& value ); ::DBus::Double getVolume( const ::DBus::String& device ); - ::DBus::Int32 getVoiceMailCount( ); std::map< ::DBus::String, ::DBus::String > getCallDetails( const ::DBus::String& callID ); ::DBus::String getCurrentCallID( ); diff --git a/src/dbus/configurationmanager-glue.h b/src/dbus/configurationmanager-glue.h index 8bf08fb85418a380468f2b9a5fb6349e0753def6..bcaffc94926ea3f0010f8f6767d0aed1a5f7e553 100644 --- a/src/dbus/configurationmanager-glue.h +++ b/src/dbus/configurationmanager-glue.h @@ -21,33 +21,21 @@ public: : ::DBus::InterfaceAdaptor("org.sflphone.SFLPhone.ConfigurationManager") { register_method(ConfigurationManager, getAccountDetails, _getAccountDetails_stub); + register_method(ConfigurationManager, setAccountDetails, _setAccountDetails_stub); register_method(ConfigurationManager, addAccount, _addAccount_stub); + register_method(ConfigurationManager, removeAccount, _removeAccount_stub); register_method(ConfigurationManager, getAccountList, _getAccountList_stub); - register_method(ConfigurationManager, setSTUN, _setSTUN_stub); - register_method(ConfigurationManager, getSTUN, _getSTUN_stub); - register_method(ConfigurationManager, setPlayTonesLocally, _setPlayTonesLocally_stub); - register_method(ConfigurationManager, getPlayTonesLocally, _getPlayTonesLocally_stub); - register_method(ConfigurationManager, setTonePulseLenght, _setTonePulseLenght_stub); - register_method(ConfigurationManager, getTonePulseLenght, _getTonePulseLenght_stub); - register_method(ConfigurationManager, getToneLocaleList, _getToneLocaleList_stub); - register_method(ConfigurationManager, setToneLocale, _setToneLocale_stub); - register_method(ConfigurationManager, getToneLocale, _getToneLocale_stub); register_method(ConfigurationManager, getVersion, _getVersion_stub); register_method(ConfigurationManager, getRingtoneList, _getRingtoneList_stub); - register_method(ConfigurationManager, setRingtone, _setRingtone_stub); - register_method(ConfigurationManager, getRingtone, _getRingtone_stub); register_method(ConfigurationManager, getCodecList, _getCodecList_stub); + register_method(ConfigurationManager, getToneLocaleList, _getToneLocaleList_stub); register_method(ConfigurationManager, setCodecPreferedOrder, _setCodecPreferedOrder_stub); register_method(ConfigurationManager, getCodecPreferedOrder, _getCodecPreferedOrder_stub); register_method(ConfigurationManager, getPlaybackDeviceList, _getPlaybackDeviceList_stub); - register_method(ConfigurationManager, setPlaybackDevice, _setPlaybackDevice_stub); - register_method(ConfigurationManager, getPlaybackDevice, _getPlaybackDevice_stub); register_method(ConfigurationManager, getRecordDeviceList, _getRecordDeviceList_stub); - register_method(ConfigurationManager, setRecordDevice, _setRecordDevice_stub); - register_method(ConfigurationManager, getRecordDevice, _getRecordDevice_stub); register_method(ConfigurationManager, getSampleRateList, _getSampleRateList_stub); - register_method(ConfigurationManager, setSampleRate, _setSampleRate_stub); - register_method(ConfigurationManager, getSampleRate, _getSampleRate_stub); + register_method(ConfigurationManager, getParameters, _getParameters_stub); + register_method(ConfigurationManager, setParameters, _setParameters_stub); } ::DBus::IntrospectedInterface* const introspect() const @@ -58,59 +46,25 @@ public: { "details", "a{ss}", false }, { 0, 0, 0 } }; - static ::DBus::IntrospectedArgument addAccount_args[] = + static ::DBus::IntrospectedArgument setAccountDetails_args[] = { + { "accountID", "s", true }, { "details", "a{ss}", true }, { 0, 0, 0 } }; - static ::DBus::IntrospectedArgument getAccountList_args[] = - { - { "list", "as", false }, - { 0, 0, 0 } - }; - static ::DBus::IntrospectedArgument setSTUN_args[] = + static ::DBus::IntrospectedArgument addAccount_args[] = { { "details", "a{ss}", true }, { 0, 0, 0 } }; - static ::DBus::IntrospectedArgument getSTUN_args[] = - { - { "details", "a{ss}", false }, - { 0, 0, 0 } - }; - static ::DBus::IntrospectedArgument setPlayTonesLocally_args[] = - { - { "flag", "b", true }, - { 0, 0, 0 } - }; - static ::DBus::IntrospectedArgument getPlayTonesLocally_args[] = - { - { "flag", "b", false }, - { 0, 0, 0 } - }; - static ::DBus::IntrospectedArgument setTonePulseLenght_args[] = - { - { "milliseconds", "i", true }, - { 0, 0, 0 } - }; - static ::DBus::IntrospectedArgument getTonePulseLenght_args[] = - { - { "milliseconds", "i", false }, - { 0, 0, 0 } - }; - static ::DBus::IntrospectedArgument getToneLocaleList_args[] = + static ::DBus::IntrospectedArgument removeAccount_args[] = { - { "list", "as", true }, + { "accoundID", "s", true }, { 0, 0, 0 } }; - static ::DBus::IntrospectedArgument setToneLocale_args[] = - { - { "locale", "s", true }, - { 0, 0, 0 } - }; - static ::DBus::IntrospectedArgument getToneLocale_args[] = + static ::DBus::IntrospectedArgument getAccountList_args[] = { - { "locale", "s", false }, + { "list", "as", false }, { 0, 0, 0 } }; static ::DBus::IntrospectedArgument getVersion_args[] = @@ -123,17 +77,12 @@ public: { "list", "as", false }, { 0, 0, 0 } }; - static ::DBus::IntrospectedArgument setRingtone_args[] = - { - { "ringtone", "s", true }, - { 0, 0, 0 } - }; - static ::DBus::IntrospectedArgument getRingtone_args[] = + static ::DBus::IntrospectedArgument getCodecList_args[] = { - { "ringtone", "s", false }, + { "list", "as", false }, { 0, 0, 0 } }; - static ::DBus::IntrospectedArgument getCodecList_args[] = + static ::DBus::IntrospectedArgument getToneLocaleList_args[] = { { "list", "as", false }, { 0, 0, 0 } @@ -153,85 +102,59 @@ public: { "list", "as", false }, { 0, 0, 0 } }; - static ::DBus::IntrospectedArgument setPlaybackDevice_args[] = - { - { "device", "s", true }, - { 0, 0, 0 } - }; - static ::DBus::IntrospectedArgument getPlaybackDevice_args[] = - { - { "device", "s", false }, - { 0, 0, 0 } - }; static ::DBus::IntrospectedArgument getRecordDeviceList_args[] = { { "list", "as", false }, { 0, 0, 0 } }; - static ::DBus::IntrospectedArgument setRecordDevice_args[] = - { - { "device", "s", true }, - { 0, 0, 0 } - }; - static ::DBus::IntrospectedArgument getRecordDevice_args[] = + static ::DBus::IntrospectedArgument getSampleRateList_args[] = { - { "device", "s", false }, + { "list", "as", false }, { 0, 0, 0 } }; - static ::DBus::IntrospectedArgument getSampleRateList_args[] = + static ::DBus::IntrospectedArgument getParameters_args[] = { - { "list", "as", false }, + { "parameters", "a{ss}", false }, { 0, 0, 0 } }; - static ::DBus::IntrospectedArgument setSampleRate_args[] = + static ::DBus::IntrospectedArgument setParameters_args[] = { - { "sampleRate", "s", true }, + { "parameters", "a{ss}", true }, { 0, 0, 0 } }; - static ::DBus::IntrospectedArgument getSampleRate_args[] = + static ::DBus::IntrospectedArgument parametersChanged_args[] = { - { "sampleRate", "s", false }, + { "list", "a{ss}", false }, { 0, 0, 0 } }; - static ::DBus::IntrospectedArgument updated_args[] = + static ::DBus::IntrospectedArgument accountsChanged_args[] = { { 0, 0, 0 } }; static ::DBus::IntrospectedMethod ConfigurationManager_methods[] = { { "getAccountDetails", getAccountDetails_args }, + { "setAccountDetails", setAccountDetails_args }, { "addAccount", addAccount_args }, + { "removeAccount", removeAccount_args }, { "getAccountList", getAccountList_args }, - { "setSTUN", setSTUN_args }, - { "getSTUN", getSTUN_args }, - { "setPlayTonesLocally", setPlayTonesLocally_args }, - { "getPlayTonesLocally", getPlayTonesLocally_args }, - { "setTonePulseLenght", setTonePulseLenght_args }, - { "getTonePulseLenght", getTonePulseLenght_args }, - { "getToneLocaleList", getToneLocaleList_args }, - { "setToneLocale", setToneLocale_args }, - { "getToneLocale", getToneLocale_args }, { "getVersion", getVersion_args }, { "getRingtoneList", getRingtoneList_args }, - { "setRingtone", setRingtone_args }, - { "getRingtone", getRingtone_args }, { "getCodecList", getCodecList_args }, + { "getToneLocaleList", getToneLocaleList_args }, { "setCodecPreferedOrder", setCodecPreferedOrder_args }, { "getCodecPreferedOrder", getCodecPreferedOrder_args }, { "getPlaybackDeviceList", getPlaybackDeviceList_args }, - { "setPlaybackDevice", setPlaybackDevice_args }, - { "getPlaybackDevice", getPlaybackDevice_args }, { "getRecordDeviceList", getRecordDeviceList_args }, - { "setRecordDevice", setRecordDevice_args }, - { "getRecordDevice", getRecordDevice_args }, { "getSampleRateList", getSampleRateList_args }, - { "setSampleRate", setSampleRate_args }, - { "getSampleRate", getSampleRate_args }, + { "getParameters", getParameters_args }, + { "setParameters", setParameters_args }, { 0, 0 } }; static ::DBus::IntrospectedMethod ConfigurationManager_signals[] = { - { "updated", updated_args }, + { "parametersChanged", parametersChanged_args }, + { "accountsChanged", accountsChanged_args }, { 0, 0 } }; static ::DBus::IntrospectedProperty ConfigurationManager_properties[] = @@ -260,41 +183,36 @@ public: * you will have to implement them in your ObjectAdaptor */ virtual std::map< ::DBus::String, ::DBus::String > getAccountDetails( const ::DBus::String& accountID ) = 0; + virtual void setAccountDetails( const ::DBus::String& accountID, const std::map< ::DBus::String, ::DBus::String >& details ) = 0; virtual void addAccount( const std::map< ::DBus::String, ::DBus::String >& details ) = 0; + virtual void removeAccount( const ::DBus::String& accoundID ) = 0; virtual std::vector< ::DBus::String > getAccountList( ) = 0; - virtual void setSTUN( const std::map< ::DBus::String, ::DBus::String >& details ) = 0; - virtual std::map< ::DBus::String, ::DBus::String > getSTUN( ) = 0; - virtual void setPlayTonesLocally( const ::DBus::Bool& flag ) = 0; - virtual ::DBus::Bool getPlayTonesLocally( ) = 0; - virtual void setTonePulseLenght( const ::DBus::Int32& milliseconds ) = 0; - virtual ::DBus::Int32 getTonePulseLenght( ) = 0; - virtual void getToneLocaleList( const std::vector< ::DBus::String >& list ) = 0; - virtual void setToneLocale( const ::DBus::String& locale ) = 0; - virtual ::DBus::String getToneLocale( ) = 0; virtual ::DBus::String getVersion( ) = 0; virtual std::vector< ::DBus::String > getRingtoneList( ) = 0; - virtual void setRingtone( const ::DBus::String& ringtone ) = 0; - virtual ::DBus::String getRingtone( ) = 0; virtual std::vector< ::DBus::String > getCodecList( ) = 0; + virtual std::vector< ::DBus::String > getToneLocaleList( ) = 0; virtual void setCodecPreferedOrder( const std::vector< ::DBus::String >& ringtone ) = 0; virtual std::vector< ::DBus::String > getCodecPreferedOrder( ) = 0; virtual std::vector< ::DBus::String > getPlaybackDeviceList( ) = 0; - virtual void setPlaybackDevice( const ::DBus::String& device ) = 0; - virtual ::DBus::String getPlaybackDevice( ) = 0; virtual std::vector< ::DBus::String > getRecordDeviceList( ) = 0; - virtual void setRecordDevice( const ::DBus::String& device ) = 0; - virtual ::DBus::String getRecordDevice( ) = 0; virtual std::vector< ::DBus::String > getSampleRateList( ) = 0; - virtual void setSampleRate( const ::DBus::String& sampleRate ) = 0; - virtual ::DBus::String getSampleRate( ) = 0; + virtual std::map< ::DBus::String, ::DBus::String > getParameters( ) = 0; + virtual void setParameters( const std::map< ::DBus::String, ::DBus::String >& parameters ) = 0; public: /* signal emitters for this interface */ - void updated( ) + void parametersChanged( const std::map< ::DBus::String, ::DBus::String >& arg1 ) { - ::DBus::SignalMessage sig("updated"); + ::DBus::SignalMessage sig("parametersChanged"); + ::DBus::MessageIter wi = sig.writer(); + wi << arg1; + emit_signal(sig); + } + void accountsChanged( ) + { + ::DBus::SignalMessage sig("accountsChanged"); emit_signal(sig); } @@ -313,105 +231,39 @@ private: wi << argout1; return reply; } - ::DBus::Message _addAccount_stub( const ::DBus::CallMessage& call ) - { - ::DBus::MessageIter ri = call.reader(); - - std::map< ::DBus::String, ::DBus::String > argin1; ri >> argin1; - addAccount(argin1); - ::DBus::ReturnMessage reply(call); - return reply; - } - ::DBus::Message _getAccountList_stub( const ::DBus::CallMessage& call ) + ::DBus::Message _setAccountDetails_stub( const ::DBus::CallMessage& call ) { ::DBus::MessageIter ri = call.reader(); - std::vector< ::DBus::String > argout1 = getAccountList(); + ::DBus::String argin1; ri >> argin1; + std::map< ::DBus::String, ::DBus::String > argin2; ri >> argin2; + setAccountDetails(argin1, argin2); ::DBus::ReturnMessage reply(call); - ::DBus::MessageIter wi = reply.writer(); - wi << argout1; return reply; } - ::DBus::Message _setSTUN_stub( const ::DBus::CallMessage& call ) + ::DBus::Message _addAccount_stub( const ::DBus::CallMessage& call ) { ::DBus::MessageIter ri = call.reader(); std::map< ::DBus::String, ::DBus::String > argin1; ri >> argin1; - setSTUN(argin1); - ::DBus::ReturnMessage reply(call); - return reply; - } - ::DBus::Message _getSTUN_stub( const ::DBus::CallMessage& call ) - { - ::DBus::MessageIter ri = call.reader(); - - std::map< ::DBus::String, ::DBus::String > argout1 = getSTUN(); - ::DBus::ReturnMessage reply(call); - ::DBus::MessageIter wi = reply.writer(); - wi << argout1; - return reply; - } - ::DBus::Message _setPlayTonesLocally_stub( const ::DBus::CallMessage& call ) - { - ::DBus::MessageIter ri = call.reader(); - - ::DBus::Bool argin1; ri >> argin1; - setPlayTonesLocally(argin1); - ::DBus::ReturnMessage reply(call); - return reply; - } - ::DBus::Message _getPlayTonesLocally_stub( const ::DBus::CallMessage& call ) - { - ::DBus::MessageIter ri = call.reader(); - - ::DBus::Bool argout1 = getPlayTonesLocally(); - ::DBus::ReturnMessage reply(call); - ::DBus::MessageIter wi = reply.writer(); - wi << argout1; - return reply; - } - ::DBus::Message _setTonePulseLenght_stub( const ::DBus::CallMessage& call ) - { - ::DBus::MessageIter ri = call.reader(); - - ::DBus::Int32 argin1; ri >> argin1; - setTonePulseLenght(argin1); - ::DBus::ReturnMessage reply(call); - return reply; - } - ::DBus::Message _getTonePulseLenght_stub( const ::DBus::CallMessage& call ) - { - ::DBus::MessageIter ri = call.reader(); - - ::DBus::Int32 argout1 = getTonePulseLenght(); - ::DBus::ReturnMessage reply(call); - ::DBus::MessageIter wi = reply.writer(); - wi << argout1; - return reply; - } - ::DBus::Message _getToneLocaleList_stub( const ::DBus::CallMessage& call ) - { - ::DBus::MessageIter ri = call.reader(); - - std::vector< ::DBus::String > argin1; ri >> argin1; - getToneLocaleList(argin1); + addAccount(argin1); ::DBus::ReturnMessage reply(call); return reply; } - ::DBus::Message _setToneLocale_stub( const ::DBus::CallMessage& call ) + ::DBus::Message _removeAccount_stub( const ::DBus::CallMessage& call ) { ::DBus::MessageIter ri = call.reader(); ::DBus::String argin1; ri >> argin1; - setToneLocale(argin1); + removeAccount(argin1); ::DBus::ReturnMessage reply(call); return reply; } - ::DBus::Message _getToneLocale_stub( const ::DBus::CallMessage& call ) + ::DBus::Message _getAccountList_stub( const ::DBus::CallMessage& call ) { ::DBus::MessageIter ri = call.reader(); - ::DBus::String argout1 = getToneLocale(); + std::vector< ::DBus::String > argout1 = getAccountList(); ::DBus::ReturnMessage reply(call); ::DBus::MessageIter wi = reply.writer(); wi << argout1; @@ -437,30 +289,21 @@ private: wi << argout1; return reply; } - ::DBus::Message _setRingtone_stub( const ::DBus::CallMessage& call ) - { - ::DBus::MessageIter ri = call.reader(); - - ::DBus::String argin1; ri >> argin1; - setRingtone(argin1); - ::DBus::ReturnMessage reply(call); - return reply; - } - ::DBus::Message _getRingtone_stub( const ::DBus::CallMessage& call ) + ::DBus::Message _getCodecList_stub( const ::DBus::CallMessage& call ) { ::DBus::MessageIter ri = call.reader(); - ::DBus::String argout1 = getRingtone(); + std::vector< ::DBus::String > argout1 = getCodecList(); ::DBus::ReturnMessage reply(call); ::DBus::MessageIter wi = reply.writer(); wi << argout1; return reply; } - ::DBus::Message _getCodecList_stub( const ::DBus::CallMessage& call ) + ::DBus::Message _getToneLocaleList_stub( const ::DBus::CallMessage& call ) { ::DBus::MessageIter ri = call.reader(); - std::vector< ::DBus::String > argout1 = getCodecList(); + std::vector< ::DBus::String > argout1 = getToneLocaleList(); ::DBus::ReturnMessage reply(call); ::DBus::MessageIter wi = reply.writer(); wi << argout1; @@ -495,25 +338,6 @@ private: wi << argout1; return reply; } - ::DBus::Message _setPlaybackDevice_stub( const ::DBus::CallMessage& call ) - { - ::DBus::MessageIter ri = call.reader(); - - ::DBus::String argin1; ri >> argin1; - setPlaybackDevice(argin1); - ::DBus::ReturnMessage reply(call); - return reply; - } - ::DBus::Message _getPlaybackDevice_stub( const ::DBus::CallMessage& call ) - { - ::DBus::MessageIter ri = call.reader(); - - ::DBus::String argout1 = getPlaybackDevice(); - ::DBus::ReturnMessage reply(call); - ::DBus::MessageIter wi = reply.writer(); - wi << argout1; - return reply; - } ::DBus::Message _getRecordDeviceList_stub( const ::DBus::CallMessage& call ) { ::DBus::MessageIter ri = call.reader(); @@ -524,25 +348,6 @@ private: wi << argout1; return reply; } - ::DBus::Message _setRecordDevice_stub( const ::DBus::CallMessage& call ) - { - ::DBus::MessageIter ri = call.reader(); - - ::DBus::String argin1; ri >> argin1; - setRecordDevice(argin1); - ::DBus::ReturnMessage reply(call); - return reply; - } - ::DBus::Message _getRecordDevice_stub( const ::DBus::CallMessage& call ) - { - ::DBus::MessageIter ri = call.reader(); - - ::DBus::String argout1 = getRecordDevice(); - ::DBus::ReturnMessage reply(call); - ::DBus::MessageIter wi = reply.writer(); - wi << argout1; - return reply; - } ::DBus::Message _getSampleRateList_stub( const ::DBus::CallMessage& call ) { ::DBus::MessageIter ri = call.reader(); @@ -553,23 +358,23 @@ private: wi << argout1; return reply; } - ::DBus::Message _setSampleRate_stub( const ::DBus::CallMessage& call ) + ::DBus::Message _getParameters_stub( const ::DBus::CallMessage& call ) { ::DBus::MessageIter ri = call.reader(); - ::DBus::String argin1; ri >> argin1; - setSampleRate(argin1); + std::map< ::DBus::String, ::DBus::String > argout1 = getParameters(); ::DBus::ReturnMessage reply(call); + ::DBus::MessageIter wi = reply.writer(); + wi << argout1; return reply; } - ::DBus::Message _getSampleRate_stub( const ::DBus::CallMessage& call ) + ::DBus::Message _setParameters_stub( const ::DBus::CallMessage& call ) { ::DBus::MessageIter ri = call.reader(); - ::DBus::String argout1 = getSampleRate(); + std::map< ::DBus::String, ::DBus::String > argin1; ri >> argin1; + setParameters(argin1); ::DBus::ReturnMessage reply(call); - ::DBus::MessageIter wi = reply.writer(); - wi << argout1; return reply; } }; diff --git a/src/dbus/configurationmanager-introspec.xml b/src/dbus/configurationmanager-introspec.xml index 80cca46ce292ddbb8bace526ad1e06d21f98413f..1d95613c973eba15ba5c128b9968f9797dac289f 100644 --- a/src/dbus/configurationmanager-introspec.xml +++ b/src/dbus/configurationmanager-introspec.xml @@ -7,51 +7,21 @@ <arg type="a{ss}" name="details" direction="out"/> </method> - <method name="addAccount"> + <method name="setAccountDetails"> + <arg type="s" name="accountID" direction="in"/> <arg type="a{ss}" name="details" direction="in"/> </method> - <method name="getAccountList"> - <arg type="as" name="list" direction="out"/> - </method> - - - - <method name="setSTUN"> + <method name="addAccount"> <arg type="a{ss}" name="details" direction="in"/> </method> - <method name="getSTUN"> - <arg type="a{ss}" name="details" direction="out"/> - </method> - - - <method name="setPlayTonesLocally"> - <arg type="b" name="flag" direction="in"/> - </method> - - <method name="getPlayTonesLocally"> - <arg type="b" name="flag" direction="out"/> - </method> - - <method name="setTonePulseLenght"> - <arg type="i" name="milliseconds" direction="in"/> - </method> - - <method name="getTonePulseLenght"> - <arg type="i" name="milliseconds" direction="out"/> - </method> - - <method name="getToneLocaleList"> - <arg type="as" name="list" direction="in"/> - </method> - - <method name="setToneLocale"> - <arg type="s" name="locale" direction="in"/> + <method name="removeAccount"> + <arg type="s" name="accoundID" direction="in"/> </method> - <method name="getToneLocale"> - <arg type="s" name="locale" direction="out"/> + <method name="getAccountList"> + <arg type="as" name="list" direction="out"/> </method> <method name="getVersion"> @@ -62,15 +32,11 @@ <arg type="as" name="list" direction="out"/> </method> - <method name="setRingtone"> - <arg type="s" name="ringtone" direction="in"/> - </method> - - <method name="getRingtone"> - <arg type="s" name="ringtone" direction="out"/> + <method name="getCodecList"> + <arg type="as" name="list" direction="out"/> </method> - <method name="getCodecList"> + <method name="getToneLocaleList"> <arg type="as" name="list" direction="out"/> </method> @@ -82,49 +48,31 @@ <arg type="as" name="ringtone" direction="out"/> </method> - <method name="getPlaybackDeviceList"> <arg type="as" name="list" direction="out"/> </method> - <method name="setPlaybackDevice"> - <arg type="s" name="device" direction="in"/> - </method> - - <method name="getPlaybackDevice"> - <arg type="s" name="device" direction="out"/> - </method> - - <method name="getRecordDeviceList"> <arg type="as" name="list" direction="out"/> </method> - <method name="setRecordDevice"> - <arg type="s" name="device" direction="in"/> - </method> - - <method name="getRecordDevice"> - <arg type="s" name="device" direction="out"/> - </method> - - <method name="getSampleRateList"> <arg type="as" name="list" direction="out"/> </method> - <method name="setSampleRate"> - <arg type="s" name="sampleRate" direction="in"/> + <method name="getParameters"> + <arg type="a{ss}" name="parameters" direction="out"/> </method> - <method name="getSampleRate"> - <arg type="s" name="sampleRate" direction="out"/> + <method name="setParameters"> + <arg type="a{ss}" name="parameters" direction="in"/> </method> + <signal name="parametersChanged"> + <arg type="a{ss}" name="list" direction="out"/> + </signal> - - - <signal name="updated"> + <signal name="accountsChanged"> </signal> </interface> </node> diff --git a/src/dbus/configurationmanager.cpp b/src/dbus/configurationmanager.cpp index fe8506c8972b79994548cc3b7cb02bf5a17f7cd3..be4aaf450febd54ec3ec6355121c94863299b42a 100644 --- a/src/dbus/configurationmanager.cpp +++ b/src/dbus/configurationmanager.cpp @@ -34,98 +34,49 @@ std::map< ::DBus::String, ::DBus::String > ConfigurationManager::getAccountDetails( const ::DBus::String& accountID ) { _debug("ConfigurationManager::getAccountDetails received\n"); - + return Manager::instance().getAccountDetails(accountID); } - void -ConfigurationManager::addAccount( const std::map< ::DBus::String, ::DBus::String >& details ) -{ - _debug("ConfigurationManager::addAccount received\n"); - -} - - -std::vector< ::DBus::String > -ConfigurationManager::getAccountList( ) -{ - _debug("ConfigurationManager::getAccountList received\n"); - return Manager::instance().getAccountList(); - -} - - -void -ConfigurationManager::setSTUN( const std::map< ::DBus::String, ::DBus::String >& details ) -{ - _debug("ConfigurationManager::setSTUN received\n"); - -} - - -std::map< ::DBus::String, ::DBus::String > -ConfigurationManager::getSTUN( ) +ConfigurationManager::setAccountDetails( const ::DBus::String& accountID, + const std::map< ::DBus::String, ::DBus::String >& details ) { - _debug("ConfigurationManager::getSTUN received\n"); - + _debug("ConfigurationManager::setAccountDetails received\n"); + Manager::instance().setAccountDetails(accountID, details); } - void -ConfigurationManager::setPlayTonesLocally( const ::DBus::Bool& flag ) -{ - _debug("ConfigurationManager::setPlayTonesLocally received\n"); - -} - - -::DBus::Bool -ConfigurationManager::getPlayTonesLocally( ) +ConfigurationManager::addAccount( const std::map< ::DBus::String, ::DBus::String >& details ) { - _debug("ConfigurationManager::getPlayTonesLocally received\n"); + _debug("ConfigurationManager::addAccount received\n"); } void -ConfigurationManager::setTonePulseLenght( const ::DBus::Int32& milliseconds ) +ConfigurationManager::removeAccount( const ::DBus::String& accoundID ) { - _debug("ConfigurationManager::setTonePulseLenght received\n"); - + _debug("ConfigurationManager::removeAccount received\n"); + return Manager::instance().removeAccount(accoundID); } - -::DBus::Int32 -ConfigurationManager::getTonePulseLenght( ) +std::vector< ::DBus::String > +ConfigurationManager::getAccountList( ) { - _debug("ConfigurationManager::getTonePulseLenght received\n"); - + _debug("ConfigurationManager::getAccountList received\n"); + return Manager::instance().getAccountList(); + } -void -ConfigurationManager::getToneLocaleList( const std::vector< ::DBus::String >& list ) +std::vector< ::DBus::String > +ConfigurationManager::getToneLocaleList( ) { _debug("ConfigurationManager::getToneLocaleList received\n"); } -void -ConfigurationManager::setToneLocale( const ::DBus::String& locale ) -{ - _debug("ConfigurationManager::setToneLocale received\n"); - -} - - -::DBus::String -ConfigurationManager::getToneLocale( ) -{ - _debug("ConfigurationManager::getToneLocale received\n"); - -} - ::DBus::String ConfigurationManager::getVersion( ) @@ -143,21 +94,6 @@ ConfigurationManager::getRingtoneList( ) } -void -ConfigurationManager::setRingtone( const ::DBus::String& ringtone ) -{ - _debug("ConfigurationManager::setRingtone received\n"); - -} - - -::DBus::String -ConfigurationManager::getRingtone( ) -{ - _debug("ConfigurationManager::getRingtone received\n"); - -} - std::vector< ::DBus::String > ConfigurationManager::getCodecList( ) @@ -190,23 +126,6 @@ ConfigurationManager::getPlaybackDeviceList( ) } - -void -ConfigurationManager::setPlaybackDevice( const ::DBus::String& device ) -{ - _debug("ConfigurationManager::setPlaybackDevice received\n"); - -} - - -::DBus::String -ConfigurationManager::getPlaybackDevice( ) -{ - _debug("ConfigurationManager::getPlaybackDevice received\n"); - -} - - std::vector< ::DBus::String > ConfigurationManager::getRecordDeviceList( ) { @@ -214,23 +133,6 @@ ConfigurationManager::getRecordDeviceList( ) } - -void -ConfigurationManager::setRecordDevice( const ::DBus::String& device ) -{ - _debug("ConfigurationManager::setRecordDevice received\n"); - -} - - -::DBus::String -ConfigurationManager::getRecordDevice( ) -{ - _debug("ConfigurationManager::getRecordDevice received\n"); - -} - - std::vector< ::DBus::String > ConfigurationManager::getSampleRateList( ) { @@ -238,20 +140,14 @@ ConfigurationManager::getSampleRateList( ) } - -void -ConfigurationManager::setSampleRate( const ::DBus::String& sampleRate ) +std::map< ::DBus::String, ::DBus::String > +ConfigurationManager::getParameters( ) { - _debug("ConfigurationManager::setSampleRate received\n"); } - -::DBus::String -ConfigurationManager::getSampleRate( ) +void +ConfigurationManager::setParameters( const std::map< ::DBus::String, ::DBus::String >& parameters ) { - _debug("ConfigurationManager::getSampleRate received\n"); } - - diff --git a/src/dbus/configurationmanager.h b/src/dbus/configurationmanager.h index 0e30b0a9194676e15b1dc8a3211202caeebf4910..4e213cc41f4eea945d9c983e8471184327787109 100644 --- a/src/dbus/configurationmanager.h +++ b/src/dbus/configurationmanager.h @@ -37,33 +37,21 @@ public: public: std::map< ::DBus::String, ::DBus::String > getAccountDetails( const ::DBus::String& accountID ); + void setAccountDetails( const ::DBus::String& accountID, const std::map< ::DBus::String, ::DBus::String >& details ); void addAccount( const std::map< ::DBus::String, ::DBus::String >& details ); + void removeAccount( const ::DBus::String& accoundID ); std::vector< ::DBus::String > getAccountList( ); - void setSTUN( const std::map< ::DBus::String, ::DBus::String >& details ); - std::map< ::DBus::String, ::DBus::String > getSTUN( ); - void setPlayTonesLocally( const ::DBus::Bool& flag ); - ::DBus::Bool getPlayTonesLocally( ); - void setTonePulseLenght( const ::DBus::Int32& milliseconds ); - ::DBus::Int32 getTonePulseLenght( ); - void getToneLocaleList( const std::vector< ::DBus::String >& list ); - void setToneLocale( const ::DBus::String& locale ); - ::DBus::String getToneLocale( ); ::DBus::String getVersion( ); std::vector< ::DBus::String > getRingtoneList( ); - void setRingtone( const ::DBus::String& ringtone ); - ::DBus::String getRingtone( ); std::vector< ::DBus::String > getCodecList( ); + std::vector< ::DBus::String > getToneLocaleList( ); void setCodecPreferedOrder( const std::vector< ::DBus::String >& ringtone ); std::vector< ::DBus::String > getCodecPreferedOrder( ); std::vector< ::DBus::String > getPlaybackDeviceList( ); - void setPlaybackDevice( const ::DBus::String& device ); - ::DBus::String getPlaybackDevice( ); std::vector< ::DBus::String > getRecordDeviceList( ); - void setRecordDevice( const ::DBus::String& device ); - ::DBus::String getRecordDevice( ); std::vector< ::DBus::String > getSampleRateList( ); - void setSampleRate( const ::DBus::String& sampleRate ); - ::DBus::String getSampleRate( ); + std::map< ::DBus::String, ::DBus::String > getParameters( ); + void setParameters( const std::map< ::DBus::String, ::DBus::String >& parameters ); }; diff --git a/src/dbus/dbusmanagerimpl.h b/src/dbus/dbusmanagerimpl.h index b9142f54757624ed1cfcb8fa81010952b799fe5b..a08802afa5baa1485a9274eee78f4035d029ac20 100644 --- a/src/dbus/dbusmanagerimpl.h +++ b/src/dbus/dbusmanagerimpl.h @@ -26,6 +26,7 @@ class DBusManagerImpl { public: CallManager * getCallManager(){ return _callManager; }; + ConfigurationManager * getConfigurationManager(){ return _configurationManager; }; int exec(); static const char* SERVER_NAME; diff --git a/src/managerimpl.cpp b/src/managerimpl.cpp index b9cccc34f73ac31cca47c71bed6712bcd0d57a6c..af47d25aa5179a7bf8f092568261054bc4f7577b 100644 --- a/src/managerimpl.cpp +++ b/src/managerimpl.cpp @@ -33,6 +33,7 @@ #include <cc++/file.h> #include "manager.h" +#include "sipaccount.h" #include "audio/audiolayer.h" #include "audio/audiocodec.h" #include "audio/tonelist.h" @@ -619,7 +620,7 @@ ManagerImpl::peerAnsweredCall(const CallID& id) if (isCurrentCall(id)) { stopTone(false); } - if (_dbus) _dbus->getCallManager()->pickedUp(id); + if (_dbus) _dbus->getCallManager()->callStateChanged(id, "CURRENT"); } //THREAD=VoIP Call=Outgoing @@ -629,7 +630,7 @@ ManagerImpl::peerRingingCall(const CallID& id) if (isCurrentCall(id)) { ringback(); } - if (_dbus) _dbus->getCallManager()->ring(id); + if (_dbus) _dbus->getCallManager()->callStateChanged(id, "RINGING"); } //THREAD=VoIP Call=Outgoing/Ingoing @@ -647,7 +648,7 @@ ManagerImpl::peerHungupCall(const CallID& id) } removeWaitingCall(id); removeCallAccount(id); - if (_dbus) _dbus->getCallManager()->hungUp(id); + if (_dbus) _dbus->getCallManager()->callStateChanged(id, "HUNGUP"); } //THREAD=VoIP @@ -660,7 +661,7 @@ ManagerImpl::callBusy(const CallID& id) { } removeCallAccount(id); removeWaitingCall(id); - //if(_gui) _gui->displayErrorText( id, "Call is busy"); + if (_dbus) _dbus->getCallManager()->callStateChanged(id, "BUSY"); } //THREAD=VoIP @@ -672,11 +673,10 @@ ManagerImpl::callFailure(const CallID& id) playATone(Tone::TONE_BUSY); switchCall(""); } - /*if (_gui) { - _gui->callFailure(id); - }*/ removeCallAccount(id); removeWaitingCall(id); + if (_dbus) _dbus->getCallManager()->callStateChanged(id, "FAILURE"); + } //THREAD=VoIP @@ -730,14 +730,14 @@ ManagerImpl::displayConfigError (const std::string& message) void ManagerImpl::startVoiceMessageNotification(const AccountID& accountId, const std::string& nb_msg) { - //if (_gui) _gui->sendVoiceNbMessage(accountId, nb_msg); + if (_dbus) _dbus->getCallManager()->voiceMailNotify(accountId, atoi(nb_msg.c_str()) ); } //THREAD=VoIP void ManagerImpl::stopVoiceMessageNotification(const AccountID& accountId) { - //if (_gui) _gui->sendVoiceNbMessage(accountId, std::string("0")); + if (_dbus) _dbus->getCallManager()->voiceMailNotify(accountId, 0 ); } //THREAD=VoIP @@ -747,7 +747,7 @@ ManagerImpl::registrationSucceed(const AccountID& accountid) Account* acc = getAccount(accountid); if ( acc ) { acc->setState(true); - //if (_gui) _gui->sendRegistrationState(accountid, true); + if (_dbus) _dbus->getConfigurationManager()->accountsChanged(); } } @@ -758,7 +758,7 @@ ManagerImpl::registrationFailed(const AccountID& accountid) Account* acc = getAccount(accountid); if ( acc ) { acc->setState(false); - //if (_gui) _gui->sendRegistrationState(accountid, false); + if (_dbus) _dbus->getConfigurationManager()->accountsChanged(); } } @@ -1497,19 +1497,125 @@ ManagerImpl::getDirListing(const std::string& sequenceId, const std::string& pat std::vector< std::string > ManagerImpl::getAccountList() { - std::vector< std::string > v; - - AccountMap::iterator iter = _accountMap.begin(); + std::vector< std::string > v; + + AccountMap::iterator iter = _accountMap.begin(); + while ( iter != _accountMap.end() ) { + if ( iter->second != 0 ) { + _debug("Account List: %s\n", iter->first.data()); + v.push_back(iter->first.data()); + + } + iter++; + } + _debug("Size: %d\n", v.size()); + return v; +} + + + +std::map< std::string, std::string > +ManagerImpl::getAccountDetails(const AccountID& accountID) +{ + std::map<std::string, std::string> a; + + + a.insert( + std::pair<std::string, std::string>( + CONFIG_ACCOUNT_ALIAS, + getConfigString(accountID, CONFIG_ACCOUNT_ALIAS) + ) + ); + a.insert( + std::pair<std::string, std::string>( + CONFIG_ACCOUNT_AUTO_REGISTER, + getConfigString(accountID, CONFIG_ACCOUNT_AUTO_REGISTER)== "1" ? "TRUE": "FALSE" + ) + ); + a.insert( + std::pair<std::string, std::string>( + CONFIG_ACCOUNT_ENABLE, + getConfigString(accountID, CONFIG_ACCOUNT_ENABLE) == "1" ? "TRUE": "FALSE" + ) + ); + a.insert( + std::pair<std::string, std::string>( + "Status", + _accountMap[accountID]->getState() ? "REGISTERED": "UNREGISTERED" + ) + ); + a.insert( + std::pair<std::string, std::string>( + CONFIG_ACCOUNT_TYPE, + getConfigString(accountID, CONFIG_ACCOUNT_TYPE) + ) + ); + a.insert( + std::pair<std::string, std::string>( + SIP_FULL_NAME, + getConfigString(accountID, SIP_FULL_NAME) + ) + ); + a.insert( + std::pair<std::string, std::string>( + SIP_USER_PART, + getConfigString(accountID, SIP_USER_PART) + ) + ); + a.insert( + std::pair<std::string, std::string>( + SIP_AUTH_NAME, + getConfigString(accountID, SIP_AUTH_NAME) + ) + ); + a.insert( + std::pair<std::string, std::string>( + SIP_PASSWORD, + getConfigString(accountID, SIP_PASSWORD) + ) + ); + a.insert( + std::pair<std::string, std::string>( + SIP_HOST_PART, + getConfigString(accountID, SIP_HOST_PART) + ) + ); + + return a; +} + +void +ManagerImpl::setAccountDetails( const ::DBus::String& accountID, + const std::map< ::DBus::String, ::DBus::String >& details ) +{ + + setConfig(accountID, CONFIG_ACCOUNT_ALIAS, (*details.find(CONFIG_ACCOUNT_ALIAS)).second); + setConfig(accountID, CONFIG_ACCOUNT_AUTO_REGISTER, + (*details.find(CONFIG_ACCOUNT_AUTO_REGISTER)).second == "TRUE" ? "1": "0" ); + setConfig(accountID, CONFIG_ACCOUNT_ENABLE, + (*details.find(CONFIG_ACCOUNT_ENABLE)).second == "TRUE" ? "1": "0" ); + setConfig(accountID, CONFIG_ACCOUNT_TYPE, (*details.find(CONFIG_ACCOUNT_TYPE)).second); + setConfig(accountID, SIP_FULL_NAME, (*details.find(SIP_FULL_NAME)).second); + setConfig(accountID, SIP_USER_PART, (*details.find(SIP_USER_PART)).second); + setConfig(accountID, SIP_AUTH_NAME, (*details.find(SIP_AUTH_NAME)).second); + setConfig(accountID, SIP_PASSWORD, (*details.find(SIP_PASSWORD)).second); + setConfig(accountID, SIP_HOST_PART, (*details.find(SIP_HOST_PART)).second); + +} + +void +ManagerImpl::removeAccount(const AccountID& accountID) +{ + _debug("Not implemented\n"); + //TODO + /*AccountMap::iterator iter = _accountMap.begin(); while ( iter != _accountMap.end() ) { - if ( iter->second != 0 ) { - _debug("Account List: %s\n", iter->first.data()); - v.push_back(iter->first.data()); - + _debug("Account %s == %s ", iter->first, accountID); + if ( iter->first == accountID ) { + _accountMap.erase(iter); } iter++; - } - _debug("Size: %d\n", v.size()); - return v; + }*/ } //THREAD=Main diff --git a/src/managerimpl.h b/src/managerimpl.h index 3d23f097335e13d30372735815fb63bfb89b1904..a7b6b5062bef5fe25dd8beae648a47ca2af491cc 100644 --- a/src/managerimpl.h +++ b/src/managerimpl.h @@ -192,6 +192,10 @@ public: * @return A list of accoundIDs */ std::vector< std::string > getAccountList(); + std::map< std::string, std::string > getAccountDetails(const AccountID& accountID); + void setAccountDetails( const ::DBus::String& accountID, + const std::map< ::DBus::String, ::DBus::String >& details ); + void removeAccount(const AccountID& accountID); bool getConfigAll(const std::string& sequenceId); bool getConfig(const std::string& section, const std::string& name, TokenList& arg); bool setConfig(const std::string& section, const std::string& name, const std::string& value); diff --git a/src/sipaccount.cpp b/src/sipaccount.cpp index ac1ef26f4bada3ec853d0aef17f8603275aae054..fbf4501346d47557e88259d98680cc7ae587c1e3 100644 --- a/src/sipaccount.cpp +++ b/src/sipaccount.cpp @@ -20,14 +20,7 @@ #include "sipvoiplink.h" #include "manager.h" -#define SIP_FULL_NAME "SIP.fullName" -#define SIP_USER_PART "SIP.userPart" -#define SIP_AUTH_NAME "SIP.username" -#define SIP_PASSWORD "SIP.password" -#define SIP_HOST_PART "SIP.hostPart" -#define SIP_PROXY "SIP.proxy" -#define SIP_STUN_SERVER "STUN.STUNserver" -#define SIP_USE_STUN "STUN.useStun" + SIPAccount::SIPAccount(const AccountID& accountID) diff --git a/src/sipaccount.h b/src/sipaccount.h index e2bf11e66e333886280922b2054c666dfbcacd7b..9ae43a9f3187033ca9ec4ec53dd908c35ed0ad8d 100644 --- a/src/sipaccount.h +++ b/src/sipaccount.h @@ -21,6 +21,15 @@ #include "account.h" +#define SIP_FULL_NAME "SIP.fullName" +#define SIP_USER_PART "SIP.userPart" +#define SIP_AUTH_NAME "SIP.username" +#define SIP_PASSWORD "SIP.password" +#define SIP_HOST_PART "SIP.hostPart" +#define SIP_PROXY "SIP.proxy" +#define SIP_STUN_SERVER "STUN.STUNserver" +#define SIP_USE_STUN "STUN.useStun" + /** * A Sip Account specify SIP specific functions and object (SIPCall/SIPVoIPLink) * @author Yan Morin <yan.morin@gmail.com>