Convert to UNIX EOL

This commit is contained in:
Serge Lamikhov-Center 2012-11-26 23:48:22 +02:00
parent 7573aeeef3
commit 4d165a6d42
72 changed files with 4401 additions and 4401 deletions

20
.gitignore vendored
View File

@ -1,10 +1,10 @@
autom4te.cache autom4te.cache
build build
Debug Debug
ELFIO.sdf ELFIO.sdf
ELFIO.v11.suo ELFIO.v11.suo
ELFIO.opensdf ELFIO.opensdf
ELFIOTest/Debug ELFIOTest/Debug
examples/ELFDump/Debug examples/ELFDump/Debug

10
AUTHORS
View File

@ -1,5 +1,5 @@
ELFIO library implemented by ELFIO library implemented by
Serge Lamikhov-Center <to_serge@users.sourceforge.net> Serge Lamikhov-Center <to_serge@users.sourceforge.net>
ELFIO tutorial - Serge Lamikhov-Center ELFIO tutorial - Serge Lamikhov-Center
Allan Finch Allan Finch

42
COPYING
View File

@ -1,21 +1,21 @@
MIT License MIT License
Copyright (C) 2001-2011 by Serge Lamikhov-Center Copyright (C) 2001-2011 by Serge Lamikhov-Center
Permission is hereby granted, free of charge, to any person obtaining a copy Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions: furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software. all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE. THE SOFTWARE.

730
INSTALL
View File

@ -1,365 +1,365 @@
Installation Instructions Installation Instructions
************************* *************************
Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005, Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
2006, 2007, 2008, 2009 Free Software Foundation, Inc. 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification, Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright are permitted in any medium without royalty provided the copyright
notice and this notice are preserved. This file is offered as-is, notice and this notice are preserved. This file is offered as-is,
without warranty of any kind. without warranty of any kind.
Basic Installation Basic Installation
================== ==================
Briefly, the shell commands `./configure; make; make install' should Briefly, the shell commands `./configure; make; make install' should
configure, build, and install this package. The following configure, build, and install this package. The following
more-detailed instructions are generic; see the `README' file for more-detailed instructions are generic; see the `README' file for
instructions specific to this package. Some packages provide this instructions specific to this package. Some packages provide this
`INSTALL' file but do not implement all of the features documented `INSTALL' file but do not implement all of the features documented
below. The lack of an optional feature in a given package is not below. The lack of an optional feature in a given package is not
necessarily a bug. More recommendations for GNU packages can be found necessarily a bug. More recommendations for GNU packages can be found
in *note Makefile Conventions: (standards)Makefile Conventions. in *note Makefile Conventions: (standards)Makefile Conventions.
The `configure' shell script attempts to guess correct values for The `configure' shell script attempts to guess correct values for
various system-dependent variables used during compilation. It uses various system-dependent variables used during compilation. It uses
those values to create a `Makefile' in each directory of the package. those values to create a `Makefile' in each directory of the package.
It may also create one or more `.h' files containing system-dependent It may also create one or more `.h' files containing system-dependent
definitions. Finally, it creates a shell script `config.status' that definitions. Finally, it creates a shell script `config.status' that
you can run in the future to recreate the current configuration, and a you can run in the future to recreate the current configuration, and a
file `config.log' containing compiler output (useful mainly for file `config.log' containing compiler output (useful mainly for
debugging `configure'). debugging `configure').
It can also use an optional file (typically called `config.cache' It can also use an optional file (typically called `config.cache'
and enabled with `--cache-file=config.cache' or simply `-C') that saves and enabled with `--cache-file=config.cache' or simply `-C') that saves
the results of its tests to speed up reconfiguring. Caching is the results of its tests to speed up reconfiguring. Caching is
disabled by default to prevent problems with accidental use of stale disabled by default to prevent problems with accidental use of stale
cache files. cache files.
If you need to do unusual things to compile the package, please try 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 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 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 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 some point `config.cache' contains results you don't want to keep, you
may remove or edit it. may remove or edit it.
The file `configure.ac' (or `configure.in') is used to create The file `configure.ac' (or `configure.in') is used to create
`configure' by a program called `autoconf'. You need `configure.ac' if `configure' by a program called `autoconf'. You need `configure.ac' if
you want to change it or regenerate `configure' using a newer version you want to change it or regenerate `configure' using a newer version
of `autoconf'. of `autoconf'.
The simplest way to compile this package is: The simplest way to compile this package is:
1. `cd' to the directory containing the package's source code and type 1. `cd' to the directory containing the package's source code and type
`./configure' to configure the package for your system. `./configure' to configure the package for your system.
Running `configure' might take a while. While running, it prints Running `configure' might take a while. While running, it prints
some messages telling which features it is checking for. some messages telling which features it is checking for.
2. Type `make' to compile the package. 2. Type `make' to compile the package.
3. Optionally, type `make check' to run any self-tests that come with 3. Optionally, type `make check' to run any self-tests that come with
the package, generally using the just-built uninstalled binaries. the package, generally using the just-built uninstalled binaries.
4. Type `make install' to install the programs and any data files and 4. Type `make install' to install the programs and any data files and
documentation. When installing into a prefix owned by root, it is documentation. When installing into a prefix owned by root, it is
recommended that the package be configured and built as a regular recommended that the package be configured and built as a regular
user, and only the `make install' phase executed with root user, and only the `make install' phase executed with root
privileges. privileges.
5. Optionally, type `make installcheck' to repeat any self-tests, but 5. Optionally, type `make installcheck' to repeat any self-tests, but
this time using the binaries in their final installed location. this time using the binaries in their final installed location.
This target does not install anything. Running this target as a This target does not install anything. Running this target as a
regular user, particularly if the prior `make install' required regular user, particularly if the prior `make install' required
root privileges, verifies that the installation completed root privileges, verifies that the installation completed
correctly. correctly.
6. You can remove the program binaries and object files from the 6. You can remove the program binaries and object files from the
source code directory by typing `make clean'. To also remove the source code directory by typing `make clean'. To also remove the
files that `configure' created (so you can compile the package for files that `configure' created (so you can compile the package for
a different kind of computer), type `make distclean'. There is a different kind of computer), type `make distclean'. There is
also a `make maintainer-clean' target, but that is intended mainly 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 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 all sorts of other programs in order to regenerate files that came
with the distribution. with the distribution.
7. Often, you can also type `make uninstall' to remove the installed 7. Often, you can also type `make uninstall' to remove the installed
files again. In practice, not all packages have tested that files again. In practice, not all packages have tested that
uninstallation works correctly, even though it is required by the uninstallation works correctly, even though it is required by the
GNU Coding Standards. GNU Coding Standards.
8. Some packages, particularly those that use Automake, provide `make 8. Some packages, particularly those that use Automake, provide `make
distcheck', which can by used by developers to test that all other distcheck', which can by used by developers to test that all other
targets like `make install' and `make uninstall' work correctly. targets like `make install' and `make uninstall' work correctly.
This target is generally not run by end users. This target is generally not run by end users.
Compilers and Options Compilers and Options
===================== =====================
Some systems require unusual options for compilation or linking that Some systems require unusual options for compilation or linking that
the `configure' script does not know about. Run `./configure --help' the `configure' script does not know about. Run `./configure --help'
for details on some of the pertinent environment variables. for details on some of the pertinent environment variables.
You can give `configure' initial values for configuration parameters You can give `configure' initial values for configuration parameters
by setting variables in the command line or in the environment. Here by setting variables in the command line or in the environment. Here
is an example: is an example:
./configure CC=c99 CFLAGS=-g LIBS=-lposix ./configure CC=c99 CFLAGS=-g LIBS=-lposix
*Note Defining Variables::, for more details. *Note Defining Variables::, for more details.
Compiling For Multiple Architectures Compiling For Multiple Architectures
==================================== ====================================
You can compile the package for more than one kind of computer at the 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 same time, by placing the object files for each architecture in their
own directory. To do this, you can use GNU `make'. `cd' to the own directory. To do this, you can use GNU `make'. `cd' to the
directory where you want the object files and executables to go and run directory where you want the object files and executables to go and run
the `configure' script. `configure' automatically checks for the the `configure' script. `configure' automatically checks for the
source code in the directory that `configure' is in and in `..'. This source code in the directory that `configure' is in and in `..'. This
is known as a "VPATH" build. is known as a "VPATH" build.
With a non-GNU `make', it is safer to compile the package for one With a non-GNU `make', it is safer to compile the package for one
architecture at a time in the source code directory. After you have architecture at a time in the source code directory. After you have
installed the package for one architecture, use `make distclean' before installed the package for one architecture, use `make distclean' before
reconfiguring for another architecture. reconfiguring for another architecture.
On MacOS X 10.5 and later systems, you can create libraries and On MacOS X 10.5 and later systems, you can create libraries and
executables that work on multiple system types--known as "fat" or executables that work on multiple system types--known as "fat" or
"universal" binaries--by specifying multiple `-arch' options to the "universal" binaries--by specifying multiple `-arch' options to the
compiler but only a single `-arch' option to the preprocessor. Like compiler but only a single `-arch' option to the preprocessor. Like
this: this:
./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
CPP="gcc -E" CXXCPP="g++ -E" CPP="gcc -E" CXXCPP="g++ -E"
This is not guaranteed to produce working output in all cases, you This is not guaranteed to produce working output in all cases, you
may have to build one architecture at a time and combine the results may have to build one architecture at a time and combine the results
using the `lipo' tool if you have problems. using the `lipo' tool if you have problems.
Installation Names Installation Names
================== ==================
By default, `make install' installs the package's commands under By default, `make install' installs the package's commands under
`/usr/local/bin', include files under `/usr/local/include', etc. You `/usr/local/bin', include files under `/usr/local/include', etc. You
can specify an installation prefix other than `/usr/local' by giving can specify an installation prefix other than `/usr/local' by giving
`configure' the option `--prefix=PREFIX', where PREFIX must be an `configure' the option `--prefix=PREFIX', where PREFIX must be an
absolute file name. absolute file name.
You can specify separate installation prefixes for You can specify separate installation prefixes for
architecture-specific files and architecture-independent files. If you architecture-specific files and architecture-independent files. If you
pass the option `--exec-prefix=PREFIX' to `configure', the package uses pass the option `--exec-prefix=PREFIX' to `configure', the package uses
PREFIX as the prefix for installing programs and libraries. PREFIX as the prefix for installing programs and libraries.
Documentation and other data files still use the regular prefix. Documentation and other data files still use the regular prefix.
In addition, if you use an unusual directory layout you can give In addition, if you use an unusual directory layout you can give
options like `--bindir=DIR' to specify different values for particular options like `--bindir=DIR' to specify different values for particular
kinds of files. Run `configure --help' for a list of the directories kinds of files. Run `configure --help' for a list of the directories
you can set and what kinds of files go in them. In general, the you can set and what kinds of files go in them. In general, the
default for these options is expressed in terms of `${prefix}', so that default for these options is expressed in terms of `${prefix}', so that
specifying just `--prefix' will affect all of the other directory specifying just `--prefix' will affect all of the other directory
specifications that were not explicitly provided. specifications that were not explicitly provided.
The most portable way to affect installation locations is to pass the The most portable way to affect installation locations is to pass the
correct locations to `configure'; however, many packages provide one or correct locations to `configure'; however, many packages provide one or
both of the following shortcuts of passing variable assignments to the both of the following shortcuts of passing variable assignments to the
`make install' command line to change installation locations without `make install' command line to change installation locations without
having to reconfigure or recompile. having to reconfigure or recompile.
The first method involves providing an override variable for each The first method involves providing an override variable for each
affected directory. For example, `make install affected directory. For example, `make install
prefix=/alternate/directory' will choose an alternate location for all prefix=/alternate/directory' will choose an alternate location for all
directory configuration variables that were expressed in terms of directory configuration variables that were expressed in terms of
`${prefix}'. Any directories that were specified during `configure', `${prefix}'. Any directories that were specified during `configure',
but not in terms of `${prefix}', must each be overridden at install but not in terms of `${prefix}', must each be overridden at install
time for the entire installation to be relocated. The approach of time for the entire installation to be relocated. The approach of
makefile variable overrides for each directory variable is required by makefile variable overrides for each directory variable is required by
the GNU Coding Standards, and ideally causes no recompilation. the GNU Coding Standards, and ideally causes no recompilation.
However, some platforms have known limitations with the semantics of However, some platforms have known limitations with the semantics of
shared libraries that end up requiring recompilation when using this shared libraries that end up requiring recompilation when using this
method, particularly noticeable in packages that use GNU Libtool. method, particularly noticeable in packages that use GNU Libtool.
The second method involves providing the `DESTDIR' variable. For The second method involves providing the `DESTDIR' variable. For
example, `make install DESTDIR=/alternate/directory' will prepend example, `make install DESTDIR=/alternate/directory' will prepend
`/alternate/directory' before all installation names. The approach of `/alternate/directory' before all installation names. The approach of
`DESTDIR' overrides is not required by the GNU Coding Standards, and `DESTDIR' overrides is not required by the GNU Coding Standards, and
does not work on platforms that have drive letters. On the other hand, does not work on platforms that have drive letters. On the other hand,
it does better at avoiding recompilation issues, and works well even it does better at avoiding recompilation issues, and works well even
when some directory options were not specified in terms of `${prefix}' when some directory options were not specified in terms of `${prefix}'
at `configure' time. at `configure' time.
Optional Features Optional Features
================= =================
If the package supports it, you can cause programs to be installed 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 with an extra prefix or suffix on their names by giving `configure' the
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
Some packages pay attention to `--enable-FEATURE' options to Some packages pay attention to `--enable-FEATURE' options to
`configure', where FEATURE indicates an optional part of the package. `configure', where FEATURE indicates an optional part of the package.
They may also pay attention to `--with-PACKAGE' options, where 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 is something like `gnu-as' or `x' (for the X Window System). The
`README' should mention any `--enable-' and `--with-' options that the `README' should mention any `--enable-' and `--with-' options that the
package recognizes. package recognizes.
For packages that use the X Window System, `configure' can usually For packages that use the X Window System, `configure' can usually
find the X include and library files automatically, but if it doesn't, find the X include and library files automatically, but if it doesn't,
you can use the `configure' options `--x-includes=DIR' and you can use the `configure' options `--x-includes=DIR' and
`--x-libraries=DIR' to specify their locations. `--x-libraries=DIR' to specify their locations.
Some packages offer the ability to configure how verbose the Some packages offer the ability to configure how verbose the
execution of `make' will be. For these packages, running `./configure execution of `make' will be. For these packages, running `./configure
--enable-silent-rules' sets the default to minimal output, which can be --enable-silent-rules' sets the default to minimal output, which can be
overridden with `make V=1'; while running `./configure overridden with `make V=1'; while running `./configure
--disable-silent-rules' sets the default to verbose, which can be --disable-silent-rules' sets the default to verbose, which can be
overridden with `make V=0'. overridden with `make V=0'.
Particular systems Particular systems
================== ==================
On HP-UX, the default C compiler is not ANSI C compatible. If GNU On HP-UX, the default C compiler is not ANSI C compatible. If GNU
CC is not installed, it is recommended to use the following options in CC is not installed, it is recommended to use the following options in
order to use an ANSI C compiler: order to use an ANSI C compiler:
./configure CC="cc -Ae -D_XOPEN_SOURCE=500" ./configure CC="cc -Ae -D_XOPEN_SOURCE=500"
and if that doesn't work, install pre-built binaries of GCC for HP-UX. and if that doesn't work, install pre-built binaries of GCC for HP-UX.
On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
parse its `<wchar.h>' header file. The option `-nodtk' can be used as parse its `<wchar.h>' header file. The option `-nodtk' can be used as
a workaround. If GNU CC is not installed, it is therefore recommended a workaround. If GNU CC is not installed, it is therefore recommended
to try to try
./configure CC="cc" ./configure CC="cc"
and if that doesn't work, try and if that doesn't work, try
./configure CC="cc -nodtk" ./configure CC="cc -nodtk"
On Solaris, don't put `/usr/ucb' early in your `PATH'. This On Solaris, don't put `/usr/ucb' early in your `PATH'. This
directory contains several dysfunctional programs; working variants of directory contains several dysfunctional programs; working variants of
these programs are available in `/usr/bin'. So, if you need `/usr/ucb' these programs are available in `/usr/bin'. So, if you need `/usr/ucb'
in your `PATH', put it _after_ `/usr/bin'. in your `PATH', put it _after_ `/usr/bin'.
On Haiku, software installed for all users goes in `/boot/common', On Haiku, software installed for all users goes in `/boot/common',
not `/usr/local'. It is recommended to use the following options: not `/usr/local'. It is recommended to use the following options:
./configure --prefix=/boot/common ./configure --prefix=/boot/common
Specifying the System Type Specifying the System Type
========================== ==========================
There may be some features `configure' cannot figure out There may be some features `configure' cannot figure out
automatically, but needs to determine by the type of machine the package 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 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 _same_ architectures, `configure' can figure that out, but if it prints
a message saying it cannot guess the machine type, give it the 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 `--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: type, such as `sun4', or a canonical name which has the form:
CPU-COMPANY-SYSTEM CPU-COMPANY-SYSTEM
where SYSTEM can have one of these forms: where SYSTEM can have one of these forms:
OS OS
KERNEL-OS KERNEL-OS
See the file `config.sub' for the possible values of each field. If 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 `config.sub' isn't included in this package, then this package doesn't
need to know the machine type. need to know the machine type.
If you are _building_ compiler tools for cross-compiling, you should If you are _building_ compiler tools for cross-compiling, you should
use the option `--target=TYPE' to select the type of system they will use the option `--target=TYPE' to select the type of system they will
produce code for. produce code for.
If you want to _use_ a cross compiler, that generates code for a If you want to _use_ a cross compiler, that generates code for a
platform different from the build platform, you should specify the platform different from the build platform, you should specify the
"host" platform (i.e., that on which the generated programs will "host" platform (i.e., that on which the generated programs will
eventually be run) with `--host=TYPE'. eventually be run) with `--host=TYPE'.
Sharing Defaults Sharing Defaults
================ ================
If you want to set default values for `configure' scripts to share, If you want to set default values for `configure' scripts to share,
you can create a site shell script called `config.site' that gives you can create a site shell script called `config.site' that gives
default values for variables like `CC', `cache_file', and `prefix'. default values for variables like `CC', `cache_file', and `prefix'.
`configure' looks for `PREFIX/share/config.site' if it exists, then `configure' looks for `PREFIX/share/config.site' if it exists, then
`PREFIX/etc/config.site' if it exists. Or, you can set the `PREFIX/etc/config.site' if it exists. Or, you can set the
`CONFIG_SITE' environment variable to the location of the site script. `CONFIG_SITE' environment variable to the location of the site script.
A warning: not all `configure' scripts look for a site script. A warning: not all `configure' scripts look for a site script.
Defining Variables Defining Variables
================== ==================
Variables not defined in a site shell script can be set in the Variables not defined in a site shell script can be set in the
environment passed to `configure'. However, some packages may run environment passed to `configure'. However, some packages may run
configure again during the build, and the customized values of these configure again during the build, and the customized values of these
variables may be lost. In order to avoid this problem, you should set variables may be lost. In order to avoid this problem, you should set
them in the `configure' command line, using `VAR=value'. For example: them in the `configure' command line, using `VAR=value'. For example:
./configure CC=/usr/local2/bin/gcc ./configure CC=/usr/local2/bin/gcc
causes the specified `gcc' to be used as the C compiler (unless it is causes the specified `gcc' to be used as the C compiler (unless it is
overridden in the site shell script). overridden in the site shell script).
Unfortunately, this technique does not work for `CONFIG_SHELL' due to Unfortunately, this technique does not work for `CONFIG_SHELL' due to
an Autoconf bug. Until the bug is fixed you can use this workaround: an Autoconf bug. Until the bug is fixed you can use this workaround:
CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
`configure' Invocation `configure' Invocation
====================== ======================
`configure' recognizes the following options to control how it `configure' recognizes the following options to control how it
operates. operates.
`--help' `--help'
`-h' `-h'
Print a summary of all of the options to `configure', and exit. Print a summary of all of the options to `configure', and exit.
`--help=short' `--help=short'
`--help=recursive' `--help=recursive'
Print a summary of the options unique to this package's Print a summary of the options unique to this package's
`configure', and exit. The `short' variant lists options used `configure', and exit. The `short' variant lists options used
only in the top level, while the `recursive' variant lists options only in the top level, while the `recursive' variant lists options
also present in any nested packages. also present in any nested packages.
`--version' `--version'
`-V' `-V'
Print the version of Autoconf used to generate the `configure' Print the version of Autoconf used to generate the `configure'
script, and exit. script, and exit.
`--cache-file=FILE' `--cache-file=FILE'
Enable the cache: use and save the results of the tests in FILE, Enable the cache: use and save the results of the tests in FILE,
traditionally `config.cache'. FILE defaults to `/dev/null' to traditionally `config.cache'. FILE defaults to `/dev/null' to
disable caching. disable caching.
`--config-cache' `--config-cache'
`-C' `-C'
Alias for `--cache-file=config.cache'. Alias for `--cache-file=config.cache'.
`--quiet' `--quiet'
`--silent' `--silent'
`-q' `-q'
Do not print messages saying which checks are being made. To Do not print messages saying which checks are being made. To
suppress all normal output, redirect it to `/dev/null' (any error suppress all normal output, redirect it to `/dev/null' (any error
messages will still be shown). messages will still be shown).
`--srcdir=DIR' `--srcdir=DIR'
Look for the package's source code in directory DIR. Usually Look for the package's source code in directory DIR. Usually
`configure' can determine that directory automatically. `configure' can determine that directory automatically.
`--prefix=DIR' `--prefix=DIR'
Use DIR as the installation prefix. *note Installation Names:: Use DIR as the installation prefix. *note Installation Names::
for more details, including other options available for fine-tuning for more details, including other options available for fine-tuning
the installation locations. the installation locations.
`--no-create' `--no-create'
`-n' `-n'
Run the configure checks, but stop before creating any output Run the configure checks, but stop before creating any output
files. files.
`configure' also accepts some other, not widely useful, options. Run `configure' also accepts some other, not widely useful, options. Run
`configure --help' for more details. `configure --help' for more details.

View File

@ -1,9 +1,9 @@
SUBDIRS = examples SUBDIRS = examples
nobase_include_HEADERS = elfio/elf_types.hpp elfio/elfi_dynamic.hpp \ nobase_include_HEADERS = elfio/elf_types.hpp elfio/elfi_dynamic.hpp \
elfio/elfio.hpp elfio/elfio_header.hpp \ elfio/elfio.hpp elfio/elfio_header.hpp \
elfio/elfio_note.hpp elfio/elfio_relocation.hpp \ elfio/elfio_note.hpp elfio/elfio_relocation.hpp \
elfio/elfio_section.hpp elfio/elfio_segment.hpp \ elfio/elfio_section.hpp elfio/elfio_segment.hpp \
elfio/elfio_strings.hpp elfio/elfio_symbols.hpp \ elfio/elfio_strings.hpp elfio/elfio_symbols.hpp \
elfio/elfio_utils.hpp elfio/elfo_dynamic.hpp \ elfio/elfio_utils.hpp elfio/elfo_dynamic.hpp \
elfio/elfio_dump.hpp elfio/elfio_dump.hpp
EXTRA_DIST = doc/elfio.pdf EXTRA_DIST = doc/elfio.pdf

8
README
View File

@ -1,4 +1,4 @@
ELFIO is a C++ library for reading and generating files in the ELF binary ELFIO is a C++ library for reading and generating files in the ELF binary
format. This library is unique and not based on any other product. It is also format. This library is unique and not based on any other product. It is also
platform independent. The library uses standard ANSI C++ constructions and platform independent. The library uses standard ANSI C++ constructions and
runs on a wide variety of architectures. runs on a wide variety of architectures.

View File

@ -1,62 +1,62 @@
ELFIO-1.0.0 ELFIO-1.0.0
------------------------------------------ ------------------------------------------
ELFIO is a C++ library for reading and generating files in the ELFIO is a C++ library for reading and generating files in the
ELF (Executable and Linkable Format) binary format. This library is ELF (Executable and Linkable Format) binary format. This library is
unique and not based on any other product. It is also platform unique and not based on any other product. It is also platform
independent. The library uses standard ANSI C++ constructions and runs independent. The library uses standard ANSI C++ constructions and runs
on a wide variety of architectures. on a wide variety of architectures.
More examples for using this library located at Examples directory More examples for using this library located at Examples directory
of the source package distribution. of the source package distribution.
Runtime requirements: Runtime requirements:
cygwin-1.3.10 or newer cygwin-1.3.10 or newer
Build requirements: Build requirements:
cygwin-1.3.10 or newer cygwin-1.3.10 or newer
Canonical homepage: Canonical homepage:
http://sourceforge.net/projects/elfio http://sourceforge.net/projects/elfio
Canonical download: Canonical download:
http://sourceforge.net/project/showfiles.php?group_id=19959 http://sourceforge.net/project/showfiles.php?group_id=19959
------------------------------------ ------------------------------------
Build instructions: Build instructions:
unpack ELFIO-1.0.0-1-src.tar.bz2 unpack ELFIO-1.0.0-1-src.tar.bz2
cd /usr/src cd /usr/src
./ELFIO-1.0.0-1.sh all ./ELFIO-1.0.0-1.sh all
This will create: This will create:
/usr/src/ELFIO-1.0.0-1.tar.bz2 /usr/src/ELFIO-1.0.0-1.tar.bz2
/usr/src/ELFIO-1.0.0-1-src.tar.bz2 /usr/src/ELFIO-1.0.0-1-src.tar.bz2
------------------------------------------- -------------------------------------------
Files included in the binary distro Files included in the binary distro
/lib/libELFIO.a /lib/libELFIO.a
/usr/bin/ELFDump /usr/bin/ELFDump
/usr/include/ELFIO.h /usr/include/ELFIO.h
/usr/include/ELFI.h /usr/include/ELFI.h
/usr/include/ELFO.h /usr/include/ELFO.h
/usr/include/ELFTypes.h /usr/include/ELFTypes.h
/usr/doc/ELFIO-1.0.0/AUTHORS /usr/doc/ELFIO-1.0.0/AUTHORS
/usr/doc/ELFIO-1.0.0/COPYING /usr/doc/ELFIO-1.0.0/COPYING
/usr/doc/ELFIO-1.0.0/README /usr/doc/ELFIO-1.0.0/README
/usr/doc/ELFIO-1.0.0/tutorial.pdf /usr/doc/ELFIO-1.0.0/tutorial.pdf
/usr/doc/ELFIO-1.0.0/tutorial.cpp /usr/doc/ELFIO-1.0.0/tutorial.cpp
/usr/doc/Cygwin/ELFIO-1.0.0.README /usr/doc/Cygwin/ELFIO-1.0.0.README
------------------ ------------------
Port Notes: Port Notes:
----- version 1.0.0 ----- ----- version 1.0.0 -----
Initial release Initial release
Cygwin port maintained by: Serge Lamikhov-Center to_serge@sourceforge.net Cygwin port maintained by: Serge Lamikhov-Center to_serge@sourceforge.net

View File

@ -1,9 +1,9 @@
# ELFIO library # ELFIO library
category: Devel Libs category: Devel Libs
requires: cygwin requires: cygwin
sdesc: "ELF file reader and producer implemented as a C++ library" sdesc: "ELF file reader and producer implemented as a C++ library"
ldesc: "ELFIO is a C++ library for reading and generating files in the ldesc: "ELFIO is a C++ library for reading and generating files in the
ELF (Executable and Linkable Format) binary format. This library is ELF (Executable and Linkable Format) binary format. This library is
unique and not based on any other product. It is also platform unique and not based on any other product. It is also platform
independent. The library uses standard ANSI C++ constructions and runs independent. The library uses standard ANSI C++ constructions and runs
on a wide variety of architectures." on a wide variety of architectures."

View File

@ -1,179 +1,179 @@
#!/bin/sh #!/bin/sh
# find out where the build script is located # find out where the build script is located
tdir=`echo "$0" | sed 's%[\\/][^\\/][^\\/]*$%%'` tdir=`echo "$0" | sed 's%[\\/][^\\/][^\\/]*$%%'`
test "x$tdir" = "x$0" && tdir=. test "x$tdir" = "x$0" && tdir=.
scriptdir=`cd $tdir; pwd` scriptdir=`cd $tdir; pwd`
# find src directory. # find src directory.
# If scriptdir ends in SPECS, then topdir is $scriptdir/.. # If scriptdir ends in SPECS, then topdir is $scriptdir/..
# If scriptdir ends in CYGWIN-PATCHES, then topdir is $scriptdir/../.. # If scriptdir ends in CYGWIN-PATCHES, then topdir is $scriptdir/../..
# Otherwise, we assume that topdir = scriptdir # Otherwise, we assume that topdir = scriptdir
topdir1=`echo ${scriptdir} | sed 's%/SPECS$%%'` topdir1=`echo ${scriptdir} | sed 's%/SPECS$%%'`
topdir2=`echo ${scriptdir} | sed 's%/CYGWIN-PATCHES$%%'` topdir2=`echo ${scriptdir} | sed 's%/CYGWIN-PATCHES$%%'`
if [ "x$topdir1" != "x$scriptdir" ] ; then # SPECS if [ "x$topdir1" != "x$scriptdir" ] ; then # SPECS
topdir=`cd ${scriptdir}/..; pwd` topdir=`cd ${scriptdir}/..; pwd`
else else
if [ "x$topdir2" != "x$scriptdir" ] ; then # CYGWIN-PATCHES if [ "x$topdir2" != "x$scriptdir" ] ; then # CYGWIN-PATCHES
topdir=`cd ${scriptdir}/../..; pwd` topdir=`cd ${scriptdir}/../..; pwd`
else else
topdir=`cd ${scriptdir}; pwd` topdir=`cd ${scriptdir}; pwd`
fi fi
fi fi
tscriptname=`basename $0 .sh` tscriptname=`basename $0 .sh`
export PKG=`echo $tscriptname | sed -e 's/\-[^\-]*\-[^\-]*$//'` export PKG=`echo $tscriptname | sed -e 's/\-[^\-]*\-[^\-]*$//'`
export VER=`echo $tscriptname | sed -e 's/^[^\-]*\-//' -e 's/\-[^\-]*$//'` export VER=`echo $tscriptname | sed -e 's/^[^\-]*\-//' -e 's/\-[^\-]*$//'`
export REL=`echo $tscriptname | sed -e 's/^[^\-]*\-[^\-]*\-//'` export REL=`echo $tscriptname | sed -e 's/^[^\-]*\-[^\-]*\-//'`
export FULLPKG=${PKG}-${VER}-${REL} export FULLPKG=${PKG}-${VER}-${REL}
# if the orig src package is bzip2'ed, remember to # if the orig src package is bzip2'ed, remember to
# change 'z' to 'j' in the 'tar xvzf' commands in the # change 'z' to 'j' in the 'tar xvzf' commands in the
# prep) and mkpatch) sections # prep) and mkpatch) sections
export src_orig_pkg_name=${PKG}-${VER}.tar.gz export src_orig_pkg_name=${PKG}-${VER}.tar.gz
export src_pkg_name=${FULLPKG}-src.tar.bz2 export src_pkg_name=${FULLPKG}-src.tar.bz2
export src_patch_name=${FULLPKG}.patch export src_patch_name=${FULLPKG}.patch
export bin_pkg_name=${FULLPKG}.tar.bz2 export bin_pkg_name=${FULLPKG}.tar.bz2
export src_orig_pkg=${topdir}/${src_orig_pkg_name} export src_orig_pkg=${topdir}/${src_orig_pkg_name}
export src_pkg=${topdir}/${src_pkg_name} export src_pkg=${topdir}/${src_pkg_name}
export src_patch=${topdir}/${src_patch_name} export src_patch=${topdir}/${src_patch_name}
export bin_pkg=${topdir}/${bin_pkg_name} export bin_pkg=${topdir}/${bin_pkg_name}
export srcdir=${topdir}/${PKG}-${VER} export srcdir=${topdir}/${PKG}-${VER}
export objdir=${srcdir}/.build export objdir=${srcdir}/.build
export instdir=${srcdir}/.inst export instdir=${srcdir}/.inst
export srcinstdir=${srcdir}/.sinst export srcinstdir=${srcdir}/.sinst
export checkfile=${topdir}/${FULLPKG}.check export checkfile=${topdir}/${FULLPKG}.check
# run on # run on
host=i686-pc-cygwin host=i686-pc-cygwin
# if this package creates binaries, they run on # if this package creates binaries, they run on
target=i686-pc-cygwin target=i686-pc-cygwin
prefix=/usr prefix=/usr
sysconfdir=/etc sysconfdir=/etc
MY_CFLAGS="-O2" MY_CFLAGS="-O2"
MY_CXXFLAGS="-O2" MY_CXXFLAGS="-O2"
MY_LDFLAGS= MY_LDFLAGS=
mkdirs() { mkdirs() {
(cd ${topdir} && \ (cd ${topdir} && \
mkdir -p ${objdir} && \ mkdir -p ${objdir} && \
mkdir -p ${instdir} && \ mkdir -p ${instdir} && \
mkdir -p ${srcinstdir} ) mkdir -p ${srcinstdir} )
} }
prep() { prep() {
(cd ${topdir} && \ (cd ${topdir} && \
tar xvzf ${src_orig_pkg} ; \ tar xvzf ${src_orig_pkg} ; \
cd ${topdir} && \ cd ${topdir} && \
patch -p0 < ${src_patch} patch -p0 < ${src_patch}
&& mkdirs ) && mkdirs )
} }
conf() { conf() {
(cd ${objdir} && \ (cd ${objdir} && \
CFLAGS="${MY_CFLAGS}" LDFLAGS="${MY_LDFLAGS}" \ CFLAGS="${MY_CFLAGS}" LDFLAGS="${MY_LDFLAGS}" \
CXXFLAGS="${MY_CXXFLAGS}" LDFLAGS="${MY_LDFLAGS}" \ CXXFLAGS="${MY_CXXFLAGS}" LDFLAGS="${MY_LDFLAGS}" \
${srcdir}/configure --host=${host} --target=${target} \ ${srcdir}/configure --host=${host} --target=${target} \
--srcdir=${srcdir} --prefix=${prefix} \ --srcdir=${srcdir} --prefix=${prefix} \
--exec-prefix=${prefix} --sysconfdir=${sysconfdir} \ --exec-prefix=${prefix} --sysconfdir=${sysconfdir} \
--libdir=/lib --includedir=${prefix}/include \ --libdir=/lib --includedir=${prefix}/include \
--libexecdir='${sbindir}' --localstatedir=/var \ --libexecdir='${sbindir}' --localstatedir=/var \
--datadir='${prefix}/share' --datadir='${prefix}/share'
) )
} }
build() { build() {
(cd ${objdir} && \ (cd ${objdir} && \
CFLAGS="${MY_CFLAGS}" make ) CFLAGS="${MY_CFLAGS}" make )
} }
check() { check() {
(cd ${objdir} && \ (cd ${objdir} && \
make test | tee ${checkfile} 2>&1 ) make test | tee ${checkfile} 2>&1 )
} }
clean() { clean() {
(cd ${objdir} && \ (cd ${objdir} && \
make clean ) make clean )
} }
install() { install() {
(cd ${objdir} && \ (cd ${objdir} && \
make install DESTDIR=${instdir} make install DESTDIR=${instdir}
if [ -f ${instdir}${prefix}/info/dir ] ; then \ if [ -f ${instdir}${prefix}/info/dir ] ; then \
rm ${instdir}${prefix}/info/dir ; \ rm ${instdir}${prefix}/info/dir ; \
fi && \ fi && \
if [ ! -d ${instdir}${prefix}/doc/${PKG}-${VER} ]; then \ if [ ! -d ${instdir}${prefix}/doc/${PKG}-${VER} ]; then \
mkdir -p ${instdir}${prefix}/doc/${PKG}-${VER} ; \ mkdir -p ${instdir}${prefix}/doc/${PKG}-${VER} ; \
fi && \ fi && \
if [ ! -d ${instdir}${prefix}/doc/Cygwin ]; then \ if [ ! -d ${instdir}${prefix}/doc/Cygwin ]; then \
mkdir -p ${instdir}${prefix}/doc/Cygwin ; \ mkdir -p ${instdir}${prefix}/doc/Cygwin ; \
fi && \ fi && \
templist=""; \ templist=""; \
for f in ${srcdir}/ANNOUNCE ${srcdir}/CHANGES ${srcdir}/INSTALL \ for f in ${srcdir}/ANNOUNCE ${srcdir}/CHANGES ${srcdir}/INSTALL \
${srcdir}/KNOWNBUG ${srcdir}/LICENSE ${srcdir}/README \ ${srcdir}/KNOWNBUG ${srcdir}/LICENSE ${srcdir}/README \
${srcdir}/AUTHORS ${srcdir}/KNOWNBUG ${srcdir}/COPYING \ ${srcdir}/AUTHORS ${srcdir}/KNOWNBUG ${srcdir}/COPYING \
${srcdir}/doc/tutorial.pdf \ ${srcdir}/doc/tutorial.pdf \
${srcdir}/Examples/tutorial/tutorial.cpp \ ${srcdir}/Examples/tutorial/tutorial.cpp \
${srcdir}/TODO ; do \ ${srcdir}/TODO ; do \
if [ -f $f ] ; then \ if [ -f $f ] ; then \
templist="$templist $f"; \ templist="$templist $f"; \
fi ; \ fi ; \
done && \ done && \
if [ ! "x$templist" = "x" ]; then \ if [ ! "x$templist" = "x" ]; then \
/usr/bin/install -m 644 $templist \ /usr/bin/install -m 644 $templist \
${instdir}${prefix}/doc/${PKG}-${VER} ; ${instdir}${prefix}/doc/${PKG}-${VER} ;
fi && \ fi && \
if [ -f ${srcdir}/CYGWIN-PATCHES/${PKG}-${VER}.README ]; then \ if [ -f ${srcdir}/CYGWIN-PATCHES/${PKG}-${VER}.README ]; then \
/usr/bin/install -m 644 ${srcdir}/CYGWIN-PATCHES/${PKG}-${VER}.README \ /usr/bin/install -m 644 ${srcdir}/CYGWIN-PATCHES/${PKG}-${VER}.README \
${instdir}${prefix}/doc/Cygwin/${PKG}-${VER}.README ; \ ${instdir}${prefix}/doc/Cygwin/${PKG}-${VER}.README ; \
else \ else \
if [ -f ${srcdir}/CYGWIN-PATCHES/README ]; then \ if [ -f ${srcdir}/CYGWIN-PATCHES/README ]; then \
/usr/bin/install -m 644 ${srcdir}/CYGWIN-PATCHES/README \ /usr/bin/install -m 644 ${srcdir}/CYGWIN-PATCHES/README \
${instdir}${prefix}/doc/Cygwin/${PKG}-${VER}.README ; \ ${instdir}${prefix}/doc/Cygwin/${PKG}-${VER}.README ; \
fi ;\ fi ;\
fi ; ) fi ; )
} }
strip() { strip() {
(cd ${instdir} && \ (cd ${instdir} && \
find . -name "*.dll" | xargs strip > /dev/null 2>&1 find . -name "*.dll" | xargs strip > /dev/null 2>&1
find . -name "*.exe" | xargs strip > /dev/null 2>&1 ) find . -name "*.exe" | xargs strip > /dev/null 2>&1 )
} }
pkg() { pkg() {
(cd ${instdir} && \ (cd ${instdir} && \
tar cvjf ${bin_pkg} * ) tar cvjf ${bin_pkg} * )
} }
mkpatch() { mkpatch() {
(cd ${srcdir} && \ (cd ${srcdir} && \
tar xvzf ${src_orig_pkg} ;\ tar xvzf ${src_orig_pkg} ;\
mv ${PKG}-${VER} ../${PKG}-${VER}-orig && \ mv ${PKG}-${VER} ../${PKG}-${VER}-orig && \
cd ${topdir} && \ cd ${topdir} && \
diff -urN -x '.build' -x '.inst' -x '.sinst' \ diff -urN -x '.build' -x '.inst' -x '.sinst' \
${PKG}-${VER}-orig ${PKG}-${VER} > \ ${PKG}-${VER}-orig ${PKG}-${VER} > \
${srcinstdir}/${src_patch_name} ; \ ${srcinstdir}/${src_patch_name} ; \
rm -rf ${PKG}-${VER}-orig ) rm -rf ${PKG}-${VER}-orig )
} }
spkg() { spkg() {
(mkpatch && \ (mkpatch && \
cp ${src_orig_pkg} ${srcinstdir}/${src_orig_pkg_name} && \ cp ${src_orig_pkg} ${srcinstdir}/${src_orig_pkg_name} && \
cp $0 ${srcinstdir}/`basename $0` && \ cp $0 ${srcinstdir}/`basename $0` && \
cd ${srcinstdir} && \ cd ${srcinstdir} && \
tar cvjf ${src_pkg} * ) tar cvjf ${src_pkg} * )
} }
finish() { finish() {
rm -rf ${srcdir} rm -rf ${srcdir}
} }
case $1 in case $1 in
prep) prep ; STATUS=$? ;; prep) prep ; STATUS=$? ;;
mkdirs) mkdirs; STATUS=$? ;; mkdirs) mkdirs; STATUS=$? ;;
conf) conf ; STATUS=$? ;; conf) conf ; STATUS=$? ;;
build) build ; STATUS=$? ;; build) build ; STATUS=$? ;;
check) check ; STATUS=$? ;; check) check ; STATUS=$? ;;
clean) clean ; STATUS=$? ;; clean) clean ; STATUS=$? ;;
install) install ; STATUS=$? ;; install) install ; STATUS=$? ;;
strip) strip ; STATUS=$? ;; strip) strip ; STATUS=$? ;;
package) pkg ; STATUS=$? ;; package) pkg ; STATUS=$? ;;
pkg) pkg ; STATUS=$? ;; pkg) pkg ; STATUS=$? ;;
mkpatch) mkpatch ; STATUS=$? ;; mkpatch) mkpatch ; STATUS=$? ;;
src-package) spkg ; STATUS=$? ;; src-package) spkg ; STATUS=$? ;;
spkg) spkg ; STATUS=$? ;; spkg) spkg ; STATUS=$? ;;
finish) finish ; STATUS=$? ;; finish) finish ; STATUS=$? ;;
all) prep && conf && build && install && \ all) prep && conf && build && install && \
strip && pkg && spkg && finish ; \ strip && pkg && spkg && finish ; \
STATUS=$? ;; STATUS=$? ;;
*) echo "Error: bad arguments" ; exit 1 ;; *) echo "Error: bad arguments" ; exit 1 ;;
esac esac
exit ${STATUS} exit ${STATUS}

View File

@ -1,179 +1,179 @@
#!/bin/sh #!/bin/sh
# find out where the build script is located # find out where the build script is located
tdir=`echo "$0" | sed 's%[\\/][^\\/][^\\/]*$%%'` tdir=`echo "$0" | sed 's%[\\/][^\\/][^\\/]*$%%'`
test "x$tdir" = "x$0" && tdir=. test "x$tdir" = "x$0" && tdir=.
scriptdir=`cd $tdir; pwd` scriptdir=`cd $tdir; pwd`
# find src directory. # find src directory.
# If scriptdir ends in SPECS, then topdir is $scriptdir/.. # If scriptdir ends in SPECS, then topdir is $scriptdir/..
# If scriptdir ends in CYGWIN-PATCHES, then topdir is $scriptdir/../.. # If scriptdir ends in CYGWIN-PATCHES, then topdir is $scriptdir/../..
# Otherwise, we assume that topdir = scriptdir # Otherwise, we assume that topdir = scriptdir
topdir1=`echo ${scriptdir} | sed 's%/SPECS$%%'` topdir1=`echo ${scriptdir} | sed 's%/SPECS$%%'`
topdir2=`echo ${scriptdir} | sed 's%/CYGWIN-PATCHES$%%'` topdir2=`echo ${scriptdir} | sed 's%/CYGWIN-PATCHES$%%'`
if [ "x$topdir1" != "x$scriptdir" ] ; then # SPECS if [ "x$topdir1" != "x$scriptdir" ] ; then # SPECS
topdir=`cd ${scriptdir}/..; pwd` topdir=`cd ${scriptdir}/..; pwd`
else else
if [ "x$topdir2" != "x$scriptdir" ] ; then # CYGWIN-PATCHES if [ "x$topdir2" != "x$scriptdir" ] ; then # CYGWIN-PATCHES
topdir=`cd ${scriptdir}/../..; pwd` topdir=`cd ${scriptdir}/../..; pwd`
else else
topdir=`cd ${scriptdir}; pwd` topdir=`cd ${scriptdir}; pwd`
fi fi
fi fi
tscriptname=`basename $0 .sh` tscriptname=`basename $0 .sh`
export PKG=`echo $tscriptname | sed -e 's/\-[^\-]*\-[^\-]*$//'` export PKG=`echo $tscriptname | sed -e 's/\-[^\-]*\-[^\-]*$//'`
export VER=`echo $tscriptname | sed -e 's/^[^\-]*\-//' -e 's/\-[^\-]*$//'` export VER=`echo $tscriptname | sed -e 's/^[^\-]*\-//' -e 's/\-[^\-]*$//'`
export REL=`echo $tscriptname | sed -e 's/^[^\-]*\-[^\-]*\-//'` export REL=`echo $tscriptname | sed -e 's/^[^\-]*\-[^\-]*\-//'`
export FULLPKG=${PKG}-${VER}-${REL} export FULLPKG=${PKG}-${VER}-${REL}
# if the orig src package is bzip2'ed, remember to # if the orig src package is bzip2'ed, remember to
# change 'z' to 'j' in the 'tar xvzf' commands in the # change 'z' to 'j' in the 'tar xvzf' commands in the
# prep) and mkpatch) sections # prep) and mkpatch) sections
export src_orig_pkg_name=${PKG}-${VER}.tar.gz export src_orig_pkg_name=${PKG}-${VER}.tar.gz
export src_pkg_name=${FULLPKG}-src.tar.bz2 export src_pkg_name=${FULLPKG}-src.tar.bz2
export src_patch_name=${FULLPKG}.patch export src_patch_name=${FULLPKG}.patch
export bin_pkg_name=${FULLPKG}.tar.bz2 export bin_pkg_name=${FULLPKG}.tar.bz2
export src_orig_pkg=${topdir}/${src_orig_pkg_name} export src_orig_pkg=${topdir}/${src_orig_pkg_name}
export src_pkg=${topdir}/${src_pkg_name} export src_pkg=${topdir}/${src_pkg_name}
export src_patch=${topdir}/${src_patch_name} export src_patch=${topdir}/${src_patch_name}
export bin_pkg=${topdir}/${bin_pkg_name} export bin_pkg=${topdir}/${bin_pkg_name}
export srcdir=${topdir}/${PKG}-${VER} export srcdir=${topdir}/${PKG}-${VER}
export objdir=${srcdir}/.build export objdir=${srcdir}/.build
export instdir=${srcdir}/.inst export instdir=${srcdir}/.inst
export srcinstdir=${srcdir}/.sinst export srcinstdir=${srcdir}/.sinst
export checkfile=${topdir}/${FULLPKG}.check export checkfile=${topdir}/${FULLPKG}.check
# run on # run on
host=i686-pc-cygwin host=i686-pc-cygwin
# if this package creates binaries, they run on # if this package creates binaries, they run on
target=i686-pc-cygwin target=i686-pc-cygwin
prefix=/usr prefix=/usr
sysconfdir=/etc sysconfdir=/etc
MY_CFLAGS="-O2" MY_CFLAGS="-O2"
MY_CXXFLAGS="-O2" MY_CXXFLAGS="-O2"
MY_LDFLAGS= MY_LDFLAGS=
mkdirs() { mkdirs() {
(cd ${topdir} && \ (cd ${topdir} && \
mkdir -p ${objdir} && \ mkdir -p ${objdir} && \
mkdir -p ${instdir} && \ mkdir -p ${instdir} && \
mkdir -p ${srcinstdir} ) mkdir -p ${srcinstdir} )
} }
prep() { prep() {
(cd ${topdir} && \ (cd ${topdir} && \
tar xvzf ${src_orig_pkg} ; \ tar xvzf ${src_orig_pkg} ; \
cd ${topdir} && \ cd ${topdir} && \
patch -p0 < ${src_patch} patch -p0 < ${src_patch}
&& mkdirs ) && mkdirs )
} }
conf() { conf() {
(cd ${objdir} && \ (cd ${objdir} && \
CFLAGS="${MY_CFLAGS}" LDFLAGS="${MY_LDFLAGS}" \ CFLAGS="${MY_CFLAGS}" LDFLAGS="${MY_LDFLAGS}" \
CXXFLAGS="${MY_CXXFLAGS}" LDFLAGS="${MY_LDFLAGS}" \ CXXFLAGS="${MY_CXXFLAGS}" LDFLAGS="${MY_LDFLAGS}" \
${srcdir}/configure --host=${host} --target=${target} \ ${srcdir}/configure --host=${host} --target=${target} \
--srcdir=${srcdir} --prefix=${prefix} \ --srcdir=${srcdir} --prefix=${prefix} \
--exec-prefix=${prefix} --sysconfdir=${sysconfdir} \ --exec-prefix=${prefix} --sysconfdir=${sysconfdir} \
--libdir=/lib --includedir=${prefix}/include \ --libdir=/lib --includedir=${prefix}/include \
--libexecdir='${sbindir}' --localstatedir=/var \ --libexecdir='${sbindir}' --localstatedir=/var \
--datadir='${prefix}/share' --datadir='${prefix}/share'
) )
} }
build() { build() {
(cd ${objdir} && \ (cd ${objdir} && \
CFLAGS="${MY_CFLAGS}" make ) CFLAGS="${MY_CFLAGS}" make )
} }
check() { check() {
(cd ${objdir} && \ (cd ${objdir} && \
make test | tee ${checkfile} 2>&1 ) make test | tee ${checkfile} 2>&1 )
} }
clean() { clean() {
(cd ${objdir} && \ (cd ${objdir} && \
make clean ) make clean )
} }
install() { install() {
(cd ${objdir} && \ (cd ${objdir} && \
make install DESTDIR=${instdir} make install DESTDIR=${instdir}
if [ -f ${instdir}${prefix}/info/dir ] ; then \ if [ -f ${instdir}${prefix}/info/dir ] ; then \
rm ${instdir}${prefix}/info/dir ; \ rm ${instdir}${prefix}/info/dir ; \
fi && \ fi && \
if [ ! -d ${instdir}${prefix}/doc/${PKG}-${VER} ]; then \ if [ ! -d ${instdir}${prefix}/doc/${PKG}-${VER} ]; then \
mkdir -p ${instdir}${prefix}/doc/${PKG}-${VER} ; \ mkdir -p ${instdir}${prefix}/doc/${PKG}-${VER} ; \
fi && \ fi && \
if [ ! -d ${instdir}${prefix}/doc/Cygwin ]; then \ if [ ! -d ${instdir}${prefix}/doc/Cygwin ]; then \
mkdir -p ${instdir}${prefix}/doc/Cygwin ; \ mkdir -p ${instdir}${prefix}/doc/Cygwin ; \
fi && \ fi && \
templist=""; \ templist=""; \
for f in ${srcdir}/ANNOUNCE ${srcdir}/CHANGES ${srcdir}/INSTALL \ for f in ${srcdir}/ANNOUNCE ${srcdir}/CHANGES ${srcdir}/INSTALL \
${srcdir}/KNOWNBUG ${srcdir}/LICENSE ${srcdir}/README \ ${srcdir}/KNOWNBUG ${srcdir}/LICENSE ${srcdir}/README \
${srcdir}/AUTHORS ${srcdir}/KNOWNBUG ${srcdir}/COPYING \ ${srcdir}/AUTHORS ${srcdir}/KNOWNBUG ${srcdir}/COPYING \
${srcdir}/doc/tutorial.pdf \ ${srcdir}/doc/tutorial.pdf \
${srcdir}/Examples/tutorial/tutorial.cpp \ ${srcdir}/Examples/tutorial/tutorial.cpp \
${srcdir}/TODO ; do \ ${srcdir}/TODO ; do \
if [ -f $f ] ; then \ if [ -f $f ] ; then \
templist="$templist $f"; \ templist="$templist $f"; \
fi ; \ fi ; \
done && \ done && \
if [ ! "x$templist" = "x" ]; then \ if [ ! "x$templist" = "x" ]; then \
/usr/bin/install -m 644 $templist \ /usr/bin/install -m 644 $templist \
${instdir}${prefix}/doc/${PKG}-${VER} ; ${instdir}${prefix}/doc/${PKG}-${VER} ;
fi && \ fi && \
if [ -f ${srcdir}/CYGWIN-PATCHES/${PKG}-${VER}.README ]; then \ if [ -f ${srcdir}/CYGWIN-PATCHES/${PKG}-${VER}.README ]; then \
/usr/bin/install -m 644 ${srcdir}/CYGWIN-PATCHES/${PKG}-${VER}.README \ /usr/bin/install -m 644 ${srcdir}/CYGWIN-PATCHES/${PKG}-${VER}.README \
${instdir}${prefix}/doc/Cygwin/${PKG}-${VER}.README ; \ ${instdir}${prefix}/doc/Cygwin/${PKG}-${VER}.README ; \
else \ else \
if [ -f ${srcdir}/CYGWIN-PATCHES/README ]; then \ if [ -f ${srcdir}/CYGWIN-PATCHES/README ]; then \
/usr/bin/install -m 644 ${srcdir}/CYGWIN-PATCHES/README \ /usr/bin/install -m 644 ${srcdir}/CYGWIN-PATCHES/README \
${instdir}${prefix}/doc/Cygwin/${PKG}-${VER}.README ; \ ${instdir}${prefix}/doc/Cygwin/${PKG}-${VER}.README ; \
fi ;\ fi ;\
fi ; ) fi ; )
} }
strip() { strip() {
(cd ${instdir} && \ (cd ${instdir} && \
find . -name "*.dll" | xargs strip > /dev/null 2>&1 find . -name "*.dll" | xargs strip > /dev/null 2>&1
find . -name "*.exe" | xargs strip > /dev/null 2>&1 ) find . -name "*.exe" | xargs strip > /dev/null 2>&1 )
} }
pkg() { pkg() {
(cd ${instdir} && \ (cd ${instdir} && \
tar cvjf ${bin_pkg} * ) tar cvjf ${bin_pkg} * )
} }
mkpatch() { mkpatch() {
(cd ${srcdir} && \ (cd ${srcdir} && \
tar xvzf ${src_orig_pkg} ;\ tar xvzf ${src_orig_pkg} ;\
mv ${PKG}-${VER} ../${PKG}-${VER}-orig && \ mv ${PKG}-${VER} ../${PKG}-${VER}-orig && \
cd ${topdir} && \ cd ${topdir} && \
diff -urN -x '.build' -x '.inst' -x '.sinst' \ diff -urN -x '.build' -x '.inst' -x '.sinst' \
${PKG}-${VER}-orig ${PKG}-${VER} > \ ${PKG}-${VER}-orig ${PKG}-${VER} > \
${srcinstdir}/${src_patch_name} ; \ ${srcinstdir}/${src_patch_name} ; \
rm -rf ${PKG}-${VER}-orig ) rm -rf ${PKG}-${VER}-orig )
} }
spkg() { spkg() {
(mkpatch && \ (mkpatch && \
cp ${src_orig_pkg} ${srcinstdir}/${src_orig_pkg_name} && \ cp ${src_orig_pkg} ${srcinstdir}/${src_orig_pkg_name} && \
cp $0 ${srcinstdir}/`basename $0` && \ cp $0 ${srcinstdir}/`basename $0` && \
cd ${srcinstdir} && \ cd ${srcinstdir} && \
tar cvjf ${src_pkg} * ) tar cvjf ${src_pkg} * )
} }
finish() { finish() {
rm -rf ${srcdir} rm -rf ${srcdir}
} }
case $1 in case $1 in
prep) prep ; STATUS=$? ;; prep) prep ; STATUS=$? ;;
mkdirs) mkdirs; STATUS=$? ;; mkdirs) mkdirs; STATUS=$? ;;
conf) conf ; STATUS=$? ;; conf) conf ; STATUS=$? ;;
build) build ; STATUS=$? ;; build) build ; STATUS=$? ;;
check) check ; STATUS=$? ;; check) check ; STATUS=$? ;;
clean) clean ; STATUS=$? ;; clean) clean ; STATUS=$? ;;
install) install ; STATUS=$? ;; install) install ; STATUS=$? ;;
strip) strip ; STATUS=$? ;; strip) strip ; STATUS=$? ;;
package) pkg ; STATUS=$? ;; package) pkg ; STATUS=$? ;;
pkg) pkg ; STATUS=$? ;; pkg) pkg ; STATUS=$? ;;
mkpatch) mkpatch ; STATUS=$? ;; mkpatch) mkpatch ; STATUS=$? ;;
src-package) spkg ; STATUS=$? ;; src-package) spkg ; STATUS=$? ;;
spkg) spkg ; STATUS=$? ;; spkg) spkg ; STATUS=$? ;;
finish) finish ; STATUS=$? ;; finish) finish ; STATUS=$? ;;
all) prep && conf && build && install && \ all) prep && conf && build && install && \
strip && pkg && spkg && finish ; \ strip && pkg && spkg && finish ; \
STATUS=$? ;; STATUS=$? ;;
*) echo "Error: bad arguments" ; exit 1 ;; *) echo "Error: bad arguments" ; exit 1 ;;
esac esac
exit ${STATUS} exit ${STATUS}

View File

@ -1,179 +1,179 @@
#!/bin/sh #!/bin/sh
# find out where the build script is located # find out where the build script is located
tdir=`echo "$0" | sed 's%[\\/][^\\/][^\\/]*$%%'` tdir=`echo "$0" | sed 's%[\\/][^\\/][^\\/]*$%%'`
test "x$tdir" = "x$0" && tdir=. test "x$tdir" = "x$0" && tdir=.
scriptdir=`cd $tdir; pwd` scriptdir=`cd $tdir; pwd`
# find src directory. # find src directory.
# If scriptdir ends in SPECS, then topdir is $scriptdir/.. # If scriptdir ends in SPECS, then topdir is $scriptdir/..
# If scriptdir ends in CYGWIN-PATCHES, then topdir is $scriptdir/../.. # If scriptdir ends in CYGWIN-PATCHES, then topdir is $scriptdir/../..
# Otherwise, we assume that topdir = scriptdir # Otherwise, we assume that topdir = scriptdir
topdir1=`echo ${scriptdir} | sed 's%/SPECS$%%'` topdir1=`echo ${scriptdir} | sed 's%/SPECS$%%'`
topdir2=`echo ${scriptdir} | sed 's%/CYGWIN-PATCHES$%%'` topdir2=`echo ${scriptdir} | sed 's%/CYGWIN-PATCHES$%%'`
if [ "x$topdir1" != "x$scriptdir" ] ; then # SPECS if [ "x$topdir1" != "x$scriptdir" ] ; then # SPECS
topdir=`cd ${scriptdir}/..; pwd` topdir=`cd ${scriptdir}/..; pwd`
else else
if [ "x$topdir2" != "x$scriptdir" ] ; then # CYGWIN-PATCHES if [ "x$topdir2" != "x$scriptdir" ] ; then # CYGWIN-PATCHES
topdir=`cd ${scriptdir}/../..; pwd` topdir=`cd ${scriptdir}/../..; pwd`
else else
topdir=`cd ${scriptdir}; pwd` topdir=`cd ${scriptdir}; pwd`
fi fi
fi fi
tscriptname=`basename $0 .sh` tscriptname=`basename $0 .sh`
export PKG=`echo $tscriptname | sed -e 's/\-[^\-]*\-[^\-]*$//'` export PKG=`echo $tscriptname | sed -e 's/\-[^\-]*\-[^\-]*$//'`
export VER=`echo $tscriptname | sed -e 's/^[^\-]*\-//' -e 's/\-[^\-]*$//'` export VER=`echo $tscriptname | sed -e 's/^[^\-]*\-//' -e 's/\-[^\-]*$//'`
export REL=`echo $tscriptname | sed -e 's/^[^\-]*\-[^\-]*\-//'` export REL=`echo $tscriptname | sed -e 's/^[^\-]*\-[^\-]*\-//'`
export FULLPKG=${PKG}-${VER}-${REL} export FULLPKG=${PKG}-${VER}-${REL}
# if the orig src package is bzip2'ed, remember to # if the orig src package is bzip2'ed, remember to
# change 'z' to 'j' in the 'tar xvzf' commands in the # change 'z' to 'j' in the 'tar xvzf' commands in the
# prep) and mkpatch) sections # prep) and mkpatch) sections
export src_orig_pkg_name=${PKG}-${VER}.tar.gz export src_orig_pkg_name=${PKG}-${VER}.tar.gz
export src_pkg_name=${FULLPKG}-src.tar.bz2 export src_pkg_name=${FULLPKG}-src.tar.bz2
export src_patch_name=${FULLPKG}.patch export src_patch_name=${FULLPKG}.patch
export bin_pkg_name=${FULLPKG}.tar.bz2 export bin_pkg_name=${FULLPKG}.tar.bz2
export src_orig_pkg=${topdir}/${src_orig_pkg_name} export src_orig_pkg=${topdir}/${src_orig_pkg_name}
export src_pkg=${topdir}/${src_pkg_name} export src_pkg=${topdir}/${src_pkg_name}
export src_patch=${topdir}/${src_patch_name} export src_patch=${topdir}/${src_patch_name}
export bin_pkg=${topdir}/${bin_pkg_name} export bin_pkg=${topdir}/${bin_pkg_name}
export srcdir=${topdir}/${PKG}-${VER} export srcdir=${topdir}/${PKG}-${VER}
export objdir=${srcdir}/.build export objdir=${srcdir}/.build
export instdir=${srcdir}/.inst export instdir=${srcdir}/.inst
export srcinstdir=${srcdir}/.sinst export srcinstdir=${srcdir}/.sinst
export checkfile=${topdir}/${FULLPKG}.check export checkfile=${topdir}/${FULLPKG}.check
# run on # run on
host=i686-pc-cygwin host=i686-pc-cygwin
# if this package creates binaries, they run on # if this package creates binaries, they run on
target=i686-pc-cygwin target=i686-pc-cygwin
prefix=/usr prefix=/usr
sysconfdir=/etc sysconfdir=/etc
MY_CFLAGS="-O2" MY_CFLAGS="-O2"
MY_CXXFLAGS="-O2" MY_CXXFLAGS="-O2"
MY_LDFLAGS= MY_LDFLAGS=
mkdirs() { mkdirs() {
(cd ${topdir} && \ (cd ${topdir} && \
mkdir -p ${objdir} && \ mkdir -p ${objdir} && \
mkdir -p ${instdir} && \ mkdir -p ${instdir} && \
mkdir -p ${srcinstdir} ) mkdir -p ${srcinstdir} )
} }
prep() { prep() {
(cd ${topdir} && \ (cd ${topdir} && \
tar xvzf ${src_orig_pkg} ; \ tar xvzf ${src_orig_pkg} ; \
cd ${topdir} && \ cd ${topdir} && \
patch -p0 < ${src_patch} \ patch -p0 < ${src_patch} \
&& mkdirs ) && mkdirs )
} }
conf() { conf() {
(cd ${objdir} && \ (cd ${objdir} && \
CFLAGS="${MY_CFLAGS}" LDFLAGS="${MY_LDFLAGS}" \ CFLAGS="${MY_CFLAGS}" LDFLAGS="${MY_LDFLAGS}" \
CXXFLAGS="${MY_CXXFLAGS}" LDFLAGS="${MY_LDFLAGS}" \ CXXFLAGS="${MY_CXXFLAGS}" LDFLAGS="${MY_LDFLAGS}" \
${srcdir}/configure --host=${host} --target=${target} \ ${srcdir}/configure --host=${host} --target=${target} \
--srcdir=${srcdir} --prefix=${prefix} \ --srcdir=${srcdir} --prefix=${prefix} \
--exec-prefix=${prefix} --sysconfdir=${sysconfdir} \ --exec-prefix=${prefix} --sysconfdir=${sysconfdir} \
--libdir=/lib --includedir=${prefix}/include \ --libdir=/lib --includedir=${prefix}/include \
--libexecdir='${sbindir}' --localstatedir=/var \ --libexecdir='${sbindir}' --localstatedir=/var \
--datadir='${prefix}/share' --datadir='${prefix}/share'
) )
} }
build() { build() {
(cd ${objdir} && \ (cd ${objdir} && \
CFLAGS="${MY_CFLAGS}" make ) CFLAGS="${MY_CFLAGS}" make )
} }
check() { check() {
(cd ${objdir} && \ (cd ${objdir} && \
make test | tee ${checkfile} 2>&1 ) make test | tee ${checkfile} 2>&1 )
} }
clean() { clean() {
(cd ${objdir} && \ (cd ${objdir} && \
make clean ) make clean )
} }
install() { install() {
(cd ${objdir} && \ (cd ${objdir} && \
make install DESTDIR=${instdir} make install DESTDIR=${instdir}
if [ -f ${instdir}${prefix}/info/dir ] ; then \ if [ -f ${instdir}${prefix}/info/dir ] ; then \
rm ${instdir}${prefix}/info/dir ; \ rm ${instdir}${prefix}/info/dir ; \
fi && \ fi && \
if [ ! -d ${instdir}${prefix}/doc/${PKG}-${VER} ]; then \ if [ ! -d ${instdir}${prefix}/doc/${PKG}-${VER} ]; then \
mkdir -p ${instdir}${prefix}/doc/${PKG}-${VER} ; \ mkdir -p ${instdir}${prefix}/doc/${PKG}-${VER} ; \
fi && \ fi && \
if [ ! -d ${instdir}${prefix}/doc/Cygwin ]; then \ if [ ! -d ${instdir}${prefix}/doc/Cygwin ]; then \
mkdir -p ${instdir}${prefix}/doc/Cygwin ; \ mkdir -p ${instdir}${prefix}/doc/Cygwin ; \
fi && \ fi && \
templist=""; \ templist=""; \
for f in ${srcdir}/ANNOUNCE ${srcdir}/CHANGES ${srcdir}/INSTALL \ for f in ${srcdir}/ANNOUNCE ${srcdir}/CHANGES ${srcdir}/INSTALL \
${srcdir}/KNOWNBUG ${srcdir}/LICENSE ${srcdir}/README \ ${srcdir}/KNOWNBUG ${srcdir}/LICENSE ${srcdir}/README \
${srcdir}/AUTHORS ${srcdir}/KNOWNBUG ${srcdir}/COPYING \ ${srcdir}/AUTHORS ${srcdir}/KNOWNBUG ${srcdir}/COPYING \
${srcdir}/doc/tutorial.pdf \ ${srcdir}/doc/tutorial.pdf \
${srcdir}/Examples/tutorial/tutorial.cpp \ ${srcdir}/Examples/tutorial/tutorial.cpp \
${srcdir}/TODO ; do \ ${srcdir}/TODO ; do \
if [ -f $f ] ; then \ if [ -f $f ] ; then \
templist="$templist $f"; \ templist="$templist $f"; \
fi ; \ fi ; \
done && \ done && \
if [ ! "x$templist" = "x" ]; then \ if [ ! "x$templist" = "x" ]; then \
/usr/bin/install -m 644 $templist \ /usr/bin/install -m 644 $templist \
${instdir}${prefix}/doc/${PKG}-${VER} ; ${instdir}${prefix}/doc/${PKG}-${VER} ;
fi && \ fi && \
if [ -f ${srcdir}/CYGWIN-PATCHES/${PKG}-${VER}.README ]; then \ if [ -f ${srcdir}/CYGWIN-PATCHES/${PKG}-${VER}.README ]; then \
/usr/bin/install -m 644 ${srcdir}/CYGWIN-PATCHES/${PKG}-${VER}.README \ /usr/bin/install -m 644 ${srcdir}/CYGWIN-PATCHES/${PKG}-${VER}.README \
${instdir}${prefix}/doc/Cygwin/${PKG}-${VER}.README ; \ ${instdir}${prefix}/doc/Cygwin/${PKG}-${VER}.README ; \
else \ else \
if [ -f ${srcdir}/CYGWIN-PATCHES/README ]; then \ if [ -f ${srcdir}/CYGWIN-PATCHES/README ]; then \
/usr/bin/install -m 644 ${srcdir}/CYGWIN-PATCHES/README \ /usr/bin/install -m 644 ${srcdir}/CYGWIN-PATCHES/README \
${instdir}${prefix}/doc/Cygwin/${PKG}-${VER}.README ; \ ${instdir}${prefix}/doc/Cygwin/${PKG}-${VER}.README ; \
fi ;\ fi ;\
fi ; ) fi ; )
} }
strip() { strip() {
(cd ${instdir} && \ (cd ${instdir} && \
find . -name "*.dll" | xargs strip > /dev/null 2>&1 find . -name "*.dll" | xargs strip > /dev/null 2>&1
find . -name "*.exe" | xargs strip > /dev/null 2>&1 ) find . -name "*.exe" | xargs strip > /dev/null 2>&1 )
} }
pkg() { pkg() {
(cd ${instdir} && \ (cd ${instdir} && \
tar cvjf ${bin_pkg} * ) tar cvjf ${bin_pkg} * )
} }
mkpatch() { mkpatch() {
(cd ${srcdir} && \ (cd ${srcdir} && \
tar xvzf ${src_orig_pkg} ;\ tar xvzf ${src_orig_pkg} ;\
mv ${PKG}-${VER} ../${PKG}-${VER}-orig && \ mv ${PKG}-${VER} ../${PKG}-${VER}-orig && \
cd ${topdir} && \ cd ${topdir} && \
diff -urN -x '.build' -x '.inst' -x '.sinst' \ diff -urN -x '.build' -x '.inst' -x '.sinst' \
${PKG}-${VER}-orig ${PKG}-${VER} > \ ${PKG}-${VER}-orig ${PKG}-${VER} > \
${srcinstdir}/${src_patch_name} ; \ ${srcinstdir}/${src_patch_name} ; \
rm -rf ${PKG}-${VER}-orig ) rm -rf ${PKG}-${VER}-orig )
} }
spkg() { spkg() {
(mkpatch && \ (mkpatch && \
cp ${src_orig_pkg} ${srcinstdir}/${src_orig_pkg_name} && \ cp ${src_orig_pkg} ${srcinstdir}/${src_orig_pkg_name} && \
cp $0 ${srcinstdir}/`basename $0` && \ cp $0 ${srcinstdir}/`basename $0` && \
cd ${srcinstdir} && \ cd ${srcinstdir} && \
tar cvjf ${src_pkg} * ) tar cvjf ${src_pkg} * )
} }
finish() { finish() {
rm -rf ${srcdir} rm -rf ${srcdir}
} }
case $1 in case $1 in
prep) prep ; STATUS=$? ;; prep) prep ; STATUS=$? ;;
mkdirs) mkdirs; STATUS=$? ;; mkdirs) mkdirs; STATUS=$? ;;
conf) conf ; STATUS=$? ;; conf) conf ; STATUS=$? ;;
build) build ; STATUS=$? ;; build) build ; STATUS=$? ;;
check) check ; STATUS=$? ;; check) check ; STATUS=$? ;;
clean) clean ; STATUS=$? ;; clean) clean ; STATUS=$? ;;
install) install ; STATUS=$? ;; install) install ; STATUS=$? ;;
strip) strip ; STATUS=$? ;; strip) strip ; STATUS=$? ;;
package) pkg ; STATUS=$? ;; package) pkg ; STATUS=$? ;;
pkg) pkg ; STATUS=$? ;; pkg) pkg ; STATUS=$? ;;
mkpatch) mkpatch ; STATUS=$? ;; mkpatch) mkpatch ; STATUS=$? ;;
src-package) spkg ; STATUS=$? ;; src-package) spkg ; STATUS=$? ;;
spkg) spkg ; STATUS=$? ;; spkg) spkg ; STATUS=$? ;;
finish) finish ; STATUS=$? ;; finish) finish ; STATUS=$? ;;
all) prep && conf && build && install && \ all) prep && conf && build && install && \
strip && pkg && spkg && finish ; \ strip && pkg && spkg && finish ; \
STATUS=$? ;; STATUS=$? ;;
*) echo "Error: bad arguments" ; exit 1 ;; *) echo "Error: bad arguments" ; exit 1 ;;
esac esac
exit ${STATUS} exit ${STATUS}

View File

@ -1,315 +1,315 @@
# Makefile.in generated by automake 1.11.3 from Makefile.am. # Makefile.in generated by automake 1.11.3 from Makefile.am.
# @configure_input@ # @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
# Foundation, Inc. # Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful, # This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE. # PARTICULAR PURPOSE.
@SET_MAKE@ @SET_MAKE@
VPATH = @srcdir@ VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@ pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644 install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA) INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name) transform = $(program_transform_name)
NORMAL_INSTALL = : NORMAL_INSTALL = :
PRE_INSTALL = : PRE_INSTALL = :
POST_INSTALL = : POST_INSTALL = :
NORMAL_UNINSTALL = : NORMAL_UNINSTALL = :
PRE_UNINSTALL = : PRE_UNINSTALL = :
POST_UNINSTALL = : POST_UNINSTALL = :
subdir = doc subdir = doc
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.in am__aclocal_m4_deps = $(top_srcdir)/configure.in
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4) $(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_FILES = CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES = CONFIG_CLEAN_VPATH_FILES =
SOURCES = SOURCES =
DIST_SOURCES = DIST_SOURCES =
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@ ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@ AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@ AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@ AUTOMAKE = @AUTOMAKE@
AWK = @AWK@ AWK = @AWK@
CPPFLAGS = @CPPFLAGS@ CPPFLAGS = @CPPFLAGS@
CXX = @CXX@ CXX = @CXX@
CXXDEPMODE = @CXXDEPMODE@ CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@ CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@ CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@ DEFS = @DEFS@
DEPDIR = @DEPDIR@ DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@ ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@ ECHO_T = @ECHO_T@
EXEEXT = @EXEEXT@ EXEEXT = @EXEEXT@
INSTALL = @INSTALL@ INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LDFLAGS = @LDFLAGS@ LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@ LIBOBJS = @LIBOBJS@
LIBS = @LIBS@ LIBS = @LIBS@
LTLIBOBJS = @LTLIBOBJS@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@ MKDIR_P = @MKDIR_P@
OBJEXT = @OBJEXT@ OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@ PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@ PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@ PATH_SEPARATOR = @PATH_SEPARATOR@
SET_MAKE = @SET_MAKE@ SET_MAKE = @SET_MAKE@
SHELL = @SHELL@ SHELL = @SHELL@
STRIP = @STRIP@ STRIP = @STRIP@
VERSION = @VERSION@ VERSION = @VERSION@
abs_builddir = @abs_builddir@ abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@ abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@ abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@ abs_top_srcdir = @abs_top_srcdir@
ac_ct_CXX = @ac_ct_CXX@ ac_ct_CXX = @ac_ct_CXX@
am__include = @am__include@ am__include = @am__include@
am__leading_dot = @am__leading_dot@ am__leading_dot = @am__leading_dot@
am__quote = @am__quote@ am__quote = @am__quote@
am__tar = @am__tar@ am__tar = @am__tar@
am__untar = @am__untar@ am__untar = @am__untar@
bindir = @bindir@ bindir = @bindir@
build_alias = @build_alias@ build_alias = @build_alias@
builddir = @builddir@ builddir = @builddir@
datadir = @datadir@ datadir = @datadir@
datarootdir = @datarootdir@ datarootdir = @datarootdir@
docdir = @docdir@ docdir = @docdir@
dvidir = @dvidir@ dvidir = @dvidir@
exec_prefix = @exec_prefix@ exec_prefix = @exec_prefix@
host_alias = @host_alias@ host_alias = @host_alias@
htmldir = @htmldir@ htmldir = @htmldir@
includedir = @includedir@ includedir = @includedir@
infodir = @infodir@ infodir = @infodir@
install_sh = @install_sh@ install_sh = @install_sh@
libdir = @libdir@ libdir = @libdir@
libexecdir = @libexecdir@ libexecdir = @libexecdir@
localedir = @localedir@ localedir = @localedir@
localstatedir = @localstatedir@ localstatedir = @localstatedir@
mandir = @mandir@ mandir = @mandir@
mkdir_p = @mkdir_p@ mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@ oldincludedir = @oldincludedir@
pdfdir = @pdfdir@ pdfdir = @pdfdir@
prefix = @prefix@ prefix = @prefix@
program_transform_name = @program_transform_name@ program_transform_name = @program_transform_name@
psdir = @psdir@ psdir = @psdir@
sbindir = @sbindir@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@ srcdir = @srcdir@
sysconfdir = @sysconfdir@ sysconfdir = @sysconfdir@
target_alias = @target_alias@ target_alias = @target_alias@
top_build_prefix = @top_build_prefix@ top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@ top_builddir = @top_builddir@
top_srcdir = @top_srcdir@ top_srcdir = @top_srcdir@
EXTRA_DIST = elfio.docbook elfio.pdf EXTRA_DIST = elfio.docbook elfio.pdf
all: all-am all: all-am
.SUFFIXES: .SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \ @for dep in $?; do \
case '$(am__configure_deps)' in \ case '$(am__configure_deps)' in \
*$$dep*) \ *$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \ && { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \ exit 1;; \
esac; \ esac; \
done; \ done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile'; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile'; \
$(am__cd) $(top_srcdir) && \ $(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu doc/Makefile $(AUTOMAKE) --gnu doc/Makefile
.PRECIOUS: Makefile .PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \ @case '$?' in \
*config.status*) \ *config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \ *) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac; esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps) $(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps) $(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps): $(am__aclocal_m4_deps):
tags: TAGS tags: TAGS
TAGS: TAGS:
ctags: CTAGS ctags: CTAGS
CTAGS: CTAGS:
distdir: $(DISTFILES) distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \ list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \ dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \ sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \ case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \ */*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \ sort -u` ;; \
esac; \ esac; \
for file in $$dist_files; do \ for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \ if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \ if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \ fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \ fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \ else \
test -f "$(distdir)/$$file" \ test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \ || exit 1; \
fi; \ fi; \
done done
check-am: all-am check-am: all-am
check: check-am check: check-am
all-am: Makefile all-am: Makefile
installdirs: installdirs:
install: install-am install: install-am
install-exec: install-exec-am install-exec: install-exec-am
install-data: install-data-am install-data: install-data-am
uninstall: uninstall-am uninstall: uninstall-am
install-am: all-am install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am installcheck: installcheck-am
install-strip: install-strip:
if test -z '$(STRIP)'; then \ if test -z '$(STRIP)'; then \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
install; \ install; \
else \ else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi fi
mostlyclean-generic: mostlyclean-generic:
clean-generic: clean-generic:
distclean-generic: distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic: maintainer-clean-generic:
@echo "This command is intended for maintainers to use" @echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild." @echo "it deletes files that may require special tools to rebuild."
clean: clean-am clean: clean-am
clean-am: clean-generic mostlyclean-am clean-am: clean-generic mostlyclean-am
distclean: distclean-am distclean: distclean-am
-rm -f Makefile -rm -f Makefile
distclean-am: clean-am distclean-generic distclean-am: clean-am distclean-generic
dvi: dvi-am dvi: dvi-am
dvi-am: dvi-am:
html: html-am html: html-am
html-am: html-am:
info: info-am info: info-am
info-am: info-am:
install-data-am: install-data-am:
install-dvi: install-dvi-am install-dvi: install-dvi-am
install-dvi-am: install-dvi-am:
install-exec-am: install-exec-am:
install-html: install-html-am install-html: install-html-am
install-html-am: install-html-am:
install-info: install-info-am install-info: install-info-am
install-info-am: install-info-am:
install-man: install-man:
install-pdf: install-pdf-am install-pdf: install-pdf-am
install-pdf-am: install-pdf-am:
install-ps: install-ps-am install-ps: install-ps-am
install-ps-am: install-ps-am:
installcheck-am: installcheck-am:
maintainer-clean: maintainer-clean-am maintainer-clean: maintainer-clean-am
-rm -f Makefile -rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic mostlyclean-am: mostlyclean-generic
pdf: pdf-am pdf: pdf-am
pdf-am: pdf-am:
ps: ps-am ps: ps-am
ps-am: ps-am:
uninstall-am: uninstall-am:
.MAKE: install-am install-strip .MAKE: install-am install-strip
.PHONY: all all-am check check-am clean clean-generic distclean \ .PHONY: all all-am check check-am clean clean-generic distclean \
distclean-generic distdir dvi dvi-am html html-am info info-am \ distclean-generic distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am install-dvi \ install install-am install-data install-data-am install-dvi \
install-dvi-am install-exec install-exec-am install-html \ install-dvi-am install-exec install-exec-am install-html \
install-html-am install-info install-info-am install-man \ install-html-am install-info install-info-am install-man \
install-pdf install-pdf-am install-ps install-ps-am \ install-pdf install-pdf-am install-ps install-ps-am \
install-strip installcheck installcheck-am installdirs \ install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \ maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am
# Tell versions [3.59,3.63) of GNU make to not export all variables. # Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded. # Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT: .NOEXPORT:

View File

@ -1,15 +1,15 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M10.428,10.411h0.56c3.78,0,4.788-1.96,4.872-3.444h3.22v19.88h-3.92V13.154h-4.732V10.411z"/> <path style="fill:#FFFFFF;" d="M10.428,10.411h0.56c3.78,0,4.788-1.96,4.872-3.444h3.22v19.88h-3.92V13.154h-4.732V10.411z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 703 B

After

Width:  |  Height:  |  Size: 718 B

View File

@ -1,18 +1,18 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M3.815,10.758h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.04h-3.36V13.11H3.815V10.758z"/> <path style="fill:#FFFFFF;" d="M3.815,10.758h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.04h-3.36V13.11H3.815V10.758z"/>
<path style="fill:#FFFFFF;" d="M22.175,7.806c4.009,0,5.904,2.76,5.904,8.736c0,5.975-1.896,8.76-5.904,8.76 <path style="fill:#FFFFFF;" d="M22.175,7.806c4.009,0,5.904,2.76,5.904,8.736c0,5.975-1.896,8.76-5.904,8.76
c-4.008,0-5.904-2.785-5.904-8.76C16.271,10.566,18.167,7.806,22.175,7.806z M22.175,22.613c1.921,0,2.448-1.68,2.448-6.071 c-4.008,0-5.904-2.785-5.904-8.76C16.271,10.566,18.167,7.806,22.175,7.806z M22.175,22.613c1.921,0,2.448-1.68,2.448-6.071
c0-4.393-0.527-6.049-2.448-6.049c-1.92,0-2.448,1.656-2.448,6.049C19.727,20.934,20.255,22.613,22.175,22.613z"/> c0-4.393-0.527-6.049-2.448-6.049c-1.92,0-2.448,1.656-2.448,6.049C19.727,20.934,20.255,22.613,22.175,22.613z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -1,16 +1,16 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M5.209,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H5.209V10.412z"/> <path style="fill:#FFFFFF;" d="M5.209,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H5.209V10.412z"/>
<path style="fill:#FFFFFF;" d="M18.553,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.359V12.764h-4.056V10.412z"/> <path style="fill:#FFFFFF;" d="M18.553,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.359V12.764h-4.056V10.412z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 827 B

After

Width:  |  Height:  |  Size: 843 B

View File

@ -1,18 +1,18 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M4.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H4.813V10.412z"/> <path style="fill:#FFFFFF;" d="M4.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H4.813V10.412z"/>
<path style="fill:#FFFFFF;" d="M17.316,13.484c0-5.545,4.056-6.024,5.568-6.024c3.265,0,5.856,1.92,5.856,5.376 <path style="fill:#FFFFFF;" d="M17.316,13.484c0-5.545,4.056-6.024,5.568-6.024c3.265,0,5.856,1.92,5.856,5.376
c0,2.928-1.896,4.416-3.553,5.544c-2.256,1.584-3.432,2.353-3.815,3.145h7.392V24.5h-11.64c0.12-1.992,0.264-4.08,3.96-6.768 c0,2.928-1.896,4.416-3.553,5.544c-2.256,1.584-3.432,2.353-3.815,3.145h7.392V24.5h-11.64c0.12-1.992,0.264-4.08,3.96-6.768
c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.353-2.424c-2.352,0-2.423,1.944-2.447,3.192H17.316z"/> c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.353-2.424c-2.352,0-2.423,1.944-2.447,3.192H17.316z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -1,20 +1,20 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M3.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H3.813V10.412z"/> <path style="fill:#FFFFFF;" d="M3.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H3.813V10.412z"/>
<path style="fill:#FFFFFF;" d="M20.611,14.636h0.529c1.008,0,2.855-0.096,2.855-2.304c0-0.624-0.288-2.185-2.137-2.185 <path style="fill:#FFFFFF;" d="M20.611,14.636h0.529c1.008,0,2.855-0.096,2.855-2.304c0-0.624-0.288-2.185-2.137-2.185
c-2.303,0-2.303,2.185-2.303,2.784h-3.12c0-3.191,1.8-5.472,5.64-5.472c2.279,0,5.279,1.152,5.279,4.752 c-2.303,0-2.303,2.185-2.303,2.784h-3.12c0-3.191,1.8-5.472,5.64-5.472c2.279,0,5.279,1.152,5.279,4.752
c0,1.728-1.08,2.808-2.039,3.24V15.5c0.6,0.168,2.568,1.056,2.568,3.96c0,3.216-2.377,5.496-5.809,5.496 c0,1.728-1.08,2.808-2.039,3.24V15.5c0.6,0.168,2.568,1.056,2.568,3.96c0,3.216-2.377,5.496-5.809,5.496
c-1.607,0-5.928-0.36-5.928-5.688h3.288l-0.024,0.024c0,0.912,0.24,2.976,2.496,2.976c1.344,0,2.52-0.911,2.52-2.808 c-1.607,0-5.928-0.36-5.928-5.688h3.288l-0.024,0.024c0,0.912,0.24,2.976,2.496,2.976c1.344,0,2.52-0.911,2.52-2.808
c0-2.328-2.256-2.424-3.816-2.424V14.636z"/> c0-2.328-2.256-2.424-3.816-2.424V14.636z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -1,17 +1,17 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M4.146,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H4.146V10.412z"/> <path style="fill:#FFFFFF;" d="M4.146,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H4.146V10.412z"/>
<path style="fill:#FFFFFF;" d="M28.457,20.732h-1.896V24.5h-3.36v-3.768h-6.72v-2.904L22.746,7.46h3.815v10.656h1.896V20.732z <path style="fill:#FFFFFF;" d="M28.457,20.732h-1.896V24.5h-3.36v-3.768h-6.72v-2.904L22.746,7.46h3.815v10.656h1.896V20.732z
M23.201,18.116c0-4.128,0.072-6.792,0.072-7.32h-0.048l-4.272,7.32H23.201z"/> M23.201,18.116c0-4.128,0.072-6.792,0.072-7.32h-0.048l-4.272,7.32H23.201z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 906 B

After

Width:  |  Height:  |  Size: 923 B

View File

@ -1,19 +1,19 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M3.479,11.079h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.04h-3.36V13.43H3.479V11.079z"/> <path style="fill:#FFFFFF;" d="M3.479,11.079h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.04h-3.36V13.43H3.479V11.079z"/>
<path style="fill:#FFFFFF;" d="M19.342,14.943c0.625-0.433,1.392-0.937,3.048-0.937c2.279,0,5.16,1.584,5.16,5.496 <path style="fill:#FFFFFF;" d="M19.342,14.943c0.625-0.433,1.392-0.937,3.048-0.937c2.279,0,5.16,1.584,5.16,5.496
c0,2.328-1.176,6.121-6.192,6.121c-2.664,0-5.376-1.584-5.544-5.016h3.36c0.144,1.391,0.888,2.326,2.376,2.326 c0,2.328-1.176,6.121-6.192,6.121c-2.664,0-5.376-1.584-5.544-5.016h3.36c0.144,1.391,0.888,2.326,2.376,2.326
c1.607,0,2.544-1.367,2.544-3.191c0-1.512-0.72-3.047-2.496-3.047c-0.456,0-1.608,0.023-2.256,1.223l-3-0.143l1.176-9.361h9.36 c1.607,0,2.544-1.367,2.544-3.191c0-1.512-0.72-3.047-2.496-3.047c-0.456,0-1.608,0.023-2.256,1.223l-3-0.143l1.176-9.361h9.36
v2.832h-6.937L19.342,14.943z"/> v2.832h-6.937L19.342,14.943z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -1,20 +1,20 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M3.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H3.813V10.412z"/> <path style="fill:#FFFFFF;" d="M3.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H3.813V10.412z"/>
<path style="fill:#FFFFFF;" d="M24.309,11.78c-0.097-0.96-0.721-1.633-1.969-1.633c-2.184,0-2.688,2.496-2.808,4.704L19.58,14.9 <path style="fill:#FFFFFF;" d="M24.309,11.78c-0.097-0.96-0.721-1.633-1.969-1.633c-2.184,0-2.688,2.496-2.808,4.704L19.58,14.9
c0.456-0.624,1.296-1.416,3.191-1.416c3.529,0,5.209,2.712,5.209,5.256c0,3.72-2.28,6.216-5.568,6.216 c0.456-0.624,1.296-1.416,3.191-1.416c3.529,0,5.209,2.712,5.209,5.256c0,3.72-2.28,6.216-5.568,6.216
c-5.16,0-6.168-4.32-6.168-8.568c0-3.24,0.432-8.928,6.336-8.928c0.695,0,2.641,0.264,3.48,1.104 c-5.16,0-6.168-4.32-6.168-8.568c0-3.24,0.432-8.928,6.336-8.928c0.695,0,2.641,0.264,3.48,1.104
c0.936,0.912,1.271,1.416,1.584,3.217H24.309z M22.172,16.172c-1.271,0-2.568,0.792-2.568,2.928c0,1.849,1.056,3.168,2.664,3.168 c0.936,0.912,1.271,1.416,1.584,3.217H24.309z M22.172,16.172c-1.271,0-2.568,0.792-2.568,2.928c0,1.849,1.056,3.168,2.664,3.168
c1.225,0,2.353-0.936,2.353-3.239C24.62,16.868,23.229,16.172,22.172,16.172z"/> c1.225,0,2.353-0.936,2.353-3.239C24.62,16.868,23.229,16.172,22.172,16.172z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -1,17 +1,17 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M3.479,11.079h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.04h-3.36V13.43H3.479V11.079z"/> <path style="fill:#FFFFFF;" d="M3.479,11.079h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.04h-3.36V13.43H3.479V11.079z"/>
<path style="fill:#FFFFFF;" d="M27.838,11.006c-1.631,1.776-5.807,6.816-6.215,14.16h-3.457c0.36-6.816,4.632-12.24,6.072-13.776 <path style="fill:#FFFFFF;" d="M27.838,11.006c-1.631,1.776-5.807,6.816-6.215,14.16h-3.457c0.36-6.816,4.632-12.24,6.072-13.776
h-8.472l0.072-2.976h12V11.006z"/> h-8.472l0.072-2.976h12V11.006z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 866 B

After

Width:  |  Height:  |  Size: 883 B

View File

@ -1,21 +1,21 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M4.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H4.813V10.412z"/> <path style="fill:#FFFFFF;" d="M4.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H4.813V10.412z"/>
<path style="fill:#FFFFFF;" d="M23.172,24.956c-4.392,0-5.904-2.856-5.904-5.185c0-0.863,0-3.119,2.592-4.319 <path style="fill:#FFFFFF;" d="M23.172,24.956c-4.392,0-5.904-2.856-5.904-5.185c0-0.863,0-3.119,2.592-4.319
c-1.344-0.672-2.064-1.752-2.064-3.336c0-2.904,2.328-4.656,5.304-4.656c3.528,0,5.4,2.088,5.4,4.44 c-1.344-0.672-2.064-1.752-2.064-3.336c0-2.904,2.328-4.656,5.304-4.656c3.528,0,5.4,2.088,5.4,4.44
c0,1.464-0.6,2.712-1.968,3.432c1.632,0.815,2.544,1.896,2.544,4.104C29.076,21.596,27.684,24.956,23.172,24.956z M23.124,16.916 c0,1.464-0.6,2.712-1.968,3.432c1.632,0.815,2.544,1.896,2.544,4.104C29.076,21.596,27.684,24.956,23.172,24.956z M23.124,16.916
c-1.224,0-2.4,0.792-2.4,2.64c0,1.632,0.936,2.712,2.472,2.712c1.752,0,2.424-1.512,2.424-2.688 c-1.224,0-2.4,0.792-2.4,2.64c0,1.632,0.936,2.712,2.472,2.712c1.752,0,2.424-1.512,2.424-2.688
C25.62,18.38,24.996,16.916,23.124,16.916z M25.284,12.26c0-1.296-0.888-2.112-1.968-2.112c-1.512,0-2.305,0.864-2.305,2.112 C25.62,18.38,24.996,16.916,23.124,16.916z M25.284,12.26c0-1.296-0.888-2.112-1.968-2.112c-1.512,0-2.305,0.864-2.305,2.112
c0,1.008,0.744,2.112,2.185,2.112C24.516,14.372,25.284,13.484,25.284,12.26z"/> c0,1.008,0.744,2.112,2.185,2.112C24.516,14.372,25.284,13.484,25.284,12.26z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -1,20 +1,20 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M4.146,10.746h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.041h-3.36V13.097H4.146V10.746z"/> <path style="fill:#FFFFFF;" d="M4.146,10.746h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.041h-3.36V13.097H4.146V10.746z"/>
<path style="fill:#FFFFFF;" d="M20.225,20.898v0.023c0.192,1.176,0.936,1.68,1.968,1.68c1.392,0,2.783-1.176,2.808-4.752 <path style="fill:#FFFFFF;" d="M20.225,20.898v0.023c0.192,1.176,0.936,1.68,1.968,1.68c1.392,0,2.783-1.176,2.808-4.752
l-0.048-0.049c-0.768,1.152-2.088,1.441-3.24,1.441c-3.264,0-5.16-2.473-5.16-5.329c0-4.176,2.472-6.12,5.808-6.12 l-0.048-0.049c-0.768,1.152-2.088,1.441-3.24,1.441c-3.264,0-5.16-2.473-5.16-5.329c0-4.176,2.472-6.12,5.808-6.12
c5.904,0,6,6.36,6,8.76c0,6.601-3.12,8.736-6.192,8.736c-2.904,0-4.992-1.68-5.28-4.391H20.225z M22.434,16.553 c5.904,0,6,6.36,6,8.76c0,6.601-3.12,8.736-6.192,8.736c-2.904,0-4.992-1.68-5.28-4.391H20.225z M22.434,16.553
c1.176,0,2.472-0.84,2.472-2.855c0-1.944-0.841-3.145-2.568-3.145c-0.864,0-2.424,0.433-2.424,2.88 c1.176,0,2.472-0.84,2.472-2.855c0-1.944-0.841-3.145-2.568-3.145c-0.864,0-2.424,0.433-2.424,2.88
C19.913,16.001,21.161,16.553,22.434,16.553z"/> C19.913,16.001,21.161,16.553,22.434,16.553z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -1,17 +1,17 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M9.668,12.328c0-6.469,4.732-7.028,6.496-7.028c3.808,0,6.833,2.24,6.833,6.271 <path style="fill:#FFFFFF;" d="M9.668,12.328c0-6.469,4.732-7.028,6.496-7.028c3.808,0,6.833,2.24,6.833,6.271
c0,3.416-2.213,5.152-4.145,6.469c-2.632,1.848-4.004,2.744-4.452,3.668h8.624v3.472H9.444c0.14-2.324,0.308-4.76,4.62-7.896 c0,3.416-2.213,5.152-4.145,6.469c-2.632,1.848-4.004,2.744-4.452,3.668h8.624v3.472H9.444c0.14-2.324,0.308-4.76,4.62-7.896
c3.584-2.604,5.012-3.612,5.012-5.853c0-1.315-0.84-2.828-2.744-2.828c-2.744,0-2.828,2.269-2.856,3.725H9.668z"/> c3.584-2.604,5.012-3.612,5.012-5.853c0-1.315-0.84-2.828-2.744-2.828c-2.744,0-2.828,2.269-2.856,3.725H9.668z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 926 B

After

Width:  |  Height:  |  Size: 943 B

View File

@ -1,20 +1,20 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376 <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768 c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/> c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
<path style="fill:#FFFFFF;" d="M23.172,7.46c4.008,0,5.904,2.76,5.904,8.736c0,5.976-1.896,8.76-5.904,8.76 <path style="fill:#FFFFFF;" d="M23.172,7.46c4.008,0,5.904,2.76,5.904,8.736c0,5.976-1.896,8.76-5.904,8.76
s-5.904-2.784-5.904-8.76C17.268,10.22,19.164,7.46,23.172,7.46z M23.172,22.268c1.92,0,2.448-1.68,2.448-6.071 s-5.904-2.784-5.904-8.76C17.268,10.22,19.164,7.46,23.172,7.46z M23.172,22.268c1.92,0,2.448-1.68,2.448-6.071
c0-4.393-0.528-6.049-2.448-6.049s-2.448,1.656-2.448,6.049C20.724,20.588,21.252,22.268,23.172,22.268z"/> c0-4.393-0.528-6.049-2.448-6.049s-2.448,1.656-2.448,6.049C20.724,20.588,21.252,22.268,23.172,22.268z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -1,18 +1,18 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M5.306,13.151c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376 <path style="fill:#FFFFFF;" d="M5.306,13.151c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392v2.976H5.114c0.12-1.992,0.264-4.08,3.96-6.768 c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392v2.976H5.114c0.12-1.992,0.264-4.08,3.96-6.768
c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H5.306z"/> c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H5.306z"/>
<path style="fill:#FFFFFF;" d="M19.49,10.079h0.48c3.239,0,4.104-1.681,4.176-2.952h2.761v17.04h-3.361V12.431H19.49V10.079z"/> <path style="fill:#FFFFFF;" d="M19.49,10.079h0.48c3.239,0,4.104-1.681,4.176-2.952h2.761v17.04h-3.361V12.431H19.49V10.079z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -1,20 +1,20 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376 <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768 c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/> c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
<path style="fill:#FFFFFF;" d="M17.316,13.484c0-5.545,4.056-6.024,5.568-6.024c3.265,0,5.856,1.92,5.856,5.376 <path style="fill:#FFFFFF;" d="M17.316,13.484c0-5.545,4.056-6.024,5.568-6.024c3.265,0,5.856,1.92,5.856,5.376
c0,2.928-1.896,4.416-3.553,5.544c-2.256,1.584-3.432,2.353-3.815,3.145h7.392V24.5h-11.64c0.12-1.992,0.264-4.08,3.96-6.768 c0,2.928-1.896,4.416-3.553,5.544c-2.256,1.584-3.432,2.353-3.815,3.145h7.392V24.5h-11.64c0.12-1.992,0.264-4.08,3.96-6.768
c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.353-2.424c-2.352,0-2.423,1.944-2.447,3.192H17.316z"/> c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.353-2.424c-2.352,0-2.423,1.944-2.447,3.192H17.316z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -1,22 +1,22 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376 <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768 c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/> c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
<path style="fill:#FFFFFF;" d="M21.612,14.636h0.528c1.008,0,2.855-0.096,2.855-2.304c0-0.624-0.287-2.185-2.136-2.185 <path style="fill:#FFFFFF;" d="M21.612,14.636h0.528c1.008,0,2.855-0.096,2.855-2.304c0-0.624-0.287-2.185-2.136-2.185
c-2.304,0-2.304,2.185-2.304,2.784h-3.12c0-3.191,1.8-5.472,5.64-5.472c2.28,0,5.28,1.152,5.28,4.752 c-2.304,0-2.304,2.185-2.304,2.784h-3.12c0-3.191,1.8-5.472,5.64-5.472c2.28,0,5.28,1.152,5.28,4.752
c0,1.728-1.08,2.808-2.04,3.24V15.5c0.6,0.168,2.568,1.056,2.568,3.96c0,3.216-2.377,5.496-5.809,5.496 c0,1.728-1.08,2.808-2.04,3.24V15.5c0.6,0.168,2.568,1.056,2.568,3.96c0,3.216-2.377,5.496-5.809,5.496
c-1.607,0-5.928-0.36-5.928-5.688h3.288l-0.024,0.024c0,0.912,0.24,2.976,2.496,2.976c1.344,0,2.521-0.911,2.521-2.808 c-1.607,0-5.928-0.36-5.928-5.688h3.288l-0.024,0.024c0,0.912,0.24,2.976,2.496,2.976c1.344,0,2.521-0.911,2.521-2.808
c0-2.328-2.257-2.424-3.816-2.424V14.636z"/> c0-2.328-2.257-2.424-3.816-2.424V14.636z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -1,19 +1,19 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M4.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376 <path style="fill:#FFFFFF;" d="M4.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H4.78c0.12-1.992,0.264-4.08,3.96-6.768 c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H4.78c0.12-1.992,0.264-4.08,3.96-6.768
c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H4.972z"/> c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H4.972z"/>
<path style="fill:#FFFFFF;" d="M30.124,20.732h-1.896V24.5h-3.36v-3.768h-6.72v-2.904L24.412,7.46h3.816v10.656h1.896V20.732z <path style="fill:#FFFFFF;" d="M30.124,20.732h-1.896V24.5h-3.36v-3.768h-6.72v-2.904L24.412,7.46h3.816v10.656h1.896V20.732z
M24.868,18.116c0-4.128,0.071-6.792,0.071-7.32h-0.047l-4.272,7.32H24.868z"/> M24.868,18.116c0-4.128,0.071-6.792,0.071-7.32h-0.047l-4.272,7.32H24.868z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -1,21 +1,21 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376 <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768 c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/> c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
<path style="fill:#FFFFFF;" d="M20.676,14.276c0.624-0.433,1.393-0.937,3.049-0.937c2.279,0,5.16,1.584,5.16,5.496 <path style="fill:#FFFFFF;" d="M20.676,14.276c0.624-0.433,1.393-0.937,3.049-0.937c2.279,0,5.16,1.584,5.16,5.496
c0,2.328-1.177,6.12-6.193,6.12c-2.664,0-5.375-1.584-5.543-5.016h3.36c0.144,1.392,0.889,2.327,2.376,2.327 c0,2.328-1.177,6.12-6.193,6.12c-2.664,0-5.375-1.584-5.543-5.016h3.36c0.144,1.392,0.889,2.327,2.376,2.327
c1.608,0,2.544-1.367,2.544-3.191c0-1.513-0.72-3.048-2.496-3.048c-0.455,0-1.607,0.023-2.256,1.224l-3-0.144l1.176-9.36h9.36 c1.608,0,2.544-1.367,2.544-3.191c0-1.513-0.72-3.048-2.496-3.048c-0.455,0-1.607,0.023-2.256,1.224l-3-0.144l1.176-9.36h9.36
v2.832h-6.937L20.676,14.276z"/> v2.832h-6.937L20.676,14.276z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -1,22 +1,22 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376 <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768 c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/> c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
<path style="fill:#FFFFFF;" d="M25.309,11.78c-0.097-0.96-0.721-1.633-1.969-1.633c-2.184,0-2.688,2.496-2.808,4.704L20.58,14.9 <path style="fill:#FFFFFF;" d="M25.309,11.78c-0.097-0.96-0.721-1.633-1.969-1.633c-2.184,0-2.688,2.496-2.808,4.704L20.58,14.9
c0.456-0.624,1.296-1.416,3.191-1.416c3.529,0,5.209,2.712,5.209,5.256c0,3.72-2.28,6.216-5.568,6.216 c0.456-0.624,1.296-1.416,3.191-1.416c3.529,0,5.209,2.712,5.209,5.256c0,3.72-2.28,6.216-5.568,6.216
c-5.16,0-6.168-4.32-6.168-8.568c0-3.24,0.432-8.928,6.336-8.928c0.695,0,2.641,0.264,3.48,1.104 c-5.16,0-6.168-4.32-6.168-8.568c0-3.24,0.432-8.928,6.336-8.928c0.695,0,2.641,0.264,3.48,1.104
c0.936,0.912,1.271,1.416,1.584,3.217H25.309z M23.172,16.172c-1.271,0-2.568,0.792-2.568,2.928c0,1.849,1.056,3.168,2.664,3.168 c0.936,0.912,1.271,1.416,1.584,3.217H25.309z M23.172,16.172c-1.271,0-2.568,0.792-2.568,2.928c0,1.849,1.056,3.168,2.664,3.168
c1.225,0,2.353-0.936,2.353-3.239C25.62,16.868,24.229,16.172,23.172,16.172z"/> c1.225,0,2.353-0.936,2.353-3.239C25.62,16.868,24.229,16.172,23.172,16.172z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -1,19 +1,19 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376 <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768 c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/> c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
<path style="fill:#FFFFFF;" d="M29.172,10.34c-1.632,1.776-5.808,6.816-6.216,14.16H19.5c0.36-6.816,4.632-12.24,6.072-13.776 <path style="fill:#FFFFFF;" d="M29.172,10.34c-1.632,1.776-5.808,6.816-6.216,14.16H19.5c0.36-6.816,4.632-12.24,6.072-13.776
H17.1l0.072-2.976h12V10.34z"/> H17.1l0.072-2.976h12V10.34z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -1,23 +1,23 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376 <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768 c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/> c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
<path style="fill:#FFFFFF;" d="M23.172,24.956c-4.392,0-5.904-2.856-5.904-5.185c0-0.863,0-3.119,2.592-4.319 <path style="fill:#FFFFFF;" d="M23.172,24.956c-4.392,0-5.904-2.856-5.904-5.185c0-0.863,0-3.119,2.592-4.319
c-1.344-0.672-2.064-1.752-2.064-3.336c0-2.904,2.328-4.656,5.304-4.656c3.528,0,5.4,2.088,5.4,4.44 c-1.344-0.672-2.064-1.752-2.064-3.336c0-2.904,2.328-4.656,5.304-4.656c3.528,0,5.4,2.088,5.4,4.44
c0,1.464-0.6,2.712-1.968,3.432c1.632,0.815,2.544,1.896,2.544,4.104C29.076,21.596,27.684,24.956,23.172,24.956z M23.124,16.916 c0,1.464-0.6,2.712-1.968,3.432c1.632,0.815,2.544,1.896,2.544,4.104C29.076,21.596,27.684,24.956,23.172,24.956z M23.124,16.916
c-1.224,0-2.4,0.792-2.4,2.64c0,1.632,0.936,2.712,2.472,2.712c1.752,0,2.424-1.512,2.424-2.688 c-1.224,0-2.4,0.792-2.4,2.64c0,1.632,0.936,2.712,2.472,2.712c1.752,0,2.424-1.512,2.424-2.688
C25.62,18.38,24.996,16.916,23.124,16.916z M25.284,12.26c0-1.296-0.888-2.112-1.968-2.112c-1.512,0-2.305,0.864-2.305,2.112 C25.62,18.38,24.996,16.916,23.124,16.916z M25.284,12.26c0-1.296-0.888-2.112-1.968-2.112c-1.512,0-2.305,0.864-2.305,2.112
c0,1.008,0.744,2.112,2.185,2.112C24.516,14.372,25.284,13.484,25.284,12.26z"/> c0,1.008,0.744,2.112,2.185,2.112C24.516,14.372,25.284,13.484,25.284,12.26z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -1,22 +1,22 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376 <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768 c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/> c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
<path style="fill:#FFFFFF;" d="M20.893,20.564v0.023c0.191,1.176,0.936,1.68,1.967,1.68c1.393,0,2.785-1.176,2.809-4.752 <path style="fill:#FFFFFF;" d="M20.893,20.564v0.023c0.191,1.176,0.936,1.68,1.967,1.68c1.393,0,2.785-1.176,2.809-4.752
l-0.048-0.048c-0.769,1.152-2.088,1.44-3.24,1.44c-3.264,0-5.16-2.473-5.16-5.328c0-4.176,2.472-6.12,5.807-6.12 l-0.048-0.048c-0.769,1.152-2.088,1.44-3.24,1.44c-3.264,0-5.16-2.473-5.16-5.328c0-4.176,2.472-6.12,5.807-6.12
c5.904,0,6.001,6.36,6.001,8.76c0,6.601-3.12,8.736-6.192,8.736c-2.904,0-4.992-1.68-5.28-4.392H20.893z M23.1,16.22 c5.904,0,6.001,6.36,6.001,8.76c0,6.601-3.12,8.736-6.192,8.736c-2.904,0-4.992-1.68-5.28-4.392H20.893z M23.1,16.22
c1.176,0,2.473-0.84,2.473-2.855c0-1.944-0.84-3.145-2.568-3.145c-0.863,0-2.424,0.433-2.424,2.88 c1.176,0,2.473-0.84,2.473-2.855c0-1.944-0.84-3.145-2.568-3.145c-0.863,0-2.424,0.433-2.424,2.88
C20.58,15.668,21.828,16.22,23.1,16.22z"/> C20.58,15.668,21.828,16.22,23.1,16.22z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -1,19 +1,19 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M15.127,14.005h0.616c1.176,0,3.332-0.112,3.332-2.688c0-0.728-0.336-2.548-2.492-2.548 <path style="fill:#FFFFFF;" d="M15.127,14.005h0.616c1.176,0,3.332-0.112,3.332-2.688c0-0.728-0.336-2.548-2.492-2.548
c-2.688,0-2.688,2.548-2.688,3.248h-3.64c0-3.724,2.1-6.384,6.58-6.384c2.66,0,6.16,1.344,6.16,5.544 c-2.688,0-2.688,2.548-2.688,3.248h-3.64c0-3.724,2.1-6.384,6.58-6.384c2.66,0,6.16,1.344,6.16,5.544
c0,2.016-1.261,3.276-2.38,3.78v0.056c0.699,0.196,2.996,1.232,2.996,4.62c0,3.752-2.772,6.412-6.776,6.412 c0,2.016-1.261,3.276-2.38,3.78v0.056c0.699,0.196,2.996,1.232,2.996,4.62c0,3.752-2.772,6.412-6.776,6.412
c-1.876,0-6.916-0.42-6.916-6.636h3.836l-0.028,0.027c0,1.064,0.28,3.473,2.912,3.473c1.568,0,2.94-1.064,2.94-3.276 c-1.876,0-6.916-0.42-6.916-6.636h3.836l-0.028,0.027c0,1.064,0.28,3.473,2.912,3.473c1.568,0,2.94-1.064,2.94-3.276
c0-2.716-2.632-2.828-4.452-2.828V14.005z"/> c0-2.716-2.632-2.828-4.452-2.828V14.005z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -1,22 +1,22 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M8.268,14.636h0.528c1.008,0,2.856-0.096,2.856-2.304c0-0.624-0.288-2.185-2.136-2.185 <path style="fill:#FFFFFF;" d="M8.268,14.636h0.528c1.008,0,2.856-0.096,2.856-2.304c0-0.624-0.288-2.185-2.136-2.185
c-2.304,0-2.304,2.185-2.304,2.784h-3.12c0-3.191,1.8-5.472,5.64-5.472c2.28,0,5.28,1.152,5.28,4.752 c-2.304,0-2.304,2.185-2.304,2.784h-3.12c0-3.191,1.8-5.472,5.64-5.472c2.28,0,5.28,1.152,5.28,4.752
c0,1.728-1.08,2.808-2.04,3.24V15.5c0.6,0.168,2.568,1.056,2.568,3.96c0,3.216-2.376,5.496-5.808,5.496 c0,1.728-1.08,2.808-2.04,3.24V15.5c0.6,0.168,2.568,1.056,2.568,3.96c0,3.216-2.376,5.496-5.808,5.496
c-1.608,0-5.928-0.36-5.928-5.688h3.288l-0.024,0.024c0,0.912,0.24,2.976,2.496,2.976c1.344,0,2.52-0.911,2.52-2.808 c-1.608,0-5.928-0.36-5.928-5.688h3.288l-0.024,0.024c0,0.912,0.24,2.976,2.496,2.976c1.344,0,2.52-0.911,2.52-2.808
c0-2.328-2.256-2.424-3.816-2.424V14.636z"/> c0-2.328-2.256-2.424-3.816-2.424V14.636z"/>
<path style="fill:#FFFFFF;" d="M23.172,7.46c4.008,0,5.904,2.76,5.904,8.736c0,5.976-1.896,8.76-5.904,8.76 <path style="fill:#FFFFFF;" d="M23.172,7.46c4.008,0,5.904,2.76,5.904,8.736c0,5.976-1.896,8.76-5.904,8.76
s-5.904-2.784-5.904-8.76C17.268,10.22,19.164,7.46,23.172,7.46z M23.172,22.268c1.92,0,2.448-1.68,2.448-6.071 s-5.904-2.784-5.904-8.76C17.268,10.22,19.164,7.46,23.172,7.46z M23.172,22.268c1.92,0,2.448-1.68,2.448-6.071
c0-4.393-0.528-6.049-2.448-6.049s-2.448,1.656-2.448,6.049C20.724,20.588,21.252,22.268,23.172,22.268z"/> c0-4.393-0.528-6.049-2.448-6.049s-2.448,1.656-2.448,6.049C20.724,20.588,21.252,22.268,23.172,22.268z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -1,16 +1,16 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M21.891,20.784h-2.212v4.396h-3.92v-4.396h-7.84v-3.389L15.227,5.3h4.452v12.432h2.212V20.784z <path style="fill:#FFFFFF;" d="M21.891,20.784h-2.212v4.396h-3.92v-4.396h-7.84v-3.389L15.227,5.3h4.452v12.432h2.212V20.784z
M15.759,17.731c0-4.815,0.084-7.924,0.084-8.54h-0.056l-4.984,8.54H15.759z"/> M15.759,17.731c0-4.815,0.084-7.924,0.084-8.54h-0.056l-4.984,8.54H15.759z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 783 B

After

Width:  |  Height:  |  Size: 799 B

View File

@ -1,18 +1,18 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M14.035,14.252c0.728-0.504,1.624-1.092,3.556-1.092c2.66,0,6.02,1.848,6.02,6.411 <path style="fill:#FFFFFF;" d="M14.035,14.252c0.728-0.504,1.624-1.092,3.556-1.092c2.66,0,6.02,1.848,6.02,6.411
c0,2.717-1.372,7.141-7.224,7.141c-3.108,0-6.272-1.849-6.468-5.853h3.92c0.168,1.624,1.036,2.717,2.772,2.717 c0,2.717-1.372,7.141-7.224,7.141c-3.108,0-6.272-1.849-6.468-5.853h3.92c0.168,1.624,1.036,2.717,2.772,2.717
c1.876,0,2.968-1.597,2.968-3.725c0-1.764-0.839-3.556-2.912-3.556c-0.532,0-1.876,0.028-2.632,1.428l-3.5-0.168l1.372-10.92 c1.876,0,2.968-1.597,2.968-3.725c0-1.764-0.839-3.556-2.912-3.556c-0.532,0-1.876,0.028-2.632,1.428l-3.5-0.168l1.372-10.92
h10.919v3.304h-8.092L14.035,14.252z"/> h10.919v3.304h-8.092L14.035,14.252z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 967 B

After

Width:  |  Height:  |  Size: 985 B

View File

@ -1,19 +1,19 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M19.106,10.673c-0.112-1.12-0.84-1.904-2.296-1.904c-2.548,0-3.136,2.912-3.276,5.488l0.056,0.056 <path style="fill:#FFFFFF;" d="M19.106,10.673c-0.112-1.12-0.84-1.904-2.296-1.904c-2.548,0-3.136,2.912-3.276,5.488l0.056,0.056
c0.532-0.728,1.512-1.651,3.724-1.651c4.116,0,6.077,3.164,6.077,6.131c0,4.34-2.66,7.252-6.497,7.252 c0.532-0.728,1.512-1.651,3.724-1.651c4.116,0,6.077,3.164,6.077,6.131c0,4.34-2.66,7.252-6.497,7.252
c-6.02,0-7.196-5.039-7.196-9.996c0-3.78,0.504-10.416,7.392-10.416c0.812,0,3.08,0.308,4.061,1.288 c-6.02,0-7.196-5.039-7.196-9.996c0-3.78,0.504-10.416,7.392-10.416c0.812,0,3.08,0.308,4.061,1.288
c1.092,1.063,1.483,1.652,1.848,3.752H19.106z M16.614,15.797c-1.484,0-2.996,0.924-2.996,3.416c0,2.156,1.232,3.697,3.108,3.697 c1.092,1.063,1.483,1.652,1.848,3.752H19.106z M16.614,15.797c-1.484,0-2.996,0.924-2.996,3.416c0,2.156,1.232,3.697,3.108,3.697
c1.428,0,2.745-1.094,2.745-3.781C19.471,16.609,17.846,15.797,16.614,15.797z"/> c1.428,0,2.745-1.094,2.745-3.781C19.471,16.609,17.846,15.797,16.614,15.797z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -1,16 +1,16 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M24.28,9.66c-1.904,2.071-6.776,7.951-7.252,16.52h-4.032c0.42-7.952,5.404-14.28,7.084-16.072 <path style="fill:#FFFFFF;" d="M24.28,9.66c-1.904,2.071-6.776,7.951-7.252,16.52h-4.032c0.42-7.952,5.404-14.28,7.084-16.072
h-9.884l0.084-3.472h14V9.66z"/> h-9.884l0.084-3.472h14V9.66z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 738 B

After

Width:  |  Height:  |  Size: 754 B

View File

@ -1,20 +1,20 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M16.28,26.712c-5.124,0-6.888-3.332-6.888-6.048c0-1.009,0-3.641,3.024-5.04 <path style="fill:#FFFFFF;" d="M16.28,26.712c-5.124,0-6.888-3.332-6.888-6.048c0-1.009,0-3.641,3.024-5.04
c-1.568-0.784-2.408-2.044-2.408-3.893c0-3.388,2.716-5.432,6.188-5.432c4.116,0,6.3,2.436,6.3,5.18 c-1.568-0.784-2.408-2.044-2.408-3.893c0-3.388,2.716-5.432,6.188-5.432c4.116,0,6.3,2.436,6.3,5.18
c0,1.708-0.7,3.164-2.296,4.004c1.903,0.952,2.968,2.212,2.968,4.788C23.168,22.792,21.544,26.712,16.28,26.712z M16.224,17.332 c0,1.708-0.7,3.164-2.296,4.004c1.903,0.952,2.968,2.212,2.968,4.788C23.168,22.792,21.544,26.712,16.28,26.712z M16.224,17.332
c-1.428,0-2.8,0.924-2.8,3.08c0,1.903,1.092,3.164,2.884,3.164c2.043,0,2.829-1.765,2.829-3.137 c-1.428,0-2.8,0.924-2.8,3.08c0,1.903,1.092,3.164,2.884,3.164c2.043,0,2.829-1.765,2.829-3.137
C19.137,19.04,18.408,17.332,16.224,17.332z M18.744,11.899c0-1.512-1.036-2.464-2.296-2.464c-1.764,0-2.688,1.008-2.688,2.464 C19.137,19.04,18.408,17.332,16.224,17.332z M18.744,11.899c0-1.512-1.036-2.464-2.296-2.464c-1.764,0-2.688,1.008-2.688,2.464
c0,1.177,0.868,2.464,2.548,2.464C17.848,14.363,18.744,13.328,18.744,11.899z"/> c0,1.177,0.868,2.464,2.548,2.464C17.848,14.363,18.744,13.328,18.744,11.899z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -1,19 +1,19 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) --> <!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY ns_svg "http://www.w3.org/2000/svg"> <!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink"> <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]> ]>
<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33" <svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve"> style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/> <circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
<g> <g>
<g style="enable-background:new ;"> <g style="enable-background:new ;">
<path style="fill:#FFFFFF;" d="M13.953,21.921v0.027c0.224,1.372,1.092,1.961,2.296,1.961c1.624,0,3.248-1.372,3.276-5.545 <path style="fill:#FFFFFF;" d="M13.953,21.921v0.027c0.224,1.372,1.092,1.961,2.296,1.961c1.624,0,3.248-1.372,3.276-5.545
l-0.057-0.056c-0.896,1.344-2.436,1.68-3.78,1.68c-3.808,0-6.02-2.884-6.02-6.216c0-4.872,2.884-7.14,6.776-7.14 l-0.057-0.056c-0.896,1.344-2.436,1.68-3.78,1.68c-3.808,0-6.02-2.884-6.02-6.216c0-4.872,2.884-7.14,6.776-7.14
c6.888,0,7,7.42,7,10.22c0,7.7-3.641,10.192-7.224,10.192c-3.388,0-5.824-1.96-6.16-5.124H13.953z M16.529,16.853 c6.888,0,7,7.42,7,10.22c0,7.7-3.641,10.192-7.224,10.192c-3.388,0-5.824-1.96-6.16-5.124H13.953z M16.529,16.853
c1.372,0,2.884-0.979,2.884-3.332c0-2.268-0.98-3.668-2.996-3.668c-1.008,0-2.828,0.504-2.828,3.36 c1.372,0,2.884-0.979,2.884-3.332c0-2.268-0.98-3.668-2.996-3.668c-1.008,0-2.828,0.504-2.828,3.36
C13.589,16.209,15.045,16.853,16.529,16.853z"/> C13.589,16.209,15.045,16.853,16.529,16.853z"/>
</g> </g>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -1,25 +1,25 @@
<?xml version="1.0" encoding="iso-8859-1"?> <?xml version="1.0" encoding="iso-8859-1"?>
<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In --> <!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY st0 "fill:#FFFFFF;stroke:none;"> <!ENTITY st0 "fill:#FFFFFF;stroke:none;">
<!ENTITY st1 "fill:#FFFFFF;stroke-width:6.6112;stroke-linecap:round;stroke-linejoin:round;"> <!ENTITY st1 "fill:#FFFFFF;stroke-width:6.6112;stroke-linecap:round;stroke-linejoin:round;">
<!ENTITY st2 "stroke:#FFFFFF;stroke-width:6.6112;"> <!ENTITY st2 "stroke:#FFFFFF;stroke-width:6.6112;">
<!ENTITY st3 "fill:none;stroke:none;"> <!ENTITY st3 "fill:none;stroke:none;">
<!ENTITY st4 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;"> <!ENTITY st4 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
<!ENTITY st5 "stroke:none;"> <!ENTITY st5 "stroke:none;">
]> ]>
<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"> <svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
<g id="Layer_x0020_3" style="&st4;"> <g id="Layer_x0020_3" style="&st4;">
<g> <g>
<path style="&st2;" d="M41.7,35.3L26.6,9.4c-0.6-1-1.7-1.7-2.9-1.6c-1.2,0-2.3,0.7-2.9,1.7L6.3,35.4c-0.6,1-0.6,2.3,0,3.3c0.6,1,1.7,1.6,2.9,1.6h29.6c1.2,0,2.3-0.6,2.9-1.7c0.6-1,0.6-2.3,0-3.3z"/> <path style="&st2;" d="M41.7,35.3L26.6,9.4c-0.6-1-1.7-1.7-2.9-1.6c-1.2,0-2.3,0.7-2.9,1.7L6.3,35.4c-0.6,1-0.6,2.3,0,3.3c0.6,1,1.7,1.6,2.9,1.6h29.6c1.2,0,2.3-0.6,2.9-1.7c0.6-1,0.6-2.3,0-3.3z"/>
<path style="&st1;" d="M23.7,11L9.2,37h29.6L23.7,11z"/> <path style="&st1;" d="M23.7,11L9.2,37h29.6L23.7,11z"/>
<path style="&st0;" d="M23.7,11.9L10.3,36.1h27.5l-14-24.1z"/> <path style="&st0;" d="M23.7,11.9L10.3,36.1h27.5l-14-24.1z"/>
<g> <g>
<path style="&st5;" d="M24.1,34c-1.1,0-1.8-0.8-1.8-1.8c0-1.1,0.7-1.8,1.8-1.8c1.1,0,1.8,0.7,1.8,1.8c0,1-0.7,1.8-1.8,1.8h0z M22.9,29.3l-0.4-9.1h3.2l-0.4,9.1h-2.3z"/> <path style="&st5;" d="M24.1,34c-1.1,0-1.8-0.8-1.8-1.8c0-1.1,0.7-1.8,1.8-1.8c1.1,0,1.8,0.7,1.8,1.8c0,1-0.7,1.8-1.8,1.8h0z M22.9,29.3l-0.4-9.1h3.2l-0.4,9.1h-2.3z"/>
</g> </g>
</g> </g>
</g> </g>
<g id="crop_x0020_marks" style="&st4;"> <g id="crop_x0020_marks" style="&st4;">
<path style="&st3;" d="M48,48H0V0h48v48z"/> <path style="&st3;" d="M48,48H0V0h48v48z"/>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -1,26 +1,26 @@
<?xml version="1.0" encoding="iso-8859-1"?> <?xml version="1.0" encoding="iso-8859-1"?>
<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In --> <!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY st0 "fill-rule:nonzero;clip-rule:nonzero;fill:#FFFFFF;stroke:#000000;stroke-miterlimit:4;"> <!ENTITY st0 "fill-rule:nonzero;clip-rule:nonzero;fill:#FFFFFF;stroke:#000000;stroke-miterlimit:4;">
<!ENTITY st1 "fill:none;stroke:none;"> <!ENTITY st1 "fill:none;stroke:none;">
<!ENTITY st2 "fill:#000000;"> <!ENTITY st2 "fill:#000000;">
<!ENTITY st3 "fill:none;stroke:#FFFFFF;stroke-width:6.3469;stroke-linejoin:round;"> <!ENTITY st3 "fill:none;stroke:#FFFFFF;stroke-width:6.3469;stroke-linejoin:round;">
<!ENTITY st4 "fill-rule:evenodd;clip-rule:evenodd;stroke:none;"> <!ENTITY st4 "fill-rule:evenodd;clip-rule:evenodd;stroke:none;">
<!ENTITY st5 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;"> <!ENTITY st5 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
]> ]>
<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"> <svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
<g id="Layer_x0020_3" style="&st0;"> <g id="Layer_x0020_3" style="&st0;">
<g style="&st4;"> <g style="&st4;">
<path style="&st3;" d="M22.9,7.1L5.1,21.8l0,0c-0.3,0.3-0.5,0.8-0.5,1.2c0,0.2,0,0.4,0.1,0.6c0.3,0.6,0.9,1,1.6,1c0,0,1.1,0,2.2,0c0,2.4,0,14.2,0,14.2c0,1.1,0.8,1.9,1.8,1.9h27.4c1.1,0,1.9-0.9,1.9-2c0,0,0-11.8,0-14.2c1,0,2,0,2,0c0.8,0,1.4-0.5,1.7-1.2 <path style="&st3;" d="M22.9,7.1L5.1,21.8l0,0c-0.3,0.3-0.5,0.8-0.5,1.2c0,0.2,0,0.4,0.1,0.6c0.3,0.6,0.9,1,1.6,1c0,0,1.1,0,2.2,0c0,2.4,0,14.2,0,14.2c0,1.1,0.8,1.9,1.8,1.9h27.4c1.1,0,1.9-0.9,1.9-2c0,0,0-11.8,0-14.2c1,0,2,0,2,0c0.8,0,1.4-0.5,1.7-1.2
c0.1-0.2,0.1-0.4,0.1-0.6c0-0.5-0.2-1-0.7-1.4c0,0-3.6-3-4.5-3.7c0-1.2,0-6.9,0-6.9c0-1.2-0.8-2-2-2h-4.8c-1,0-1.7,0.6-1.9,1.5c-1.9-1.6-4.1-3.5-4.1-3.5l0.1,0.1c-0.7-0.7-1.8-0.8-2.7-0.1z"/> c0.1-0.2,0.1-0.4,0.1-0.6c0-0.5-0.2-1-0.7-1.4c0,0-3.6-3-4.5-3.7c0-1.2,0-6.9,0-6.9c0-1.2-0.8-2-2-2h-4.8c-1,0-1.7,0.6-1.9,1.5c-1.9-1.6-4.1-3.5-4.1-3.5l0.1,0.1c-0.7-0.7-1.8-0.8-2.7-0.1z"/>
<path style="&st2;" d="M22.9,7.1L5.1,21.8l0,0c-0.3,0.3-0.5,0.8-0.5,1.2c0,0.2,0,0.4,0.1,0.6c0.3,0.6,0.9,1,1.6,1c0,0,1.1,0,2.2,0c0,2.4,0,14.2,0,14.2c0,1.1,0.8,1.9,1.8,1.9h27.4c1.1,0,1.9-0.9,1.9-2c0,0,0-11.8,0-14.2c1,0,2,0,2,0c0.8,0,1.4-0.5,1.7-1.2 <path style="&st2;" d="M22.9,7.1L5.1,21.8l0,0c-0.3,0.3-0.5,0.8-0.5,1.2c0,0.2,0,0.4,0.1,0.6c0.3,0.6,0.9,1,1.6,1c0,0,1.1,0,2.2,0c0,2.4,0,14.2,0,14.2c0,1.1,0.8,1.9,1.8,1.9h27.4c1.1,0,1.9-0.9,1.9-2c0,0,0-11.8,0-14.2c1,0,2,0,2,0c0.8,0,1.4-0.5,1.7-1.2
c0.1-0.2,0.1-0.4,0.1-0.6c0-0.5-0.2-1-0.7-1.4c0,0-3.6-3-4.5-3.7c0-1.2,0-6.9,0-6.9c0-1.2-0.8-2-2-2h-4.8c-1,0-1.7,0.6-1.9,1.5c-1.9-1.6-4.1-3.5-4.1-3.5l0.1,0.1c-0.7-0.7-1.8-0.8-2.7-0.1z"/> c0.1-0.2,0.1-0.4,0.1-0.6c0-0.5-0.2-1-0.7-1.4c0,0-3.6-3-4.5-3.7c0-1.2,0-6.9,0-6.9c0-1.2-0.8-2-2-2h-4.8c-1,0-1.7,0.6-1.9,1.5c-1.9-1.6-4.1-3.5-4.1-3.5l0.1,0.1c-0.7-0.7-1.8-0.8-2.7-0.1z"/>
<path style="&st2;" d="M41.8,22.8l-5.1-4.2v-0.1L31,13.7v0l-6.5-5.5C24.2,8,24,8,23.8,8.2L6.2,22.9c-0.1,0.1-0.1,0.3,0.1,0.3h1.6H10h28.1h1.2h2.3c0.2,0,0.4-0.2,0.2-0.4z"/> <path style="&st2;" d="M41.8,22.8l-5.1-4.2v-0.1L31,13.7v0l-6.5-5.5C24.2,8,24,8,23.8,8.2L6.2,22.9c-0.1,0.1-0.1,0.3,0.1,0.3h1.6H10h28.1h1.2h2.3c0.2,0,0.4-0.2,0.2-0.4z"/>
<path d="M35.8,16.8l0-5.1c0-0.2-0.1-0.4-0.3-0.4h-3.2c-0.2,0-0.3,0.1-0.3,0.3v2.2l3.9,2.9z"/> <path d="M35.8,16.8l0-5.1c0-0.2-0.1-0.4-0.3-0.4h-3.2c-0.2,0-0.3,0.1-0.3,0.3v2.2l3.9,2.9z"/>
<path d="M11.9,24.7V37c0,0.3,0.1,0.4,0.3,0.4h23.6c0.3,0,0.4-0.2,0.4-0.4V24.7H11.9z"/> <path d="M11.9,24.7V37c0,0.3,0.1,0.4,0.3,0.4h23.6c0.3,0,0.4-0.2,0.4-0.4V24.7H11.9z"/>
</g> </g>
</g> </g>
<g id="crop_x0020_marks" style="&st5;"> <g id="crop_x0020_marks" style="&st5;">
<path style="&st1;" d="M48,48H0V0h48v48z"/> <path style="&st1;" d="M48,48H0V0h48v48z"/>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

@ -1,25 +1,25 @@
<?xml version="1.0" encoding="iso-8859-1"?> <?xml version="1.0" encoding="iso-8859-1"?>
<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In --> <!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY st0 "fill:#FFFFFF;stroke:none;"> <!ENTITY st0 "fill:#FFFFFF;stroke:none;">
<!ENTITY st1 "fill:#FFFFFF;stroke-width:6.6112;stroke-linecap:round;stroke-linejoin:round;"> <!ENTITY st1 "fill:#FFFFFF;stroke-width:6.6112;stroke-linecap:round;stroke-linejoin:round;">
<!ENTITY st2 "stroke:#FFFFFF;stroke-width:6.6112;"> <!ENTITY st2 "stroke:#FFFFFF;stroke-width:6.6112;">
<!ENTITY st3 "fill:none;stroke:none;"> <!ENTITY st3 "fill:none;stroke:none;">
<!ENTITY st4 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;"> <!ENTITY st4 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
<!ENTITY st5 "stroke:none;"> <!ENTITY st5 "stroke:none;">
]> ]>
<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"> <svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
<g id="Layer_x0020_3" style="&st4;"> <g id="Layer_x0020_3" style="&st4;">
<g> <g>
<path style="&st2;" d="M41.7,35.3L26.6,9.4c-0.6-1-1.7-1.7-2.9-1.6c-1.2,0-2.3,0.7-2.9,1.7L6.3,35.4c-0.6,1-0.6,2.3,0,3.3c0.6,1,1.7,1.6,2.9,1.6h29.6c1.2,0,2.3-0.6,2.9-1.7c0.6-1,0.6-2.3,0-3.3z"/> <path style="&st2;" d="M41.7,35.3L26.6,9.4c-0.6-1-1.7-1.7-2.9-1.6c-1.2,0-2.3,0.7-2.9,1.7L6.3,35.4c-0.6,1-0.6,2.3,0,3.3c0.6,1,1.7,1.6,2.9,1.6h29.6c1.2,0,2.3-0.6,2.9-1.7c0.6-1,0.6-2.3,0-3.3z"/>
<path style="&st1;" d="M23.7,11L9.2,37h29.6L23.7,11z"/> <path style="&st1;" d="M23.7,11L9.2,37h29.6L23.7,11z"/>
<path style="&st0;" d="M23.7,11.9L10.3,36.1h27.5l-14-24.1z"/> <path style="&st0;" d="M23.7,11.9L10.3,36.1h27.5l-14-24.1z"/>
<g> <g>
<path style="&st5;" d="M24.1,34c-1.1,0-1.8-0.8-1.8-1.8c0-1.1,0.7-1.8,1.8-1.8c1.1,0,1.8,0.7,1.8,1.8c0,1-0.7,1.8-1.8,1.8h0z M22.9,29.3l-0.4-9.1h3.2l-0.4,9.1h-2.3z"/> <path style="&st5;" d="M24.1,34c-1.1,0-1.8-0.8-1.8-1.8c0-1.1,0.7-1.8,1.8-1.8c1.1,0,1.8,0.7,1.8,1.8c0,1-0.7,1.8-1.8,1.8h0z M22.9,29.3l-0.4-9.1h3.2l-0.4,9.1h-2.3z"/>
</g> </g>
</g> </g>
</g> </g>
<g id="crop_x0020_marks" style="&st4;"> <g id="crop_x0020_marks" style="&st4;">
<path style="&st3;" d="M48,48H0V0h48v48z"/> <path style="&st3;" d="M48,48H0V0h48v48z"/>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -1,19 +1,19 @@
<?xml version="1.0" encoding="iso-8859-1"?> <?xml version="1.0" encoding="iso-8859-1"?>
<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In --> <!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY st0 "fill:none;stroke:none;"> <!ENTITY st0 "fill:none;stroke:none;">
<!ENTITY st1 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:7.5901;stroke-linejoin:round;"> <!ENTITY st1 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:7.5901;stroke-linejoin:round;">
<!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;"> <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
<!ENTITY st3 "stroke:none;"> <!ENTITY st3 "stroke:none;">
]> ]>
<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"> <svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
<g id="Layer_x0020_3" style="&st2;"> <g id="Layer_x0020_3" style="&st2;">
<g> <g>
<path style="&st1;" d="M22.4,41.1c0,0.3,0.3,0.3,0.5,0.2l16.6-16.9c0.5-0.5,0.4-0.7,0-1L22.9,6.7c-0.1-0.1-0.4-0.1-0.4,0.1v10H8.9c-0.3,0-0.5,0.2-0.5,0.4l0,13.3C8.4,30.9,8.6,31,9,31h13.5l-0.1,10.1z"/> <path style="&st1;" d="M22.4,41.1c0,0.3,0.3,0.3,0.5,0.2l16.6-16.9c0.5-0.5,0.4-0.7,0-1L22.9,6.7c-0.1-0.1-0.4-0.1-0.4,0.1v10H8.9c-0.3,0-0.5,0.2-0.5,0.4l0,13.3C8.4,30.9,8.6,31,9,31h13.5l-0.1,10.1z"/>
<path style="&st3;" d="M22.4,41.1c0,0.3,0.3,0.3,0.5,0.2l16.6-16.9c0.5-0.5,0.4-0.7,0-1L22.9,6.7c-0.1-0.1-0.4-0.1-0.4,0.1v10H8.9c-0.3,0-0.5,0.2-0.5,0.4l0,13.3C8.4,30.9,8.6,31,9,31h13.5l-0.1,10.1z"/> <path style="&st3;" d="M22.4,41.1c0,0.3,0.3,0.3,0.5,0.2l16.6-16.9c0.5-0.5,0.4-0.7,0-1L22.9,6.7c-0.1-0.1-0.4-0.1-0.4,0.1v10H8.9c-0.3,0-0.5,0.2-0.5,0.4l0,13.3C8.4,30.9,8.6,31,9,31h13.5l-0.1,10.1z"/>
</g> </g>
</g> </g>
<g id="crop_x0020_marks" style="&st2;"> <g id="crop_x0020_marks" style="&st2;">
<path style="&st0;" d="M48,48H0V0h48v48z"/> <path style="&st0;" d="M48,48H0V0h48v48z"/>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -1,33 +1,33 @@
<?xml version="1.0" encoding="iso-8859-1"?> <?xml version="1.0" encoding="iso-8859-1"?>
<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In --> <!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY st0 "fill:none;stroke:#FFFFFF;stroke-width:12.1438;stroke-linejoin:round;"> <!ENTITY st0 "fill:none;stroke:#FFFFFF;stroke-width:12.1438;stroke-linejoin:round;">
<!ENTITY st1 "fill:none;stroke-width:1.2429;"> <!ENTITY st1 "fill:none;stroke-width:1.2429;">
<!ENTITY st2 "fill:#FFFFFF;stroke:none;"> <!ENTITY st2 "fill:#FFFFFF;stroke:none;">
<!ENTITY st3 "fill:none;stroke:#FFFFFF;stroke-width:12.7649;stroke-linejoin:round;"> <!ENTITY st3 "fill:none;stroke:#FFFFFF;stroke-width:12.7649;stroke-linejoin:round;">
<!ENTITY st4 "fill:#FFFFFF;stroke-width:6.3824;stroke-linejoin:round;"> <!ENTITY st4 "fill:#FFFFFF;stroke-width:6.3824;stroke-linejoin:round;">
<!ENTITY st5 "fill:none;stroke:none;"> <!ENTITY st5 "fill:none;stroke:none;">
<!ENTITY st6 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;"> <!ENTITY st6 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
<!ENTITY st7 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:12.7649;stroke-linejoin:round;"> <!ENTITY st7 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:12.7649;stroke-linejoin:round;">
<!ENTITY st8 "stroke:none;"> <!ENTITY st8 "stroke:none;">
<!ENTITY st9 "fill:none;stroke-width:4.9715;stroke-linejoin:round;"> <!ENTITY st9 "fill:none;stroke-width:4.9715;stroke-linejoin:round;">
]> ]>
<svg xmlns="http://www.w3.org/2000/svg" width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve"> <svg xmlns="http://www.w3.org/2000/svg" width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve">
<g id="Layer_x0020_1" style="&st6;"> <g id="Layer_x0020_1" style="&st6;">
<path style="&st0;" d="M35.7,19.8v18.9H11V8.8h13.9l10.8,11z"/> <path style="&st0;" d="M35.7,19.8v18.9H11V8.8h13.9l10.8,11z"/>
<path style="&st3;" d="M38.7,30.4L25,16.7l-7.7-3l2.7,8.7l13.3,13.4l5.4-5.4z"/> <path style="&st3;" d="M38.7,30.4L25,16.7l-7.7-3l2.7,8.7l13.3,13.4l5.4-5.4z"/>
<path style="&st7;" d="M35.7,8.8H11v29.9h24.7V8.8z"/> <path style="&st7;" d="M35.7,8.8H11v29.9h24.7V8.8z"/>
<path style="&st4;" d="M35.7,8.8H11v29.9h24.7V8.8z"/> <path style="&st4;" d="M35.7,8.8H11v29.9h24.7V8.8z"/>
<path style="&st2;" d="M35.7,8.8H11v29.9h24.7V8.8z"/> <path style="&st2;" d="M35.7,8.8H11v29.9h24.7V8.8z"/>
</g> </g>
<g id="Layer_x0020_4" style="&st6;"> <g id="Layer_x0020_4" style="&st6;">
<path style="&st9;" d="M38.7,30.4L25,16.7l-7.7-3l2.7,8.7l13.3,13.4l5.4-5.4z"/> <path style="&st9;" d="M38.7,30.4L25,16.7l-7.7-3l2.7,8.7l13.3,13.4l5.4-5.4z"/>
<path style="&st8;" d="M38.7,30.4L25,16.7l-7.7-3l2.7,8.7l13.3,13.4l5.4-5.4z"/> <path style="&st8;" d="M38.7,30.4L25,16.7l-7.7-3l2.7,8.7l13.3,13.4l5.4-5.4z"/>
<path style="&st8;" d="M20.6,14.7l-2.5,2.5L17,13.4l3.6,1.3z"/> <path style="&st8;" d="M20.6,14.7l-2.5,2.5L17,13.4l3.6,1.3z"/>
<path style="&st1;" d="M19.6,22.2l3-0.3l2.4-2.4l0.4-2.8"/> <path style="&st1;" d="M19.6,22.2l3-0.3l2.4-2.4l0.4-2.8"/>
<path style="&st2;" d="M20.4,14.9L18.3,17l1.6,5.2l2.7-0.3l2.4-2.4l0.3-2.4l-5-2.2z"/> <path style="&st2;" d="M20.4,14.9L18.3,17l1.6,5.2l2.7-0.3l2.4-2.4l0.3-2.4l-5-2.2z"/>
</g> </g>
<g id="crop" style="&st6;"> <g id="crop" style="&st6;">
<path style="&st5;" d="M48,48H0V0h48v48z"/> <path style="&st5;" d="M48,48H0V0h48v48z"/>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@ -1,19 +1,19 @@
<?xml version="1.0" encoding="iso-8859-1"?> <?xml version="1.0" encoding="iso-8859-1"?>
<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In --> <!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY st0 "fill:none;stroke:none;"> <!ENTITY st0 "fill:none;stroke:none;">
<!ENTITY st1 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:7.5901;stroke-linejoin:round;"> <!ENTITY st1 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:7.5901;stroke-linejoin:round;">
<!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;"> <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
<!ENTITY st3 "stroke:none;"> <!ENTITY st3 "stroke:none;">
]> ]>
<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"> <svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
<g id="Layer_x0020_3" style="&st2;"> <g id="Layer_x0020_3" style="&st2;">
<g> <g>
<path style="&st1;" d="M25.6,6.9c0-0.3-0.3-0.3-0.5-0.2L8.4,23.6c-0.5,0.5-0.4,0.7,0,1l16.6,16.6c0.1,0.1,0.4,0.1,0.4-0.1v-10h13.6c0.3,0,0.5-0.2,0.5-0.4l0-13.3c0-0.3-0.2-0.5-0.5-0.5H25.5l0.1-10.1z"/> <path style="&st1;" d="M25.6,6.9c0-0.3-0.3-0.3-0.5-0.2L8.4,23.6c-0.5,0.5-0.4,0.7,0,1l16.6,16.6c0.1,0.1,0.4,0.1,0.4-0.1v-10h13.6c0.3,0,0.5-0.2,0.5-0.4l0-13.3c0-0.3-0.2-0.5-0.5-0.5H25.5l0.1-10.1z"/>
<path style="&st3;" d="M25.6,6.9c0-0.3-0.3-0.3-0.5-0.2L8.4,23.6c-0.5,0.5-0.4,0.7,0,1l16.6,16.6c0.1,0.1,0.4,0.1,0.4-0.1v-10h13.6c0.3,0,0.5-0.2,0.5-0.4l0-13.3c0-0.3-0.2-0.5-0.5-0.5H25.5l0.1-10.1z"/> <path style="&st3;" d="M25.6,6.9c0-0.3-0.3-0.3-0.5-0.2L8.4,23.6c-0.5,0.5-0.4,0.7,0,1l16.6,16.6c0.1,0.1,0.4,0.1,0.4-0.1v-10h13.6c0.3,0,0.5-0.2,0.5-0.4l0-13.3c0-0.3-0.2-0.5-0.5-0.5H25.5l0.1-10.1z"/>
</g> </g>
</g> </g>
<g id="crop_x0020_marks" style="&st2;"> <g id="crop_x0020_marks" style="&st2;">
<path style="&st0;" d="M48,48H0V0h48v48z"/> <path style="&st0;" d="M48,48H0V0h48v48z"/>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -1,31 +1,31 @@
<?xml version="1.0" encoding="iso-8859-1"?> <?xml version="1.0" encoding="iso-8859-1"?>
<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In --> <!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY st0 "fill:none;stroke:#000000;stroke-width:1.0944;"> <!ENTITY st0 "fill:none;stroke:#000000;stroke-width:1.0944;">
<!ENTITY st1 "fill:#FFFFFF;stroke:none;"> <!ENTITY st1 "fill:#FFFFFF;stroke:none;">
<!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#FFFFFF;stroke-width:5.6139;stroke-miterlimit:4;"> <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#FFFFFF;stroke-width:5.6139;stroke-miterlimit:4;">
<!ENTITY st3 "fill:none;stroke:none;"> <!ENTITY st3 "fill:none;stroke:none;">
<!ENTITY st4 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;"> <!ENTITY st4 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
<!ENTITY st5 "stroke:none;"> <!ENTITY st5 "stroke:none;">
]> ]>
<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"> <svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
<g id="Layer_x0020_3" style="&st2;"> <g id="Layer_x0020_3" style="&st2;">
<g> <g>
<path d="M9.5,18.6c0,8,6.5,14.4,14.4,14.4c8,0,14.4-6.5,14.4-14.4c0-8-6.5-14.4-14.4-14.4c-8,0-14.4,6.5-14.4,14.4z M12.8,18.6c0-6.2,5-11.2,11.2-11.2c6.2,0,11.2,5,11.2,11.2c0,6.2-5,11.2-11.2,11.2c-6.2,0-11.2-5-11.2-11.2z"/> <path d="M9.5,18.6c0,8,6.5,14.4,14.4,14.4c8,0,14.4-6.5,14.4-14.4c0-8-6.5-14.4-14.4-14.4c-8,0-14.4,6.5-14.4,14.4z M12.8,18.6c0-6.2,5-11.2,11.2-11.2c6.2,0,11.2,5,11.2,11.2c0,6.2-5,11.2-11.2,11.2c-6.2,0-11.2-5-11.2-11.2z"/>
<path d="M28.1,37.9l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/> <path d="M28.1,37.9l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
<path d="M28.1,34.8l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/> <path d="M28.1,34.8l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
<path d="M28.1,31.6l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8s0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8s-0.9-1.5-1.8-1.4z"/> <path d="M28.1,31.6l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8s0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8s-0.9-1.5-1.8-1.4z"/>
<path d="M23.1,41.3v0.9c0,0.9,0.7,1.6,1.6,1.6c0.9,0,1.6-0.7,1.6-1.6v-0.9h-3.3z"/> <path d="M23.1,41.3v0.9c0,0.9,0.7,1.6,1.6,1.6c0.9,0,1.6-0.7,1.6-1.6v-0.9h-3.3z"/>
<path style="&st1;" d="M35.9,18.7c0,6.6-5.4,12-12,12c-6.6,0-12-5.4-12-12s5.4-12,12-12c6.6,0,12,5.4,12,12z"/> <path style="&st1;" d="M35.9,18.7c0,6.6-5.4,12-12,12c-6.6,0-12-5.4-12-12s5.4-12,12-12c6.6,0,12,5.4,12,12z"/>
<path style="&st5;" d="M9.6,18.6c0,8,6.5,14.4,14.4,14.4c8,0,14.4-6.5,14.4-14.4c0-8-6.5-14.4-14.4-14.4c-8,0-14.4,6.5-14.4,14.4z M12.9,18.6c0-6.2,5-11.2,11.2-11.2c6.2,0,11.2,5,11.2,11.2c0,6.2-5,11.2-11.2,11.2c-6.2,0-11.2-5-11.2-11.2z"/> <path style="&st5;" d="M9.6,18.6c0,8,6.5,14.4,14.4,14.4c8,0,14.4-6.5,14.4-14.4c0-8-6.5-14.4-14.4-14.4c-8,0-14.4,6.5-14.4,14.4z M12.9,18.6c0-6.2,5-11.2,11.2-11.2c6.2,0,11.2,5,11.2,11.2c0,6.2-5,11.2-11.2,11.2c-6.2,0-11.2-5-11.2-11.2z"/>
<path style="&st5;" d="M28.2,37.9l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/> <path style="&st5;" d="M28.2,37.9l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
<path style="&st5;" d="M28.2,34.7l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/> <path style="&st5;" d="M28.2,34.7l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
<path style="&st5;" d="M28.2,31.6l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/> <path style="&st5;" d="M28.2,31.6l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
<path style="&st5;" d="M23.1,41.3v0.9c0,0.9,0.7,1.6,1.6,1.6s1.6-0.7,1.6-1.6v-0.9h-3.3z"/> <path style="&st5;" d="M23.1,41.3v0.9c0,0.9,0.7,1.6,1.6,1.6s1.6-0.7,1.6-1.6v-0.9h-3.3z"/>
<path style="&st0;" d="M22.3,28.3l-3.5-10.7c0,0,6.6,3.9,10.5,0"/> <path style="&st0;" d="M22.3,28.3l-3.5-10.7c0,0,6.6,3.9,10.5,0"/>
</g> </g>
</g> </g>
<g id="crop_x0020_marks" style="&st4;"> <g id="crop_x0020_marks" style="&st4;">
<path style="&st3;" d="M48,48H0V0h48v48z"/> <path style="&st3;" d="M48,48H0V0h48v48z"/>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@ -1,19 +1,19 @@
<?xml version="1.0" encoding="iso-8859-1"?> <?xml version="1.0" encoding="iso-8859-1"?>
<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In --> <!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY st0 "fill:none;stroke:none;"> <!ENTITY st0 "fill:none;stroke:none;">
<!ENTITY st1 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:7.5901;stroke-linejoin:round;"> <!ENTITY st1 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:7.5901;stroke-linejoin:round;">
<!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;"> <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
<!ENTITY st3 "stroke:none;"> <!ENTITY st3 "stroke:none;">
]> ]>
<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"> <svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
<g id="Layer_x0020_3" style="&st2;"> <g id="Layer_x0020_3" style="&st2;">
<g> <g>
<path style="&st1;" d="M41.1,25.6c0.3,0,0.3-0.3,0.2-0.5L24.4,8.4c-0.5-0.5-0.7-0.4-1,0L6.7,25.1c-0.1,0.1-0.1,0.4,0.1,0.4h10v13.6c0,0.3,0.2,0.5,0.4,0.5l13.3,0c0.3,0,0.5-0.2,0.5-0.5V25.5l10.1,0.1z"/> <path style="&st1;" d="M41.1,25.6c0.3,0,0.3-0.3,0.2-0.5L24.4,8.4c-0.5-0.5-0.7-0.4-1,0L6.7,25.1c-0.1,0.1-0.1,0.4,0.1,0.4h10v13.6c0,0.3,0.2,0.5,0.4,0.5l13.3,0c0.3,0,0.5-0.2,0.5-0.5V25.5l10.1,0.1z"/>
<path style="&st3;" d="M41.1,25.6c0.3,0,0.3-0.3,0.2-0.5L24.4,8.4c-0.5-0.5-0.7-0.4-1,0L6.7,25.1c-0.1,0.1-0.1,0.4,0.1,0.4h10v13.6c0,0.3,0.2,0.5,0.4,0.5l13.3,0c0.3,0,0.5-0.2,0.5-0.5V25.5l10.1,0.1z"/> <path style="&st3;" d="M41.1,25.6c0.3,0,0.3-0.3,0.2-0.5L24.4,8.4c-0.5-0.5-0.7-0.4-1,0L6.7,25.1c-0.1,0.1-0.1,0.4,0.1,0.4h10v13.6c0,0.3,0.2,0.5,0.4,0.5l13.3,0c0.3,0,0.5-0.2,0.5-0.5V25.5l10.1,0.1z"/>
</g> </g>
</g> </g>
<g id="crop_x0020_marks" style="&st2;"> <g id="crop_x0020_marks" style="&st2;">
<path style="&st0;" d="M48,48H0V0h48v48z"/> <path style="&st0;" d="M48,48H0V0h48v48z"/>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -1,23 +1,23 @@
<?xml version="1.0" encoding="iso-8859-1"?> <?xml version="1.0" encoding="iso-8859-1"?>
<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In --> <!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
<!DOCTYPE svg [ <!DOCTYPE svg [
<!ENTITY st0 "fill:#000000;stroke:#FFFFFF;stroke-width:7.9139;stroke-linejoin:round;"> <!ENTITY st0 "fill:#000000;stroke:#FFFFFF;stroke-width:7.9139;stroke-linejoin:round;">
<!ENTITY st1 "fill-rule:nonzero;clip-rule:nonzero;fill:#FFFFFF;stroke:#000000;stroke-miterlimit:4;"> <!ENTITY st1 "fill-rule:nonzero;clip-rule:nonzero;fill:#FFFFFF;stroke:#000000;stroke-miterlimit:4;">
<!ENTITY st2 "fill:none;stroke:none;"> <!ENTITY st2 "fill:none;stroke:none;">
<!ENTITY st3 "fill:#000000;"> <!ENTITY st3 "fill:#000000;">
<!ENTITY st4 "fill-rule:evenodd;clip-rule:evenodd;stroke:none;"> <!ENTITY st4 "fill-rule:evenodd;clip-rule:evenodd;stroke:none;">
<!ENTITY st5 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;"> <!ENTITY st5 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
]> ]>
<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"> <svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
<g id="Layer_x0020_4" style="&st1;"> <g id="Layer_x0020_4" style="&st1;">
<g style="&st4;"> <g style="&st4;">
<path style="&st0;" d="M16.4,42.3L5.7,31.6V16.4L16.4,5.7h15.2l10.7,10.7v15.2L31.6,42.3H16.4z"/> <path style="&st0;" d="M16.4,42.3L5.7,31.6V16.4L16.4,5.7h15.2l10.7,10.7v15.2L31.6,42.3H16.4z"/>
<path style="&st3;" d="M16.4,42.3L5.7,31.6V16.4L16.4,5.7h15.2l10.7,10.7v15.2L31.6,42.3H16.4z"/> <path style="&st3;" d="M16.4,42.3L5.7,31.6V16.4L16.4,5.7h15.2l10.7,10.7v15.2L31.6,42.3H16.4z"/>
<path d="M11.7,17.7l18.7,18.7l5.9-5.9L17.6,11.7l-5.9,5.9z"/> <path d="M11.7,17.7l18.7,18.7l5.9-5.9L17.6,11.7l-5.9,5.9z"/>
<path d="M11.7,30.5l5.9,5.9l18.7-18.7l-5.9-5.9L11.7,30.5z"/> <path d="M11.7,30.5l5.9,5.9l18.7-18.7l-5.9-5.9L11.7,30.5z"/>
</g> </g>
</g> </g>
<g id="crop_x0020_marks" style="&st5;"> <g id="crop_x0020_marks" style="&st5;">
<path style="&st2;" d="M48,48H0V0h48v48z"/> <path style="&st2;" d="M48,48H0V0h48v48z"/>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -1,23 +1,23 @@
1 ; nasm -f elf hello.asm # this will produce hello.o ELF object file 1 ; nasm -f elf hello.asm # this will produce hello.o ELF object file
2 ; ld -s -o hello hello.o # this will produce hello executable 2 ; ld -s -o hello hello.o # this will produce hello executable
3 3
4 section .text 4 section .text
5 global _start ;must be declared for linker (ld) 5 global _start ;must be declared for linker (ld)
6 6
7 _start: ;tell linker entry point 7 _start: ;tell linker entry point
8 8
9 00000000 BA0E000000 mov edx,len ;message length 9 00000000 BA0E000000 mov edx,len ;message length
10 00000005 B9[00000000] mov ecx,msg ;message to write 10 00000005 B9[00000000] mov ecx,msg ;message to write
11 0000000A BB01000000 mov ebx,1 ;file descriptor (stdout) 11 0000000A BB01000000 mov ebx,1 ;file descriptor (stdout)
12 0000000F B804000000 mov eax,4 ;system call number (sys_write) 12 0000000F B804000000 mov eax,4 ;system call number (sys_write)
13 00000014 CD80 int 0x80 ;call kernel 13 00000014 CD80 int 0x80 ;call kernel
14 14
15 00000016 B801000000 mov eax,1 ;system call number (sys_exit) 15 00000016 B801000000 mov eax,1 ;system call number (sys_exit)
16 0000001B CD80 int 0x80 ;call kernel 16 0000001B CD80 int 0x80 ;call kernel
17 17
18 section .data 18 section .data
19 19
20 00000000 48656C6C6F2C20776F- msg db 'Hello, world!',0xa ;our dear string 20 00000000 48656C6C6F2C20776F- msg db 'Hello, world!',0xa ;our dear string
21 00000009 726C64210A 21 00000009 726C64210A
22 len equ $ - msg ;length of our dear string 22 len equ $ - msg ;length of our dear string
23 23

View File

@ -1,22 +1,22 @@
; nasm -f elf hello.asm # this will produce hello.o ELF object file ; nasm -f elf hello.asm # this will produce hello.o ELF object file
; ld -s -o hello hello.o # this will produce hello executable ; ld -s -o hello hello.o # this will produce hello executable
section .text section .text
global _start ;must be declared for linker (ld) global _start ;must be declared for linker (ld)
_start: ;tell linker entry point _start: ;tell linker entry point
mov edx,len ;message length mov edx,len ;message length
mov ecx,msg ;message to write mov ecx,msg ;message to write
mov ebx,1 ;file descriptor (stdout) mov ebx,1 ;file descriptor (stdout)
mov eax,4 ;system call number (sys_write) mov eax,4 ;system call number (sys_write)
int 0x80 ;call kernel int 0x80 ;call kernel
mov eax,1 ;system call number (sys_exit) mov eax,1 ;system call number (sys_exit)
int 0x80 ;call kernel int 0x80 ;call kernel
section .data section .data
msg db 'Hello, world!',0xa ;our dear string msg db 'Hello, world!',0xa ;our dear string
len equ $ - msg ;length of our dear string len equ $ - msg ;length of our dear string

View File

@ -1,23 +1,23 @@
1 ; nasm -f elf hello.asm # this will produce hello.o ELF object file 1 ; nasm -f elf hello.asm # this will produce hello.o ELF object file
2 ; ld -s -o hello hello.o # this will produce hello executable 2 ; ld -s -o hello hello.o # this will produce hello executable
3 3
4 section .text 4 section .text
5 global _start ;must be declared for linker (ld) 5 global _start ;must be declared for linker (ld)
6 6
7 _start: ;tell linker entry point 7 _start: ;tell linker entry point
8 8
9 00000000 BA0E000000 mov edx,len ;message length 9 00000000 BA0E000000 mov edx,len ;message length
10 00000005 B9[00000000] mov ecx,msg ;message to write 10 00000005 B9[00000000] mov ecx,msg ;message to write
11 0000000A BB01000000 mov ebx,1 ;file descriptor (stdout) 11 0000000A BB01000000 mov ebx,1 ;file descriptor (stdout)
12 0000000F B804000000 mov eax,4 ;system call number (sys_write) 12 0000000F B804000000 mov eax,4 ;system call number (sys_write)
13 00000014 CD80 int 0x80 ;call kernel 13 00000014 CD80 int 0x80 ;call kernel
14 14
15 00000016 B801000000 mov eax,1 ;system call number (sys_exit) 15 00000016 B801000000 mov eax,1 ;system call number (sys_exit)
16 0000001B CD80 int 0x80 ;call kernel 16 0000001B CD80 int 0x80 ;call kernel
17 17
18 section .data 18 section .data
19 19
20 00000000 48656C6C6F2C20776F- msg db 'Hello, world!',0xa ;our dear string 20 00000000 48656C6C6F2C20776F- msg db 'Hello, world!',0xa ;our dear string
21 00000009 726C64210A 21 00000009 726C64210A
22 len equ $ - msg ;length of our dear string 22 len equ $ - msg ;length of our dear string
23 23

View File

@ -1,8 +1,8 @@
#include <stdio.h> #include <stdio.h>
int main() int main()
{ {
printf( "Hello\n" ); printf( "Hello\n" );
return 0; return 0;
} }

View File

@ -1,211 +1,211 @@
ELF Header: ELF Header:
Magic: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00 Magic: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
Class: ELF32 Class: ELF32
Data: 2's complement, little endian Data: 2's complement, little endian
Version: 1 (current) Version: 1 (current)
OS/ABI: UNIX - System V OS/ABI: UNIX - System V
ABI Version: 0 ABI Version: 0
Type: EXEC (Executable file) Type: EXEC (Executable file)
Machine: Intel 80386 Machine: Intel 80386
Version: 0x1 Version: 0x1
Entry point address: 0x80482b0 Entry point address: 0x80482b0
Start of program headers: 52 (bytes into file) Start of program headers: 52 (bytes into file)
Start of section headers: 1912 (bytes into file) Start of section headers: 1912 (bytes into file)
Flags: 0x0 Flags: 0x0
Size of this header: 52 (bytes) Size of this header: 52 (bytes)
Size of program headers: 32 (bytes) Size of program headers: 32 (bytes)
Number of program headers: 7 Number of program headers: 7
Size of section headers: 40 (bytes) Size of section headers: 40 (bytes)
Number of section headers: 28 Number of section headers: 28
Section header string table index: 25 Section header string table index: 25
Section Headers: Section Headers:
[Nr] Name Type Addr Off Size ES Flg Lk Inf Al [Nr] Name Type Addr Off Size ES Flg Lk Inf Al
[ 0] NULL 00000000 000000 000000 00 0 0 0 [ 0] NULL 00000000 000000 000000 00 0 0 0
[ 1] .interp PROGBITS 08048114 000114 000013 00 A 0 0 1 [ 1] .interp PROGBITS 08048114 000114 000013 00 A 0 0 1
[ 2] .note.ABI-tag NOTE 08048128 000128 000020 00 A 0 0 4 [ 2] .note.ABI-tag NOTE 08048128 000128 000020 00 A 0 0 4
[ 3] .gnu.hash GNU_HASH 08048148 000148 000020 04 A 4 0 4 [ 3] .gnu.hash GNU_HASH 08048148 000148 000020 04 A 4 0 4
[ 4] .dynsym DYNSYM 08048168 000168 000050 10 A 5 1 4 [ 4] .dynsym DYNSYM 08048168 000168 000050 10 A 5 1 4
[ 5] .dynstr STRTAB 080481b8 0001b8 00004a 00 A 0 0 1 [ 5] .dynstr STRTAB 080481b8 0001b8 00004a 00 A 0 0 1
[ 6] .gnu.version VERSYM 08048202 000202 00000a 02 A 4 0 2 [ 6] .gnu.version VERSYM 08048202 000202 00000a 02 A 4 0 2
[ 7] .gnu.version_r VERNEED 0804820c 00020c 000020 00 A 5 1 4 [ 7] .gnu.version_r VERNEED 0804820c 00020c 000020 00 A 5 1 4
[ 8] .rel.dyn REL 0804822c 00022c 000008 08 A 4 0 4 [ 8] .rel.dyn REL 0804822c 00022c 000008 08 A 4 0 4
[ 9] .rel.plt REL 08048234 000234 000018 08 A 4 11 4 [ 9] .rel.plt REL 08048234 000234 000018 08 A 4 11 4
[10] .init PROGBITS 0804824c 00024c 000017 00 AX 0 0 4 [10] .init PROGBITS 0804824c 00024c 000017 00 AX 0 0 4
[11] .plt PROGBITS 08048264 000264 000040 04 AX 0 0 4 [11] .plt PROGBITS 08048264 000264 000040 04 AX 0 0 4
[12] .text PROGBITS 080482b0 0002b0 0001a8 00 AX 0 0 16 [12] .text PROGBITS 080482b0 0002b0 0001a8 00 AX 0 0 16
[13] .fini PROGBITS 08048458 000458 00001c 00 AX 0 0 4 [13] .fini PROGBITS 08048458 000458 00001c 00 AX 0 0 4
[14] .rodata PROGBITS 08048474 000474 000012 00 A 0 0 4 [14] .rodata PROGBITS 08048474 000474 000012 00 A 0 0 4
[15] .eh_frame PROGBITS 08048488 000488 000004 00 A 0 0 4 [15] .eh_frame PROGBITS 08048488 000488 000004 00 A 0 0 4
[16] .ctors PROGBITS 0804948c 00048c 000008 00 WA 0 0 4 [16] .ctors PROGBITS 0804948c 00048c 000008 00 WA 0 0 4
[17] .dtors PROGBITS 08049494 000494 000008 00 WA 0 0 4 [17] .dtors PROGBITS 08049494 000494 000008 00 WA 0 0 4
[18] .jcr PROGBITS 0804949c 00049c 000004 00 WA 0 0 4 [18] .jcr PROGBITS 0804949c 00049c 000004 00 WA 0 0 4
[19] .dynamic DYNAMIC 080494a0 0004a0 0000c8 08 WA 5 0 4 [19] .dynamic DYNAMIC 080494a0 0004a0 0000c8 08 WA 5 0 4
[20] .got PROGBITS 08049568 000568 000004 04 WA 0 0 4 [20] .got PROGBITS 08049568 000568 000004 04 WA 0 0 4
[21] .got.plt PROGBITS 0804956c 00056c 000018 04 WA 0 0 4 [21] .got.plt PROGBITS 0804956c 00056c 000018 04 WA 0 0 4
[22] .data PROGBITS 08049584 000584 000004 00 WA 0 0 4 [22] .data PROGBITS 08049584 000584 000004 00 WA 0 0 4
[23] .bss NOBITS 08049588 000588 000008 00 WA 0 0 4 [23] .bss NOBITS 08049588 000588 000008 00 WA 0 0 4
[24] .comment PROGBITS 00000000 000588 000114 00 0 0 1 [24] .comment PROGBITS 00000000 000588 000114 00 0 0 1
[25] .shstrtab STRTAB 00000000 00069c 0000db 00 0 0 1 [25] .shstrtab STRTAB 00000000 00069c 0000db 00 0 0 1
[26] .symtab SYMTAB 00000000 000bd8 000440 10 27 48 4 [26] .symtab SYMTAB 00000000 000bd8 000440 10 27 48 4
[27] .strtab STRTAB 00000000 001018 000259 00 0 0 1 [27] .strtab STRTAB 00000000 001018 000259 00 0 0 1
Key to Flags: Key to Flags:
W (write), A (alloc), X (execute), M (merge), S (strings) W (write), A (alloc), X (execute), M (merge), S (strings)
I (info), L (link order), G (group), x (unknown) I (info), L (link order), G (group), x (unknown)
O (extra OS processing required) o (OS specific), p (processor specific) O (extra OS processing required) o (OS specific), p (processor specific)
There are no section groups in this file. There are no section groups in this file.
Program Headers: Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
PHDR 0x000034 0x08048034 0x08048034 0x000e0 0x000e0 R E 0x4 PHDR 0x000034 0x08048034 0x08048034 0x000e0 0x000e0 R E 0x4
INTERP 0x000114 0x08048114 0x08048114 0x00013 0x00013 R 0x1 INTERP 0x000114 0x08048114 0x08048114 0x00013 0x00013 R 0x1
[Requesting program interpreter: /lib/ld-linux.so.2] [Requesting program interpreter: /lib/ld-linux.so.2]
LOAD 0x000000 0x08048000 0x08048000 0x0048c 0x0048c R E 0x1000 LOAD 0x000000 0x08048000 0x08048000 0x0048c 0x0048c R E 0x1000
LOAD 0x00048c 0x0804948c 0x0804948c 0x000fc 0x00104 RW 0x1000 LOAD 0x00048c 0x0804948c 0x0804948c 0x000fc 0x00104 RW 0x1000
DYNAMIC 0x0004a0 0x080494a0 0x080494a0 0x000c8 0x000c8 RW 0x4 DYNAMIC 0x0004a0 0x080494a0 0x080494a0 0x000c8 0x000c8 RW 0x4
NOTE 0x000128 0x08048128 0x08048128 0x00020 0x00020 R 0x4 NOTE 0x000128 0x08048128 0x08048128 0x00020 0x00020 R 0x4
GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x00000 RW 0x4 GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x00000 RW 0x4
Section to Segment mapping: Section to Segment mapping:
Segment Sections... Segment Sections...
00 00
01 .interp 01 .interp
02 .interp .note.ABI-tag .gnu.hash .dynsym .dynstr .gnu.version .gnu.version_r .rel.dyn .rel.plt .init .plt .text .fini .rodata .eh_frame 02 .interp .note.ABI-tag .gnu.hash .dynsym .dynstr .gnu.version .gnu.version_r .rel.dyn .rel.plt .init .plt .text .fini .rodata .eh_frame
03 .ctors .dtors .jcr .dynamic .got .got.plt .data .bss 03 .ctors .dtors .jcr .dynamic .got .got.plt .data .bss
04 .dynamic 04 .dynamic
05 .note.ABI-tag 05 .note.ABI-tag
06 06
Dynamic section at offset 0x4a0 contains 20 entries: Dynamic section at offset 0x4a0 contains 20 entries:
Tag Type Name/Value Tag Type Name/Value
0x00000001 (NEEDED) Shared library: [libc.so.6] 0x00000001 (NEEDED) Shared library: [libc.so.6]
0x0000000c (INIT) 0x804824c 0x0000000c (INIT) 0x804824c
0x0000000d (FINI) 0x8048458 0x0000000d (FINI) 0x8048458
0x6ffffef5 (GNU_HASH) 0x8048148 0x6ffffef5 (GNU_HASH) 0x8048148
0x00000005 (STRTAB) 0x80481b8 0x00000005 (STRTAB) 0x80481b8
0x00000006 (SYMTAB) 0x8048168 0x00000006 (SYMTAB) 0x8048168
0x0000000a (STRSZ) 74 (bytes) 0x0000000a (STRSZ) 74 (bytes)
0x0000000b (SYMENT) 16 (bytes) 0x0000000b (SYMENT) 16 (bytes)
0x00000015 (DEBUG) 0x0 0x00000015 (DEBUG) 0x0
0x00000003 (PLTGOT) 0x804956c 0x00000003 (PLTGOT) 0x804956c
0x00000002 (PLTRELSZ) 24 (bytes) 0x00000002 (PLTRELSZ) 24 (bytes)
0x00000014 (PLTREL) REL 0x00000014 (PLTREL) REL
0x00000017 (JMPREL) 0x8048234 0x00000017 (JMPREL) 0x8048234
0x00000011 (REL) 0x804822c 0x00000011 (REL) 0x804822c
0x00000012 (RELSZ) 8 (bytes) 0x00000012 (RELSZ) 8 (bytes)
0x00000013 (RELENT) 8 (bytes) 0x00000013 (RELENT) 8 (bytes)
0x6ffffffe (VERNEED) 0x804820c 0x6ffffffe (VERNEED) 0x804820c
0x6fffffff (VERNEEDNUM) 1 0x6fffffff (VERNEEDNUM) 1
0x6ffffff0 (VERSYM) 0x8048202 0x6ffffff0 (VERSYM) 0x8048202
0x00000000 (NULL) 0x0 0x00000000 (NULL) 0x0
Relocation section '.rel.dyn' at offset 0x22c contains 1 entries: Relocation section '.rel.dyn' at offset 0x22c contains 1 entries:
Offset Info Type Sym.Value Sym. Name Offset Info Type Sym.Value Sym. Name
08049568 00000106 R_386_GLOB_DAT 00000000 __gmon_start__ 08049568 00000106 R_386_GLOB_DAT 00000000 __gmon_start__
Relocation section '.rel.plt' at offset 0x234 contains 3 entries: Relocation section '.rel.plt' at offset 0x234 contains 3 entries:
Offset Info Type Sym.Value Sym. Name Offset Info Type Sym.Value Sym. Name
08049578 00000107 R_386_JUMP_SLOT 00000000 __gmon_start__ 08049578 00000107 R_386_JUMP_SLOT 00000000 __gmon_start__
0804957c 00000207 R_386_JUMP_SLOT 00000000 __libc_start_main 0804957c 00000207 R_386_JUMP_SLOT 00000000 __libc_start_main
08049580 00000307 R_386_JUMP_SLOT 00000000 puts 08049580 00000307 R_386_JUMP_SLOT 00000000 puts
There are no unwind sections in this file. There are no unwind sections in this file.
Symbol table '.dynsym' contains 5 entries: Symbol table '.dynsym' contains 5 entries:
Num: Value Size Type Bind Vis Ndx Name Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND 0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 00000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ 1: 00000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__
2: 00000000 415 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.0 (2) 2: 00000000 415 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.0 (2)
3: 00000000 399 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.0 (2) 3: 00000000 399 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.0 (2)
4: 08048478 4 OBJECT GLOBAL DEFAULT 14 _IO_stdin_used 4: 08048478 4 OBJECT GLOBAL DEFAULT 14 _IO_stdin_used
Symbol table '.symtab' contains 68 entries: Symbol table '.symtab' contains 68 entries:
Num: Value Size Type Bind Vis Ndx Name Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND 0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 08048114 0 SECTION LOCAL DEFAULT 1 1: 08048114 0 SECTION LOCAL DEFAULT 1
2: 08048128 0 SECTION LOCAL DEFAULT 2 2: 08048128 0 SECTION LOCAL DEFAULT 2
3: 08048148 0 SECTION LOCAL DEFAULT 3 3: 08048148 0 SECTION LOCAL DEFAULT 3
4: 08048168 0 SECTION LOCAL DEFAULT 4 4: 08048168 0 SECTION LOCAL DEFAULT 4
5: 080481b8 0 SECTION LOCAL DEFAULT 5 5: 080481b8 0 SECTION LOCAL DEFAULT 5
6: 08048202 0 SECTION LOCAL DEFAULT 6 6: 08048202 0 SECTION LOCAL DEFAULT 6
7: 0804820c 0 SECTION LOCAL DEFAULT 7 7: 0804820c 0 SECTION LOCAL DEFAULT 7
8: 0804822c 0 SECTION LOCAL DEFAULT 8 8: 0804822c 0 SECTION LOCAL DEFAULT 8
9: 08048234 0 SECTION LOCAL DEFAULT 9 9: 08048234 0 SECTION LOCAL DEFAULT 9
10: 0804824c 0 SECTION LOCAL DEFAULT 10 10: 0804824c 0 SECTION LOCAL DEFAULT 10
11: 08048264 0 SECTION LOCAL DEFAULT 11 11: 08048264 0 SECTION LOCAL DEFAULT 11
12: 080482b0 0 SECTION LOCAL DEFAULT 12 12: 080482b0 0 SECTION LOCAL DEFAULT 12
13: 08048458 0 SECTION LOCAL DEFAULT 13 13: 08048458 0 SECTION LOCAL DEFAULT 13
14: 08048474 0 SECTION LOCAL DEFAULT 14 14: 08048474 0 SECTION LOCAL DEFAULT 14
15: 08048488 0 SECTION LOCAL DEFAULT 15 15: 08048488 0 SECTION LOCAL DEFAULT 15
16: 0804948c 0 SECTION LOCAL DEFAULT 16 16: 0804948c 0 SECTION LOCAL DEFAULT 16
17: 08049494 0 SECTION LOCAL DEFAULT 17 17: 08049494 0 SECTION LOCAL DEFAULT 17
18: 0804949c 0 SECTION LOCAL DEFAULT 18 18: 0804949c 0 SECTION LOCAL DEFAULT 18
19: 080494a0 0 SECTION LOCAL DEFAULT 19 19: 080494a0 0 SECTION LOCAL DEFAULT 19
20: 08049568 0 SECTION LOCAL DEFAULT 20 20: 08049568 0 SECTION LOCAL DEFAULT 20
21: 0804956c 0 SECTION LOCAL DEFAULT 21 21: 0804956c 0 SECTION LOCAL DEFAULT 21
22: 08049584 0 SECTION LOCAL DEFAULT 22 22: 08049584 0 SECTION LOCAL DEFAULT 22
23: 08049588 0 SECTION LOCAL DEFAULT 23 23: 08049588 0 SECTION LOCAL DEFAULT 23
24: 00000000 0 SECTION LOCAL DEFAULT 24 24: 00000000 0 SECTION LOCAL DEFAULT 24
25: 080482d4 0 FUNC LOCAL DEFAULT 12 call_gmon_start 25: 080482d4 0 FUNC LOCAL DEFAULT 12 call_gmon_start
26: 00000000 0 FILE LOCAL DEFAULT ABS crtstuff.c 26: 00000000 0 FILE LOCAL DEFAULT ABS crtstuff.c
27: 0804948c 0 OBJECT LOCAL DEFAULT 16 __CTOR_LIST__ 27: 0804948c 0 OBJECT LOCAL DEFAULT 16 __CTOR_LIST__
28: 08049494 0 OBJECT LOCAL DEFAULT 17 __DTOR_LIST__ 28: 08049494 0 OBJECT LOCAL DEFAULT 17 __DTOR_LIST__
29: 0804949c 0 OBJECT LOCAL DEFAULT 18 __JCR_LIST__ 29: 0804949c 0 OBJECT LOCAL DEFAULT 18 __JCR_LIST__
30: 08049588 4 OBJECT LOCAL DEFAULT 23 dtor_idx.5805 30: 08049588 4 OBJECT LOCAL DEFAULT 23 dtor_idx.5805
31: 0804958c 1 OBJECT LOCAL DEFAULT 23 completed.5803 31: 0804958c 1 OBJECT LOCAL DEFAULT 23 completed.5803
32: 08048300 0 FUNC LOCAL DEFAULT 12 __do_global_dtors_aux 32: 08048300 0 FUNC LOCAL DEFAULT 12 __do_global_dtors_aux
33: 08048360 0 FUNC LOCAL DEFAULT 12 frame_dummy 33: 08048360 0 FUNC LOCAL DEFAULT 12 frame_dummy
34: 00000000 0 FILE LOCAL DEFAULT ABS crtstuff.c 34: 00000000 0 FILE LOCAL DEFAULT ABS crtstuff.c
35: 08049490 0 OBJECT LOCAL DEFAULT 16 __CTOR_END__ 35: 08049490 0 OBJECT LOCAL DEFAULT 16 __CTOR_END__
36: 08048488 0 OBJECT LOCAL DEFAULT 15 __FRAME_END__ 36: 08048488 0 OBJECT LOCAL DEFAULT 15 __FRAME_END__
37: 0804949c 0 OBJECT LOCAL DEFAULT 18 __JCR_END__ 37: 0804949c 0 OBJECT LOCAL DEFAULT 18 __JCR_END__
38: 08048430 0 FUNC LOCAL DEFAULT 12 __do_global_ctors_aux 38: 08048430 0 FUNC LOCAL DEFAULT 12 __do_global_ctors_aux
39: 00000000 0 FILE LOCAL DEFAULT ABS hello.c 39: 00000000 0 FILE LOCAL DEFAULT ABS hello.c
40: 0804948c 0 NOTYPE LOCAL HIDDEN 16 __preinit_array_start 40: 0804948c 0 NOTYPE LOCAL HIDDEN 16 __preinit_array_start
41: 0804948c 0 NOTYPE LOCAL HIDDEN 16 __fini_array_end 41: 0804948c 0 NOTYPE LOCAL HIDDEN 16 __fini_array_end
42: 0804956c 0 OBJECT LOCAL HIDDEN 21 _GLOBAL_OFFSET_TABLE_ 42: 0804956c 0 OBJECT LOCAL HIDDEN 21 _GLOBAL_OFFSET_TABLE_
43: 0804948c 0 NOTYPE LOCAL HIDDEN 16 __preinit_array_end 43: 0804948c 0 NOTYPE LOCAL HIDDEN 16 __preinit_array_end
44: 0804948c 0 NOTYPE LOCAL HIDDEN 16 __fini_array_start 44: 0804948c 0 NOTYPE LOCAL HIDDEN 16 __fini_array_start
45: 0804948c 0 NOTYPE LOCAL HIDDEN 16 __init_array_end 45: 0804948c 0 NOTYPE LOCAL HIDDEN 16 __init_array_end
46: 0804948c 0 NOTYPE LOCAL HIDDEN 16 __init_array_start 46: 0804948c 0 NOTYPE LOCAL HIDDEN 16 __init_array_start
47: 080494a0 0 OBJECT LOCAL HIDDEN 19 _DYNAMIC 47: 080494a0 0 OBJECT LOCAL HIDDEN 19 _DYNAMIC
48: 08049584 0 NOTYPE WEAK DEFAULT 22 data_start 48: 08049584 0 NOTYPE WEAK DEFAULT 22 data_start
49: 080483b0 5 FUNC GLOBAL DEFAULT 12 __libc_csu_fini 49: 080483b0 5 FUNC GLOBAL DEFAULT 12 __libc_csu_fini
50: 080482b0 0 FUNC GLOBAL DEFAULT 12 _start 50: 080482b0 0 FUNC GLOBAL DEFAULT 12 _start
51: 00000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ 51: 00000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__
52: 00000000 0 NOTYPE WEAK DEFAULT UND _Jv_RegisterClasses 52: 00000000 0 NOTYPE WEAK DEFAULT UND _Jv_RegisterClasses
53: 08048474 4 OBJECT GLOBAL DEFAULT 14 _fp_hw 53: 08048474 4 OBJECT GLOBAL DEFAULT 14 _fp_hw
54: 08048458 0 FUNC GLOBAL DEFAULT 13 _fini 54: 08048458 0 FUNC GLOBAL DEFAULT 13 _fini
55: 00000000 415 FUNC GLOBAL DEFAULT UND __libc_start_main@@GLIBC_ 55: 00000000 415 FUNC GLOBAL DEFAULT UND __libc_start_main@@GLIBC_
56: 08048478 4 OBJECT GLOBAL DEFAULT 14 _IO_stdin_used 56: 08048478 4 OBJECT GLOBAL DEFAULT 14 _IO_stdin_used
57: 08049584 0 NOTYPE GLOBAL DEFAULT 22 __data_start 57: 08049584 0 NOTYPE GLOBAL DEFAULT 22 __data_start
58: 0804847c 0 OBJECT GLOBAL HIDDEN 14 __dso_handle 58: 0804847c 0 OBJECT GLOBAL HIDDEN 14 __dso_handle
59: 08049498 0 OBJECT GLOBAL HIDDEN 17 __DTOR_END__ 59: 08049498 0 OBJECT GLOBAL HIDDEN 17 __DTOR_END__
60: 080483c0 105 FUNC GLOBAL DEFAULT 12 __libc_csu_init 60: 080483c0 105 FUNC GLOBAL DEFAULT 12 __libc_csu_init
61: 08049588 0 NOTYPE GLOBAL DEFAULT ABS __bss_start 61: 08049588 0 NOTYPE GLOBAL DEFAULT ABS __bss_start
62: 08049590 0 NOTYPE GLOBAL DEFAULT ABS _end 62: 08049590 0 NOTYPE GLOBAL DEFAULT ABS _end
63: 00000000 399 FUNC GLOBAL DEFAULT UND puts@@GLIBC_2.0 63: 00000000 399 FUNC GLOBAL DEFAULT UND puts@@GLIBC_2.0
64: 08049588 0 NOTYPE GLOBAL DEFAULT ABS _edata 64: 08049588 0 NOTYPE GLOBAL DEFAULT ABS _edata
65: 08048429 0 FUNC GLOBAL HIDDEN 12 __i686.get_pc_thunk.bx 65: 08048429 0 FUNC GLOBAL HIDDEN 12 __i686.get_pc_thunk.bx
66: 08048384 43 FUNC GLOBAL DEFAULT 12 main 66: 08048384 43 FUNC GLOBAL DEFAULT 12 main
67: 0804824c 0 FUNC GLOBAL DEFAULT 10 _init 67: 0804824c 0 FUNC GLOBAL DEFAULT 10 _init
Histogram for `.gnu.hash' bucket list length (total of 2 buckets): Histogram for `.gnu.hash' bucket list length (total of 2 buckets):
Length Number % of total Coverage Length Number % of total Coverage
0 1 ( 50.0%) 0 1 ( 50.0%)
1 1 ( 50.0%) 100.0% 1 1 ( 50.0%) 100.0%
Version symbols section '.gnu.version' contains 5 entries: Version symbols section '.gnu.version' contains 5 entries:
Addr: 0000000008048202 Offset: 0x000202 Link: 4 (.dynsym) Addr: 0000000008048202 Offset: 0x000202 Link: 4 (.dynsym)
000: 0 (*local*) 0 (*local*) 2 (GLIBC_2.0) 2 (GLIBC_2.0) 000: 0 (*local*) 0 (*local*) 2 (GLIBC_2.0) 2 (GLIBC_2.0)
004: 1 (*global*) 004: 1 (*global*)
Version needs section '.gnu.version_r' contains 1 entries: Version needs section '.gnu.version_r' contains 1 entries:
Addr: 0x000000000804820c Offset: 0x00020c Link to section: 5 (.dynstr) Addr: 0x000000000804820c Offset: 0x00020c Link to section: 5 (.dynstr)
000000: Version: 1 File: libc.so.6 Cnt: 1 000000: Version: 1 File: libc.so.6 Cnt: 1
0x0010: Name: GLIBC_2.0 Flags: none Version: 2 0x0010: Name: GLIBC_2.0 Flags: none Version: 2
Notes at offset 0x00000128 with length 0x00000020: Notes at offset 0x00000128 with length 0x00000020:
Owner Data size Description Owner Data size Description
GNU 0x00000010 NT_VERSION (version) GNU 0x00000010 NT_VERSION (version)

View File

@ -1,64 +1,64 @@
ELF Header: ELF Header:
Magic: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00 Magic: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
Class: ELF32 Class: ELF32
Data: 2's complement, little endian Data: 2's complement, little endian
Version: 1 (current) Version: 1 (current)
OS/ABI: UNIX - System V OS/ABI: UNIX - System V
ABI Version: 0 ABI Version: 0
Type: REL (Relocatable file) Type: REL (Relocatable file)
Machine: Intel 80386 Machine: Intel 80386
Version: 0x1 Version: 0x1
Entry point address: 0x0 Entry point address: 0x0
Start of program headers: 0 (bytes into file) Start of program headers: 0 (bytes into file)
Start of section headers: 232 (bytes into file) Start of section headers: 232 (bytes into file)
Flags: 0x0 Flags: 0x0
Size of this header: 52 (bytes) Size of this header: 52 (bytes)
Size of program headers: 0 (bytes) Size of program headers: 0 (bytes)
Number of program headers: 0 Number of program headers: 0
Size of section headers: 40 (bytes) Size of section headers: 40 (bytes)
Number of section headers: 11 Number of section headers: 11
Section header string table index: 8 Section header string table index: 8
Section Headers: Section Headers:
[Nr] Name Type Addr Off Size ES Flg Lk Inf Al [Nr] Name Type Addr Off Size ES Flg Lk Inf Al
[ 0] NULL 00000000 000000 000000 00 0 0 0 [ 0] NULL 00000000 000000 000000 00 0 0 0
[ 1] .text PROGBITS 00000000 000034 00002b 00 AX 0 0 4 [ 1] .text PROGBITS 00000000 000034 00002b 00 AX 0 0 4
[ 2] .rel.text REL 00000000 000354 000010 08 9 1 4 [ 2] .rel.text REL 00000000 000354 000010 08 9 1 4
[ 3] .data PROGBITS 00000000 000060 000000 00 WA 0 0 4 [ 3] .data PROGBITS 00000000 000060 000000 00 WA 0 0 4
[ 4] .bss NOBITS 00000000 000060 000000 00 WA 0 0 4 [ 4] .bss NOBITS 00000000 000060 000000 00 WA 0 0 4
[ 5] .rodata PROGBITS 00000000 000060 000006 00 A 0 0 1 [ 5] .rodata PROGBITS 00000000 000060 000006 00 A 0 0 1
[ 6] .comment PROGBITS 00000000 000066 00002e 00 0 0 1 [ 6] .comment PROGBITS 00000000 000066 00002e 00 0 0 1
[ 7] .note.GNU-stack PROGBITS 00000000 000094 000000 00 0 0 1 [ 7] .note.GNU-stack PROGBITS 00000000 000094 000000 00 0 0 1
[ 8] .shstrtab STRTAB 00000000 000094 000051 00 0 0 1 [ 8] .shstrtab STRTAB 00000000 000094 000051 00 0 0 1
[ 9] .symtab SYMTAB 00000000 0002a0 0000a0 10 10 8 4 [ 9] .symtab SYMTAB 00000000 0002a0 0000a0 10 10 8 4
[10] .strtab STRTAB 00000000 000340 000013 00 0 0 1 [10] .strtab STRTAB 00000000 000340 000013 00 0 0 1
Key to Flags: Key to Flags:
W (write), A (alloc), X (execute), M (merge), S (strings) W (write), A (alloc), X (execute), M (merge), S (strings)
I (info), L (link order), G (group), x (unknown) I (info), L (link order), G (group), x (unknown)
O (extra OS processing required) o (OS specific), p (processor specific) O (extra OS processing required) o (OS specific), p (processor specific)
There are no section groups in this file. There are no section groups in this file.
There are no program headers in this file. There are no program headers in this file.
Relocation section '.rel.text' at offset 0x354 contains 2 entries: Relocation section '.rel.text' at offset 0x354 contains 2 entries:
Offset Info Type Sym.Value Sym. Name Offset Info Type Sym.Value Sym. Name
00000014 00000501 R_386_32 00000000 .rodata 00000014 00000501 R_386_32 00000000 .rodata
00000019 00000902 R_386_PC32 00000000 puts 00000019 00000902 R_386_PC32 00000000 puts
There are no unwind sections in this file. There are no unwind sections in this file.
Symbol table '.symtab' contains 10 entries: Symbol table '.symtab' contains 10 entries:
Num: Value Size Type Bind Vis Ndx Name Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND 0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 00000000 0 FILE LOCAL DEFAULT ABS hello.c 1: 00000000 0 FILE LOCAL DEFAULT ABS hello.c
2: 00000000 0 SECTION LOCAL DEFAULT 1 2: 00000000 0 SECTION LOCAL DEFAULT 1
3: 00000000 0 SECTION LOCAL DEFAULT 3 3: 00000000 0 SECTION LOCAL DEFAULT 3
4: 00000000 0 SECTION LOCAL DEFAULT 4 4: 00000000 0 SECTION LOCAL DEFAULT 4
5: 00000000 0 SECTION LOCAL DEFAULT 5 5: 00000000 0 SECTION LOCAL DEFAULT 5
6: 00000000 0 SECTION LOCAL DEFAULT 7 6: 00000000 0 SECTION LOCAL DEFAULT 7
7: 00000000 0 SECTION LOCAL DEFAULT 6 7: 00000000 0 SECTION LOCAL DEFAULT 6
8: 00000000 43 FUNC GLOBAL DEFAULT 1 main 8: 00000000 43 FUNC GLOBAL DEFAULT 1 main
9: 00000000 0 NOTYPE GLOBAL DEFAULT UND puts 9: 00000000 0 NOTYPE GLOBAL DEFAULT UND puts
No version information found in this file. No version information found in this file.

View File

@ -1,244 +1,244 @@
ELF Header: ELF Header:
Magic: 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 Magic: 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00
Class: ELF64 Class: ELF64
Data: 2's complement, little endian Data: 2's complement, little endian
Version: 1 (current) Version: 1 (current)
OS/ABI: UNIX - System V OS/ABI: UNIX - System V
ABI Version: 0 ABI Version: 0
Type: EXEC (Executable file) Type: EXEC (Executable file)
Machine: Advanced Micro Devices X86-64 Machine: Advanced Micro Devices X86-64
Version: 0x1 Version: 0x1
Entry point address: 0x4003c0 Entry point address: 0x4003c0
Start of program headers: 64 (bytes into file) Start of program headers: 64 (bytes into file)
Start of section headers: 2656 (bytes into file) Start of section headers: 2656 (bytes into file)
Flags: 0x0 Flags: 0x0
Size of this header: 64 (bytes) Size of this header: 64 (bytes)
Size of program headers: 56 (bytes) Size of program headers: 56 (bytes)
Number of program headers: 8 Number of program headers: 8
Size of section headers: 64 (bytes) Size of section headers: 64 (bytes)
Number of section headers: 29 Number of section headers: 29
Section header string table index: 26 Section header string table index: 26
Section Headers: Section Headers:
[Nr] Name Type Address Offset [Nr] Name Type Address Offset
Size EntSize Flags Link Info Align Size EntSize Flags Link Info Align
[ 0] NULL 0000000000000000 00000000 [ 0] NULL 0000000000000000 00000000
0000000000000000 0000000000000000 0 0 0 0000000000000000 0000000000000000 0 0 0
[ 1] .interp PROGBITS 0000000000400200 00000200 [ 1] .interp PROGBITS 0000000000400200 00000200
000000000000001c 0000000000000000 A 0 0 1 000000000000001c 0000000000000000 A 0 0 1
[ 2] .note.ABI-tag NOTE 000000000040021c 0000021c [ 2] .note.ABI-tag NOTE 000000000040021c 0000021c
0000000000000020 0000000000000000 A 0 0 4 0000000000000020 0000000000000000 A 0 0 4
[ 3] .gnu.hash GNU_HASH 0000000000400240 00000240 [ 3] .gnu.hash GNU_HASH 0000000000400240 00000240
000000000000001c 0000000000000000 A 4 0 8 000000000000001c 0000000000000000 A 4 0 8
[ 4] .dynsym DYNSYM 0000000000400260 00000260 [ 4] .dynsym DYNSYM 0000000000400260 00000260
0000000000000060 0000000000000018 A 5 1 8 0000000000000060 0000000000000018 A 5 1 8
[ 5] .dynstr STRTAB 00000000004002c0 000002c0 [ 5] .dynstr STRTAB 00000000004002c0 000002c0
000000000000003d 0000000000000000 A 0 0 1 000000000000003d 0000000000000000 A 0 0 1
[ 6] .gnu.version VERSYM 00000000004002fe 000002fe [ 6] .gnu.version VERSYM 00000000004002fe 000002fe
0000000000000008 0000000000000002 A 4 0 2 0000000000000008 0000000000000002 A 4 0 2
[ 7] .gnu.version_r VERNEED 0000000000400308 00000308 [ 7] .gnu.version_r VERNEED 0000000000400308 00000308
0000000000000020 0000000000000000 A 5 1 8 0000000000000020 0000000000000000 A 5 1 8
[ 8] .rela.dyn RELA 0000000000400328 00000328 [ 8] .rela.dyn RELA 0000000000400328 00000328
0000000000000018 0000000000000018 A 4 0 8 0000000000000018 0000000000000018 A 4 0 8
[ 9] .rela.plt RELA 0000000000400340 00000340 [ 9] .rela.plt RELA 0000000000400340 00000340
0000000000000030 0000000000000018 A 4 11 8 0000000000000030 0000000000000018 A 4 11 8
[10] .init PROGBITS 0000000000400370 00000370 [10] .init PROGBITS 0000000000400370 00000370
0000000000000018 0000000000000000 AX 0 0 4 0000000000000018 0000000000000000 AX 0 0 4
[11] .plt PROGBITS 0000000000400388 00000388 [11] .plt PROGBITS 0000000000400388 00000388
0000000000000030 0000000000000010 AX 0 0 4 0000000000000030 0000000000000010 AX 0 0 4
[12] .text PROGBITS 00000000004003c0 000003c0 [12] .text PROGBITS 00000000004003c0 000003c0
00000000000001c8 0000000000000000 AX 0 0 16 00000000000001c8 0000000000000000 AX 0 0 16
[13] .fini PROGBITS 0000000000400588 00000588 [13] .fini PROGBITS 0000000000400588 00000588
000000000000000e 0000000000000000 AX 0 0 4 000000000000000e 0000000000000000 AX 0 0 4
[14] .rodata PROGBITS 0000000000400598 00000598 [14] .rodata PROGBITS 0000000000400598 00000598
0000000000000016 0000000000000000 A 0 0 8 0000000000000016 0000000000000000 A 0 0 8
[15] .eh_frame_hdr PROGBITS 00000000004005b0 000005b0 [15] .eh_frame_hdr PROGBITS 00000000004005b0 000005b0
0000000000000024 0000000000000000 A 0 0 4 0000000000000024 0000000000000000 A 0 0 4
[16] .eh_frame PROGBITS 00000000004005d8 000005d8 [16] .eh_frame PROGBITS 00000000004005d8 000005d8
0000000000000094 0000000000000000 A 0 0 8 0000000000000094 0000000000000000 A 0 0 8
[17] .ctors PROGBITS 0000000000600670 00000670 [17] .ctors PROGBITS 0000000000600670 00000670
0000000000000010 0000000000000000 WA 0 0 8 0000000000000010 0000000000000000 WA 0 0 8
[18] .dtors PROGBITS 0000000000600680 00000680 [18] .dtors PROGBITS 0000000000600680 00000680
0000000000000010 0000000000000000 WA 0 0 8 0000000000000010 0000000000000000 WA 0 0 8
[19] .jcr PROGBITS 0000000000600690 00000690 [19] .jcr PROGBITS 0000000000600690 00000690
0000000000000008 0000000000000000 WA 0 0 8 0000000000000008 0000000000000000 WA 0 0 8
[20] .dynamic DYNAMIC 0000000000600698 00000698 [20] .dynamic DYNAMIC 0000000000600698 00000698
0000000000000190 0000000000000010 WA 5 0 8 0000000000000190 0000000000000010 WA 5 0 8
[21] .got PROGBITS 0000000000600828 00000828 [21] .got PROGBITS 0000000000600828 00000828
0000000000000008 0000000000000008 WA 0 0 8 0000000000000008 0000000000000008 WA 0 0 8
[22] .got.plt PROGBITS 0000000000600830 00000830 [22] .got.plt PROGBITS 0000000000600830 00000830
0000000000000028 0000000000000008 WA 0 0 8 0000000000000028 0000000000000008 WA 0 0 8
[23] .data PROGBITS 0000000000600858 00000858 [23] .data PROGBITS 0000000000600858 00000858
0000000000000004 0000000000000000 WA 0 0 4 0000000000000004 0000000000000000 WA 0 0 4
[24] .bss NOBITS 0000000000600860 0000085c [24] .bss NOBITS 0000000000600860 0000085c
0000000000000010 0000000000000000 WA 0 0 8 0000000000000010 0000000000000000 WA 0 0 8
[25] .comment PROGBITS 0000000000000000 0000085c [25] .comment PROGBITS 0000000000000000 0000085c
0000000000000114 0000000000000000 0 0 1 0000000000000114 0000000000000000 0 0 1
[26] .shstrtab STRTAB 0000000000000000 00000970 [26] .shstrtab STRTAB 0000000000000000 00000970
00000000000000eb 0000000000000000 0 0 1 00000000000000eb 0000000000000000 0 0 1
[27] .symtab SYMTAB 0000000000000000 000011a0 [27] .symtab SYMTAB 0000000000000000 000011a0
0000000000000648 0000000000000018 28 49 8 0000000000000648 0000000000000018 28 49 8
[28] .strtab STRTAB 0000000000000000 000017e8 [28] .strtab STRTAB 0000000000000000 000017e8
000000000000023f 0000000000000000 0 0 1 000000000000023f 0000000000000000 0 0 1
Key to Flags: Key to Flags:
W (write), A (alloc), X (execute), M (merge), S (strings) W (write), A (alloc), X (execute), M (merge), S (strings)
I (info), L (link order), G (group), x (unknown) I (info), L (link order), G (group), x (unknown)
O (extra OS processing required) o (OS specific), p (processor specific) O (extra OS processing required) o (OS specific), p (processor specific)
There are no section groups in this file. There are no section groups in this file.
Program Headers: Program Headers:
Type Offset VirtAddr PhysAddr Type Offset VirtAddr PhysAddr
FileSiz MemSiz Flags Align FileSiz MemSiz Flags Align
PHDR 0x0000000000000040 0x0000000000400040 0x0000000000400040 PHDR 0x0000000000000040 0x0000000000400040 0x0000000000400040
0x00000000000001c0 0x00000000000001c0 R E 8 0x00000000000001c0 0x00000000000001c0 R E 8
INTERP 0x0000000000000200 0x0000000000400200 0x0000000000400200 INTERP 0x0000000000000200 0x0000000000400200 0x0000000000400200
0x000000000000001c 0x000000000000001c R 1 0x000000000000001c 0x000000000000001c R 1
[Requesting program interpreter: /lib64/ld-linux-x86-64.so.2] [Requesting program interpreter: /lib64/ld-linux-x86-64.so.2]
LOAD 0x0000000000000000 0x0000000000400000 0x0000000000400000 LOAD 0x0000000000000000 0x0000000000400000 0x0000000000400000
0x000000000000066c 0x000000000000066c R E 200000 0x000000000000066c 0x000000000000066c R E 200000
LOAD 0x0000000000000670 0x0000000000600670 0x0000000000600670 LOAD 0x0000000000000670 0x0000000000600670 0x0000000000600670
0x00000000000001ec 0x0000000000000200 RW 200000 0x00000000000001ec 0x0000000000000200 RW 200000
DYNAMIC 0x0000000000000698 0x0000000000600698 0x0000000000600698 DYNAMIC 0x0000000000000698 0x0000000000600698 0x0000000000600698
0x0000000000000190 0x0000000000000190 RW 8 0x0000000000000190 0x0000000000000190 RW 8
NOTE 0x000000000000021c 0x000000000040021c 0x000000000040021c NOTE 0x000000000000021c 0x000000000040021c 0x000000000040021c
0x0000000000000020 0x0000000000000020 R 4 0x0000000000000020 0x0000000000000020 R 4
GNU_EH_FRAME 0x00000000000005b0 0x00000000004005b0 0x00000000004005b0 GNU_EH_FRAME 0x00000000000005b0 0x00000000004005b0 0x00000000004005b0
0x0000000000000024 0x0000000000000024 R 4 0x0000000000000024 0x0000000000000024 R 4
GNU_STACK 0x0000000000000000 0x0000000000000000 0x0000000000000000 GNU_STACK 0x0000000000000000 0x0000000000000000 0x0000000000000000
0x0000000000000000 0x0000000000000000 RW 8 0x0000000000000000 0x0000000000000000 RW 8
Section to Segment mapping: Section to Segment mapping:
Segment Sections... Segment Sections...
00 00
01 .interp 01 .interp
02 .interp .note.ABI-tag .gnu.hash .dynsym .dynstr .gnu.version .gnu.version_r .rela.dyn .rela.plt .init .plt .text .fini .rodata .eh_frame_hdr .eh_frame 02 .interp .note.ABI-tag .gnu.hash .dynsym .dynstr .gnu.version .gnu.version_r .rela.dyn .rela.plt .init .plt .text .fini .rodata .eh_frame_hdr .eh_frame
03 .ctors .dtors .jcr .dynamic .got .got.plt .data .bss 03 .ctors .dtors .jcr .dynamic .got .got.plt .data .bss
04 .dynamic 04 .dynamic
05 .note.ABI-tag 05 .note.ABI-tag
06 .eh_frame_hdr 06 .eh_frame_hdr
07 07
Dynamic section at offset 0x698 contains 20 entries: Dynamic section at offset 0x698 contains 20 entries:
Tag Type Name/Value Tag Type Name/Value
0x0000000000000001 (NEEDED) Shared library: [libc.so.6] 0x0000000000000001 (NEEDED) Shared library: [libc.so.6]
0x000000000000000c (INIT) 0x400370 0x000000000000000c (INIT) 0x400370
0x000000000000000d (FINI) 0x400588 0x000000000000000d (FINI) 0x400588
0x000000006ffffef5 (GNU_HASH) 0x400240 0x000000006ffffef5 (GNU_HASH) 0x400240
0x0000000000000005 (STRTAB) 0x4002c0 0x0000000000000005 (STRTAB) 0x4002c0
0x0000000000000006 (SYMTAB) 0x400260 0x0000000000000006 (SYMTAB) 0x400260
0x000000000000000a (STRSZ) 61 (bytes) 0x000000000000000a (STRSZ) 61 (bytes)
0x000000000000000b (SYMENT) 24 (bytes) 0x000000000000000b (SYMENT) 24 (bytes)
0x0000000000000015 (DEBUG) 0x0 0x0000000000000015 (DEBUG) 0x0
0x0000000000000003 (PLTGOT) 0x600830 0x0000000000000003 (PLTGOT) 0x600830
0x0000000000000002 (PLTRELSZ) 48 (bytes) 0x0000000000000002 (PLTRELSZ) 48 (bytes)
0x0000000000000014 (PLTREL) RELA 0x0000000000000014 (PLTREL) RELA
0x0000000000000017 (JMPREL) 0x400340 0x0000000000000017 (JMPREL) 0x400340
0x0000000000000007 (RELA) 0x400328 0x0000000000000007 (RELA) 0x400328
0x0000000000000008 (RELASZ) 24 (bytes) 0x0000000000000008 (RELASZ) 24 (bytes)
0x0000000000000009 (RELAENT) 24 (bytes) 0x0000000000000009 (RELAENT) 24 (bytes)
0x000000006ffffffe (VERNEED) 0x400308 0x000000006ffffffe (VERNEED) 0x400308
0x000000006fffffff (VERNEEDNUM) 1 0x000000006fffffff (VERNEEDNUM) 1
0x000000006ffffff0 (VERSYM) 0x4002fe 0x000000006ffffff0 (VERSYM) 0x4002fe
0x0000000000000000 (NULL) 0x0 0x0000000000000000 (NULL) 0x0
Relocation section '.rela.dyn' at offset 0x328 contains 1 entries: Relocation section '.rela.dyn' at offset 0x328 contains 1 entries:
Offset Info Type Sym. Value Sym. Name + Addend Offset Info Type Sym. Value Sym. Name + Addend
000000600828 000100000006 R_X86_64_GLOB_DAT 0000000000000000 __gmon_start__ + 0 000000600828 000100000006 R_X86_64_GLOB_DAT 0000000000000000 __gmon_start__ + 0
Relocation section '.rela.plt' at offset 0x340 contains 2 entries: Relocation section '.rela.plt' at offset 0x340 contains 2 entries:
Offset Info Type Sym. Value Sym. Name + Addend Offset Info Type Sym. Value Sym. Name + Addend
000000600848 000200000007 R_X86_64_JUMP_SLO 0000000000000000 puts + 0 000000600848 000200000007 R_X86_64_JUMP_SLO 0000000000000000 puts + 0
000000600850 000300000007 R_X86_64_JUMP_SLO 0000000000000000 __libc_start_main + 0 000000600850 000300000007 R_X86_64_JUMP_SLO 0000000000000000 __libc_start_main + 0
There are no unwind sections in this file. There are no unwind sections in this file.
Symbol table '.dynsym' contains 4 entries: Symbol table '.dynsym' contains 4 entries:
Num: Value Size Type Bind Vis Ndx Name Num: Value Size Type Bind Vis Ndx Name
0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND
1: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ 1: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__
2: 0000000000000000 396 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.2.5 (2) 2: 0000000000000000 396 FUNC GLOBAL DEFAULT UND puts@GLIBC_2.2.5 (2)
3: 0000000000000000 421 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.2.5 (2) 3: 0000000000000000 421 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.2.5 (2)
Symbol table '.symtab' contains 67 entries: Symbol table '.symtab' contains 67 entries:
Num: Value Size Type Bind Vis Ndx Name Num: Value Size Type Bind Vis Ndx Name
0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND
1: 0000000000400200 0 SECTION LOCAL DEFAULT 1 1: 0000000000400200 0 SECTION LOCAL DEFAULT 1
2: 000000000040021c 0 SECTION LOCAL DEFAULT 2 2: 000000000040021c 0 SECTION LOCAL DEFAULT 2
3: 0000000000400240 0 SECTION LOCAL DEFAULT 3 3: 0000000000400240 0 SECTION LOCAL DEFAULT 3
4: 0000000000400260 0 SECTION LOCAL DEFAULT 4 4: 0000000000400260 0 SECTION LOCAL DEFAULT 4
5: 00000000004002c0 0 SECTION LOCAL DEFAULT 5 5: 00000000004002c0 0 SECTION LOCAL DEFAULT 5
6: 00000000004002fe 0 SECTION LOCAL DEFAULT 6 6: 00000000004002fe 0 SECTION LOCAL DEFAULT 6
7: 0000000000400308 0 SECTION LOCAL DEFAULT 7 7: 0000000000400308 0 SECTION LOCAL DEFAULT 7
8: 0000000000400328 0 SECTION LOCAL DEFAULT 8 8: 0000000000400328 0 SECTION LOCAL DEFAULT 8
9: 0000000000400340 0 SECTION LOCAL DEFAULT 9 9: 0000000000400340 0 SECTION LOCAL DEFAULT 9
10: 0000000000400370 0 SECTION LOCAL DEFAULT 10 10: 0000000000400370 0 SECTION LOCAL DEFAULT 10
11: 0000000000400388 0 SECTION LOCAL DEFAULT 11 11: 0000000000400388 0 SECTION LOCAL DEFAULT 11
12: 00000000004003c0 0 SECTION LOCAL DEFAULT 12 12: 00000000004003c0 0 SECTION LOCAL DEFAULT 12
13: 0000000000400588 0 SECTION LOCAL DEFAULT 13 13: 0000000000400588 0 SECTION LOCAL DEFAULT 13
14: 0000000000400598 0 SECTION LOCAL DEFAULT 14 14: 0000000000400598 0 SECTION LOCAL DEFAULT 14
15: 00000000004005b0 0 SECTION LOCAL DEFAULT 15 15: 00000000004005b0 0 SECTION LOCAL DEFAULT 15
16: 00000000004005d8 0 SECTION LOCAL DEFAULT 16 16: 00000000004005d8 0 SECTION LOCAL DEFAULT 16
17: 0000000000600670 0 SECTION LOCAL DEFAULT 17 17: 0000000000600670 0 SECTION LOCAL DEFAULT 17
18: 0000000000600680 0 SECTION LOCAL DEFAULT 18 18: 0000000000600680 0 SECTION LOCAL DEFAULT 18
19: 0000000000600690 0 SECTION LOCAL DEFAULT 19 19: 0000000000600690 0 SECTION LOCAL DEFAULT 19
20: 0000000000600698 0 SECTION LOCAL DEFAULT 20 20: 0000000000600698 0 SECTION LOCAL DEFAULT 20
21: 0000000000600828 0 SECTION LOCAL DEFAULT 21 21: 0000000000600828 0 SECTION LOCAL DEFAULT 21
22: 0000000000600830 0 SECTION LOCAL DEFAULT 22 22: 0000000000600830 0 SECTION LOCAL DEFAULT 22
23: 0000000000600858 0 SECTION LOCAL DEFAULT 23 23: 0000000000600858 0 SECTION LOCAL DEFAULT 23
24: 0000000000600860 0 SECTION LOCAL DEFAULT 24 24: 0000000000600860 0 SECTION LOCAL DEFAULT 24
25: 0000000000000000 0 SECTION LOCAL DEFAULT 25 25: 0000000000000000 0 SECTION LOCAL DEFAULT 25
26: 00000000004003ec 0 FUNC LOCAL DEFAULT 12 call_gmon_start 26: 00000000004003ec 0 FUNC LOCAL DEFAULT 12 call_gmon_start
27: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c 27: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c
28: 0000000000600670 0 OBJECT LOCAL DEFAULT 17 __CTOR_LIST__ 28: 0000000000600670 0 OBJECT LOCAL DEFAULT 17 __CTOR_LIST__
29: 0000000000600680 0 OBJECT LOCAL DEFAULT 18 __DTOR_LIST__ 29: 0000000000600680 0 OBJECT LOCAL DEFAULT 18 __DTOR_LIST__
30: 0000000000600690 0 OBJECT LOCAL DEFAULT 19 __JCR_LIST__ 30: 0000000000600690 0 OBJECT LOCAL DEFAULT 19 __JCR_LIST__
31: 0000000000600860 8 OBJECT LOCAL DEFAULT 24 dtor_idx.6147 31: 0000000000600860 8 OBJECT LOCAL DEFAULT 24 dtor_idx.6147
32: 0000000000600868 1 OBJECT LOCAL DEFAULT 24 completed.6145 32: 0000000000600868 1 OBJECT LOCAL DEFAULT 24 completed.6145
33: 0000000000400410 0 FUNC LOCAL DEFAULT 12 __do_global_dtors_aux 33: 0000000000400410 0 FUNC LOCAL DEFAULT 12 __do_global_dtors_aux
34: 0000000000400470 0 FUNC LOCAL DEFAULT 12 frame_dummy 34: 0000000000400470 0 FUNC LOCAL DEFAULT 12 frame_dummy
35: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c 35: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c
36: 0000000000600678 0 OBJECT LOCAL DEFAULT 17 __CTOR_END__ 36: 0000000000600678 0 OBJECT LOCAL DEFAULT 17 __CTOR_END__
37: 0000000000400668 0 OBJECT LOCAL DEFAULT 16 __FRAME_END__ 37: 0000000000400668 0 OBJECT LOCAL DEFAULT 16 __FRAME_END__
38: 0000000000600690 0 OBJECT LOCAL DEFAULT 19 __JCR_END__ 38: 0000000000600690 0 OBJECT LOCAL DEFAULT 19 __JCR_END__
39: 0000000000400550 0 FUNC LOCAL DEFAULT 12 __do_global_ctors_aux 39: 0000000000400550 0 FUNC LOCAL DEFAULT 12 __do_global_ctors_aux
40: 0000000000000000 0 FILE LOCAL DEFAULT ABS hello.c 40: 0000000000000000 0 FILE LOCAL DEFAULT ABS hello.c
41: 000000000060066c 0 NOTYPE LOCAL HIDDEN 17 __preinit_array_start 41: 000000000060066c 0 NOTYPE LOCAL HIDDEN 17 __preinit_array_start
42: 000000000060066c 0 NOTYPE LOCAL HIDDEN 17 __fini_array_end 42: 000000000060066c 0 NOTYPE LOCAL HIDDEN 17 __fini_array_end
43: 0000000000600830 0 OBJECT LOCAL HIDDEN 22 _GLOBAL_OFFSET_TABLE_ 43: 0000000000600830 0 OBJECT LOCAL HIDDEN 22 _GLOBAL_OFFSET_TABLE_
44: 000000000060066c 0 NOTYPE LOCAL HIDDEN 17 __preinit_array_end 44: 000000000060066c 0 NOTYPE LOCAL HIDDEN 17 __preinit_array_end
45: 000000000060066c 0 NOTYPE LOCAL HIDDEN 17 __fini_array_start 45: 000000000060066c 0 NOTYPE LOCAL HIDDEN 17 __fini_array_start
46: 000000000060066c 0 NOTYPE LOCAL HIDDEN 17 __init_array_end 46: 000000000060066c 0 NOTYPE LOCAL HIDDEN 17 __init_array_end
47: 000000000060066c 0 NOTYPE LOCAL HIDDEN 17 __init_array_start 47: 000000000060066c 0 NOTYPE LOCAL HIDDEN 17 __init_array_start
48: 0000000000600698 0 OBJECT LOCAL HIDDEN 20 _DYNAMIC 48: 0000000000600698 0 OBJECT LOCAL HIDDEN 20 _DYNAMIC
49: 0000000000600858 0 NOTYPE WEAK DEFAULT 23 data_start 49: 0000000000600858 0 NOTYPE WEAK DEFAULT 23 data_start
50: 00000000004004b0 2 FUNC GLOBAL DEFAULT 12 __libc_csu_fini 50: 00000000004004b0 2 FUNC GLOBAL DEFAULT 12 __libc_csu_fini
51: 00000000004003c0 0 FUNC GLOBAL DEFAULT 12 _start 51: 00000000004003c0 0 FUNC GLOBAL DEFAULT 12 _start
52: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ 52: 0000000000000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__
53: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _Jv_RegisterClasses 53: 0000000000000000 0 NOTYPE WEAK DEFAULT UND _Jv_RegisterClasses
54: 0000000000000000 396 FUNC GLOBAL DEFAULT UND puts@@GLIBC_2.2.5 54: 0000000000000000 396 FUNC GLOBAL DEFAULT UND puts@@GLIBC_2.2.5
55: 0000000000400588 0 FUNC GLOBAL DEFAULT 13 _fini 55: 0000000000400588 0 FUNC GLOBAL DEFAULT 13 _fini
56: 0000000000000000 421 FUNC GLOBAL DEFAULT UND __libc_start_main@@GLIBC_ 56: 0000000000000000 421 FUNC GLOBAL DEFAULT UND __libc_start_main@@GLIBC_
57: 0000000000400598 4 OBJECT GLOBAL DEFAULT 14 _IO_stdin_used 57: 0000000000400598 4 OBJECT GLOBAL DEFAULT 14 _IO_stdin_used
58: 0000000000600858 0 NOTYPE GLOBAL DEFAULT 23 __data_start 58: 0000000000600858 0 NOTYPE GLOBAL DEFAULT 23 __data_start
59: 00000000004005a0 0 OBJECT GLOBAL HIDDEN 14 __dso_handle 59: 00000000004005a0 0 OBJECT GLOBAL HIDDEN 14 __dso_handle
60: 0000000000600688 0 OBJECT GLOBAL HIDDEN 18 __DTOR_END__ 60: 0000000000600688 0 OBJECT GLOBAL HIDDEN 18 __DTOR_END__
61: 00000000004004c0 139 FUNC GLOBAL DEFAULT 12 __libc_csu_init 61: 00000000004004c0 139 FUNC GLOBAL DEFAULT 12 __libc_csu_init
62: 000000000060085c 0 NOTYPE GLOBAL DEFAULT ABS __bss_start 62: 000000000060085c 0 NOTYPE GLOBAL DEFAULT ABS __bss_start
63: 0000000000600870 0 NOTYPE GLOBAL DEFAULT ABS _end 63: 0000000000600870 0 NOTYPE GLOBAL DEFAULT ABS _end
64: 000000000060085c 0 NOTYPE GLOBAL DEFAULT ABS _edata 64: 000000000060085c 0 NOTYPE GLOBAL DEFAULT ABS _edata
65: 0000000000400498 21 FUNC GLOBAL DEFAULT 12 main 65: 0000000000400498 21 FUNC GLOBAL DEFAULT 12 main
66: 0000000000400370 0 FUNC GLOBAL DEFAULT 10 _init 66: 0000000000400370 0 FUNC GLOBAL DEFAULT 10 _init
Version symbols section '.gnu.version' contains 4 entries: Version symbols section '.gnu.version' contains 4 entries:
Addr: 00000000004002fe Offset: 0x0002fe Link: 4 (.dynsym) Addr: 00000000004002fe Offset: 0x0002fe Link: 4 (.dynsym)
000: 0 (*local*) 0 (*local*) 2 (GLIBC_2.2.5) 2 (GLIBC_2.2.5) 000: 0 (*local*) 0 (*local*) 2 (GLIBC_2.2.5) 2 (GLIBC_2.2.5)
Version needs section '.gnu.version_r' contains 1 entries: Version needs section '.gnu.version_r' contains 1 entries:
Addr: 0x0000000000400308 Offset: 0x000308 Link to section: 5 (.dynstr) Addr: 0x0000000000400308 Offset: 0x000308 Link to section: 5 (.dynstr)
000000: Version: 1 File: libc.so.6 Cnt: 1 000000: Version: 1 File: libc.so.6 Cnt: 1
0x0010: Name: GLIBC_2.2.5 Flags: none Version: 2 0x0010: Name: GLIBC_2.2.5 Flags: none Version: 2
Notes at offset 0x0000021c with length 0x00000020: Notes at offset 0x0000021c with length 0x00000020:
Owner Data size Description Owner Data size Description
GNU 0x00000010 NT_VERSION (version) GNU 0x00000010 NT_VERSION (version)

View File

@ -1,85 +1,85 @@
ELF Header: ELF Header:
Magic: 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 Magic: 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00
Class: ELF64 Class: ELF64
Data: 2's complement, little endian Data: 2's complement, little endian
Version: 1 (current) Version: 1 (current)
OS/ABI: UNIX - System V OS/ABI: UNIX - System V
ABI Version: 0 ABI Version: 0
Type: REL (Relocatable file) Type: REL (Relocatable file)
Machine: Advanced Micro Devices X86-64 Machine: Advanced Micro Devices X86-64
Version: 0x1 Version: 0x1
Entry point address: 0x0 Entry point address: 0x0
Start of program headers: 0 (bytes into file) Start of program headers: 0 (bytes into file)
Start of section headers: 296 (bytes into file) Start of section headers: 296 (bytes into file)
Flags: 0x0 Flags: 0x0
Size of this header: 64 (bytes) Size of this header: 64 (bytes)
Size of program headers: 0 (bytes) Size of program headers: 0 (bytes)
Number of program headers: 0 Number of program headers: 0
Size of section headers: 64 (bytes) Size of section headers: 64 (bytes)
Number of section headers: 13 Number of section headers: 13
Section header string table index: 10 Section header string table index: 10
Section Headers: Section Headers:
[Nr] Name Type Address Offset [Nr] Name Type Address Offset
Size EntSize Flags Link Info Align Size EntSize Flags Link Info Align
[ 0] NULL 0000000000000000 00000000 [ 0] NULL 0000000000000000 00000000
0000000000000000 0000000000000000 0 0 0 0000000000000000 0000000000000000 0 0 0
[ 1] .text PROGBITS 0000000000000000 00000040 [ 1] .text PROGBITS 0000000000000000 00000040
0000000000000015 0000000000000000 AX 0 0 4 0000000000000015 0000000000000000 AX 0 0 4
[ 2] .rela.text RELA 0000000000000000 00000588 [ 2] .rela.text RELA 0000000000000000 00000588
0000000000000030 0000000000000018 11 1 8 0000000000000030 0000000000000018 11 1 8
[ 3] .data PROGBITS 0000000000000000 00000058 [ 3] .data PROGBITS 0000000000000000 00000058
0000000000000000 0000000000000000 WA 0 0 4 0000000000000000 0000000000000000 WA 0 0 4
[ 4] .bss NOBITS 0000000000000000 00000058 [ 4] .bss NOBITS 0000000000000000 00000058
0000000000000000 0000000000000000 WA 0 0 4 0000000000000000 0000000000000000 WA 0 0 4
[ 5] .rodata PROGBITS 0000000000000000 00000058 [ 5] .rodata PROGBITS 0000000000000000 00000058
0000000000000006 0000000000000000 A 0 0 1 0000000000000006 0000000000000000 A 0 0 1
[ 6] .eh_frame PROGBITS 0000000000000000 00000060 [ 6] .eh_frame PROGBITS 0000000000000000 00000060
0000000000000038 0000000000000000 A 0 0 8 0000000000000038 0000000000000000 A 0 0 8
[ 7] .rela.eh_frame RELA 0000000000000000 000005b8 [ 7] .rela.eh_frame RELA 0000000000000000 000005b8
0000000000000018 0000000000000018 11 6 8 0000000000000018 0000000000000018 11 6 8
[ 8] .comment PROGBITS 0000000000000000 00000098 [ 8] .comment PROGBITS 0000000000000000 00000098
000000000000002e 0000000000000000 0 0 1 000000000000002e 0000000000000000 0 0 1
[ 9] .note.GNU-stack PROGBITS 0000000000000000 000000c6 [ 9] .note.GNU-stack PROGBITS 0000000000000000 000000c6
0000000000000000 0000000000000000 0 0 1 0000000000000000 0000000000000000 0 0 1
[10] .shstrtab STRTAB 0000000000000000 000000c6 [10] .shstrtab STRTAB 0000000000000000 000000c6
0000000000000061 0000000000000000 0 0 1 0000000000000061 0000000000000000 0 0 1
[11] .symtab SYMTAB 0000000000000000 00000468 [11] .symtab SYMTAB 0000000000000000 00000468
0000000000000108 0000000000000018 12 9 8 0000000000000108 0000000000000018 12 9 8
[12] .strtab STRTAB 0000000000000000 00000570 [12] .strtab STRTAB 0000000000000000 00000570
0000000000000013 0000000000000000 0 0 1 0000000000000013 0000000000000000 0 0 1
Key to Flags: Key to Flags:
W (write), A (alloc), X (execute), M (merge), S (strings) W (write), A (alloc), X (execute), M (merge), S (strings)
I (info), L (link order), G (group), x (unknown) I (info), L (link order), G (group), x (unknown)
O (extra OS processing required) o (OS specific), p (processor specific) O (extra OS processing required) o (OS specific), p (processor specific)
There are no section groups in this file. There are no section groups in this file.
There are no program headers in this file. There are no program headers in this file.
Relocation section '.rela.text' at offset 0x588 contains 2 entries: Relocation section '.rela.text' at offset 0x588 contains 2 entries:
Offset Info Type Sym. Value Sym. Name + Addend Offset Info Type Sym. Value Sym. Name + Addend
000000000005 00050000000a R_X86_64_32 0000000000000000 .rodata + 0 000000000005 00050000000a R_X86_64_32 0000000000000000 .rodata + 0
00000000000a 000a00000002 R_X86_64_PC32 0000000000000000 puts + fffffffffffffffc 00000000000a 000a00000002 R_X86_64_PC32 0000000000000000 puts + fffffffffffffffc
Relocation section '.rela.eh_frame' at offset 0x5b8 contains 1 entries: Relocation section '.rela.eh_frame' at offset 0x5b8 contains 1 entries:
Offset Info Type Sym. Value Sym. Name + Addend Offset Info Type Sym. Value Sym. Name + Addend
000000000020 00020000000a R_X86_64_32 0000000000000000 .text + 0 000000000020 00020000000a R_X86_64_32 0000000000000000 .text + 0
There are no unwind sections in this file. There are no unwind sections in this file.
Symbol table '.symtab' contains 11 entries: Symbol table '.symtab' contains 11 entries:
Num: Value Size Type Bind Vis Ndx Name Num: Value Size Type Bind Vis Ndx Name
0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND
1: 0000000000000000 0 FILE LOCAL DEFAULT ABS hello.c 1: 0000000000000000 0 FILE LOCAL DEFAULT ABS hello.c
2: 0000000000000000 0 SECTION LOCAL DEFAULT 1 2: 0000000000000000 0 SECTION LOCAL DEFAULT 1
3: 0000000000000000 0 SECTION LOCAL DEFAULT 3 3: 0000000000000000 0 SECTION LOCAL DEFAULT 3
4: 0000000000000000 0 SECTION LOCAL DEFAULT 4 4: 0000000000000000 0 SECTION LOCAL DEFAULT 4
5: 0000000000000000 0 SECTION LOCAL DEFAULT 5 5: 0000000000000000 0 SECTION LOCAL DEFAULT 5
6: 0000000000000000 0 SECTION LOCAL DEFAULT 6 6: 0000000000000000 0 SECTION LOCAL DEFAULT 6
7: 0000000000000000 0 SECTION LOCAL DEFAULT 9 7: 0000000000000000 0 SECTION LOCAL DEFAULT 9
8: 0000000000000000 0 SECTION LOCAL DEFAULT 8 8: 0000000000000000 0 SECTION LOCAL DEFAULT 8
9: 0000000000000000 21 FUNC GLOBAL DEFAULT 1 main 9: 0000000000000000 21 FUNC GLOBAL DEFAULT 1 main
10: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND puts 10: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND puts
No version information found in this file. No version information found in this file.

View File

@ -1,8 +1,8 @@
#include <iostream> #include <iostream>
int main() int main()
{ {
std::cout << "Hello" << std::endl; std::cout << "Hello" << std::endl;
return 0; return 0;
} }

View File

@ -1,263 +1,263 @@
ELF Header: ELF Header:
Magic: 7f 45 4c 46 01 02 01 00 00 00 00 00 00 00 00 00 Magic: 7f 45 4c 46 01 02 01 00 00 00 00 00 00 00 00 00
Class: ELF32 Class: ELF32
Data: 2's complement, big endian Data: 2's complement, big endian
Version: 1 (current) Version: 1 (current)
OS/ABI: UNIX - System V OS/ABI: UNIX - System V
ABI Version: 0 ABI Version: 0
Type: EXEC (Executable file) Type: EXEC (Executable file)
Machine: PowerPC Machine: PowerPC
Version: 0x1 Version: 0x1
Entry point address: 0x10000550 Entry point address: 0x10000550
Start of program headers: 52 (bytes into file) Start of program headers: 52 (bytes into file)
Start of section headers: 3484 (bytes into file) Start of section headers: 3484 (bytes into file)
Flags: 0x0 Flags: 0x0
Size of this header: 52 (bytes) Size of this header: 52 (bytes)
Size of program headers: 32 (bytes) Size of program headers: 32 (bytes)
Number of program headers: 8 Number of program headers: 8
Size of section headers: 40 (bytes) Size of section headers: 40 (bytes)
Number of section headers: 31 Number of section headers: 31
Section header string table index: 28 Section header string table index: 28
Section Headers: Section Headers:
[Nr] Name Type Addr Off Size ES Flg Lk Inf Al [Nr] Name Type Addr Off Size ES Flg Lk Inf Al
[ 0] NULL 00000000 000000 000000 00 0 0 0 [ 0] NULL 00000000 000000 000000 00 0 0 0
[ 1] .interp PROGBITS 10000134 000134 00000d 00 A 0 0 1 [ 1] .interp PROGBITS 10000134 000134 00000d 00 A 0 0 1
[ 2] .note.ABI-tag NOTE 10000144 000144 000020 00 A 0 0 4 [ 2] .note.ABI-tag NOTE 10000144 000144 000020 00 A 0 0 4
[ 3] .hash HASH 10000164 000164 000048 04 A 4 0 4 [ 3] .hash HASH 10000164 000164 000048 04 A 4 0 4
[ 4] .dynsym DYNSYM 100001ac 0001ac 0000d0 10 A 5 1 4 [ 4] .dynsym DYNSYM 100001ac 0001ac 0000d0 10 A 5 1 4
[ 5] .dynstr STRTAB 1000027c 00027c 000183 00 A 0 0 1 [ 5] .dynstr STRTAB 1000027c 00027c 000183 00 A 0 0 1
[ 6] .gnu.version VERSYM 10000400 000400 00001a 02 A 4 0 2 [ 6] .gnu.version VERSYM 10000400 000400 00001a 02 A 4 0 2
[ 7] .gnu.version_r VERNEED 1000041c 00041c 000060 00 A 5 2 4 [ 7] .gnu.version_r VERNEED 1000041c 00041c 000060 00 A 5 2 4
[ 8] .rela.dyn RELA 1000047c 00047c 000018 0c A 4 0 4 [ 8] .rela.dyn RELA 1000047c 00047c 000018 0c A 4 0 4
[ 9] .rela.plt RELA 10000494 000494 00006c 0c A 4 22 4 [ 9] .rela.plt RELA 10000494 000494 00006c 0c A 4 22 4
[10] .init PROGBITS 10000500 000500 00004c 00 AX 0 0 4 [10] .init PROGBITS 10000500 000500 00004c 00 AX 0 0 4
[11] .text PROGBITS 10000550 000550 000480 00 AX 0 0 16 [11] .text PROGBITS 10000550 000550 000480 00 AX 0 0 16
[12] .fini PROGBITS 100009d0 0009d0 000038 00 AX 0 0 4 [12] .fini PROGBITS 100009d0 0009d0 000038 00 AX 0 0 4
[13] .rodata PROGBITS 10000a08 000a08 00001a 00 A 0 0 4 [13] .rodata PROGBITS 10000a08 000a08 00001a 00 A 0 0 4
[14] .eh_frame_hdr PROGBITS 10000a24 000a24 000024 00 A 0 0 4 [14] .eh_frame_hdr PROGBITS 10000a24 000a24 000024 00 A 0 0 4
[15] .eh_frame PROGBITS 10000a48 000a48 000084 00 A 0 0 4 [15] .eh_frame PROGBITS 10000a48 000a48 000084 00 A 0 0 4
[16] .ctors PROGBITS 10010acc 000acc 00000c 00 WA 0 0 4 [16] .ctors PROGBITS 10010acc 000acc 00000c 00 WA 0 0 4
[17] .dtors PROGBITS 10010ad8 000ad8 000008 00 WA 0 0 4 [17] .dtors PROGBITS 10010ad8 000ad8 000008 00 WA 0 0 4
[18] .jcr PROGBITS 10010ae0 000ae0 000004 00 WA 0 0 4 [18] .jcr PROGBITS 10010ae0 000ae0 000004 00 WA 0 0 4
[19] .got2 PROGBITS 10010ae4 000ae4 000008 00 WA 0 0 1 [19] .got2 PROGBITS 10010ae4 000ae4 000008 00 WA 0 0 1
[20] .dynamic DYNAMIC 10010aec 000aec 0000e8 08 WA 5 0 4 [20] .dynamic DYNAMIC 10010aec 000aec 0000e8 08 WA 5 0 4
[21] .got PROGBITS 10010bd4 000bd4 000010 04 WA 0 0 4 [21] .got PROGBITS 10010bd4 000bd4 000010 04 WA 0 0 4
[22] .plt PROGBITS 10010be4 000be4 000024 00 WA 0 0 4 [22] .plt PROGBITS 10010be4 000be4 000024 00 WA 0 0 4
[23] .data PROGBITS 10010c08 000c08 000004 00 WA 0 0 4 [23] .data PROGBITS 10010c08 000c08 000004 00 WA 0 0 4
[24] .bss NOBITS 10010c0c 000c0c 000098 00 WA 0 0 4 [24] .bss NOBITS 10010c0c 000c0c 000098 00 WA 0 0 4
[25] .comment PROGBITS 00000000 000c0c 000027 00 0 0 1 [25] .comment PROGBITS 00000000 000c0c 000027 00 0 0 1
[26] .debug_frame PROGBITS 00000000 000c34 000050 00 0 0 4 [26] .debug_frame PROGBITS 00000000 000c34 000050 00 0 0 4
[27] .gnu.attributes LOOS+ffffff5 00000000 000c84 000014 00 0 0 1 [27] .gnu.attributes LOOS+ffffff5 00000000 000c84 000014 00 0 0 1
[28] .shstrtab STRTAB 00000000 000c98 000101 00 0 0 1 [28] .shstrtab STRTAB 00000000 000c98 000101 00 0 0 1
[29] .symtab SYMTAB 00000000 001274 000500 10 30 54 4 [29] .symtab SYMTAB 00000000 001274 000500 10 30 54 4
[30] .strtab STRTAB 00000000 001774 0003cc 00 0 0 1 [30] .strtab STRTAB 00000000 001774 0003cc 00 0 0 1
Key to Flags: Key to Flags:
W (write), A (alloc), X (execute), M (merge), S (strings) W (write), A (alloc), X (execute), M (merge), S (strings)
I (info), L (link order), G (group), x (unknown) I (info), L (link order), G (group), x (unknown)
O (extra OS processing required) o (OS specific), p (processor specific) O (extra OS processing required) o (OS specific), p (processor specific)
There are no section groups in this file. There are no section groups in this file.
Program Headers: Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
PHDR 0x000034 0x10000034 0x10000034 0x00100 0x00100 R E 0x4 PHDR 0x000034 0x10000034 0x10000034 0x00100 0x00100 R E 0x4
INTERP 0x000134 0x10000134 0x10000134 0x0000d 0x0000d R 0x1 INTERP 0x000134 0x10000134 0x10000134 0x0000d 0x0000d R 0x1
[Requesting program interpreter: /lib/ld.so.1] [Requesting program interpreter: /lib/ld.so.1]
LOAD 0x000000 0x10000000 0x10000000 0x00acc 0x00acc R E 0x10000 LOAD 0x000000 0x10000000 0x10000000 0x00acc 0x00acc R E 0x10000
LOAD 0x000acc 0x10010acc 0x10010acc 0x00140 0x001d8 RW 0x10000 LOAD 0x000acc 0x10010acc 0x10010acc 0x00140 0x001d8 RW 0x10000
DYNAMIC 0x000aec 0x10010aec 0x10010aec 0x000e8 0x000e8 RW 0x4 DYNAMIC 0x000aec 0x10010aec 0x10010aec 0x000e8 0x000e8 RW 0x4
NOTE 0x000144 0x10000144 0x10000144 0x00020 0x00020 R 0x4 NOTE 0x000144 0x10000144 0x10000144 0x00020 0x00020 R 0x4
GNU_EH_FRAME 0x000a24 0x10000a24 0x10000a24 0x00024 0x00024 R 0x4 GNU_EH_FRAME 0x000a24 0x10000a24 0x10000a24 0x00024 0x00024 R 0x4
GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x00000 RW 0x4 GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x00000 RW 0x4
Section to Segment mapping: Section to Segment mapping:
Segment Sections... Segment Sections...
00 00
01 .interp 01 .interp
02 .interp .note.ABI-tag .hash .dynsym .dynstr .gnu.version .gnu.version_r .rela.dyn .rela.plt .init .text .fini .rodata .eh_frame_hdr .eh_frame 02 .interp .note.ABI-tag .hash .dynsym .dynstr .gnu.version .gnu.version_r .rela.dyn .rela.plt .init .text .fini .rodata .eh_frame_hdr .eh_frame
03 .ctors .dtors .jcr .got2 .dynamic .got .plt .data .bss 03 .ctors .dtors .jcr .got2 .dynamic .got .plt .data .bss
04 .dynamic 04 .dynamic
05 .note.ABI-tag 05 .note.ABI-tag
06 .eh_frame_hdr 06 .eh_frame_hdr
07 07
Dynamic section at offset 0xaec contains 24 entries: Dynamic section at offset 0xaec contains 24 entries:
Tag Type Name/Value Tag Type Name/Value
0x00000001 (NEEDED) Shared library: [libstdc++.so.6] 0x00000001 (NEEDED) Shared library: [libstdc++.so.6]
0x00000001 (NEEDED) Shared library: [libm.so.6] 0x00000001 (NEEDED) Shared library: [libm.so.6]
0x00000001 (NEEDED) Shared library: [libgcc_s.so.1] 0x00000001 (NEEDED) Shared library: [libgcc_s.so.1]
0x00000001 (NEEDED) Shared library: [libc.so.6] 0x00000001 (NEEDED) Shared library: [libc.so.6]
0x0000000c (INIT) 0x10000500 0x0000000c (INIT) 0x10000500
0x0000000d (FINI) 0x100009d0 0x0000000d (FINI) 0x100009d0
0x00000004 (HASH) 0x10000164 0x00000004 (HASH) 0x10000164
0x00000005 (STRTAB) 0x1000027c 0x00000005 (STRTAB) 0x1000027c
0x00000006 (SYMTAB) 0x100001ac 0x00000006 (SYMTAB) 0x100001ac
0x0000000a (STRSZ) 387 (bytes) 0x0000000a (STRSZ) 387 (bytes)
0x0000000b (SYMENT) 16 (bytes) 0x0000000b (SYMENT) 16 (bytes)
0x00000015 (DEBUG) 0x0 0x00000015 (DEBUG) 0x0
0x00000003 (PLTGOT) 0x10010be4 0x00000003 (PLTGOT) 0x10010be4
0x00000002 (PLTRELSZ) 108 (bytes) 0x00000002 (PLTRELSZ) 108 (bytes)
0x00000014 (PLTREL) RELA 0x00000014 (PLTREL) RELA
0x00000017 (JMPREL) 0x10000494 0x00000017 (JMPREL) 0x10000494
0x70000000 (PPC_GOT) 0x10010bd8 0x70000000 (PPC_GOT) 0x10010bd8
0x00000007 (RELA) 0x1000047c 0x00000007 (RELA) 0x1000047c
0x00000008 (RELASZ) 132 (bytes) 0x00000008 (RELASZ) 132 (bytes)
0x00000009 (RELAENT) 12 (bytes) 0x00000009 (RELAENT) 12 (bytes)
0x6ffffffe (VERNEED) 0x1000041c 0x6ffffffe (VERNEED) 0x1000041c
0x6fffffff (VERNEEDNUM) 2 0x6fffffff (VERNEEDNUM) 2
0x6ffffff0 (VERSYM) 0x10000400 0x6ffffff0 (VERSYM) 0x10000400
0x00000000 (NULL) 0x0 0x00000000 (NULL) 0x0
Relocation section '.rela.dyn' at offset 0x47c contains 2 entries: Relocation section '.rela.dyn' at offset 0x47c contains 2 entries:
Offset Info Type Sym.Value Sym. Name + Addend Offset Info Type Sym.Value Sym. Name + Addend
10010bd4 00000214 R_PPC_GLOB_DAT 00000000 __gmon_start__ + 0 10010bd4 00000214 R_PPC_GLOB_DAT 00000000 __gmon_start__ + 0
10010c0c 00000913 R_PPC_COPY 10010c0c _ZSt4cout + 0 10010c0c 00000913 R_PPC_COPY 10010c0c _ZSt4cout + 0
Relocation section '.rela.plt' at offset 0x494 contains 9 entries: Relocation section '.rela.plt' at offset 0x494 contains 9 entries:
Offset Info Type Sym.Value Sym. Name + Addend Offset Info Type Sym.Value Sym. Name + Addend
10010be4 00000115 R_PPC_JMP_SLOT 100008e0 __cxa_atexit + 0 10010be4 00000115 R_PPC_JMP_SLOT 100008e0 __cxa_atexit + 0
10010be8 00000215 R_PPC_JMP_SLOT 00000000 __gmon_start__ + 0 10010be8 00000215 R_PPC_JMP_SLOT 00000000 __gmon_start__ + 0
10010bec 00000415 R_PPC_JMP_SLOT 10000900 _ZNSt8ios_base4InitC1E + 0 10010bec 00000415 R_PPC_JMP_SLOT 10000900 _ZNSt8ios_base4InitC1E + 0
10010bf0 00000515 R_PPC_JMP_SLOT 10000910 __libc_start_main + 0 10010bf0 00000515 R_PPC_JMP_SLOT 10000910 __libc_start_main + 0
10010bf4 00000615 R_PPC_JMP_SLOT 10000920 _ZNSt8ios_base4InitD1E + 0 10010bf4 00000615 R_PPC_JMP_SLOT 10000920 _ZNSt8ios_base4InitD1E + 0
10010bf8 00000715 R_PPC_JMP_SLOT 10000930 _ZStlsISt11char_traits + 0 10010bf8 00000715 R_PPC_JMP_SLOT 10000930 _ZStlsISt11char_traits + 0
10010bfc 00000a15 R_PPC_JMP_SLOT 10000940 _ZNSolsEPFRSoS_E + 0 10010bfc 00000a15 R_PPC_JMP_SLOT 10000940 _ZNSolsEPFRSoS_E + 0
10010c00 00000b15 R_PPC_JMP_SLOT 10000950 _ZSt4endlIcSt11char_tr + 0 10010c00 00000b15 R_PPC_JMP_SLOT 10000950 _ZSt4endlIcSt11char_tr + 0
10010c04 00000c15 R_PPC_JMP_SLOT 10000960 __gxx_personality_v0 + 0 10010c04 00000c15 R_PPC_JMP_SLOT 10000960 __gxx_personality_v0 + 0
There are no unwind sections in this file. There are no unwind sections in this file.
Symbol table '.dynsym' contains 13 entries: Symbol table '.dynsym' contains 13 entries:
Num: Value Size Type Bind Vis Ndx Name Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND 0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 100008e0 144 FUNC GLOBAL DEFAULT UND __cxa_atexit@GLIBC_2.1.3 (2) 1: 100008e0 144 FUNC GLOBAL DEFAULT UND __cxa_atexit@GLIBC_2.1.3 (2)
2: 00000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ 2: 00000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__
3: 00000000 0 NOTYPE WEAK DEFAULT UND _Jv_RegisterClasses 3: 00000000 0 NOTYPE WEAK DEFAULT UND _Jv_RegisterClasses
4: 10000900 1452 FUNC GLOBAL DEFAULT UND _ZNSt8ios_base4InitC1Ev@GLIBCXX_3.4 (3) 4: 10000900 1452 FUNC GLOBAL DEFAULT UND _ZNSt8ios_base4InitC1Ev@GLIBCXX_3.4 (3)
5: 10000910 232 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.0 (4) 5: 10000910 232 FUNC GLOBAL DEFAULT UND __libc_start_main@GLIBC_2.0 (4)
6: 10000920 204 FUNC GLOBAL DEFAULT UND _ZNSt8ios_base4InitD1Ev@GLIBCXX_3.4 (3) 6: 10000920 204 FUNC GLOBAL DEFAULT UND _ZNSt8ios_base4InitD1Ev@GLIBCXX_3.4 (3)
7: 10000930 164 FUNC GLOBAL DEFAULT UND _ZStlsISt11char_traitsIcE@GLIBCXX_3.4 (3) 7: 10000930 164 FUNC GLOBAL DEFAULT UND _ZStlsISt11char_traitsIcE@GLIBCXX_3.4 (3)
8: 10000a18 4 OBJECT GLOBAL DEFAULT 13 _IO_stdin_used 8: 10000a18 4 OBJECT GLOBAL DEFAULT 13 _IO_stdin_used
9: 10010c0c 140 OBJECT GLOBAL DEFAULT 24 _ZSt4cout@GLIBCXX_3.4 (3) 9: 10010c0c 140 OBJECT GLOBAL DEFAULT 24 _ZSt4cout@GLIBCXX_3.4 (3)
10: 10000940 36 FUNC GLOBAL DEFAULT UND _ZNSolsEPFRSoS_E@GLIBCXX_3.4 (3) 10: 10000940 36 FUNC GLOBAL DEFAULT UND _ZNSolsEPFRSoS_E@GLIBCXX_3.4 (3)
11: 10000950 336 FUNC GLOBAL DEFAULT UND _ZSt4endlIcSt11char_trait@GLIBCXX_3.4 (3) 11: 10000950 336 FUNC GLOBAL DEFAULT UND _ZSt4endlIcSt11char_trait@GLIBCXX_3.4 (3)
12: 10000960 1420 FUNC GLOBAL DEFAULT UND __gxx_personality_v0@CXXABI_1.3 (5) 12: 10000960 1420 FUNC GLOBAL DEFAULT UND __gxx_personality_v0@CXXABI_1.3 (5)
Symbol table '.symtab' contains 80 entries: Symbol table '.symtab' contains 80 entries:
Num: Value Size Type Bind Vis Ndx Name Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND 0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 10000134 0 SECTION LOCAL DEFAULT 1 1: 10000134 0 SECTION LOCAL DEFAULT 1
2: 10000144 0 SECTION LOCAL DEFAULT 2 2: 10000144 0 SECTION LOCAL DEFAULT 2
3: 10000164 0 SECTION LOCAL DEFAULT 3 3: 10000164 0 SECTION LOCAL DEFAULT 3
4: 100001ac 0 SECTION LOCAL DEFAULT 4 4: 100001ac 0 SECTION LOCAL DEFAULT 4
5: 1000027c 0 SECTION LOCAL DEFAULT 5 5: 1000027c 0 SECTION LOCAL DEFAULT 5
6: 10000400 0 SECTION LOCAL DEFAULT 6 6: 10000400 0 SECTION LOCAL DEFAULT 6
7: 1000041c 0 SECTION LOCAL DEFAULT 7 7: 1000041c 0 SECTION LOCAL DEFAULT 7
8: 1000047c 0 SECTION LOCAL DEFAULT 8 8: 1000047c 0 SECTION LOCAL DEFAULT 8
9: 10000494 0 SECTION LOCAL DEFAULT 9 9: 10000494 0 SECTION LOCAL DEFAULT 9
10: 10000500 0 SECTION LOCAL DEFAULT 10 10: 10000500 0 SECTION LOCAL DEFAULT 10
11: 10000550 0 SECTION LOCAL DEFAULT 11 11: 10000550 0 SECTION LOCAL DEFAULT 11
12: 100009d0 0 SECTION LOCAL DEFAULT 12 12: 100009d0 0 SECTION LOCAL DEFAULT 12
13: 10000a08 0 SECTION LOCAL DEFAULT 13 13: 10000a08 0 SECTION LOCAL DEFAULT 13
14: 10000a24 0 SECTION LOCAL DEFAULT 14 14: 10000a24 0 SECTION LOCAL DEFAULT 14
15: 10000a48 0 SECTION LOCAL DEFAULT 15 15: 10000a48 0 SECTION LOCAL DEFAULT 15
16: 10010acc 0 SECTION LOCAL DEFAULT 16 16: 10010acc 0 SECTION LOCAL DEFAULT 16
17: 10010ad8 0 SECTION LOCAL DEFAULT 17 17: 10010ad8 0 SECTION LOCAL DEFAULT 17
18: 10010ae0 0 SECTION LOCAL DEFAULT 18 18: 10010ae0 0 SECTION LOCAL DEFAULT 18
19: 10010ae4 0 SECTION LOCAL DEFAULT 19 19: 10010ae4 0 SECTION LOCAL DEFAULT 19
20: 10010aec 0 SECTION LOCAL DEFAULT 20 20: 10010aec 0 SECTION LOCAL DEFAULT 20
21: 10010bd4 0 SECTION LOCAL DEFAULT 21 21: 10010bd4 0 SECTION LOCAL DEFAULT 21
22: 10010be4 0 SECTION LOCAL DEFAULT 22 22: 10010be4 0 SECTION LOCAL DEFAULT 22
23: 10010c08 0 SECTION LOCAL DEFAULT 23 23: 10010c08 0 SECTION LOCAL DEFAULT 23
24: 10010c0c 0 SECTION LOCAL DEFAULT 24 24: 10010c0c 0 SECTION LOCAL DEFAULT 24
25: 00000000 0 SECTION LOCAL DEFAULT 25 25: 00000000 0 SECTION LOCAL DEFAULT 25
26: 00000000 0 SECTION LOCAL DEFAULT 26 26: 00000000 0 SECTION LOCAL DEFAULT 26
27: 00000000 0 SECTION LOCAL DEFAULT 27 27: 00000000 0 SECTION LOCAL DEFAULT 27
28: 00000000 0 FILE LOCAL DEFAULT ABS init.c 28: 00000000 0 FILE LOCAL DEFAULT ABS init.c
29: 00000000 0 FILE LOCAL DEFAULT ABS crtstuff.c 29: 00000000 0 FILE LOCAL DEFAULT ABS crtstuff.c
30: 10010acc 0 OBJECT LOCAL DEFAULT 16 __CTOR_LIST__ 30: 10010acc 0 OBJECT LOCAL DEFAULT 16 __CTOR_LIST__
31: 10010ad8 0 OBJECT LOCAL DEFAULT 17 __DTOR_LIST__ 31: 10010ad8 0 OBJECT LOCAL DEFAULT 17 __DTOR_LIST__
32: 10010ae0 0 OBJECT LOCAL DEFAULT 18 __JCR_LIST__ 32: 10010ae0 0 OBJECT LOCAL DEFAULT 18 __JCR_LIST__
33: 10000574 0 FUNC LOCAL DEFAULT 11 __do_global_dtors_aux 33: 10000574 0 FUNC LOCAL DEFAULT 11 __do_global_dtors_aux
34: 10010c98 1 OBJECT LOCAL DEFAULT 24 completed.6348 34: 10010c98 1 OBJECT LOCAL DEFAULT 24 completed.6348
35: 10010c9c 4 OBJECT LOCAL DEFAULT 24 dtor_idx.6350 35: 10010c9c 4 OBJECT LOCAL DEFAULT 24 dtor_idx.6350
36: 1000061c 0 FUNC LOCAL DEFAULT 11 call___do_global_dtors_au 36: 1000061c 0 FUNC LOCAL DEFAULT 11 call___do_global_dtors_au
37: 10000638 0 FUNC LOCAL DEFAULT 11 frame_dummy 37: 10000638 0 FUNC LOCAL DEFAULT 11 frame_dummy
38: 10000680 0 FUNC LOCAL DEFAULT 11 call_frame_dummy 38: 10000680 0 FUNC LOCAL DEFAULT 11 call_frame_dummy
39: 00000000 0 FILE LOCAL DEFAULT ABS crtstuff.c 39: 00000000 0 FILE LOCAL DEFAULT ABS crtstuff.c
40: 10010ad4 0 OBJECT LOCAL DEFAULT 16 __CTOR_END__ 40: 10010ad4 0 OBJECT LOCAL DEFAULT 16 __CTOR_END__
41: 10000ac8 0 OBJECT LOCAL DEFAULT 15 __FRAME_END__ 41: 10000ac8 0 OBJECT LOCAL DEFAULT 15 __FRAME_END__
42: 10010ae0 0 OBJECT LOCAL DEFAULT 18 __JCR_END__ 42: 10010ae0 0 OBJECT LOCAL DEFAULT 18 __JCR_END__
43: 1000086c 0 FUNC LOCAL DEFAULT 11 __do_global_ctors_aux 43: 1000086c 0 FUNC LOCAL DEFAULT 11 __do_global_ctors_aux
44: 100008bc 0 FUNC LOCAL DEFAULT 11 call___do_global_ctors_au 44: 100008bc 0 FUNC LOCAL DEFAULT 11 call___do_global_ctors_au
45: 00000000 0 FILE LOCAL DEFAULT ABS test_ppc.cpp 45: 00000000 0 FILE LOCAL DEFAULT ABS test_ppc.cpp
46: 100006f8 128 FUNC LOCAL DEFAULT 11 _Z41__static_initializati 46: 100006f8 128 FUNC LOCAL DEFAULT 11 _Z41__static_initializati
47: 10010ca0 1 OBJECT LOCAL DEFAULT 24 _ZStL8__ioinit 47: 10010ca0 1 OBJECT LOCAL DEFAULT 24 _ZStL8__ioinit
48: 10000778 60 FUNC LOCAL DEFAULT 11 _GLOBAL__I_main 48: 10000778 60 FUNC LOCAL DEFAULT 11 _GLOBAL__I_main
49: 00000000 0 FILE LOCAL DEFAULT ABS elf-init.c 49: 00000000 0 FILE LOCAL DEFAULT ABS elf-init.c
50: 10010bd8 0 OBJECT LOCAL HIDDEN 21 _GLOBAL_OFFSET_TABLE_ 50: 10010bd8 0 OBJECT LOCAL HIDDEN 21 _GLOBAL_OFFSET_TABLE_
51: 10010acc 0 NOTYPE LOCAL HIDDEN 16 __init_array_end 51: 10010acc 0 NOTYPE LOCAL HIDDEN 16 __init_array_end
52: 10010acc 0 NOTYPE LOCAL HIDDEN 16 __init_array_start 52: 10010acc 0 NOTYPE LOCAL HIDDEN 16 __init_array_start
53: 10010aec 0 OBJECT LOCAL HIDDEN 20 _DYNAMIC 53: 10010aec 0 OBJECT LOCAL HIDDEN 20 _DYNAMIC
54: 10010c08 0 NOTYPE WEAK DEFAULT 23 data_start 54: 10010c08 0 NOTYPE WEAK DEFAULT 23 data_start
55: 100008e0 144 FUNC GLOBAL DEFAULT UND __cxa_atexit@@GLIBC_2.1.3 55: 100008e0 144 FUNC GLOBAL DEFAULT UND __cxa_atexit@@GLIBC_2.1.3
56: 100007b4 4 FUNC GLOBAL DEFAULT 11 __libc_csu_fini 56: 100007b4 4 FUNC GLOBAL DEFAULT 11 __libc_csu_fini
57: 10000550 36 FUNC GLOBAL DEFAULT 11 _start 57: 10000550 36 FUNC GLOBAL DEFAULT 11 _start
58: 00000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__ 58: 00000000 0 NOTYPE WEAK DEFAULT UND __gmon_start__
59: 00000000 0 NOTYPE WEAK DEFAULT UND _Jv_RegisterClasses 59: 00000000 0 NOTYPE WEAK DEFAULT UND _Jv_RegisterClasses
60: 100009d0 0 FUNC GLOBAL DEFAULT 12 _fini 60: 100009d0 0 FUNC GLOBAL DEFAULT 12 _fini
61: 10000900 1452 FUNC GLOBAL DEFAULT UND _ZNSt8ios_base4InitC1Ev@@ 61: 10000900 1452 FUNC GLOBAL DEFAULT UND _ZNSt8ios_base4InitC1Ev@@
62: 10018c0c 0 NOTYPE GLOBAL DEFAULT 24 _SDA_BASE_ 62: 10018c0c 0 NOTYPE GLOBAL DEFAULT 24 _SDA_BASE_
63: 10000910 232 FUNC GLOBAL DEFAULT UND __libc_start_main@@GLIBC_ 63: 10000910 232 FUNC GLOBAL DEFAULT UND __libc_start_main@@GLIBC_
64: 10000920 204 FUNC GLOBAL DEFAULT UND _ZNSt8ios_base4InitD1Ev@@ 64: 10000920 204 FUNC GLOBAL DEFAULT UND _ZNSt8ios_base4InitD1Ev@@
65: 10000930 164 FUNC GLOBAL DEFAULT UND _ZStlsISt11char_traitsIcE 65: 10000930 164 FUNC GLOBAL DEFAULT UND _ZStlsISt11char_traitsIcE
66: 10000a18 4 OBJECT GLOBAL DEFAULT 13 _IO_stdin_used 66: 10000a18 4 OBJECT GLOBAL DEFAULT 13 _IO_stdin_used
67: 10010c08 0 NOTYPE GLOBAL DEFAULT 23 __data_start 67: 10010c08 0 NOTYPE GLOBAL DEFAULT 23 __data_start
68: 10010c0c 140 OBJECT GLOBAL DEFAULT 24 _ZSt4cout@@GLIBCXX_3.4 68: 10010c0c 140 OBJECT GLOBAL DEFAULT 24 _ZSt4cout@@GLIBCXX_3.4
69: 10010c08 0 OBJECT GLOBAL HIDDEN 23 __dso_handle 69: 10010c08 0 OBJECT GLOBAL HIDDEN 23 __dso_handle
70: 10010adc 0 OBJECT GLOBAL HIDDEN 17 __DTOR_END__ 70: 10010adc 0 OBJECT GLOBAL HIDDEN 17 __DTOR_END__
71: 100007b8 180 FUNC GLOBAL DEFAULT 11 __libc_csu_init 71: 100007b8 180 FUNC GLOBAL DEFAULT 11 __libc_csu_init
72: 10010c0c 0 NOTYPE GLOBAL DEFAULT ABS __bss_start 72: 10010c0c 0 NOTYPE GLOBAL DEFAULT ABS __bss_start
73: 10010ca4 0 NOTYPE GLOBAL DEFAULT ABS _end 73: 10010ca4 0 NOTYPE GLOBAL DEFAULT ABS _end
74: 10000940 36 FUNC GLOBAL DEFAULT UND _ZNSolsEPFRSoS_E@@GLIBCXX 74: 10000940 36 FUNC GLOBAL DEFAULT UND _ZNSolsEPFRSoS_E@@GLIBCXX
75: 10000950 336 FUNC GLOBAL DEFAULT UND _ZSt4endlIcSt11char_trait 75: 10000950 336 FUNC GLOBAL DEFAULT UND _ZSt4endlIcSt11char_trait
76: 10010c0c 0 NOTYPE GLOBAL DEFAULT ABS _edata 76: 10010c0c 0 NOTYPE GLOBAL DEFAULT ABS _edata
77: 10000960 1420 FUNC GLOBAL DEFAULT UND __gxx_personality_v0@@CXX 77: 10000960 1420 FUNC GLOBAL DEFAULT UND __gxx_personality_v0@@CXX
78: 1000069c 92 FUNC GLOBAL DEFAULT 11 main 78: 1000069c 92 FUNC GLOBAL DEFAULT 11 main
79: 10000500 0 FUNC GLOBAL DEFAULT 10 _init 79: 10000500 0 FUNC GLOBAL DEFAULT 10 _init
Histogram for bucket list length (total of 3 buckets): Histogram for bucket list length (total of 3 buckets):
Length Number % of total Coverage Length Number % of total Coverage
0 0 ( 0.0%) 0 0 ( 0.0%)
1 0 ( 0.0%) 0.0% 1 0 ( 0.0%) 0.0%
2 1 ( 33.3%) 16.7% 2 1 ( 33.3%) 16.7%
3 0 ( 0.0%) 16.7% 3 0 ( 0.0%) 16.7%
4 1 ( 33.3%) 50.0% 4 1 ( 33.3%) 50.0%
5 0 ( 0.0%) 50.0% 5 0 ( 0.0%) 50.0%
6 1 ( 33.3%) 100.0% 6 1 ( 33.3%) 100.0%
Version symbols section '.gnu.version' contains 13 entries: Version symbols section '.gnu.version' contains 13 entries:
Addr: 0000000010000400 Offset: 0x000400 Link: 4 (.dynsym) Addr: 0000000010000400 Offset: 0x000400 Link: 4 (.dynsym)
000: 0 (*local*) 2 (GLIBC_2.1.3) 0 (*local*) 0 (*local*) 000: 0 (*local*) 2 (GLIBC_2.1.3) 0 (*local*) 0 (*local*)
004: 3 (GLIBCXX_3.4) 4 (GLIBC_2.0) 3 (GLIBCXX_3.4) 3 (GLIBCXX_3.4) 004: 3 (GLIBCXX_3.4) 4 (GLIBC_2.0) 3 (GLIBCXX_3.4) 3 (GLIBCXX_3.4)
008: 1 (*global*) 3 (GLIBCXX_3.4) 3 (GLIBCXX_3.4) 3 (GLIBCXX_3.4) 008: 1 (*global*) 3 (GLIBCXX_3.4) 3 (GLIBCXX_3.4) 3 (GLIBCXX_3.4)
00c: 5 (CXXABI_1.3) 00c: 5 (CXXABI_1.3)
Version needs section '.gnu.version_r' contains 2 entries: Version needs section '.gnu.version_r' contains 2 entries:
Addr: 0x000000001000041c Offset: 0x00041c Link: 5 (.dynstr) Addr: 0x000000001000041c Offset: 0x00041c Link: 5 (.dynstr)
000000: Version: 1 File: libstdc++.so.6 Cnt: 2 000000: Version: 1 File: libstdc++.so.6 Cnt: 2
0x0010: Name: CXXABI_1.3 Flags: none Version: 5 0x0010: Name: CXXABI_1.3 Flags: none Version: 5
0x0020: Name: GLIBCXX_3.4 Flags: none Version: 3 0x0020: Name: GLIBCXX_3.4 Flags: none Version: 3
0x0030: Version: 1 File: libc.so.6 Cnt: 2 0x0030: Version: 1 File: libc.so.6 Cnt: 2
0x0040: Name: GLIBC_2.0 Flags: none Version: 4 0x0040: Name: GLIBC_2.0 Flags: none Version: 4
0x0050: Name: GLIBC_2.1.3 Flags: none Version: 2 0x0050: Name: GLIBC_2.1.3 Flags: none Version: 2
Notes at offset 0x00000144 with length 0x00000020: Notes at offset 0x00000144 with length 0x00000020:
Owner Data size Description Owner Data size Description
GNU 0x00000010 NT_GNU_ABI_TAG (ABI version tag) GNU 0x00000010 NT_GNU_ABI_TAG (ABI version tag)
Attribute Section: gnu Attribute Section: gnu
File Attributes File Attributes
Tag_GNU_Power_ABI_FP: Hard float Tag_GNU_Power_ABI_FP: Hard float
Tag_GNU_Power_ABI_Vector: Generic Tag_GNU_Power_ABI_Vector: Generic
Tag_GNU_Power_ABI_Struct_Return: Memory Tag_GNU_Power_ABI_Struct_Return: Memory

View File

@ -1,114 +1,114 @@
ELF Header: ELF Header:
Magic: 7f 45 4c 46 01 02 01 00 00 00 00 00 00 00 00 00 Magic: 7f 45 4c 46 01 02 01 00 00 00 00 00 00 00 00 00
Class: ELF32 Class: ELF32
Data: 2's complement, big endian Data: 2's complement, big endian
Version: 1 (current) Version: 1 (current)
OS/ABI: UNIX - System V OS/ABI: UNIX - System V
ABI Version: 0 ABI Version: 0
Type: REL (Relocatable file) Type: REL (Relocatable file)
Machine: PowerPC Machine: PowerPC
Version: 0x1 Version: 0x1
Entry point address: 0x0 Entry point address: 0x0
Start of program headers: 0 (bytes into file) Start of program headers: 0 (bytes into file)
Start of section headers: 616 (bytes into file) Start of section headers: 616 (bytes into file)
Flags: 0x0 Flags: 0x0
Size of this header: 52 (bytes) Size of this header: 52 (bytes)
Size of program headers: 0 (bytes) Size of program headers: 0 (bytes)
Number of program headers: 0 Number of program headers: 0
Size of section headers: 40 (bytes) Size of section headers: 40 (bytes)
Number of section headers: 16 Number of section headers: 16
Section header string table index: 13 Section header string table index: 13
Section Headers: Section Headers:
[Nr] Name Type Addr Off Size ES Flg Lk Inf Al [Nr] Name Type Addr Off Size ES Flg Lk Inf Al
[ 0] NULL 00000000 000000 000000 00 0 0 0 [ 0] NULL 00000000 000000 000000 00 0 0 0
[ 1] .text PROGBITS 00000000 000034 000118 00 AX 0 0 4 [ 1] .text PROGBITS 00000000 000034 000118 00 AX 0 0 4
[ 2] .rela.text RELA 00000000 0007b8 0000d8 0c 14 1 4 [ 2] .rela.text RELA 00000000 0007b8 0000d8 0c 14 1 4
[ 3] .data PROGBITS 00000000 00014c 000000 00 WA 0 0 1 [ 3] .data PROGBITS 00000000 00014c 000000 00 WA 0 0 1
[ 4] .bss NOBITS 00000000 00014c 000001 00 WA 0 0 1 [ 4] .bss NOBITS 00000000 00014c 000001 00 WA 0 0 1
[ 5] .rodata PROGBITS 00000000 00014c 000006 00 A 0 0 4 [ 5] .rodata PROGBITS 00000000 00014c 000006 00 A 0 0 4
[ 6] .ctors PROGBITS 00000000 000154 000004 00 WA 0 0 4 [ 6] .ctors PROGBITS 00000000 000154 000004 00 WA 0 0 4
[ 7] .rela.ctors RELA 00000000 000890 00000c 0c 14 6 4 [ 7] .rela.ctors RELA 00000000 000890 00000c 0c 14 6 4
[ 8] .eh_frame PROGBITS 00000000 000158 000058 00 A 0 0 4 [ 8] .eh_frame PROGBITS 00000000 000158 000058 00 A 0 0 4
[ 9] .rela.eh_frame RELA 00000000 00089c 000024 0c 14 8 4 [ 9] .rela.eh_frame RELA 00000000 00089c 000024 0c 14 8 4
[10] .comment PROGBITS 00000000 0001b0 000027 00 0 0 1 [10] .comment PROGBITS 00000000 0001b0 000027 00 0 0 1
[11] .note.GNU-stack PROGBITS 00000000 0001d7 000000 00 0 0 1 [11] .note.GNU-stack PROGBITS 00000000 0001d7 000000 00 0 0 1
[12] .gnu.attributes LOOS+ffffff5 00000000 0001d7 000014 00 0 0 1 [12] .gnu.attributes LOOS+ffffff5 00000000 0001d7 000014 00 0 0 1
[13] .shstrtab STRTAB 00000000 0001eb 00007d 00 0 0 1 [13] .shstrtab STRTAB 00000000 0001eb 00007d 00 0 0 1
[14] .symtab SYMTAB 00000000 0004e8 000180 10 15 14 4 [14] .symtab SYMTAB 00000000 0004e8 000180 10 15 14 4
[15] .strtab STRTAB 00000000 000668 00014f 00 0 0 1 [15] .strtab STRTAB 00000000 000668 00014f 00 0 0 1
Key to Flags: Key to Flags:
W (write), A (alloc), X (execute), M (merge), S (strings) W (write), A (alloc), X (execute), M (merge), S (strings)
I (info), L (link order), G (group), x (unknown) I (info), L (link order), G (group), x (unknown)
O (extra OS processing required) o (OS specific), p (processor specific) O (extra OS processing required) o (OS specific), p (processor specific)
There are no section groups in this file. There are no section groups in this file.
There are no program headers in this file. There are no program headers in this file.
Relocation section '.rela.text' at offset 0x7b8 contains 18 entries: Relocation section '.rela.text' at offset 0x7b8 contains 18 entries:
Offset Info Type Sym.Value Sym. Name + Addend Offset Info Type Sym.Value Sym. Name + Addend
00000016 00000f06 R_PPC_ADDR16_HA 00000000 _ZSt4cout + 0 00000016 00000f06 R_PPC_ADDR16_HA 00000000 _ZSt4cout + 0
0000001a 00000f04 R_PPC_ADDR16_LO 00000000 _ZSt4cout + 0 0000001a 00000f04 R_PPC_ADDR16_LO 00000000 _ZSt4cout + 0
0000001e 00000506 R_PPC_ADDR16_HA 00000000 .rodata + 0 0000001e 00000506 R_PPC_ADDR16_HA 00000000 .rodata + 0
00000022 00000504 R_PPC_ADDR16_LO 00000000 .rodata + 0 00000022 00000504 R_PPC_ADDR16_LO 00000000 .rodata + 0
00000024 0000100a R_PPC_REL24 00000000 _ZStlsISt11char_traits + 0 00000024 0000100a R_PPC_REL24 00000000 _ZStlsISt11char_traits + 0
00000032 00001106 R_PPC_ADDR16_HA 00000000 _ZSt4endlIcSt11char_tr + 0 00000032 00001106 R_PPC_ADDR16_HA 00000000 _ZSt4endlIcSt11char_tr + 0
00000036 00001104 R_PPC_ADDR16_LO 00000000 _ZSt4endlIcSt11char_tr + 0 00000036 00001104 R_PPC_ADDR16_LO 00000000 _ZSt4endlIcSt11char_tr + 0
00000038 0000120a R_PPC_REL24 00000000 _ZNSolsEPFRSoS_E + 0 00000038 0000120a R_PPC_REL24 00000000 _ZNSolsEPFRSoS_E + 0
0000009a 00000406 R_PPC_ADDR16_HA 00000000 .bss + 0 0000009a 00000406 R_PPC_ADDR16_HA 00000000 .bss + 0
0000009e 00000404 R_PPC_ADDR16_LO 00000000 .bss + 0 0000009e 00000404 R_PPC_ADDR16_LO 00000000 .bss + 0
000000a0 0000130a R_PPC_REL24 00000000 _ZNSt8ios_base4InitC1E + 0 000000a0 0000130a R_PPC_REL24 00000000 _ZNSt8ios_base4InitC1E + 0
000000a6 00001406 R_PPC_ADDR16_HA 00000000 _ZNSt8ios_base4InitD1E + 0 000000a6 00001406 R_PPC_ADDR16_HA 00000000 _ZNSt8ios_base4InitD1E + 0
000000aa 00001404 R_PPC_ADDR16_LO 00000000 _ZNSt8ios_base4InitD1E + 0 000000aa 00001404 R_PPC_ADDR16_LO 00000000 _ZNSt8ios_base4InitD1E + 0
000000b2 00000406 R_PPC_ADDR16_HA 00000000 .bss + 0 000000b2 00000406 R_PPC_ADDR16_HA 00000000 .bss + 0
000000b6 00000404 R_PPC_ADDR16_LO 00000000 .bss + 0 000000b6 00000404 R_PPC_ADDR16_LO 00000000 .bss + 0
000000ba 00001506 R_PPC_ADDR16_HA 00000000 __dso_handle + 0 000000ba 00001506 R_PPC_ADDR16_HA 00000000 __dso_handle + 0
000000be 00001504 R_PPC_ADDR16_LO 00000000 __dso_handle + 0 000000be 00001504 R_PPC_ADDR16_LO 00000000 __dso_handle + 0
000000c0 0000160a R_PPC_REL24 00000000 __cxa_atexit + 0 000000c0 0000160a R_PPC_REL24 00000000 __cxa_atexit + 0
Relocation section '.rela.ctors' at offset 0x890 contains 1 entries: Relocation section '.rela.ctors' at offset 0x890 contains 1 entries:
Offset Info Type Sym.Value Sym. Name + Addend Offset Info Type Sym.Value Sym. Name + Addend
00000000 00000201 R_PPC_ADDR32 00000000 .text + dc 00000000 00000201 R_PPC_ADDR32 00000000 .text + dc
Relocation section '.rela.eh_frame' at offset 0x89c contains 3 entries: Relocation section '.rela.eh_frame' at offset 0x89c contains 3 entries:
Offset Info Type Sym.Value Sym. Name + Addend Offset Info Type Sym.Value Sym. Name + Addend
00000011 00001701 R_PPC_ADDR32 00000000 __gxx_personality_v0 + 0 00000011 00001701 R_PPC_ADDR32 00000000 __gxx_personality_v0 + 0
00000020 00000201 R_PPC_ADDR32 00000000 .text + 0 00000020 00000201 R_PPC_ADDR32 00000000 .text + 0
00000040 00000201 R_PPC_ADDR32 00000000 .text + 5c 00000040 00000201 R_PPC_ADDR32 00000000 .text + 5c
There are no unwind sections in this file. There are no unwind sections in this file.
Symbol table '.symtab' contains 24 entries: Symbol table '.symtab' contains 24 entries:
Num: Value Size Type Bind Vis Ndx Name Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND 0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 00000000 0 FILE LOCAL DEFAULT ABS test_ppc.cpp 1: 00000000 0 FILE LOCAL DEFAULT ABS test_ppc.cpp
2: 00000000 0 SECTION LOCAL DEFAULT 1 2: 00000000 0 SECTION LOCAL DEFAULT 1
3: 00000000 0 SECTION LOCAL DEFAULT 3 3: 00000000 0 SECTION LOCAL DEFAULT 3
4: 00000000 0 SECTION LOCAL DEFAULT 4 4: 00000000 0 SECTION LOCAL DEFAULT 4
5: 00000000 0 SECTION LOCAL DEFAULT 5 5: 00000000 0 SECTION LOCAL DEFAULT 5
6: 0000005c 128 FUNC LOCAL DEFAULT 1 _Z41__static_initializati 6: 0000005c 128 FUNC LOCAL DEFAULT 1 _Z41__static_initializati
7: 00000000 1 OBJECT LOCAL DEFAULT 4 _ZStL8__ioinit 7: 00000000 1 OBJECT LOCAL DEFAULT 4 _ZStL8__ioinit
8: 000000dc 60 FUNC LOCAL DEFAULT 1 _GLOBAL__I_main 8: 000000dc 60 FUNC LOCAL DEFAULT 1 _GLOBAL__I_main
9: 00000000 0 SECTION LOCAL DEFAULT 6 9: 00000000 0 SECTION LOCAL DEFAULT 6
10: 00000000 0 SECTION LOCAL DEFAULT 8 10: 00000000 0 SECTION LOCAL DEFAULT 8
11: 00000000 0 SECTION LOCAL DEFAULT 11 11: 00000000 0 SECTION LOCAL DEFAULT 11
12: 00000000 0 SECTION LOCAL DEFAULT 10 12: 00000000 0 SECTION LOCAL DEFAULT 10
13: 00000000 0 SECTION LOCAL DEFAULT 12 13: 00000000 0 SECTION LOCAL DEFAULT 12
14: 00000000 92 FUNC GLOBAL DEFAULT 1 main 14: 00000000 92 FUNC GLOBAL DEFAULT 1 main
15: 00000000 0 NOTYPE GLOBAL DEFAULT UND _ZSt4cout 15: 00000000 0 NOTYPE GLOBAL DEFAULT UND _ZSt4cout
16: 00000000 0 NOTYPE GLOBAL DEFAULT UND _ZStlsISt11char_traitsIcE 16: 00000000 0 NOTYPE GLOBAL DEFAULT UND _ZStlsISt11char_traitsIcE
17: 00000000 0 NOTYPE GLOBAL DEFAULT UND _ZSt4endlIcSt11char_trait 17: 00000000 0 NOTYPE GLOBAL DEFAULT UND _ZSt4endlIcSt11char_trait
18: 00000000 0 NOTYPE GLOBAL DEFAULT UND _ZNSolsEPFRSoS_E 18: 00000000 0 NOTYPE GLOBAL DEFAULT UND _ZNSolsEPFRSoS_E
19: 00000000 0 NOTYPE GLOBAL DEFAULT UND _ZNSt8ios_base4InitC1Ev 19: 00000000 0 NOTYPE GLOBAL DEFAULT UND _ZNSt8ios_base4InitC1Ev
20: 00000000 0 NOTYPE GLOBAL DEFAULT UND _ZNSt8ios_base4InitD1Ev 20: 00000000 0 NOTYPE GLOBAL DEFAULT UND _ZNSt8ios_base4InitD1Ev
21: 00000000 0 NOTYPE GLOBAL DEFAULT UND __dso_handle 21: 00000000 0 NOTYPE GLOBAL DEFAULT UND __dso_handle
22: 00000000 0 NOTYPE GLOBAL DEFAULT UND __cxa_atexit 22: 00000000 0 NOTYPE GLOBAL DEFAULT UND __cxa_atexit
23: 00000000 0 NOTYPE GLOBAL DEFAULT UND __gxx_personality_v0 23: 00000000 0 NOTYPE GLOBAL DEFAULT UND __gxx_personality_v0
No version information found in this file. No version information found in this file.
Attribute Section: gnu Attribute Section: gnu
File Attributes File Attributes
Tag_GNU_Power_ABI_FP: Hard float Tag_GNU_Power_ABI_FP: Hard float
Tag_GNU_Power_ABI_Vector: Generic Tag_GNU_Power_ABI_Vector: Generic
Tag_GNU_Power_ABI_Struct_Return: Memory Tag_GNU_Power_ABI_Struct_Return: Memory

View File

@ -1,71 +1,71 @@
write_exe_i386_32_work: file format elf32-i386 write_exe_i386_32_work: file format elf32-i386
write_exe_i386_32_work write_exe_i386_32_work
architecture: i386, flags 0x00000102: architecture: i386, flags 0x00000102:
EXEC_P, D_PAGED EXEC_P, D_PAGED
start address 0x08048080 start address 0x08048080
Program Header: Program Header:
LOAD off 0x00000000 vaddr 0x08048000 paddr 0x08048000 align 2**12 LOAD off 0x00000000 vaddr 0x08048000 paddr 0x08048000 align 2**12
filesz 0x0000009d memsz 0x0000009d flags r-x filesz 0x0000009d memsz 0x0000009d flags r-x
LOAD off 0x000000a0 vaddr 0x080490a0 paddr 0x080490a0 align 2**12 LOAD off 0x000000a0 vaddr 0x080490a0 paddr 0x080490a0 align 2**12
filesz 0x0000000e memsz 0x0000000e flags rw- filesz 0x0000000e memsz 0x0000000e flags rw-
Sections: Sections:
Idx Name Size VMA LMA File off Algn Idx Name Size VMA LMA File off Algn
0 .text 0000001d 08048080 08048080 00000080 2**4 0 .text 0000001d 08048080 08048080 00000080 2**4
CONTENTS, ALLOC, LOAD, READONLY, CODE CONTENTS, ALLOC, LOAD, READONLY, CODE
1 .data 0000000e 080490a0 080490a0 000000a0 2**2 1 .data 0000000e 080490a0 080490a0 000000a0 2**2
CONTENTS, ALLOC, LOAD, DATA CONTENTS, ALLOC, LOAD, DATA
2 .note 00000020 00000000 00000000 000000ae 2**0 2 .note 00000020 00000000 00000000 000000ae 2**0
CONTENTS, READONLY CONTENTS, READONLY
SYMBOL TABLE: SYMBOL TABLE:
no symbols no symbols
Disassembly of section .text: Disassembly of section .text:
08048080 <.text>: 08048080 <.text>:
8048080: b8 04 00 00 00 mov $0x4,%eax 8048080: b8 04 00 00 00 mov $0x4,%eax
8048085: bb 01 00 00 00 mov $0x1,%ebx 8048085: bb 01 00 00 00 mov $0x1,%ebx
804808a: b9 a0 90 04 08 mov $0x80490a0,%ecx 804808a: b9 a0 90 04 08 mov $0x80490a0,%ecx
804808f: ba 0e 00 00 00 mov $0xe,%edx 804808f: ba 0e 00 00 00 mov $0xe,%edx
8048094: cd 80 int $0x80 8048094: cd 80 int $0x80
8048096: b8 01 00 00 00 mov $0x1,%eax 8048096: b8 01 00 00 00 mov $0x1,%eax
804809b: cd 80 int $0x80 804809b: cd 80 int $0x80
Disassembly of section .data: Disassembly of section .data:
080490a0 <.data>: 080490a0 <.data>:
80490a0: 48 dec %eax 80490a0: 48 dec %eax
80490a1: 65 gs 80490a1: 65 gs
80490a2: 6c insb (%dx),%es:(%edi) 80490a2: 6c insb (%dx),%es:(%edi)
80490a3: 6c insb (%dx),%es:(%edi) 80490a3: 6c insb (%dx),%es:(%edi)
80490a4: 6f outsl %ds:(%esi),(%dx) 80490a4: 6f outsl %ds:(%esi),(%dx)
80490a5: 2c 20 sub $0x20,%al 80490a5: 2c 20 sub $0x20,%al
80490a7: 57 push %edi 80490a7: 57 push %edi
80490a8: 6f outsl %ds:(%esi),(%dx) 80490a8: 6f outsl %ds:(%esi),(%dx)
80490a9: 72 6c jb 0x8049117 80490a9: 72 6c jb 0x8049117
80490ab: 64 21 0a and %ecx,%fs:(%edx) 80490ab: 64 21 0a and %ecx,%fs:(%edx)
Disassembly of section .note: Disassembly of section .note:
00000000 <.note>: 00000000 <.note>:
0: 11 00 adc %eax,(%eax) 0: 11 00 adc %eax,(%eax)
2: 00 00 add %al,(%eax) 2: 00 00 add %al,(%eax)
4: 00 00 add %al,(%eax) 4: 00 00 add %al,(%eax)
6: 00 00 add %al,(%eax) 6: 00 00 add %al,(%eax)
8: 77 00 ja 0xa 8: 77 00 ja 0xa
a: 00 00 add %al,(%eax) a: 00 00 add %al,(%eax)
c: 43 inc %ebx c: 43 inc %ebx
d: 72 65 jb 0x74 d: 72 65 jb 0x74
f: 61 popa f: 61 popa
10: 74 65 je 0x77 10: 74 65 je 0x77
12: 64 20 62 79 and %ah,%fs:0x79(%edx) 12: 64 20 62 79 and %ah,%fs:0x79(%edx)
16: 20 45 4c and %al,0x4c(%ebp) 16: 20 45 4c and %al,0x4c(%ebp)
19: 46 inc %esi 19: 46 inc %esi
1a: 49 dec %ecx 1a: 49 dec %ecx
1b: 4f dec %edi 1b: 4f dec %edi
1c: 00 00 add %al,(%eax) 1c: 00 00 add %al,(%eax)
... ...

View File

@ -1,56 +1,56 @@
#include <cstdio> #include <cstdio>
#include <ELFIO.h> #include <ELFIO.h>
int main( int, char* argv[] ) int main( int, char* argv[] )
{ {
// Create a ELFI reader // Create a ELFI reader
IELFI* pReader; IELFI* pReader;
ELFIO::GetInstance()->CreateELFI( &pReader ); ELFIO::GetInstance()->CreateELFI( &pReader );
// Initialize it // Initialize it
char* filename = argv[1]; char* filename = argv[1];
pReader->Load( filename ); pReader->Load( filename );
// Get .text relocation entry // Get .text relocation entry
// List all sections of the file // List all sections of the file
int i; int i;
int nSecNo = pReader->GetSectionsNum(); int nSecNo = pReader->GetSectionsNum();
for ( i = 0; i < nSecNo; ++i ) { // For all sections for ( i = 0; i < nSecNo; ++i ) { // For all sections
const IELFISection* pSec = pReader->GetSection( i ); const IELFISection* pSec = pReader->GetSection( i );
if ( SHT_REL != pSec->GetType() && SHT_RELA != pSec->GetType() ) { if ( SHT_REL != pSec->GetType() && SHT_RELA != pSec->GetType() ) {
pSec->Release(); pSec->Release();
continue; continue;
} }
const IELFIRelocationTable* pRel = 0; const IELFIRelocationTable* pRel = 0;
pReader->CreateSectionReader( IELFI::ELFI_RELOCATION, pSec, (void**)&pRel ); pReader->CreateSectionReader( IELFI::ELFI_RELOCATION, pSec, (void**)&pRel );
// Print all entries // Print all entries
Elf64_Addr offset; Elf64_Addr offset;
Elf64_Addr symbolValue; Elf64_Addr symbolValue;
std::string symbolName; std::string symbolName;
unsigned char type; unsigned char type;
Elf_Sxword addend; Elf_Sxword addend;
Elf_Sxword calcValue; Elf_Sxword calcValue;
Elf_Xword nNum = pRel->GetEntriesNum(); Elf_Xword nNum = pRel->GetEntriesNum();
if ( 0 < nNum ) { if ( 0 < nNum ) {
std::printf( "\nSection name: %s\n", pSec->GetName().c_str() ); std::printf( "\nSection name: %s\n", pSec->GetName().c_str() );
std::printf( " Num Type Offset Addend Calc SymValue SymName\n" ); std::printf( " Num Type Offset Addend Calc SymValue SymName\n" );
for ( Elf_Xword i = 0; i < nNum; ++i ) { for ( Elf_Xword i = 0; i < nNum; ++i ) {
pRel->GetEntry( i, offset, symbolValue, symbolName, pRel->GetEntry( i, offset, symbolValue, symbolName,
type, addend, calcValue ); type, addend, calcValue );
std::printf( "[%4llx] %02x %08llx %08llx %08llx %08llx %s\n", std::printf( "[%4llx] %02x %08llx %08llx %08llx %08llx %s\n",
i, type, offset, i, type, offset,
addend, calcValue, addend, calcValue,
symbolValue, symbolName.c_str() ); symbolValue, symbolName.c_str() );
} }
} }
pSec->Release(); pSec->Release();
pRel->Release(); pRel->Release();
} }
// Free resources // Free resources
pReader->Release(); pReader->Release();
return 0; return 0;
} }

View File

@ -1,7 +1,7 @@
INCLUDES = -I$(top_srcdir) INCLUDES = -I$(top_srcdir)
bin_PROGRAMS = elfdump bin_PROGRAMS = elfdump
elfdump_SOURCES = elfdump.cpp elfdump_SOURCES = elfdump.cpp
EXTRA_DIST = ELFDump.vcxproj EXTRA_DIST = ELFDump.vcxproj

View File

@ -1,56 +1,56 @@
/* /*
ELFDump.cpp - Dump ELF file using ELFIO library. ELFDump.cpp - Dump ELF file using ELFIO library.
Copyright (C) 2001-2011 by Serge Lamikhov-Center Copyright (C) 2001-2011 by Serge Lamikhov-Center
Permission is hereby granted, free of charge, to any person obtaining a copy Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions: furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software. all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE. THE SOFTWARE.
*/ */
#ifdef _MSC_VER #ifdef _MSC_VER
#define _SCL_SECURE_NO_WARNINGS #define _SCL_SECURE_NO_WARNINGS
#define ELFIO_NO_INTTYPES #define ELFIO_NO_INTTYPES
#endif #endif
#include <iostream> #include <iostream>
#include <elfio/elfio_dump.hpp> #include <elfio/elfio_dump.hpp>
using namespace ELFIO; using namespace ELFIO;
int main( int argc, char** argv ) int main( int argc, char** argv )
{ {
if ( argc != 2 ) { if ( argc != 2 ) {
printf( "Usage: ELFDump <file_name>\n" ); printf( "Usage: ELFDump <file_name>\n" );
return 1; return 1;
} }
elfio reader; elfio reader;
if ( !reader.load( argv[1] ) ) { if ( !reader.load( argv[1] ) ) {
printf( "File %s is not found or it is not an ELF file\n", argv[1] ); printf( "File %s is not found or it is not an ELF file\n", argv[1] );
return 1; return 1;
} }
dump::header ( std::cout, reader ); dump::header ( std::cout, reader );
dump::section_headers( std::cout, reader ); dump::section_headers( std::cout, reader );
dump::segment_headers( std::cout, reader ); dump::segment_headers( std::cout, reader );
dump::symbol_tables ( std::cout, reader ); dump::symbol_tables ( std::cout, reader );
dump::notes ( std::cout, reader ); dump::notes ( std::cout, reader );
return 0; return 0;
} }

View File

@ -1,5 +1,5 @@
INCLUDES = -I$(top_srcdir) INCLUDES = -I$(top_srcdir)
bin_PROGRAMS = tutorial bin_PROGRAMS = tutorial
tutorial_SOURCES = tutorial.cpp tutorial_SOURCES = tutorial.cpp

View File

@ -1,90 +1,90 @@
#include <iostream> #include <iostream>
#include <elfio/elfio.hpp> #include <elfio/elfio.hpp>
using namespace ELFIO; using namespace ELFIO;
int main( int argc, char** argv ) int main( int argc, char** argv )
{ {
if ( argc != 2 ) { if ( argc != 2 ) {
std::cout << "Usage: tutorial <elf_file>" << std::endl; std::cout << "Usage: tutorial <elf_file>" << std::endl;
return 1; return 1;
} }
// Create an elfio reader // Create an elfio reader
elfio reader; elfio reader;
// Load ELF data // Load ELF data
if ( !reader.load( argv[1] ) ) { if ( !reader.load( argv[1] ) ) {
std::cout << "Can't find or process ELF file " << argv[1] << std::endl; std::cout << "Can't find or process ELF file " << argv[1] << std::endl;
return 2; return 2;
} }
// Print ELF file properties // Print ELF file properties
std::cout << "ELF file class : "; std::cout << "ELF file class : ";
if ( reader.get_class() == ELFCLASS32 ) if ( reader.get_class() == ELFCLASS32 )
std::cout << "ELF32" << std::endl; std::cout << "ELF32" << std::endl;
else else
std::cout << "ELF64" << std::endl; std::cout << "ELF64" << std::endl;
std::cout << "ELF file encoding : "; std::cout << "ELF file encoding : ";
if ( reader.get_encoding() == ELFDATA2LSB ) if ( reader.get_encoding() == ELFDATA2LSB )
std::cout << "Little endian" << std::endl; std::cout << "Little endian" << std::endl;
else else
std::cout << "Big endian" << std::endl; std::cout << "Big endian" << std::endl;
// Print ELF file sections info // Print ELF file sections info
Elf_Half sec_num = reader.sections.size(); Elf_Half sec_num = reader.sections.size();
std::cout << "Number of sections: " << sec_num << std::endl; std::cout << "Number of sections: " << sec_num << std::endl;
for ( int i = 0; i < sec_num; ++i ) { for ( int i = 0; i < sec_num; ++i ) {
section* psec = reader.sections[i]; section* psec = reader.sections[i];
std::cout << " [" << i << "] " std::cout << " [" << i << "] "
<< psec->get_name() << psec->get_name()
<< "\t" << "\t"
<< psec->get_size() << psec->get_size()
<< std::endl; << std::endl;
// Access to section's data // Access to section's data
// const char* p = reader.sections[i]->get_data() // const char* p = reader.sections[i]->get_data()
} }
// Print ELF file segments info // Print ELF file segments info
Elf_Half seg_num = reader.segments.size(); Elf_Half seg_num = reader.segments.size();
std::cout << "Number of segments: " << seg_num << std::endl; std::cout << "Number of segments: " << seg_num << std::endl;
for ( int i = 0; i < seg_num; ++i ) { for ( int i = 0; i < seg_num; ++i ) {
const segment* pseg = reader.segments[i]; const segment* pseg = reader.segments[i];
std::cout << " [" << i << "] 0x" << std::hex std::cout << " [" << i << "] 0x" << std::hex
<< pseg->get_flags() << pseg->get_flags()
<< "\t0x" << "\t0x"
<< pseg->get_virtual_address() << pseg->get_virtual_address()
<< "\t0x" << "\t0x"
<< pseg->get_file_size() << pseg->get_file_size()
<< "\t0x" << "\t0x"
<< pseg->get_memory_size() << pseg->get_memory_size()
<< std::endl; << std::endl;
// Access to segments's data // Access to segments's data
// const char* p = reader.segments[i]->get_data() // const char* p = reader.segments[i]->get_data()
} }
for ( int i = 0; i < sec_num; ++i ) { for ( int i = 0; i < sec_num; ++i ) {
section* psec = reader.sections[i]; section* psec = reader.sections[i];
// Check section type // Check section type
if ( psec->get_type() == SHT_SYMTAB ) { if ( psec->get_type() == SHT_SYMTAB ) {
const symbol_section_accessor symbols( reader, psec ); const symbol_section_accessor symbols( reader, psec );
for ( unsigned int j = 0; j < symbols.get_symbols_num(); ++j ) { for ( unsigned int j = 0; j < symbols.get_symbols_num(); ++j ) {
std::string name; std::string name;
Elf64_Addr value; Elf64_Addr value;
Elf_Xword size; Elf_Xword size;
unsigned char bind; unsigned char bind;
unsigned char type; unsigned char type;
Elf_Half section_index; Elf_Half section_index;
unsigned char other; unsigned char other;
// Read symbol properties // Read symbol properties
symbols.get_symbol( j, name, value, size, bind, symbols.get_symbol( j, name, value, size, bind,
type, section_index, other ); type, section_index, other );
std::cout << j << " " << name << " " << value << std::endl; std::cout << j << " " << name << " " << value << std::endl;
} }
} }
} }
return 0; return 0;
} }

View File

@ -1,5 +1,5 @@
INCLUDES = -I$(top_srcdir) INCLUDES = -I$(top_srcdir)
bin_PROGRAMS = writer bin_PROGRAMS = writer
writer_SOURCES = writer.cpp writer_SOURCES = writer.cpp

1040
install-sh

File diff suppressed because it is too large Load Diff

752
missing
View File

@ -1,376 +1,376 @@
#! /bin/sh #! /bin/sh
# Common stub for a few missing GNU programs while installing. # Common stub for a few missing GNU programs while installing.
scriptversion=2009-04-28.21; # UTC scriptversion=2009-04-28.21; # UTC
# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006, # Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
# 2008, 2009 Free Software Foundation, Inc. # 2008, 2009 Free Software Foundation, Inc.
# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996. # Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# This program is free software; you can redistribute it and/or modify # 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 # it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option) # the Free Software Foundation; either version 2, or (at your option)
# any later version. # any later version.
# This program is distributed in the hope that it will be useful, # This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of # but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details. # GNU General Public License for more details.
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>. # along with this program. If not, see <http://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you # As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a # distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under # configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program. # the same distribution terms that you use for the rest of that program.
if test $# -eq 0; then if test $# -eq 0; then
echo 1>&2 "Try \`$0 --help' for more information" echo 1>&2 "Try \`$0 --help' for more information"
exit 1 exit 1
fi fi
run=: run=:
sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p' sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
sed_minuso='s/.* -o \([^ ]*\).*/\1/p' sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
# In the cases where this matters, `missing' is being run in the # In the cases where this matters, `missing' is being run in the
# srcdir already. # srcdir already.
if test -f configure.ac; then if test -f configure.ac; then
configure_ac=configure.ac configure_ac=configure.ac
else else
configure_ac=configure.in configure_ac=configure.in
fi fi
msg="missing on your system" msg="missing on your system"
case $1 in case $1 in
--run) --run)
# Try to run requested program, and just exit if it succeeds. # Try to run requested program, and just exit if it succeeds.
run= run=
shift shift
"$@" && exit 0 "$@" && exit 0
# Exit code 63 means version mismatch. This often happens # Exit code 63 means version mismatch. This often happens
# when the user try to use an ancient version of a tool on # when the user try to use an ancient version of a tool on
# a file that requires a minimum version. In this case we # a file that requires a minimum version. In this case we
# we should proceed has if the program had been absent, or # we should proceed has if the program had been absent, or
# if --run hadn't been passed. # if --run hadn't been passed.
if test $? = 63; then if test $? = 63; then
run=: run=:
msg="probably too old" msg="probably too old"
fi fi
;; ;;
-h|--h|--he|--hel|--help) -h|--h|--he|--hel|--help)
echo "\ echo "\
$0 [OPTION]... PROGRAM [ARGUMENT]... $0 [OPTION]... PROGRAM [ARGUMENT]...
Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
error status if there is no known handling for PROGRAM. error status if there is no known handling for PROGRAM.
Options: Options:
-h, --help display this help and exit -h, --help display this help and exit
-v, --version output version information and exit -v, --version output version information and exit
--run try to run the given command, and emulate it if it fails --run try to run the given command, and emulate it if it fails
Supported PROGRAM values: Supported PROGRAM values:
aclocal touch file \`aclocal.m4' aclocal touch file \`aclocal.m4'
autoconf touch file \`configure' autoconf touch file \`configure'
autoheader touch file \`config.h.in' autoheader touch file \`config.h.in'
autom4te touch the output file, or create a stub one autom4te touch the output file, or create a stub one
automake touch all \`Makefile.in' files automake touch all \`Makefile.in' files
bison create \`y.tab.[ch]', if possible, from existing .[ch] bison create \`y.tab.[ch]', if possible, from existing .[ch]
flex create \`lex.yy.c', if possible, from existing .c flex create \`lex.yy.c', if possible, from existing .c
help2man touch the output file help2man touch the output file
lex create \`lex.yy.c', if possible, from existing .c lex create \`lex.yy.c', if possible, from existing .c
makeinfo touch the output file makeinfo touch the output file
tar try tar, gnutar, gtar, then tar without non-portable flags tar try tar, gnutar, gtar, then tar without non-portable flags
yacc create \`y.tab.[ch]', if possible, from existing .[ch] yacc create \`y.tab.[ch]', if possible, from existing .[ch]
Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
\`g' are ignored when checking the name. \`g' are ignored when checking the name.
Send bug reports to <bug-automake@gnu.org>." Send bug reports to <bug-automake@gnu.org>."
exit $? exit $?
;; ;;
-v|--v|--ve|--ver|--vers|--versi|--versio|--version) -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
echo "missing $scriptversion (GNU Automake)" echo "missing $scriptversion (GNU Automake)"
exit $? exit $?
;; ;;
-*) -*)
echo 1>&2 "$0: Unknown \`$1' option" echo 1>&2 "$0: Unknown \`$1' option"
echo 1>&2 "Try \`$0 --help' for more information" echo 1>&2 "Try \`$0 --help' for more information"
exit 1 exit 1
;; ;;
esac esac
# normalize program name to check for. # normalize program name to check for.
program=`echo "$1" | sed ' program=`echo "$1" | sed '
s/^gnu-//; t s/^gnu-//; t
s/^gnu//; t s/^gnu//; t
s/^g//; t'` s/^g//; t'`
# Now exit if we have it, but it failed. Also exit now if we # 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 # don't have it and --version was passed (most likely to detect
# the program). This is about non-GNU programs, so use $1 not # the program). This is about non-GNU programs, so use $1 not
# $program. # $program.
case $1 in case $1 in
lex*|yacc*) lex*|yacc*)
# Not GNU programs, they don't have --version. # Not GNU programs, they don't have --version.
;; ;;
tar*) tar*)
if test -n "$run"; then if test -n "$run"; then
echo 1>&2 "ERROR: \`tar' requires --run" echo 1>&2 "ERROR: \`tar' requires --run"
exit 1 exit 1
elif test "x$2" = "x--version" || test "x$2" = "x--help"; then elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
exit 1 exit 1
fi fi
;; ;;
*) *)
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
# We have it, but it failed. # We have it, but it failed.
exit 1 exit 1
elif test "x$2" = "x--version" || test "x$2" = "x--help"; then elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
# Could not run --version or --help. This is probably someone # Could not run --version or --help. This is probably someone
# running `$TOOL --version' or `$TOOL --help' to check whether # running `$TOOL --version' or `$TOOL --help' to check whether
# $TOOL exists and not knowing $TOOL uses missing. # $TOOL exists and not knowing $TOOL uses missing.
exit 1 exit 1
fi fi
;; ;;
esac esac
# If it does not exist, or fails to run (possibly an outdated version), # If it does not exist, or fails to run (possibly an outdated version),
# try to emulate it. # try to emulate it.
case $program in case $program in
aclocal*) aclocal*)
echo 1>&2 "\ echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if WARNING: \`$1' is $msg. You should only need it if
you modified \`acinclude.m4' or \`${configure_ac}'. You might want you modified \`acinclude.m4' or \`${configure_ac}'. You might want
to install the \`Automake' and \`Perl' packages. Grab them from to install the \`Automake' and \`Perl' packages. Grab them from
any GNU archive site." any GNU archive site."
touch aclocal.m4 touch aclocal.m4
;; ;;
autoconf*) autoconf*)
echo 1>&2 "\ echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if WARNING: \`$1' is $msg. You should only need it if
you modified \`${configure_ac}'. You might want to install the you modified \`${configure_ac}'. You might want to install the
\`Autoconf' and \`GNU m4' packages. Grab them from any GNU \`Autoconf' and \`GNU m4' packages. Grab them from any GNU
archive site." archive site."
touch configure touch configure
;; ;;
autoheader*) autoheader*)
echo 1>&2 "\ echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if WARNING: \`$1' is $msg. You should only need it if
you modified \`acconfig.h' or \`${configure_ac}'. You might want you modified \`acconfig.h' or \`${configure_ac}'. You might want
to install the \`Autoconf' and \`GNU m4' packages. Grab them to install the \`Autoconf' and \`GNU m4' packages. Grab them
from any GNU archive site." from any GNU archive site."
files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}` files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
test -z "$files" && files="config.h" test -z "$files" && files="config.h"
touch_files= touch_files=
for f in $files; do for f in $files; do
case $f in case $f in
*:*) touch_files="$touch_files "`echo "$f" | *:*) touch_files="$touch_files "`echo "$f" |
sed -e 's/^[^:]*://' -e 's/:.*//'`;; sed -e 's/^[^:]*://' -e 's/:.*//'`;;
*) touch_files="$touch_files $f.in";; *) touch_files="$touch_files $f.in";;
esac esac
done done
touch $touch_files touch $touch_files
;; ;;
automake*) automake*)
echo 1>&2 "\ echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if WARNING: \`$1' is $msg. You should only need it if
you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'. you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
You might want to install the \`Automake' and \`Perl' packages. You might want to install the \`Automake' and \`Perl' packages.
Grab them from any GNU archive site." Grab them from any GNU archive site."
find . -type f -name Makefile.am -print | find . -type f -name Makefile.am -print |
sed 's/\.am$/.in/' | sed 's/\.am$/.in/' |
while read f; do touch "$f"; done while read f; do touch "$f"; done
;; ;;
autom4te*) autom4te*)
echo 1>&2 "\ echo 1>&2 "\
WARNING: \`$1' is needed, but is $msg. WARNING: \`$1' is needed, but is $msg.
You might have modified some files without having the You might have modified some files without having the
proper tools for further handling them. proper tools for further handling them.
You can get \`$1' as part of \`Autoconf' from any GNU You can get \`$1' as part of \`Autoconf' from any GNU
archive site." archive site."
file=`echo "$*" | sed -n "$sed_output"` file=`echo "$*" | sed -n "$sed_output"`
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
if test -f "$file"; then if test -f "$file"; then
touch $file touch $file
else else
test -z "$file" || exec >$file test -z "$file" || exec >$file
echo "#! /bin/sh" echo "#! /bin/sh"
echo "# Created by GNU Automake missing as a replacement of" echo "# Created by GNU Automake missing as a replacement of"
echo "# $ $@" echo "# $ $@"
echo "exit 0" echo "exit 0"
chmod +x $file chmod +x $file
exit 1 exit 1
fi fi
;; ;;
bison*|yacc*) bison*|yacc*)
echo 1>&2 "\ echo 1>&2 "\
WARNING: \`$1' $msg. You should only need it if WARNING: \`$1' $msg. You should only need it if
you modified a \`.y' file. You may need the \`Bison' package you modified a \`.y' file. You may need the \`Bison' package
in order for those modifications to take effect. You can get in order for those modifications to take effect. You can get
\`Bison' from any GNU archive site." \`Bison' from any GNU archive site."
rm -f y.tab.c y.tab.h rm -f y.tab.c y.tab.h
if test $# -ne 1; then if test $# -ne 1; then
eval LASTARG="\${$#}" eval LASTARG="\${$#}"
case $LASTARG in case $LASTARG in
*.y) *.y)
SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'` SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
if test -f "$SRCFILE"; then if test -f "$SRCFILE"; then
cp "$SRCFILE" y.tab.c cp "$SRCFILE" y.tab.c
fi fi
SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'` SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
if test -f "$SRCFILE"; then if test -f "$SRCFILE"; then
cp "$SRCFILE" y.tab.h cp "$SRCFILE" y.tab.h
fi fi
;; ;;
esac esac
fi fi
if test ! -f y.tab.h; then if test ! -f y.tab.h; then
echo >y.tab.h echo >y.tab.h
fi fi
if test ! -f y.tab.c; then if test ! -f y.tab.c; then
echo 'main() { return 0; }' >y.tab.c echo 'main() { return 0; }' >y.tab.c
fi fi
;; ;;
lex*|flex*) lex*|flex*)
echo 1>&2 "\ echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if WARNING: \`$1' is $msg. You should only need it if
you modified a \`.l' file. You may need the \`Flex' package you modified a \`.l' file. You may need the \`Flex' package
in order for those modifications to take effect. You can get in order for those modifications to take effect. You can get
\`Flex' from any GNU archive site." \`Flex' from any GNU archive site."
rm -f lex.yy.c rm -f lex.yy.c
if test $# -ne 1; then if test $# -ne 1; then
eval LASTARG="\${$#}" eval LASTARG="\${$#}"
case $LASTARG in case $LASTARG in
*.l) *.l)
SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'` SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
if test -f "$SRCFILE"; then if test -f "$SRCFILE"; then
cp "$SRCFILE" lex.yy.c cp "$SRCFILE" lex.yy.c
fi fi
;; ;;
esac esac
fi fi
if test ! -f lex.yy.c; then if test ! -f lex.yy.c; then
echo 'main() { return 0; }' >lex.yy.c echo 'main() { return 0; }' >lex.yy.c
fi fi
;; ;;
help2man*) help2man*)
echo 1>&2 "\ echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if WARNING: \`$1' is $msg. You should only need it if
you modified a dependency of a manual page. You may need the you modified a dependency of a manual page. You may need the
\`Help2man' package in order for those modifications to take \`Help2man' package in order for those modifications to take
effect. You can get \`Help2man' from any GNU archive site." effect. You can get \`Help2man' from any GNU archive site."
file=`echo "$*" | sed -n "$sed_output"` file=`echo "$*" | sed -n "$sed_output"`
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
if test -f "$file"; then if test -f "$file"; then
touch $file touch $file
else else
test -z "$file" || exec >$file test -z "$file" || exec >$file
echo ".ab help2man is required to generate this page" echo ".ab help2man is required to generate this page"
exit $? exit $?
fi fi
;; ;;
makeinfo*) makeinfo*)
echo 1>&2 "\ echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if WARNING: \`$1' is $msg. You should only need it if
you modified a \`.texi' or \`.texinfo' file, or any other file you modified a \`.texi' or \`.texinfo' file, or any other file
indirectly affecting the aspect of the manual. The spurious indirectly affecting the aspect of the manual. The spurious
call might also be the consequence of using a buggy \`make' (AIX, call might also be the consequence of using a buggy \`make' (AIX,
DU, IRIX). You might want to install the \`Texinfo' package or DU, IRIX). You might want to install the \`Texinfo' package or
the \`GNU make' package. Grab either from any GNU archive site." the \`GNU make' package. Grab either from any GNU archive site."
# The file to touch is that specified with -o ... # The file to touch is that specified with -o ...
file=`echo "$*" | sed -n "$sed_output"` file=`echo "$*" | sed -n "$sed_output"`
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
if test -z "$file"; then if test -z "$file"; then
# ... or it is the one specified with @setfilename ... # ... or it is the one specified with @setfilename ...
infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'` infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
file=`sed -n ' file=`sed -n '
/^@setfilename/{ /^@setfilename/{
s/.* \([^ ]*\) *$/\1/ s/.* \([^ ]*\) *$/\1/
p p
q q
}' $infile` }' $infile`
# ... or it is derived from the source name (dir/f.texi becomes f.info) # ... or it is derived from the source name (dir/f.texi becomes f.info)
test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
fi fi
# If the file does not exist, the user really needs makeinfo; # If the file does not exist, the user really needs makeinfo;
# let's fail without touching anything. # let's fail without touching anything.
test -f $file || exit 1 test -f $file || exit 1
touch $file touch $file
;; ;;
tar*) tar*)
shift shift
# We have already tried tar in the generic part. # We have already tried tar in the generic part.
# Look for gnutar/gtar before invocation to avoid ugly error # Look for gnutar/gtar before invocation to avoid ugly error
# messages. # messages.
if (gnutar --version > /dev/null 2>&1); then if (gnutar --version > /dev/null 2>&1); then
gnutar "$@" && exit 0 gnutar "$@" && exit 0
fi fi
if (gtar --version > /dev/null 2>&1); then if (gtar --version > /dev/null 2>&1); then
gtar "$@" && exit 0 gtar "$@" && exit 0
fi fi
firstarg="$1" firstarg="$1"
if shift; then if shift; then
case $firstarg in case $firstarg in
*o*) *o*)
firstarg=`echo "$firstarg" | sed s/o//` firstarg=`echo "$firstarg" | sed s/o//`
tar "$firstarg" "$@" && exit 0 tar "$firstarg" "$@" && exit 0
;; ;;
esac esac
case $firstarg in case $firstarg in
*h*) *h*)
firstarg=`echo "$firstarg" | sed s/h//` firstarg=`echo "$firstarg" | sed s/h//`
tar "$firstarg" "$@" && exit 0 tar "$firstarg" "$@" && exit 0
;; ;;
esac esac
fi fi
echo 1>&2 "\ echo 1>&2 "\
WARNING: I can't seem to be able to run \`tar' with the given arguments. 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 You may want to install GNU tar or Free paxutils, or check the
command line arguments." command line arguments."
exit 1 exit 1
;; ;;
*) *)
echo 1>&2 "\ echo 1>&2 "\
WARNING: \`$1' is needed, and is $msg. WARNING: \`$1' is needed, and is $msg.
You might have modified some files without having the You might have modified some files without having the
proper tools for further handling them. Check the \`README' file, proper tools for further handling them. Check the \`README' file,
it often tells you about the needed prerequisites for installing it often tells you about the needed prerequisites for installing
this package. You may also peek at any GNU archive site, in case this package. You may also peek at any GNU archive site, in case
some other package would contain this missing \`$1' program." some other package would contain this missing \`$1' program."
exit 1 exit 1
;; ;;
esac esac
exit 0 exit 0
# Local variables: # Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp) # eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion=" # time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC" # time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC" # time-stamp-end: "; # UTC"
# End: # End:

View File

@ -1,20 +1,20 @@
ELFIOVER='ELFIO-1.0.3' ELFIOVER='ELFIO-1.0.3'
BUILDVER='1' BUILDVER='1'
FULLVER=${ELFIOVER}-${BUILDVER} FULLVER=${ELFIOVER}-${BUILDVER}
mkdir $1 mkdir $1
cp ${ELFIOVER}.tar.gz $1 cp ${ELFIOVER}.tar.gz $1
cd $1 cd $1
tar -xzf ${ELFIOVER}.tar.gz tar -xzf ${ELFIOVER}.tar.gz
cp ../cygwin/${FULLVER}.sh . cp ../cygwin/${FULLVER}.sh .
mkdir ${ELFIOVER}/CYGWIN-PATCHES mkdir ${ELFIOVER}/CYGWIN-PATCHES
cp ../cygwin/CYGWIN-PATCHES/* ${ELFIOVER}/CYGWIN-PATCHES cp ../cygwin/CYGWIN-PATCHES/* ${ELFIOVER}/CYGWIN-PATCHES
./${FULLVER}.sh mkdirs ./${FULLVER}.sh mkdirs
./${FULLVER}.sh spkg ./${FULLVER}.sh spkg
cd .. cd ..
mkdir $2 mkdir $2
cp $1/${FULLVER}-src.tar.bz2 $2 cp $1/${FULLVER}-src.tar.bz2 $2
cd $2 cd $2
tar -xjf ${FULLVER}-src.tar.bz2 tar -xjf ${FULLVER}-src.tar.bz2
./${FULLVER}.sh all ./${FULLVER}.sh all