Makefile.in: Rebuilt.
fastjar Removed libjava * Makefile.in: Rebuilt. * Makefile.am (ZIP): Removed. (libgcj-$(gcc_version).jar): Use $(JAR). (src.zip): Likewise. * configure: Rebuilt. * configure.ac: Check for jar. Removed code to set ZIP. From-SVN: r112654
This commit is contained in:
parent
46bdbc0012
commit
76c6ea0c8b
37 changed files with 76 additions and 16663 deletions
|
@ -1 +0,0 @@
|
|||
Bryan Burns and Cory Jon Hollingsworth.
|
|
@ -1,38 +0,0 @@
|
|||
0.92 08/24/2000 Improved support for other Unix platforms.
|
||||
Now works on Solaris, AIX, True 64, and HP-UX.
|
||||
Hopefully resolved all big endian problems.
|
||||
Fixed bug in update which caused it to skip
|
||||
openning update file
|
||||
|
||||
0.90 12/06/1999 Fixed recursive archival bug.
|
||||
|
||||
0.86 10/12/1999 Applied patch to fix leading "./" problem.
|
||||
|
||||
0.85 5/10/1999 The -t and -x flags now work. Hooray! Those
|
||||
took quite a long time to get working.
|
||||
Handling extraction/listing added quite a bit
|
||||
of code, 500-1000 lines. ouch!
|
||||
|
||||
0.75 4/27/1999 Added support for -C flag, allowing you to
|
||||
change directories before adding files. See
|
||||
fastjar's usage screen for more info. Also
|
||||
improved the total compression display, and
|
||||
added install/uninstall targets to the
|
||||
Makefile.
|
||||
|
||||
0.71 4/27/1999 Added -V flag to print version info. Added
|
||||
better error messages, and added configure
|
||||
script for better portability.
|
||||
|
||||
0.70 4/25/1999 Added compression. Only deflation is supported
|
||||
at this time (only one jar supports) and is
|
||||
enabled by default. use the -0 flag to disable
|
||||
compression.
|
||||
|
||||
0.60 4/21/1999 Added support for manifest files (-m, -M).
|
||||
Fixed bug with mod time/date in central header.
|
||||
|
||||
0.50.1 4/20/1999 Added patch from John Bley. (Fixes bug with
|
||||
not properly closing the file)
|
||||
|
||||
0.50 4/20/1999 First public release
|
340
fastjar/COPYING
340
fastjar/COPYING
|
@ -1,340 +0,0 @@
|
|||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 2, June 1991
|
||||
|
||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
License is intended to guarantee your freedom to share and change free
|
||||
software--to make sure the software is free for all its users. This
|
||||
General Public License applies to most of the Free Software
|
||||
Foundation's software and to any other program whose authors commit to
|
||||
using it. (Some other Free Software Foundation software is covered by
|
||||
the GNU Library General Public License instead.) You can apply it to
|
||||
your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
this service if you wish), that you receive source code or can get it
|
||||
if you want it, that you can change the software or use pieces of it
|
||||
in new free programs; and that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
anyone to deny you these rights or to ask you to surrender the rights.
|
||||
These restrictions translate to certain responsibilities for you if you
|
||||
distribute copies of the software, or if you modify it.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must give the recipients all the rights that
|
||||
you have. You must make sure that they, too, receive or can get the
|
||||
source code. And you must show them these terms so they know their
|
||||
rights.
|
||||
|
||||
We protect your rights with two steps: (1) copyright the software, and
|
||||
(2) offer you this license which gives you legal permission to copy,
|
||||
distribute and/or modify the software.
|
||||
|
||||
Also, for each author's protection and ours, we want to make certain
|
||||
that everyone understands that there is no warranty for this free
|
||||
software. If the software is modified by someone else and passed on, we
|
||||
want its recipients to know that what they have is not the original, so
|
||||
that any problems introduced by others will not reflect on the original
|
||||
authors' reputations.
|
||||
|
||||
Finally, any free program is threatened constantly by software
|
||||
patents. We wish to avoid the danger that redistributors of a free
|
||||
program will individually obtain patent licenses, in effect making the
|
||||
program proprietary. To prevent this, we have made it clear that any
|
||||
patent must be licensed for everyone's free use or not licensed at all.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License applies to any program or other work which contains
|
||||
a notice placed by the copyright holder saying it may be distributed
|
||||
under the terms of this General Public License. The "Program", below,
|
||||
refers to any such program or work, and a "work based on the Program"
|
||||
means either the Program or any derivative work under copyright law:
|
||||
that is to say, a work containing the Program or a portion of it,
|
||||
either verbatim or with modifications and/or translated into another
|
||||
language. (Hereinafter, translation is included without limitation in
|
||||
the term "modification".) Each licensee is addressed as "you".
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running the Program is not restricted, and the output from the Program
|
||||
is covered only if its contents constitute a work based on the
|
||||
Program (independent of having been made by running the Program).
|
||||
Whether that is true depends on what the Program does.
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Program's
|
||||
source code as you receive it, in any medium, provided that you
|
||||
conspicuously and appropriately publish on each copy an appropriate
|
||||
copyright notice and disclaimer of warranty; keep intact all the
|
||||
notices that refer to this License and to the absence of any warranty;
|
||||
and give any other recipients of the Program a copy of this License
|
||||
along with the Program.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy, and
|
||||
you may at your option offer warranty protection in exchange for a fee.
|
||||
|
||||
2. You may modify your copy or copies of the Program or any portion
|
||||
of it, thus forming a work based on the Program, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
a) You must cause the modified files to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
|
||||
b) You must cause any work that you distribute or publish, that in
|
||||
whole or in part contains or is derived from the Program or any
|
||||
part thereof, to be licensed as a whole at no charge to all third
|
||||
parties under the terms of this License.
|
||||
|
||||
c) If the modified program normally reads commands interactively
|
||||
when run, you must cause it, when started running for such
|
||||
interactive use in the most ordinary way, to print or display an
|
||||
announcement including an appropriate copyright notice and a
|
||||
notice that there is no warranty (or else, saying that you provide
|
||||
a warranty) and that users may redistribute the program under
|
||||
these conditions, and telling the user how to view a copy of this
|
||||
License. (Exception: if the Program itself is interactive but
|
||||
does not normally print such an announcement, your work based on
|
||||
the Program is not required to print an announcement.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Program,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Program, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Program.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Program
|
||||
with the Program (or with a work based on the Program) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
3. You may copy and distribute the Program (or a work based on it,
|
||||
under Section 2) in object code or executable form under the terms of
|
||||
Sections 1 and 2 above provided that you also do one of the following:
|
||||
|
||||
a) Accompany it with the complete corresponding machine-readable
|
||||
source code, which must be distributed under the terms of Sections
|
||||
1 and 2 above on a medium customarily used for software interchange; or,
|
||||
|
||||
b) Accompany it with a written offer, valid for at least three
|
||||
years, to give any third party, for a charge no more than your
|
||||
cost of physically performing source distribution, a complete
|
||||
machine-readable copy of the corresponding source code, to be
|
||||
distributed under the terms of Sections 1 and 2 above on a medium
|
||||
customarily used for software interchange; or,
|
||||
|
||||
c) Accompany it with the information you received as to the offer
|
||||
to distribute corresponding source code. (This alternative is
|
||||
allowed only for noncommercial distribution and only if you
|
||||
received the program in object code or executable form with such
|
||||
an offer, in accord with Subsection b above.)
|
||||
|
||||
The source code for a work means the preferred form of the work for
|
||||
making modifications to it. For an executable work, complete source
|
||||
code means all the source code for all modules it contains, plus any
|
||||
associated interface definition files, plus the scripts used to
|
||||
control compilation and installation of the executable. However, as a
|
||||
special exception, the source code distributed need not include
|
||||
anything that is normally distributed (in either source or binary
|
||||
form) with the major components (compiler, kernel, and so on) of the
|
||||
operating system on which the executable runs, unless that component
|
||||
itself accompanies the executable.
|
||||
|
||||
If distribution of executable or object code is made by offering
|
||||
access to copy from a designated place, then offering equivalent
|
||||
access to copy the source code from the same place counts as
|
||||
distribution of the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
4. You may not copy, modify, sublicense, or distribute the Program
|
||||
except as expressly provided under this License. Any attempt
|
||||
otherwise to copy, modify, sublicense or distribute the Program is
|
||||
void, and will automatically terminate your rights under this License.
|
||||
However, parties who have received copies, or rights, from you under
|
||||
this License will not have their licenses terminated so long as such
|
||||
parties remain in full compliance.
|
||||
|
||||
5. You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Program or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Program (or any work based on the
|
||||
Program), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Program or works based on it.
|
||||
|
||||
6. Each time you redistribute the Program (or any work based on the
|
||||
Program), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute or modify the Program subject to
|
||||
these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties to
|
||||
this License.
|
||||
|
||||
7. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Program at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Program by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Program.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under
|
||||
any particular circumstance, the balance of the section is intended to
|
||||
apply and the section as a whole is intended to apply in other
|
||||
circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system, which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
8. If the distribution and/or use of the Program is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Program under this License
|
||||
may add an explicit geographical distribution limitation excluding
|
||||
those countries, so that distribution is permitted only in or among
|
||||
countries not thus excluded. In such case, this License incorporates
|
||||
the limitation as if written in the body of this License.
|
||||
|
||||
9. The Free Software Foundation may publish revised and/or new versions
|
||||
of the General Public License from time to time. Such new versions will
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Program
|
||||
specifies a version number of this License which applies to it and "any
|
||||
later version", you have the option of following the terms and conditions
|
||||
either of that version or of any later version published by the Free
|
||||
Software Foundation. If the Program does not specify a version number of
|
||||
this License, you may choose any version ever published by the Free Software
|
||||
Foundation.
|
||||
|
||||
10. If you wish to incorporate parts of the Program into other free
|
||||
programs whose distribution conditions are different, write to the author
|
||||
to ask for permission. For software which is copyrighted by the Free
|
||||
Software Foundation, write to the Free Software Foundation; we sometimes
|
||||
make exceptions for this. Our decision will be guided by the two goals
|
||||
of preserving the free status of all derivatives of our free software and
|
||||
of promoting the sharing and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
|
||||
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
||||
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
||||
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
||||
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
||||
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
||||
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
||||
REPAIR OR CORRECTION.
|
||||
|
||||
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
||||
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
||||
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
||||
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
||||
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program is interactive, make it output a short notice like this
|
||||
when it starts in an interactive mode:
|
||||
|
||||
Gnomovision version 69, Copyright (C) year name of author
|
||||
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
The hypothetical commands `show w' and `show c' should show the appropriate
|
||||
parts of the General Public License. Of course, the commands you use may
|
||||
be called something other than `show w' and `show c'; they could even be
|
||||
mouse-clicks or menu items--whatever suits your program.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a "copyright disclaimer" for the program, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
||||
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1989
|
||||
Ty Coon, President of Vice
|
||||
|
||||
This General Public License does not permit incorporating your program into
|
||||
proprietary programs. If your program is a subroutine library, you may
|
||||
consider it more useful to permit linking proprietary applications with the
|
||||
library. If this is what you want to do, use the GNU Library General
|
||||
Public License instead of this License.
|
|
@ -1,618 +0,0 @@
|
|||
2006-02-08 Thomas Fitzsimmons <fitzsim@redhat.com>
|
||||
|
||||
* jartool.h (ACTION_INDEX): New macro.
|
||||
* jartool.c (main): Handle -i option.
|
||||
* fastjar.texi (Invoking fastjar): Add description of -i option.
|
||||
|
||||
2006-01-31 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
* jartool.c (version): Use 2006.
|
||||
* jargrep.c (version): Use 2006.
|
||||
|
||||
2005-11-29 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
* compress.c (write_data): Mark 'ze' as unused.
|
||||
* jartool.h (__attribute__): New define.
|
||||
* shift.c (shift_up): Added cast.
|
||||
(shift_down): Likewise.
|
||||
* jartool.c (help): Split string constant.
|
||||
|
||||
2005-06-29 Kelley Cook <kcook@gcc.gnu.org>
|
||||
|
||||
* all files: Update FSF address.
|
||||
|
||||
2005-05-17 Kelley Cook <kcook@gcc.gnu.org>
|
||||
|
||||
* configure.ac: Use AC_C_BIGENDIAN instead of AC_C_BIGENDIAN_CROSS.
|
||||
Use AC_CHECK_SIZEOF instead of AC_COMPILE_CHECK_SIZEOF.
|
||||
* Makefile.am: Remove ACLOCAL_AMFLAGS.
|
||||
* aclocal.m4, Makefile.in, configure, config.h.in: Regenerate.
|
||||
|
||||
2005-03-28 Marcin Dalecki <martin@dalecki.de>
|
||||
|
||||
* jartool.c (main): Indentation fixlet.
|
||||
(add_entry): Likewise.
|
||||
(init_args): Don't use K&R style.
|
||||
(jt_strdup): Likewise.
|
||||
(get_next_arg): Add explicit '(void)'.
|
||||
(init_headers): Likewise.
|
||||
(version): Likewise.
|
||||
|
||||
2005-03-15 Zack Weinberg <zack@codesourcery.com>
|
||||
|
||||
* Makefile.am (fastjar_TEXINFOS): Add gcc-vers.texi.
|
||||
(BASEVER, DEVPHASE): New variables.
|
||||
(POD2MAN): Adjust setting of --release option.
|
||||
(fastjar.1, grepjar.1, gcc-vers.texi): New rules.
|
||||
* Makefile.in: Regenerate.
|
||||
* configure.ac: Do not invoke TL_AC_GCC_VERSION.
|
||||
* aclocal.m4, configure: Regenerate.
|
||||
|
||||
2004-12-02 Richard Sandiford <rsandifo@redhat.com>
|
||||
|
||||
* configure.ac: Use TL_AC_GCC_VERSION to set gcc_version.
|
||||
* configure, aclocal.m4, Makefile.in: Regenerate.
|
||||
|
||||
2004-11-15 Kelley Cook <kcook@gcc.gnu.org>
|
||||
|
||||
* Makefile.am: Remove -no-dependencies.
|
||||
* Makefile.in: Regenerate.
|
||||
|
||||
2004-11-13 Kelley Cook <kcook@gcc.gnu.org>
|
||||
|
||||
* Makefile.am: Define ACLOCAL_AMFLAGS.
|
||||
* acinclude.m4: Remove unnecessary sinclude.
|
||||
* aclocal.m4, Makefile.in, configure: Regenerate (autoreconf 1.9.3).
|
||||
|
||||
2004-09-23 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
* jartool.c (extract_jar): Unconditionally read extra data in the
|
||||
entry header; don't read it after the file contents.
|
||||
|
||||
2004-08-11 Kelley Cook <kcook@gcc.gnu.org>
|
||||
|
||||
PR bootstrap/16164
|
||||
* Makefile.am: Force fastjar.info to be built in build directory.
|
||||
* Makefile.in: Regenerate.
|
||||
|
||||
2004-07-23 Thomas Fitzsimmons <fitzsim@redhat.com>
|
||||
|
||||
* Makefile.am: Rename jar binary to fastjar.
|
||||
* Makefile.in: Regenerate.
|
||||
* fastjar.texi: Rename references to jar binary with fastjar.
|
||||
|
||||
2004-07-19 Bryce McKinlay <mckinlay@redhat.com>
|
||||
|
||||
* jartool.c (main): Ensure that only one of ftruncate and _chsize
|
||||
is used.
|
||||
|
||||
2004-07-11 Bryce McKinlay <mckinlay@redhat.com>
|
||||
|
||||
PR 16472
|
||||
* configure.ac: Check for ftruncate() and _chsize().
|
||||
* jartool.c (main): Use _chsize if ftruncate not available.
|
||||
* configure, config.h.in: Rebuilt.
|
||||
|
||||
2004-07-09 Richard Sandiford <rsandifo@redhat.com>
|
||||
|
||||
* jartool.c (find_entry, looks_like_dir): Remove inline spec.
|
||||
|
||||
2004-07-07 Matthias Klose <doko@debian.org>
|
||||
|
||||
* Makefile.am (jar_CPPFLAGS): Add AM_CPPFLAGS.
|
||||
* Makefile.in: Regenerate.
|
||||
|
||||
2004-07-06 Matthias Klose <doko@debian.org>
|
||||
|
||||
* Makefile.in: Regenerate.
|
||||
* fastjar.texi: Update for '-u'.
|
||||
|
||||
2004-07-06 Casey Marshall <csm@gnu.org>
|
||||
|
||||
PR 7854
|
||||
* Makefile.am
|
||||
(jar_SOURCES): added shift.c, shift.h.
|
||||
(jar_CPPFLAGS): define WITH_SHIFT_DOWN.
|
||||
|
||||
* compress.c
|
||||
Added FSF copyright.
|
||||
(write_data): new function.
|
||||
(compress_file): call write_data.
|
||||
|
||||
* jartool.c
|
||||
Updated copyright year.
|
||||
(progname): new variable.
|
||||
(end_of_entries): new variable.
|
||||
(main): open and read file when updating.
|
||||
(find_entry): new function.
|
||||
(looks_like_dir): new function.
|
||||
(read_entries): new function.
|
||||
(make_manifest): added parameter `updating'.
|
||||
Call `add_file_to_jar' with `updating'.
|
||||
(add_to_jar_with_dir): added parameter `updating'.
|
||||
Call `add_to_jar' with `updating'.
|
||||
(add_to_jar): added parameter `updating'.
|
||||
Call `add_file_to_jar' with `updating'.
|
||||
Don't add directories if they already exist.
|
||||
(add_file_to_jar): added parameter `updating'.
|
||||
Update entries if they already exist.
|
||||
|
||||
* jartool.h
|
||||
Added #ifndef __FASTJAR_JARTOOL_H__.
|
||||
(struct zipentry): added `flags'.
|
||||
|
||||
* shift.c: new file.
|
||||
|
||||
* shift.h: new file.
|
||||
|
||||
* zipfile.h
|
||||
(CEN_FLAGS): new constant.
|
||||
|
||||
2004-07-05 Kelley Cook <kcook@gcc.gnu.org>
|
||||
|
||||
* Makefile.am: Silence two automake warnings.
|
||||
* Makefile.in: Regenerate.
|
||||
|
||||
2004-06-25 Kelley Cook <kcook@gcc.gnu.org>
|
||||
|
||||
PR other/15194
|
||||
* configure.ac: Add check for long long.
|
||||
* jartool.h: Check for long long before using it.
|
||||
* configure: Regenerate
|
||||
* config.h.in: Regenerate.
|
||||
|
||||
2004-06-15 Paolo Bonzini <bonzini@gnu.org>
|
||||
|
||||
* acinclude.m4: Quote first argument of AC_DEFUNs.
|
||||
* aclocal.m4: Regenerate with automake 1.8.
|
||||
* Makefile.in: Likewise.
|
||||
* configure: Regenerate.
|
||||
* .cvsignore: New file.
|
||||
|
||||
2004-04-12 Kelley Cook <kcook@gcc.gnu.org>
|
||||
|
||||
PR bootstrap/14905
|
||||
* configure.ac: Parse --enable-generated-files-in-srcdir.
|
||||
* Makefile.am: Copy man and info files to srcdir if requested.
|
||||
* configure: Regenerate.
|
||||
* Makefile.in Regenerate.
|
||||
|
||||
2004-03-10 Kelley Cook <kcook@gcc.gnu.org>
|
||||
|
||||
* configure.ac: Bump AC_PREREQ to 2.59.
|
||||
* configure: Regenerate.
|
||||
|
||||
2004-03-09 Hans-Peter Nilsson <hp@axis.com>
|
||||
|
||||
* configure: Regenerate for config/accross.m4 correction.
|
||||
|
||||
2004-01-09 Kelley Cook <kcook@gcc.gnu.org>
|
||||
|
||||
* configure.in: Rename file to ...
|
||||
* configure.ac: ... this. Add in AC_PREREQ(2.57)
|
||||
* config.h.in: Regenerate.
|
||||
* aclocal.m4: Regenerate.
|
||||
* Makefile.in: Regenerate.
|
||||
|
||||
2004-01-07 Andreas Tobler <a.tobler@schweiz.ch>
|
||||
|
||||
* jartool.c (make_manifest): Fix off-by-one bug when creating
|
||||
an empty MANIFEST.MF.
|
||||
|
||||
2003-12-01 Kelley Cook <kcook@gcc.gnu.org>
|
||||
|
||||
* Makefile.am: Define AM_MAKINFOFLAGS. Remove Automake 1.4 hack.
|
||||
* Makefile.in: Regenerate with automake 1.7.6 & autoconf 2.57 tools.
|
||||
* aclocal.m4, config.h.in, configure: Likewise.
|
||||
* install-sh, missing, mkinstalldirs, stamp-h.in: Remove.
|
||||
|
||||
2003-11-21 Kelley Cook <kcook@gcc.gnu.org>
|
||||
|
||||
* .cvsignore: Delete.
|
||||
|
||||
2003-10-30 Kelley Cook <kcook@gcc.gnu.org>
|
||||
|
||||
* Makefile.am (my_make_i_flags): Add $(srcdir) and update comment
|
||||
to match.
|
||||
(fastjar.info): Update target to write to build directory.
|
||||
(%.1): New implicit rule from a .pod file.
|
||||
(jar.1): Delete.
|
||||
(grepjar.1): Delete.
|
||||
(jar.pod): New intermediate rule.
|
||||
(grepjar.pod): Likewise.
|
||||
* Makefile.in: Regenerate.
|
||||
|
||||
2003-08-13 Matthias Klose <doko@debian.org>
|
||||
|
||||
* fastjar.texi: License manual under the GPL.
|
||||
* Makefile.am: Remove reference to fdl.texi
|
||||
* Makefile.in: Regenerate
|
||||
|
||||
2003-07-29 Nathanael Nerode <neroden@gcc.gnu.org>
|
||||
|
||||
* mkinstalldirs: Import autoconf 2.57 / automake 1.7 version.
|
||||
|
||||
2003-07-11 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
|
||||
|
||||
* README: Note that FastJar is not part of GCC.
|
||||
|
||||
2003-07-02 Nathanael Nerode <neroden@gcc.gnu.org>
|
||||
|
||||
PR java/9532
|
||||
* jartool.c (add_to_jar): Return 1 on failure to open file.
|
||||
Split out -C case to:
|
||||
* jartool.c (add_to_jar_with_dir): New function.
|
||||
|
||||
2003-06-15 Nathanael Nerode <neroden@gcc.gnu.org>
|
||||
|
||||
PR java/9532
|
||||
* jartool.c (main) Give proper error messages with -C, and
|
||||
check for missing arguments properly. Send error messages
|
||||
to stderr.
|
||||
* jartool.c (add_to_jar): Make getcwd() call portable,
|
||||
and check for error return.
|
||||
|
||||
2003-03-30 Joseph S. Myers <jsm@polyomino.org.uk>
|
||||
|
||||
* fastjar.texi: Remove @ at start of file.
|
||||
|
||||
2003-03-10 Mohan Embar <gnustuff@thisiscool.com>
|
||||
|
||||
* dostime.c: add #include <stddef.h> for definition of NULL
|
||||
|
||||
2003-02-04 Joseph S. Myers <jsm@polyomino.org.uk>
|
||||
|
||||
* fastjar.texi: Update to GFDL 1.2.
|
||||
|
||||
2003-01-31 Daiki Ueno <ueno@unixuser.org>
|
||||
|
||||
* jartool.c (extract_jar): Don't lseek to skip extra fields.
|
||||
(consume): If the stream is seekable, do lseek.
|
||||
|
||||
2003-01-28 Ranjit Mathew <rmathew@hotmail.com>
|
||||
|
||||
* jargrep.c: Include xregex.h from libiberty instead of
|
||||
system regex.h for better portability.
|
||||
|
||||
2003-01-21 Ranjit Mathew <rmathew@hotmail.com>
|
||||
|
||||
* jartool.c (list_jar): Terminate the 'ascii_date' buffer
|
||||
with a '\0' to guard against the case where the formatted
|
||||
time string is more than the size allowed by the buffer.
|
||||
|
||||
2003-01-14 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
* config.h.in: Rebuilt.
|
||||
|
||||
2002-12-30 DJ Delorie <dj@redhat.com>
|
||||
|
||||
* Makefile.am (jar.1, grepjar.1): Protect against
|
||||
texi2pod/pod2man failing.
|
||||
* Makefile.in: Regenerated.
|
||||
|
||||
2002-12-23 Joseph S. Myers <jsm@polyomino.org.uk>
|
||||
|
||||
* fastjar.texi: Include Cover Texts in man page.
|
||||
|
||||
2002-12-04 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* fastjar.texi (jar @direntry, grepjar @direntry): Add (fastjar).
|
||||
|
||||
2002-11-23 H.J. Lu <hjl@gnu.org>
|
||||
|
||||
* acinclude.m4: Include ../config/accross.m4.
|
||||
(gcc_AC_COMPILE_CHECK_SIZEOF): Removed.
|
||||
(gcc_AC_EXAMINE_OBJECT): Removed.
|
||||
(gcc_AC_C_COMPILE_ENDIAN): Removed.
|
||||
* aclocal.m4; Rebuild.
|
||||
|
||||
* configure.in: Replace AC_C_BIGENDIAN with AC_C_BIGENDIAN_CROSS.
|
||||
Replace AC_CHECK_SIZEOF with AC_COMPILE_CHECK_SIZEOF.
|
||||
* configure: Likewise.
|
||||
|
||||
2002-11-21 Ranjit Mathew <rmathew@hotmail.com>
|
||||
|
||||
* jartool.c (extract_jar): Use "open" with O_BINARY instead of
|
||||
"creat" to create extracted files.
|
||||
|
||||
2002-11-11 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
* dostime.c (dos2unixtime): Mask for seconds is 0x1f. Correctly
|
||||
compute month.
|
||||
(unix2dostime): Handle years before 1980. Correctly compute month
|
||||
and day of month.
|
||||
|
||||
2002-11-10 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* jartool.c (add_to_jar): Only compare file to jarfile if jarfile is
|
||||
non-NULL.
|
||||
|
||||
* configure.in (AC_CHECK_HEADERS): Add limits.h.
|
||||
* configure, config.h.in: Rebuilt.
|
||||
|
||||
2002-11-07 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
* dostime.c: Rewrote from scratch.
|
||||
* dostime.h (dostime): Removed.
|
||||
|
||||
2002-10-20 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
* jartool.c: Use mode 0666 when opening new file.
|
||||
|
||||
2002-09-16 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
|
||||
|
||||
* jargrep.c (chk_wrd): Remove unused variable(s).
|
||||
* jartool.c (main, create_central_header, list_jar): Likewise.
|
||||
|
||||
2002-10-15 Ranjit Mathew <rmathew@hotmail.com>
|
||||
|
||||
* configure, config.h.in: Rebuilt.
|
||||
* configure.in: Call gcc_AC_FUNC_MKDIR_TAKES_ONE_ARG.
|
||||
|
||||
2002-09-11 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
* Makefile.in: Rebuilt.
|
||||
* Makefile.am (TEXINFO_TEX): New macro.
|
||||
(info_TEXINFOS): Likewise.
|
||||
(fastjar_TEXINFOS): Likewise.
|
||||
(man_MANS): Likewise.
|
||||
(EXTRA_DIST): Likewise.
|
||||
(my_makei_flags): Likewise.
|
||||
(fastjar.info): New rule.
|
||||
(fastjar_TEXINFOS): Don't mention `$(srcdir)'.
|
||||
(TEXINFO_TEX): Likewise.
|
||||
(AUTOMAKE_OPTIONS): Added `cygnus'.
|
||||
|
||||
2002-09-11 Matthias Klose <doko@debian.org>
|
||||
|
||||
* Makefile.am: Revert the previous patch.
|
||||
* Makefile.in: Regenerated.
|
||||
|
||||
2002-09-10 Matthias Klose <doko@debian.org>
|
||||
|
||||
* fastjar.texi: New.
|
||||
* Makefile.am: Support building info docs and manpages.
|
||||
* Makefile.in: Regenerated.
|
||||
* configure.in: Set gcc_version.
|
||||
* configure: Regenerated.
|
||||
* jargrep.c: Update usage and help strings.
|
||||
|
||||
2002-09-09 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
* jartool.c (mkdir): Define.
|
||||
* config.h.in: Rebuilt.
|
||||
* aclocal.m4, configure: Rebuilt.
|
||||
* acinclude.m4: New file. Copied gcc_AC_COMPILE_CHECK_SIZEOF,
|
||||
gcc_AC_EXAMINE_OBJECT, and fastjar_AC_COMPILE_C_BIGENDIAN from
|
||||
aclocal.m4.
|
||||
|
||||
2002-09-04 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
From greenrd@hotmail.com:
|
||||
* jartool.c (list_jar): Correctly determine when new `filename'
|
||||
buffer must be allocated. Fixes PR java/7830.
|
||||
|
||||
2002-06-03 Geoffrey Keating <geoffk@redhat.com>
|
||||
|
||||
* configure.in: Support cross-compiling.
|
||||
* configure: Regenerate.
|
||||
* aclocal.m4 (gcc_AC_COMPILE_CHECK_SIZEOF): New.
|
||||
(gcc_AC_EXAMINE_OBJECT): New.
|
||||
(fastjar_AC_COMPILE_C_BIGENDIAN): New.
|
||||
|
||||
2002-03-18 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
|
||||
|
||||
* jartool.c (expand_options): Handle tar-style argument list with a
|
||||
leading "-".
|
||||
|
||||
2002-02-23 Anthony Green <green@redhat.com>
|
||||
|
||||
* jartool.c (main): Fix handling of -C.
|
||||
|
||||
2002-01-30 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
* jartool.c (main): NULL-terminate new_argv. Pass 0 as argument
|
||||
to init_args.
|
||||
|
||||
2002-01-11 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
* Makefile.in: Rebuilt.
|
||||
* Makefile.am (AUTOMAKE_OPTIONS): New macro.
|
||||
|
||||
2002-01-09 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
For PR libgcj/5303:
|
||||
* jargrep.h: Removed RCS keywords.
|
||||
(GVERSION): Removed.
|
||||
* configure, Makefile.in, config.h.in: Rebuilt.
|
||||
* configure.in: Added AM_MAINTAINER_MODE.
|
||||
Don't look for getopt.h. Use `fastjar' as package name.
|
||||
* Makefile.am (INCLUDES): Look in ../include.
|
||||
(LIBIBERTY): New macro.
|
||||
(jar_LDADD): Use it.
|
||||
(jar_DEPENDENCIES): Likewise.
|
||||
(grepjar_LDADD): Likewise.
|
||||
(grepjar_DEPENDENCIES): Likewise.
|
||||
* jargrep.c: Removed RCS keywords. Always include getopt.h.
|
||||
(LONG_OPT): New macro.
|
||||
(OPT_HELP): Likewise.
|
||||
(main): Use getopt_long. Let getopt print invalid argument
|
||||
message. Handle --help. Use version().
|
||||
(version): New function.
|
||||
(optarg, optind): Don't declare.
|
||||
(option_vec): New global.
|
||||
(help): New function.
|
||||
(Usage): Updated to GNU standards.
|
||||
* jartool.c: Removed RCS keywords. Include getopt.h.
|
||||
(LONG_OPT): New macro.
|
||||
(OPT_HELP): Likewise.
|
||||
(options): New global.
|
||||
(help): New function.
|
||||
(usage): Print a single line.
|
||||
(version): New function.
|
||||
(expand_options): New function.
|
||||
(main): Use getopt_long and expand_options. Fail if `-u'
|
||||
specified. Changed handling of -f, -m, -V options.
|
||||
(OPTION_STRING): New macro.
|
||||
(version_string): Removed.
|
||||
|
||||
2001-01-02 Craig Rodrigues <rodrigc@gcc.gnu.org>
|
||||
|
||||
PR bootstrap/5117
|
||||
* configure.in (AC_CHECK_HEADERS): Check for stdlib.h.
|
||||
* Makefile.am: Move grepjar to bin_PROGRAMS.
|
||||
* config.h.in: Regenerated.
|
||||
* Makefile.in: Regenerated.
|
||||
* aclocal.m4: Regenerated.
|
||||
* stamp-h.in: Regenerated.
|
||||
* jargrep.c: Eliminate some signed/unsigned and default
|
||||
uninitialized warnings. Use HAVE_STDLIB_H instead of
|
||||
STDC_HEADERS macro.
|
||||
* jartool.c: Likewise.
|
||||
* compress.c: Likewise.
|
||||
|
||||
2001-09-17 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
For PR java/4295:
|
||||
* aclocal.m4, configure, Makefile.in: Rebuilt.
|
||||
* configure.in: Added AC_EXEEXT.
|
||||
|
||||
2001-10-12 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
|
||||
|
||||
* jatool.c (extract_jar): Account for null termination when determining
|
||||
whether to expand "filename".
|
||||
|
||||
2001-08-28 Alexandre Petit-Bianco <apbianco@redhat.com>
|
||||
|
||||
* jartool.c (add_to_jar): Return 1 if `stat' initialy failed.
|
||||
Fixes PR java/3949.
|
||||
|
||||
2001-08-27 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
* jartool.c (jarfile): Remove length limitation.
|
||||
(main): Use jt_strdup when initializing jarfile.
|
||||
|
||||
2001-07-04 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
Modified from patch by Julian Hall <jules@acris.co.uk>:
|
||||
* jartool.c (errno): Conditionally declare.
|
||||
(O_BINARY): Conditionally define.
|
||||
(main): Use open, not creat. Use O_BINARY everywhere.
|
||||
(make_manifest): Use O_BINARY.
|
||||
(add_to_jar): Likewise.
|
||||
|
||||
2001-06-28 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
* configure: Rebuilt.
|
||||
* configure.in: Accept --with-system-zlib. Fixes PR java/3441.
|
||||
|
||||
2001-05-15 Per Bothner <per@bothner.com>
|
||||
|
||||
* Makefile.am (bin_PROGRAMS): Renamed from "fastjar" to "jar".
|
||||
|
||||
2001-05-03 John David Anglin <dave@hiauly1.hia.nrc.ca>
|
||||
|
||||
* jartool.c (jt_strdup): New function.
|
||||
(get_next_arg): Use jt_strdup instead of strdup.
|
||||
|
||||
2001-01-21 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
* Makefile.in: Rebuilt.
|
||||
* Makefile.am (bin_PROGRAMS): Remove grepjar.
|
||||
(EXTRA_PROGRAMS): New macro.
|
||||
|
||||
2000-12-28 Robert Lipe <robertl@sco.com>
|
||||
|
||||
* jartool.c (MAXPATHLEN): Provide if not defined.
|
||||
|
||||
2000-12-15 Tom Tromey <tromey@redhat.com>
|
||||
Kelley Cook <kelleycook@home.com>
|
||||
|
||||
* jargrep.c: Include getopt.h if it exists.
|
||||
(optind): Declare.
|
||||
* configure, config.h: Rebuilt.
|
||||
* configure.in: Check for getopt.h.
|
||||
|
||||
2000-12-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||||
|
||||
* configure.in (fastjar_warn_cflags): Set when using gcc.
|
||||
|
||||
* Makefile.am (AM_CFLAGS): Set to @fastjar_warn_cflags@.
|
||||
|
||||
2000-12-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||||
|
||||
* compress.c: Include stdlib.h and compress.h.
|
||||
(rcsid): Delete.
|
||||
(report_str_error): Make static.
|
||||
(ez_inflate_str): Delete unused variable. Add parens in if-stmt.
|
||||
(hrd_inflate_str): Likewise.
|
||||
|
||||
* compress.h (init_compression, end_compression, init_inflation,
|
||||
end_inflation): Prototype void arguments.
|
||||
|
||||
* dostime.c (rcsid): Delete.
|
||||
|
||||
* jargrep.c: Include ctype.h, stdlib.h, zlib.h and compress.h.
|
||||
Make functions static. Cast ctype function argument to `unsigned
|
||||
char'. Add parens in if-stmts. Constify.
|
||||
(Usage): Change into a macro.
|
||||
(jargrep): Remove unused parameter.
|
||||
|
||||
* jartool.c: Constify. Add parens in if-stmts. Align
|
||||
signed/unsigned char pointers in functions calls using casts.
|
||||
(rcsid): Delete.
|
||||
(list_jar): Fix printf format specifier.
|
||||
(usage): Chop long string into bits. Reformat.
|
||||
|
||||
* pushback.c (rcsid): Delete.
|
||||
|
||||
2000-12-13 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
* jartool.c (extract_jar): Use strchr, not index.
|
||||
|
||||
2000-12-11 Alexandre Petit-Bianco <apbianco@cygnus.com>
|
||||
|
||||
* install-defs.sh: Removed.
|
||||
|
||||
2000-12-10 Robert Lipe <robertlipe@usa.net>
|
||||
|
||||
* jargrep.c (jargrep): Added null statement after case.
|
||||
|
||||
2000-12-10 Alexandre Petit-Bianco <apbianco@cygnus.com>
|
||||
|
||||
* Makefile: Removed.
|
||||
* Makefile.in: Rebuilt with `-i' and `--enable-foreign'.
|
||||
|
||||
Tue Nov 16 15:11:36 2000 Alexandre Petit-Bianco <apbianco@cygnus.com>
|
||||
|
||||
* Makefile.am: New file.
|
||||
* Makefile.in: Rebuilt.
|
||||
* aclocal.m4: Likewise.
|
||||
* stamp-h.in: Likewise.
|
||||
* config.h.in: Likewise.
|
||||
* configure.in (AM_INIT_AUTOMAKE): Added.
|
||||
(AM_CONFIG_HEADER): Likewise.
|
||||
(AC_CHECK_HEADERS): Check for sys/param.h
|
||||
(AC_CHECK_LIB): Don't check for system's zlib.
|
||||
(AC_CHECK_FUNC): Removed system's zlib function checks.
|
||||
(ZDEPS. ZLIBS, ZINCS): Added.
|
||||
* configure: Rebuilt.
|
||||
* jartool.c (sys/param.h): Conditionally included or define MAXPATHLEN.
|
||||
(init_args, get_next_arg): New function.
|
||||
(use_explicit_list_only, read_names_from_stdin): New global
|
||||
(main): Parse new non standard options 'E' and '@', check and
|
||||
report their usage if necessary. Use init_args and get_next_arg.
|
||||
Fixed indentation.
|
||||
(add_to_jar): Don't read directory content if `use_explicit_list_only'.
|
||||
(usage): Added `-E' and `-@'.
|
||||
* jartool.h (VERSION): Macro removed.
|
||||
|
||||
Tue Nov 14 15:10:44 2000 Alexandre Petit-Bianco <apbianco@cygnus.com>
|
||||
|
||||
* fastjar imported from sourceforge.net/projects/fastjar with
|
||||
Bryan Burns' permission. Check `CHANGES' for post import changes.
|
||||
* ChangeLog: Created.
|
||||
* NEWS: Likewise.
|
||||
* mkinstalldirs: Likewise.
|
||||
* COPYING: Likewise.
|
||||
* AUTHORS: Likewise.
|
|
@ -1,18 +0,0 @@
|
|||
----------------------
|
||||
How to install fastjar
|
||||
----------------------
|
||||
|
||||
|
||||
1. Run the 'configure' script to generate config.h and Makefile. You can
|
||||
use 'configure --help' to get a list of command-line options.
|
||||
|
||||
2. If you're feeling experimental, you can change some settings in jartool.h
|
||||
to optimize fastjar for your particular system.
|
||||
|
||||
3. Type 'make' to create the fastjar binary.
|
||||
|
||||
4. Type 'make install' to install fastjar in whichever directory you supplied
|
||||
to configure (or the default directory if you didn't specify one.)
|
||||
|
||||
|
||||
|
|
@ -1,121 +0,0 @@
|
|||
# Process this with automake to create Makefile.in
|
||||
|
||||
# Work around what appears to be a GNU make bug handling MAKEFLAGS
|
||||
# values defined in terms of make variables, as is the case for CC and
|
||||
# friends when we are called from the top level Makefile.
|
||||
AM_MAKEFLAGS = \
|
||||
"AR_FLAGS=$(AR_FLAGS)" \
|
||||
"CC_FOR_BUILD=$(CC_FOR_BUILD)" \
|
||||
"CFLAGS=$(CFLAGS)" \
|
||||
"CXXFLAGS=$(CXXFLAGS)" \
|
||||
"CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \
|
||||
"CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \
|
||||
"INSTALL=$(INSTALL)" \
|
||||
"INSTALL_DATA=$(INSTALL_DATA)" \
|
||||
"INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
|
||||
"INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \
|
||||
"JC1FLAGS=$(JC1FLAGS)" \
|
||||
"LDFLAGS=$(LDFLAGS)" \
|
||||
"LIBCFLAGS=$(LIBCFLAGS)" \
|
||||
"LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \
|
||||
"MAKE=$(MAKE)" \
|
||||
"MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \
|
||||
"PICFLAG=$(PICFLAG)" \
|
||||
"PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \
|
||||
"SHELL=$(SHELL)" \
|
||||
"exec_prefix=$(exec_prefix)" \
|
||||
"infodir=$(infodir)" \
|
||||
"libdir=$(libdir)" \
|
||||
"prefix=$(prefix)" \
|
||||
"AR=$(AR)" \
|
||||
"AS=$(AS)" \
|
||||
"CC=$(CC)" \
|
||||
"CXX=$(CXX)" \
|
||||
"LD=$(LD)" \
|
||||
"LIBCFLAGS=$(LIBCFLAGS)" \
|
||||
"NM=$(NM)" \
|
||||
"PICFLAG=$(PICFLAG)" \
|
||||
"RANLIB=$(RANLIB)" \
|
||||
"DESTDIR=$(DESTDIR)"
|
||||
|
||||
AM_CPPFLAGS = -I. -I$(top_srcdir) $(ZINCS) -I$(top_srcdir)/../include
|
||||
|
||||
LIBIBERTY = ../libiberty/libiberty.a
|
||||
|
||||
bin_PROGRAMS = fastjar grepjar
|
||||
fastjar_SOURCES = jartool.c dostime.c compress.c pushback.c shift.c jartool.h \
|
||||
zipfile.h dostime.h compress.h pushback.h shift.h
|
||||
fastjar_LDADD = $(ZLIBS) $(LIBIBERTY)
|
||||
fastjar_DEPENDENCIES = $(ZDEPS) $(LIBIBERTY)
|
||||
fastjar_CPPFLAGS = $(AM_CPPFLAGS) -DWITH_SHIFT_DOWN
|
||||
|
||||
grepjar_SOURCES = jargrep.c dostime.c compress.c pushback.c jartool.h \
|
||||
zipfile.h dostime.h compress.h pushback.h
|
||||
grepjar_LDADD = $(ZLIBS) $(LIBIBERTY)
|
||||
grepjar_DEPENDENCIES = $(ZDEPS) $(LIBIBERTY)
|
||||
|
||||
AM_CFLAGS = @fastjar_warn_cflags@
|
||||
AM_MAKEINFOFLAGS = -I $(srcdir)/../gcc/doc/include
|
||||
|
||||
TEXINFO_TEX = ../gcc/doc/include/texinfo.tex
|
||||
info_TEXINFOS = fastjar.texi
|
||||
fastjar_TEXINFOS = \
|
||||
../gcc/doc/include/gcc-common.texi \
|
||||
../gcc/doc/include/gpl.texi \
|
||||
gcc-vers.texi
|
||||
man_MANS = fastjar.1 grepjar.1
|
||||
EXTRA_DIST = $(man_MANS)
|
||||
|
||||
BASEVER = $(srcdir)/../gcc/BASE-VER
|
||||
DEVPHASE = $(srcdir)/../gcc/DEV-PHASE
|
||||
|
||||
TEXI2POD = perl $(srcdir)/../contrib/texi2pod.pl
|
||||
POD2MAN = pod2man --center="GNU" --release="gcc-$(shell cat $(BASEVER))"
|
||||
|
||||
.pod.1:
|
||||
-($(POD2MAN) --section=1 $< > $(@).T$$$$ && \
|
||||
mv -f $(@).T$$$$ $@) || \
|
||||
(rm -f $(@).T$$$$ && exit 1)
|
||||
|
||||
.INTERMEDIATE: fastjar.pod grepjar.pod
|
||||
|
||||
fastjar.pod: $(srcdir)/fastjar.texi
|
||||
-$(TEXI2POD) -D fastjar $< > $@
|
||||
|
||||
grepjar.pod: $(srcdir)/fastjar.texi
|
||||
-$(TEXI2POD) -D grepjar $< > $@
|
||||
|
||||
fastjar.1 grepjar.1: $(BASEVER)
|
||||
|
||||
# gcc-vers.texi is generated from the version files.
|
||||
gcc-vers.texi: $(BASEVER) $(DEVPHASE)
|
||||
(echo "@set version-GCC $(shell cat $(BASEVER))"; \
|
||||
if [ "$(shell cat $(DEVPHASE))" = "experimental" ]; \
|
||||
then echo "@set DEVELOPMENT"; \
|
||||
else echo "@clear DEVELOPMENT"; \
|
||||
fi) > $@T
|
||||
mv -f $@T $@
|
||||
|
||||
# GCC LOCAL CHANGE
|
||||
# The following commands allow us to release tarballs with the man pages
|
||||
# and info documentation prebuilt. This feature is enabled via
|
||||
# --enable-generated-files-in-srcdir in the configure script.
|
||||
|
||||
if GENINSRC
|
||||
STAMP_GENINSRC = stamp-geninsrc
|
||||
else
|
||||
STAMP_GENINSRC =
|
||||
endif
|
||||
|
||||
all-local: $(STAMP_GENINSRC)
|
||||
|
||||
stamp-geninsrc: fastjar.1 grepjar.1 fastjar.info
|
||||
-cp -p $(top_builddir)/fastjar.1 $(srcdir)/fastjar.1
|
||||
-cp -p $(top_builddir)/grepjar.1 $(srcdir)/grepjar.1
|
||||
-cp -p $(top_builddir)/fastjar.info $(srcdir)/fastjar.info
|
||||
touch $@
|
||||
|
||||
CLEANFILES = stamp-geninsrc fastjar.info
|
||||
MAINTAINERCLEANFILES = $(srcdir)/fastjar.1 \
|
||||
$(srcdir)/grepjar.1 \
|
||||
$(srcdir)/fastjar.info
|
|
@ -1,945 +0,0 @@
|
|||
# Makefile.in generated by automake 1.9.3 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
# 2003, 2004 Free Software Foundation, Inc.
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
@SET_MAKE@
|
||||
|
||||
# Process this with automake to create Makefile.in
|
||||
|
||||
SOURCES = $(fastjar_SOURCES) $(grepjar_SOURCES)
|
||||
|
||||
srcdir = @srcdir@
|
||||
top_srcdir = @top_srcdir@
|
||||
VPATH = @srcdir@
|
||||
pkgdatadir = $(datadir)/@PACKAGE@
|
||||
pkglibdir = $(libdir)/@PACKAGE@
|
||||
pkgincludedir = $(includedir)/@PACKAGE@
|
||||
top_builddir = .
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
INSTALL = @INSTALL@
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
bin_PROGRAMS = fastjar$(EXEEXT) grepjar$(EXEEXT)
|
||||
subdir = .
|
||||
DIST_COMMON = README $(am__configure_deps) $(fastjar_TEXINFOS) \
|
||||
$(srcdir)/../compile $(srcdir)/../depcomp \
|
||||
$(srcdir)/../install-sh $(srcdir)/../missing \
|
||||
$(srcdir)/../mkinstalldirs $(srcdir)/Makefile.am \
|
||||
$(srcdir)/Makefile.in $(srcdir)/config.h.in \
|
||||
$(srcdir)/install-defs.sh.in $(top_srcdir)/configure AUTHORS \
|
||||
COPYING ChangeLog INSTALL NEWS
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
|
||||
$(top_srcdir)/configure.ac
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
$(ACLOCAL_M4)
|
||||
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
|
||||
configure.lineno configure.status.lineno
|
||||
mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs
|
||||
CONFIG_HEADER = config.h
|
||||
CONFIG_CLEAN_FILES = install-defs.sh
|
||||
am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(infodir)" \
|
||||
"$(DESTDIR)$(man1dir)"
|
||||
binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
|
||||
PROGRAMS = $(bin_PROGRAMS)
|
||||
am_fastjar_OBJECTS = fastjar-jartool.$(OBJEXT) \
|
||||
fastjar-dostime.$(OBJEXT) fastjar-compress.$(OBJEXT) \
|
||||
fastjar-pushback.$(OBJEXT) fastjar-shift.$(OBJEXT)
|
||||
fastjar_OBJECTS = $(am_fastjar_OBJECTS)
|
||||
am__DEPENDENCIES_1 =
|
||||
am__DEPENDENCIES_2 = ../libiberty/libiberty.a
|
||||
am_grepjar_OBJECTS = jargrep.$(OBJEXT) dostime.$(OBJEXT) \
|
||||
compress.$(OBJEXT) pushback.$(OBJEXT)
|
||||
grepjar_OBJECTS = $(am_grepjar_OBJECTS)
|
||||
DEFAULT_INCLUDES = -I. -I$(srcdir) -I.
|
||||
depcomp = $(SHELL) $(top_srcdir)/../depcomp
|
||||
am__depfiles_maybe = depfiles
|
||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||
CCLD = $(CC)
|
||||
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
|
||||
SOURCES = $(fastjar_SOURCES) $(grepjar_SOURCES)
|
||||
DIST_SOURCES = $(fastjar_SOURCES) $(grepjar_SOURCES)
|
||||
INFO_DEPS = fastjar.info
|
||||
am__TEXINFO_TEX_DIR = $(srcdir)/../gcc/doc/include
|
||||
DVIS = fastjar.dvi
|
||||
PDFS = fastjar.pdf
|
||||
PSS = fastjar.ps
|
||||
HTMLS = fastjar.html
|
||||
TEXINFOS = fastjar.texi
|
||||
TEXI2DVI = texi2dvi
|
||||
TEXI2PDF = $(TEXI2DVI) --pdf --batch
|
||||
MAKEINFOHTML = $(MAKEINFO) --html
|
||||
AM_MAKEINFOHTMLFLAGS = $(AM_MAKEINFOFLAGS)
|
||||
DVIPS = dvips
|
||||
man1dir = $(mandir)/man1
|
||||
NROFF = nroff
|
||||
MANS = $(man_MANS)
|
||||
ETAGS = etags
|
||||
CTAGS = ctags
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
distdir = $(PACKAGE)-$(VERSION)
|
||||
top_distdir = $(distdir)
|
||||
am__remove_distdir = \
|
||||
{ test ! -d $(distdir) \
|
||||
|| { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
|
||||
&& rm -fr $(distdir); }; }
|
||||
DIST_ARCHIVES = $(distdir).tar.gz
|
||||
GZIP_ENV = --best
|
||||
distuninstallcheck_listfiles = find . -type f -print
|
||||
distcleancheck_listfiles = find . -type f -print
|
||||
ACLOCAL = @ACLOCAL@
|
||||
AMDEP_FALSE = @AMDEP_FALSE@
|
||||
AMDEP_TRUE = @AMDEP_TRUE@
|
||||
AMTAR = @AMTAR@
|
||||
AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
CC = @CC@
|
||||
CCDEPMODE = @CCDEPMODE@
|
||||
CFLAGS = @CFLAGS@
|
||||
CHMOD = @CHMOD@
|
||||
CP = @CP@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
EGREP = @EGREP@
|
||||
EXEEXT = @EXEEXT@
|
||||
GENINSRC_FALSE = @GENINSRC_FALSE@
|
||||
GENINSRC_TRUE = @GENINSRC_TRUE@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBS = @LIBS@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
MAINT = @MAINT@
|
||||
MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
|
||||
MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
OBJEXT = @OBJEXT@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
RM = @RM@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
STRIP = @STRIP@
|
||||
VERSION = @VERSION@
|
||||
ZDEPS = @ZDEPS@
|
||||
ZINCS = @ZINCS@
|
||||
ZLIBS = @ZLIBS@
|
||||
ac_ct_CC = @ac_ct_CC@
|
||||
ac_ct_STRIP = @ac_ct_STRIP@
|
||||
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
|
||||
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
am__tar = @am__tar@
|
||||
am__untar = @am__untar@
|
||||
bindir = @bindir@
|
||||
build_alias = @build_alias@
|
||||
datadir = @datadir@
|
||||
exec_prefix = @exec_prefix@
|
||||
fastjar_warn_cflags = @fastjar_warn_cflags@
|
||||
host_alias = @host_alias@
|
||||
includedir = @includedir@
|
||||
infodir = @infodir@
|
||||
install_sh = @install_sh@
|
||||
libdir = @libdir@
|
||||
libexecdir = @libexecdir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
oldincludedir = @oldincludedir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
sbindir = @sbindir@
|
||||
sharedstatedir = @sharedstatedir@
|
||||
sysconfdir = @sysconfdir@
|
||||
target_alias = @target_alias@
|
||||
|
||||
# Work around what appears to be a GNU make bug handling MAKEFLAGS
|
||||
# values defined in terms of make variables, as is the case for CC and
|
||||
# friends when we are called from the top level Makefile.
|
||||
AM_MAKEFLAGS = \
|
||||
"AR_FLAGS=$(AR_FLAGS)" \
|
||||
"CC_FOR_BUILD=$(CC_FOR_BUILD)" \
|
||||
"CFLAGS=$(CFLAGS)" \
|
||||
"CXXFLAGS=$(CXXFLAGS)" \
|
||||
"CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \
|
||||
"CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \
|
||||
"INSTALL=$(INSTALL)" \
|
||||
"INSTALL_DATA=$(INSTALL_DATA)" \
|
||||
"INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
|
||||
"INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \
|
||||
"JC1FLAGS=$(JC1FLAGS)" \
|
||||
"LDFLAGS=$(LDFLAGS)" \
|
||||
"LIBCFLAGS=$(LIBCFLAGS)" \
|
||||
"LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \
|
||||
"MAKE=$(MAKE)" \
|
||||
"MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \
|
||||
"PICFLAG=$(PICFLAG)" \
|
||||
"PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \
|
||||
"SHELL=$(SHELL)" \
|
||||
"exec_prefix=$(exec_prefix)" \
|
||||
"infodir=$(infodir)" \
|
||||
"libdir=$(libdir)" \
|
||||
"prefix=$(prefix)" \
|
||||
"AR=$(AR)" \
|
||||
"AS=$(AS)" \
|
||||
"CC=$(CC)" \
|
||||
"CXX=$(CXX)" \
|
||||
"LD=$(LD)" \
|
||||
"LIBCFLAGS=$(LIBCFLAGS)" \
|
||||
"NM=$(NM)" \
|
||||
"PICFLAG=$(PICFLAG)" \
|
||||
"RANLIB=$(RANLIB)" \
|
||||
"DESTDIR=$(DESTDIR)"
|
||||
|
||||
AM_CPPFLAGS = -I. -I$(top_srcdir) $(ZINCS) -I$(top_srcdir)/../include
|
||||
LIBIBERTY = ../libiberty/libiberty.a
|
||||
fastjar_SOURCES = jartool.c dostime.c compress.c pushback.c shift.c jartool.h \
|
||||
zipfile.h dostime.h compress.h pushback.h shift.h
|
||||
|
||||
fastjar_LDADD = $(ZLIBS) $(LIBIBERTY)
|
||||
fastjar_DEPENDENCIES = $(ZDEPS) $(LIBIBERTY)
|
||||
fastjar_CPPFLAGS = $(AM_CPPFLAGS) -DWITH_SHIFT_DOWN
|
||||
grepjar_SOURCES = jargrep.c dostime.c compress.c pushback.c jartool.h \
|
||||
zipfile.h dostime.h compress.h pushback.h
|
||||
|
||||
grepjar_LDADD = $(ZLIBS) $(LIBIBERTY)
|
||||
grepjar_DEPENDENCIES = $(ZDEPS) $(LIBIBERTY)
|
||||
AM_CFLAGS = @fastjar_warn_cflags@
|
||||
AM_MAKEINFOFLAGS = -I $(srcdir)/../gcc/doc/include
|
||||
TEXINFO_TEX = ../gcc/doc/include/texinfo.tex
|
||||
info_TEXINFOS = fastjar.texi
|
||||
fastjar_TEXINFOS = \
|
||||
../gcc/doc/include/gcc-common.texi \
|
||||
../gcc/doc/include/gpl.texi \
|
||||
gcc-vers.texi
|
||||
|
||||
man_MANS = fastjar.1 grepjar.1
|
||||
EXTRA_DIST = $(man_MANS)
|
||||
BASEVER = $(srcdir)/../gcc/BASE-VER
|
||||
DEVPHASE = $(srcdir)/../gcc/DEV-PHASE
|
||||
TEXI2POD = perl $(srcdir)/../contrib/texi2pod.pl
|
||||
POD2MAN = pod2man --center="GNU" --release="gcc-$(shell cat $(BASEVER))"
|
||||
@GENINSRC_FALSE@STAMP_GENINSRC =
|
||||
|
||||
# GCC LOCAL CHANGE
|
||||
# The following commands allow us to release tarballs with the man pages
|
||||
# and info documentation prebuilt. This feature is enabled via
|
||||
# --enable-generated-files-in-srcdir in the configure script.
|
||||
@GENINSRC_TRUE@STAMP_GENINSRC = stamp-geninsrc
|
||||
CLEANFILES = stamp-geninsrc fastjar.info
|
||||
MAINTAINERCLEANFILES = $(srcdir)/fastjar.1 \
|
||||
$(srcdir)/grepjar.1 \
|
||||
$(srcdir)/fastjar.info
|
||||
|
||||
all: config.h
|
||||
$(MAKE) $(AM_MAKEFLAGS) all-am
|
||||
|
||||
.SUFFIXES:
|
||||
.SUFFIXES: .1 .c .dvi .o .obj .pod .ps
|
||||
am--refresh:
|
||||
@:
|
||||
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
case '$(am__configure_deps)' in \
|
||||
*$$dep*) \
|
||||
echo ' cd $(srcdir) && $(AUTOMAKE) --gnu '; \
|
||||
cd $(srcdir) && $(AUTOMAKE) --gnu \
|
||||
&& exit 0; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
done; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
|
||||
cd $(top_srcdir) && \
|
||||
$(AUTOMAKE) --gnu Makefile
|
||||
.PRECIOUS: Makefile
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
@case '$?' in \
|
||||
*config.status*) \
|
||||
echo ' $(SHELL) ./config.status'; \
|
||||
$(SHELL) ./config.status;; \
|
||||
*) \
|
||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
|
||||
esac;
|
||||
|
||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||
$(SHELL) ./config.status --recheck
|
||||
|
||||
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||
cd $(srcdir) && $(AUTOCONF)
|
||||
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||
cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
|
||||
|
||||
config.h: stamp-h1
|
||||
@if test ! -f $@; then \
|
||||
rm -f stamp-h1; \
|
||||
$(MAKE) stamp-h1; \
|
||||
else :; fi
|
||||
|
||||
stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
|
||||
@rm -f stamp-h1
|
||||
cd $(top_builddir) && $(SHELL) ./config.status config.h
|
||||
$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||
cd $(top_srcdir) && $(AUTOHEADER)
|
||||
rm -f stamp-h1
|
||||
touch $@
|
||||
|
||||
distclean-hdr:
|
||||
-rm -f config.h stamp-h1
|
||||
install-defs.sh: $(top_builddir)/config.status $(srcdir)/install-defs.sh.in
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $@
|
||||
install-binPROGRAMS: $(bin_PROGRAMS)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(bindir)" || $(mkdir_p) "$(DESTDIR)$(bindir)"
|
||||
@list='$(bin_PROGRAMS)'; for p in $$list; do \
|
||||
p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
|
||||
if test -f $$p \
|
||||
; then \
|
||||
f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
|
||||
echo " $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(bindir)/$$f'"; \
|
||||
$(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \
|
||||
else :; fi; \
|
||||
done
|
||||
|
||||
uninstall-binPROGRAMS:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(bin_PROGRAMS)'; for p in $$list; do \
|
||||
f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
|
||||
echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \
|
||||
rm -f "$(DESTDIR)$(bindir)/$$f"; \
|
||||
done
|
||||
|
||||
clean-binPROGRAMS:
|
||||
-test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
|
||||
fastjar$(EXEEXT): $(fastjar_OBJECTS) $(fastjar_DEPENDENCIES)
|
||||
@rm -f fastjar$(EXEEXT)
|
||||
$(LINK) $(fastjar_LDFLAGS) $(fastjar_OBJECTS) $(fastjar_LDADD) $(LIBS)
|
||||
grepjar$(EXEEXT): $(grepjar_OBJECTS) $(grepjar_DEPENDENCIES)
|
||||
@rm -f grepjar$(EXEEXT)
|
||||
$(LINK) $(grepjar_LDFLAGS) $(grepjar_OBJECTS) $(grepjar_LDADD) $(LIBS)
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT)
|
||||
|
||||
distclean-compile:
|
||||
-rm -f *.tab.c
|
||||
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/compress.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dostime.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fastjar-compress.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fastjar-dostime.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fastjar-jartool.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fastjar-pushback.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fastjar-shift.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jargrep.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pushback.Po@am__quote@
|
||||
|
||||
.c.o:
|
||||
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
|
||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(COMPILE) -c $<
|
||||
|
||||
.c.obj:
|
||||
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
|
||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
|
||||
|
||||
fastjar-jartool.o: jartool.c
|
||||
@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fastjar_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fastjar-jartool.o -MD -MP -MF "$(DEPDIR)/fastjar-jartool.Tpo" -c -o fastjar-jartool.o `test -f 'jartool.c' || echo '$(srcdir)/'`jartool.c; \
|
||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/fastjar-jartool.Tpo" "$(DEPDIR)/fastjar-jartool.Po"; else rm -f "$(DEPDIR)/fastjar-jartool.Tpo"; exit 1; fi
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jartool.c' object='fastjar-jartool.o' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fastjar_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fastjar-jartool.o `test -f 'jartool.c' || echo '$(srcdir)/'`jartool.c
|
||||
|
||||
fastjar-jartool.obj: jartool.c
|
||||
@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fastjar_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fastjar-jartool.obj -MD -MP -MF "$(DEPDIR)/fastjar-jartool.Tpo" -c -o fastjar-jartool.obj `if test -f 'jartool.c'; then $(CYGPATH_W) 'jartool.c'; else $(CYGPATH_W) '$(srcdir)/jartool.c'; fi`; \
|
||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/fastjar-jartool.Tpo" "$(DEPDIR)/fastjar-jartool.Po"; else rm -f "$(DEPDIR)/fastjar-jartool.Tpo"; exit 1; fi
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jartool.c' object='fastjar-jartool.obj' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fastjar_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fastjar-jartool.obj `if test -f 'jartool.c'; then $(CYGPATH_W) 'jartool.c'; else $(CYGPATH_W) '$(srcdir)/jartool.c'; fi`
|
||||
|
||||
fastjar-dostime.o: dostime.c
|
||||
@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fastjar_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fastjar-dostime.o -MD -MP -MF "$(DEPDIR)/fastjar-dostime.Tpo" -c -o fastjar-dostime.o `test -f 'dostime.c' || echo '$(srcdir)/'`dostime.c; \
|
||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/fastjar-dostime.Tpo" "$(DEPDIR)/fastjar-dostime.Po"; else rm -f "$(DEPDIR)/fastjar-dostime.Tpo"; exit 1; fi
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='dostime.c' object='fastjar-dostime.o' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fastjar_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fastjar-dostime.o `test -f 'dostime.c' || echo '$(srcdir)/'`dostime.c
|
||||
|
||||
fastjar-dostime.obj: dostime.c
|
||||
@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fastjar_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fastjar-dostime.obj -MD -MP -MF "$(DEPDIR)/fastjar-dostime.Tpo" -c -o fastjar-dostime.obj `if test -f 'dostime.c'; then $(CYGPATH_W) 'dostime.c'; else $(CYGPATH_W) '$(srcdir)/dostime.c'; fi`; \
|
||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/fastjar-dostime.Tpo" "$(DEPDIR)/fastjar-dostime.Po"; else rm -f "$(DEPDIR)/fastjar-dostime.Tpo"; exit 1; fi
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='dostime.c' object='fastjar-dostime.obj' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fastjar_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fastjar-dostime.obj `if test -f 'dostime.c'; then $(CYGPATH_W) 'dostime.c'; else $(CYGPATH_W) '$(srcdir)/dostime.c'; fi`
|
||||
|
||||
fastjar-compress.o: compress.c
|
||||
@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fastjar_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fastjar-compress.o -MD -MP -MF "$(DEPDIR)/fastjar-compress.Tpo" -c -o fastjar-compress.o `test -f 'compress.c' || echo '$(srcdir)/'`compress.c; \
|
||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/fastjar-compress.Tpo" "$(DEPDIR)/fastjar-compress.Po"; else rm -f "$(DEPDIR)/fastjar-compress.Tpo"; exit 1; fi
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='compress.c' object='fastjar-compress.o' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fastjar_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fastjar-compress.o `test -f 'compress.c' || echo '$(srcdir)/'`compress.c
|
||||
|
||||
fastjar-compress.obj: compress.c
|
||||
@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fastjar_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fastjar-compress.obj -MD -MP -MF "$(DEPDIR)/fastjar-compress.Tpo" -c -o fastjar-compress.obj `if test -f 'compress.c'; then $(CYGPATH_W) 'compress.c'; else $(CYGPATH_W) '$(srcdir)/compress.c'; fi`; \
|
||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/fastjar-compress.Tpo" "$(DEPDIR)/fastjar-compress.Po"; else rm -f "$(DEPDIR)/fastjar-compress.Tpo"; exit 1; fi
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='compress.c' object='fastjar-compress.obj' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fastjar_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fastjar-compress.obj `if test -f 'compress.c'; then $(CYGPATH_W) 'compress.c'; else $(CYGPATH_W) '$(srcdir)/compress.c'; fi`
|
||||
|
||||
fastjar-pushback.o: pushback.c
|
||||
@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fastjar_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fastjar-pushback.o -MD -MP -MF "$(DEPDIR)/fastjar-pushback.Tpo" -c -o fastjar-pushback.o `test -f 'pushback.c' || echo '$(srcdir)/'`pushback.c; \
|
||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/fastjar-pushback.Tpo" "$(DEPDIR)/fastjar-pushback.Po"; else rm -f "$(DEPDIR)/fastjar-pushback.Tpo"; exit 1; fi
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='pushback.c' object='fastjar-pushback.o' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fastjar_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fastjar-pushback.o `test -f 'pushback.c' || echo '$(srcdir)/'`pushback.c
|
||||
|
||||
fastjar-pushback.obj: pushback.c
|
||||
@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fastjar_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fastjar-pushback.obj -MD -MP -MF "$(DEPDIR)/fastjar-pushback.Tpo" -c -o fastjar-pushback.obj `if test -f 'pushback.c'; then $(CYGPATH_W) 'pushback.c'; else $(CYGPATH_W) '$(srcdir)/pushback.c'; fi`; \
|
||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/fastjar-pushback.Tpo" "$(DEPDIR)/fastjar-pushback.Po"; else rm -f "$(DEPDIR)/fastjar-pushback.Tpo"; exit 1; fi
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='pushback.c' object='fastjar-pushback.obj' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fastjar_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fastjar-pushback.obj `if test -f 'pushback.c'; then $(CYGPATH_W) 'pushback.c'; else $(CYGPATH_W) '$(srcdir)/pushback.c'; fi`
|
||||
|
||||
fastjar-shift.o: shift.c
|
||||
@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fastjar_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fastjar-shift.o -MD -MP -MF "$(DEPDIR)/fastjar-shift.Tpo" -c -o fastjar-shift.o `test -f 'shift.c' || echo '$(srcdir)/'`shift.c; \
|
||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/fastjar-shift.Tpo" "$(DEPDIR)/fastjar-shift.Po"; else rm -f "$(DEPDIR)/fastjar-shift.Tpo"; exit 1; fi
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='shift.c' object='fastjar-shift.o' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fastjar_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fastjar-shift.o `test -f 'shift.c' || echo '$(srcdir)/'`shift.c
|
||||
|
||||
fastjar-shift.obj: shift.c
|
||||
@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fastjar_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT fastjar-shift.obj -MD -MP -MF "$(DEPDIR)/fastjar-shift.Tpo" -c -o fastjar-shift.obj `if test -f 'shift.c'; then $(CYGPATH_W) 'shift.c'; else $(CYGPATH_W) '$(srcdir)/shift.c'; fi`; \
|
||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/fastjar-shift.Tpo" "$(DEPDIR)/fastjar-shift.Po"; else rm -f "$(DEPDIR)/fastjar-shift.Tpo"; exit 1; fi
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='shift.c' object='fastjar-shift.obj' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(fastjar_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o fastjar-shift.obj `if test -f 'shift.c'; then $(CYGPATH_W) 'shift.c'; else $(CYGPATH_W) '$(srcdir)/shift.c'; fi`
|
||||
|
||||
fastjar.info: fastjar.texi $(fastjar_TEXINFOS)
|
||||
restore=: && backupdir="$(am__leading_dot)am$$$$" && \
|
||||
rm -rf $$backupdir && mkdir $$backupdir && \
|
||||
for f in $@ $@-[0-9] $@-[0-9][0-9] $(@:.info=).i[0-9] $(@:.info=).i[0-9][0-9]; do \
|
||||
if test -f $$f; then mv $$f $$backupdir; restore=mv; else :; fi; \
|
||||
done; \
|
||||
if $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \
|
||||
-o $@ `test -f 'fastjar.texi' || echo '$(srcdir)/'`fastjar.texi; \
|
||||
then \
|
||||
rc=0; \
|
||||
else \
|
||||
rc=$$?; \
|
||||
$$restore $$backupdir/* `echo "./$@" | sed 's|[^/]*$$||'`; \
|
||||
fi; \
|
||||
rm -rf $$backupdir; exit $$rc
|
||||
|
||||
fastjar.dvi: fastjar.texi $(fastjar_TEXINFOS)
|
||||
TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
|
||||
MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \
|
||||
$(TEXI2DVI) -o $@ `test -f 'fastjar.texi' || echo '$(srcdir)/'`fastjar.texi
|
||||
|
||||
fastjar.pdf: fastjar.texi $(fastjar_TEXINFOS)
|
||||
TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
|
||||
MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \
|
||||
$(TEXI2PDF) -o $@ `test -f 'fastjar.texi' || echo '$(srcdir)/'`fastjar.texi
|
||||
|
||||
fastjar.html: fastjar.texi $(fastjar_TEXINFOS)
|
||||
rm -rf $(@:.html=.htp)
|
||||
if $(MAKEINFOHTML) $(AM_MAKEINFOHTMLFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \
|
||||
-o $(@:.html=.htp) `test -f 'fastjar.texi' || echo '$(srcdir)/'`fastjar.texi; \
|
||||
then \
|
||||
rm -rf $@; \
|
||||
if test ! -d $(@:.html=.htp) && test -d $(@:.html=); then \
|
||||
mv $(@:.html=) $@; else mv $(@:.html=.htp) $@; fi; \
|
||||
else \
|
||||
if test ! -d $(@:.html=.htp) && test -d $(@:.html=); then \
|
||||
rm -rf $(@:.html=); else rm -Rf $(@:.html=.htp) $@; fi; \
|
||||
exit 1; \
|
||||
fi
|
||||
.dvi.ps:
|
||||
$(DVIPS) -o $@ $<
|
||||
|
||||
uninstall-info-am:
|
||||
$(PRE_UNINSTALL)
|
||||
@if (install-info --version && \
|
||||
install-info --version 2>&1 | sed 1q | grep -i -v debian) >/dev/null 2>&1; then \
|
||||
list='$(INFO_DEPS)'; \
|
||||
for file in $$list; do \
|
||||
relfile=`echo "$$file" | sed 's|^.*/||'`; \
|
||||
echo " install-info --info-dir='$(DESTDIR)$(infodir)' --remove '$(DESTDIR)$(infodir)/$$relfile'"; \
|
||||
install-info --info-dir="$(DESTDIR)$(infodir)" --remove "$(DESTDIR)$(infodir)/$$relfile"; \
|
||||
done; \
|
||||
else :; fi
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(INFO_DEPS)'; \
|
||||
for file in $$list; do \
|
||||
relfile=`echo "$$file" | sed 's|^.*/||'`; \
|
||||
relfile_i=`echo "$$relfile" | sed 's|\.info$$||;s|$$|.i|'`; \
|
||||
(if cd "$(DESTDIR)$(infodir)"; then \
|
||||
echo " rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9])"; \
|
||||
rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]; \
|
||||
else :; fi); \
|
||||
done
|
||||
|
||||
dist-info: $(INFO_DEPS)
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
||||
list='$(INFO_DEPS)'; \
|
||||
for base in $$list; do \
|
||||
case $$base in \
|
||||
$(srcdir)/*) base=`echo "$$base" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
esac; \
|
||||
if test -f $$base; then d=.; else d=$(srcdir); fi; \
|
||||
for file in $$d/$$base*; do \
|
||||
relfile=`expr "$$file" : "$$d/\(.*\)"`; \
|
||||
test -f $(distdir)/$$relfile || \
|
||||
cp -p $$file $(distdir)/$$relfile; \
|
||||
done; \
|
||||
done
|
||||
|
||||
mostlyclean-aminfo:
|
||||
-rm -rf fastjar.aux fastjar.cp fastjar.cps fastjar.fn fastjar.fns fastjar.ky \
|
||||
fastjar.kys fastjar.log fastjar.pg fastjar.pgs fastjar.tmp \
|
||||
fastjar.toc fastjar.tp fastjar.tps fastjar.vr fastjar.vrs \
|
||||
fastjar.dvi fastjar.pdf fastjar.ps fastjar.html
|
||||
|
||||
maintainer-clean-aminfo:
|
||||
@list='$(INFO_DEPS)'; for i in $$list; do \
|
||||
i_i=`echo "$$i" | sed 's|\.info$$||;s|$$|.i|'`; \
|
||||
echo " rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]"; \
|
||||
rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]; \
|
||||
done
|
||||
install-man1: $(man1_MANS) $(man_MANS)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(man1dir)" || $(mkdir_p) "$(DESTDIR)$(man1dir)"
|
||||
@list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \
|
||||
l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
|
||||
for i in $$l2; do \
|
||||
case "$$i" in \
|
||||
*.1*) list="$$list $$i" ;; \
|
||||
esac; \
|
||||
done; \
|
||||
for i in $$list; do \
|
||||
if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
|
||||
else file=$$i; fi; \
|
||||
ext=`echo $$i | sed -e 's/^.*\\.//'`; \
|
||||
case "$$ext" in \
|
||||
1*) ;; \
|
||||
*) ext='1' ;; \
|
||||
esac; \
|
||||
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
|
||||
inst=`echo $$inst | sed -e 's/^.*\///'`; \
|
||||
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
|
||||
echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
|
||||
$(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst"; \
|
||||
done
|
||||
uninstall-man1:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \
|
||||
l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
|
||||
for i in $$l2; do \
|
||||
case "$$i" in \
|
||||
*.1*) list="$$list $$i" ;; \
|
||||
esac; \
|
||||
done; \
|
||||
for i in $$list; do \
|
||||
ext=`echo $$i | sed -e 's/^.*\\.//'`; \
|
||||
case "$$ext" in \
|
||||
1*) ;; \
|
||||
*) ext='1' ;; \
|
||||
esac; \
|
||||
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
|
||||
inst=`echo $$inst | sed -e 's/^.*\///'`; \
|
||||
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
|
||||
echo " rm -f '$(DESTDIR)$(man1dir)/$$inst'"; \
|
||||
rm -f "$(DESTDIR)$(man1dir)/$$inst"; \
|
||||
done
|
||||
|
||||
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) ' { files[$$0] = 1; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
mkid -fID $$unique
|
||||
tags: TAGS
|
||||
|
||||
TAGS: $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags=; \
|
||||
here=`pwd`; \
|
||||
list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) ' { files[$$0] = 1; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
|
||||
test -n "$$unique" || unique=$$empty_fix; \
|
||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
$$tags $$unique; \
|
||||
fi
|
||||
ctags: CTAGS
|
||||
CTAGS: $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags=; \
|
||||
here=`pwd`; \
|
||||
list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) ' { files[$$0] = 1; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$tags $$unique
|
||||
|
||||
GTAGS:
|
||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||
&& cd $(top_srcdir) \
|
||||
&& gtags -i $(GTAGS_ARGS) $$here
|
||||
|
||||
distclean-tags:
|
||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
|
||||
distdir: $(DISTFILES)
|
||||
$(am__remove_distdir)
|
||||
mkdir $(distdir)
|
||||
$(mkdir_p) $(distdir)/. $(distdir)/.. $(distdir)/../gcc/doc/include
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
|
||||
list='$(DISTFILES)'; for file in $$list; do \
|
||||
case $$file in \
|
||||
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
|
||||
esac; \
|
||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
|
||||
dir="/$$dir"; \
|
||||
$(mkdir_p) "$(distdir)$$dir"; \
|
||||
else \
|
||||
dir=''; \
|
||||
fi; \
|
||||
if test -d $$d/$$file; then \
|
||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
|
||||
fi; \
|
||||
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
|
||||
else \
|
||||
test -f $(distdir)/$$file \
|
||||
|| cp -p $$d/$$file $(distdir)/$$file \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
$(MAKE) $(AM_MAKEFLAGS) \
|
||||
top_distdir="$(top_distdir)" distdir="$(distdir)" \
|
||||
dist-info
|
||||
-find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
|
||||
! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
|
||||
! -type d ! -perm -400 -exec chmod a+r {} \; -o \
|
||||
! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
|
||||
|| chmod -R a+r $(distdir)
|
||||
dist-gzip: distdir
|
||||
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
|
||||
$(am__remove_distdir)
|
||||
|
||||
dist-bzip2: distdir
|
||||
tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
|
||||
$(am__remove_distdir)
|
||||
|
||||
dist-tarZ: distdir
|
||||
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
|
||||
$(am__remove_distdir)
|
||||
|
||||
dist-shar: distdir
|
||||
shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
|
||||
$(am__remove_distdir)
|
||||
|
||||
dist-zip: distdir
|
||||
-rm -f $(distdir).zip
|
||||
zip -rq $(distdir).zip $(distdir)
|
||||
$(am__remove_distdir)
|
||||
|
||||
dist dist-all: distdir
|
||||
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
|
||||
$(am__remove_distdir)
|
||||
|
||||
# This target untars the dist file and tries a VPATH configuration. Then
|
||||
# it guarantees that the distribution is self-contained by making another
|
||||
# tarfile.
|
||||
distcheck: dist
|
||||
case '$(DIST_ARCHIVES)' in \
|
||||
*.tar.gz*) \
|
||||
GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
|
||||
*.tar.bz2*) \
|
||||
bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
|
||||
*.tar.Z*) \
|
||||
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
|
||||
*.shar.gz*) \
|
||||
GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
|
||||
*.zip*) \
|
||||
unzip $(distdir).zip ;;\
|
||||
esac
|
||||
chmod -R a-w $(distdir); chmod a+w $(distdir)
|
||||
mkdir $(distdir)/_build
|
||||
mkdir $(distdir)/_inst
|
||||
chmod a-w $(distdir)
|
||||
dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
|
||||
&& dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
|
||||
&& cd $(distdir)/_build \
|
||||
&& ../configure --srcdir=.. --prefix="$$dc_install_base" \
|
||||
$(DISTCHECK_CONFIGURE_FLAGS) \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) check \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) install \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) installcheck \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) uninstall \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
|
||||
distuninstallcheck \
|
||||
&& chmod -R a-w "$$dc_install_base" \
|
||||
&& ({ \
|
||||
(cd ../.. && umask 077 && mkdir "$$dc_destdir") \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
|
||||
distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
|
||||
} || { rm -rf "$$dc_destdir"; exit 1; }) \
|
||||
&& rm -rf "$$dc_destdir" \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) dist \
|
||||
&& rm -rf $(DIST_ARCHIVES) \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) distcleancheck
|
||||
$(am__remove_distdir)
|
||||
@(echo "$(distdir) archives ready for distribution: "; \
|
||||
list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
|
||||
sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}'
|
||||
distuninstallcheck:
|
||||
@cd $(distuninstallcheck_dir) \
|
||||
&& test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
|
||||
|| { echo "ERROR: files left after uninstall:" ; \
|
||||
if test -n "$(DESTDIR)"; then \
|
||||
echo " (check DESTDIR support)"; \
|
||||
fi ; \
|
||||
$(distuninstallcheck_listfiles) ; \
|
||||
exit 1; } >&2
|
||||
distcleancheck: distclean
|
||||
@if test '$(srcdir)' = . ; then \
|
||||
echo "ERROR: distcleancheck can only run from a VPATH build" ; \
|
||||
exit 1 ; \
|
||||
fi
|
||||
@test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
|
||||
|| { echo "ERROR: files left in build directory after distclean:" ; \
|
||||
$(distcleancheck_listfiles) ; \
|
||||
exit 1; } >&2
|
||||
check-am: all-am
|
||||
check: check-am
|
||||
all-am: Makefile $(INFO_DEPS) $(PROGRAMS) $(MANS) config.h all-local
|
||||
installdirs:
|
||||
for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(infodir)" "$(DESTDIR)$(man1dir)"; do \
|
||||
test -z "$$dir" || $(mkdir_p) "$$dir"; \
|
||||
done
|
||||
install: install-am
|
||||
install-exec: install-exec-am
|
||||
install-data: install-data-am
|
||||
uninstall: uninstall-am
|
||||
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||
|
||||
installcheck: installcheck-am
|
||||
install-strip:
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
`test -z '$(STRIP)' || \
|
||||
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
|
||||
|
||||
distclean-generic:
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
|
||||
-rm -rf ./$(DEPDIR)
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-compile distclean-generic \
|
||||
distclean-hdr distclean-tags
|
||||
|
||||
dvi: dvi-am
|
||||
|
||||
dvi-am: $(DVIS)
|
||||
|
||||
html: html-am
|
||||
|
||||
html-am: $(HTMLS)
|
||||
|
||||
info: info-am
|
||||
|
||||
info-am: $(INFO_DEPS)
|
||||
|
||||
install-data-am: install-info-am install-man
|
||||
|
||||
install-exec-am: install-binPROGRAMS
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
install-info-am: $(INFO_DEPS)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(infodir)" || $(mkdir_p) "$(DESTDIR)$(infodir)"
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
||||
list='$(INFO_DEPS)'; \
|
||||
for file in $$list; do \
|
||||
case $$file in \
|
||||
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
esac; \
|
||||
if test -f $$file; then d=.; else d=$(srcdir); fi; \
|
||||
file_i=`echo "$$file" | sed 's|\.info$$||;s|$$|.i|'`; \
|
||||
for ifile in $$d/$$file $$d/$$file-[0-9] $$d/$$file-[0-9][0-9] \
|
||||
$$d/$$file_i[0-9] $$d/$$file_i[0-9][0-9] ; do \
|
||||
if test -f $$ifile; then \
|
||||
relfile=`echo "$$ifile" | sed 's|^.*/||'`; \
|
||||
echo " $(INSTALL_DATA) '$$ifile' '$(DESTDIR)$(infodir)/$$relfile'"; \
|
||||
$(INSTALL_DATA) "$$ifile" "$(DESTDIR)$(infodir)/$$relfile"; \
|
||||
else : ; fi; \
|
||||
done; \
|
||||
done
|
||||
@$(POST_INSTALL)
|
||||
@if (install-info --version && \
|
||||
install-info --version 2>&1 | sed 1q | grep -i -v debian) >/dev/null 2>&1; then \
|
||||
list='$(INFO_DEPS)'; \
|
||||
for file in $$list; do \
|
||||
relfile=`echo "$$file" | sed 's|^.*/||'`; \
|
||||
echo " install-info --info-dir='$(DESTDIR)$(infodir)' '$(DESTDIR)$(infodir)/$$relfile'";\
|
||||
install-info --info-dir="$(DESTDIR)$(infodir)" "$(DESTDIR)$(infodir)/$$relfile" || :;\
|
||||
done; \
|
||||
else : ; fi
|
||||
install-man: install-man1
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-am
|
||||
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
|
||||
-rm -rf $(top_srcdir)/autom4te.cache
|
||||
-rm -rf ./$(DEPDIR)
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-aminfo \
|
||||
maintainer-clean-generic
|
||||
|
||||
mostlyclean: mostlyclean-am
|
||||
|
||||
mostlyclean-am: mostlyclean-aminfo mostlyclean-compile \
|
||||
mostlyclean-generic
|
||||
|
||||
pdf: pdf-am
|
||||
|
||||
pdf-am: $(PDFS)
|
||||
|
||||
ps: ps-am
|
||||
|
||||
ps-am: $(PSS)
|
||||
|
||||
uninstall-am: uninstall-binPROGRAMS uninstall-info-am uninstall-man
|
||||
|
||||
uninstall-man: uninstall-man1
|
||||
|
||||
.PHONY: CTAGS GTAGS all all-am all-local am--refresh check check-am \
|
||||
clean clean-binPROGRAMS clean-generic ctags dist dist-all \
|
||||
dist-bzip2 dist-gzip dist-info dist-shar dist-tarZ dist-zip \
|
||||
distcheck distclean distclean-compile distclean-generic \
|
||||
distclean-hdr distclean-tags distcleancheck distdir \
|
||||
distuninstallcheck dvi dvi-am html html-am info info-am \
|
||||
install install-am install-binPROGRAMS install-data \
|
||||
install-data-am install-exec install-exec-am install-info \
|
||||
install-info-am install-man install-man1 install-strip \
|
||||
installcheck installcheck-am installdirs maintainer-clean \
|
||||
maintainer-clean-aminfo maintainer-clean-generic mostlyclean \
|
||||
mostlyclean-aminfo mostlyclean-compile mostlyclean-generic pdf \
|
||||
pdf-am ps ps-am tags uninstall uninstall-am \
|
||||
uninstall-binPROGRAMS uninstall-info-am uninstall-man \
|
||||
uninstall-man1
|
||||
|
||||
|
||||
.pod.1:
|
||||
-($(POD2MAN) --section=1 $< > $(@).T$$$$ && \
|
||||
mv -f $(@).T$$$$ $@) || \
|
||||
(rm -f $(@).T$$$$ && exit 1)
|
||||
|
||||
.INTERMEDIATE: fastjar.pod grepjar.pod
|
||||
|
||||
fastjar.pod: $(srcdir)/fastjar.texi
|
||||
-$(TEXI2POD) -D fastjar $< > $@
|
||||
|
||||
grepjar.pod: $(srcdir)/fastjar.texi
|
||||
-$(TEXI2POD) -D grepjar $< > $@
|
||||
|
||||
fastjar.1 grepjar.1: $(BASEVER)
|
||||
|
||||
# gcc-vers.texi is generated from the version files.
|
||||
gcc-vers.texi: $(BASEVER) $(DEVPHASE)
|
||||
(echo "@set version-GCC $(shell cat $(BASEVER))"; \
|
||||
if [ "$(shell cat $(DEVPHASE))" = "experimental" ]; \
|
||||
then echo "@set DEVELOPMENT"; \
|
||||
else echo "@clear DEVELOPMENT"; \
|
||||
fi) > $@T
|
||||
mv -f $@T $@
|
||||
|
||||
all-local: $(STAMP_GENINSRC)
|
||||
|
||||
stamp-geninsrc: fastjar.1 grepjar.1 fastjar.info
|
||||
-cp -p $(top_builddir)/fastjar.1 $(srcdir)/fastjar.1
|
||||
-cp -p $(top_builddir)/grepjar.1 $(srcdir)/grepjar.1
|
||||
-cp -p $(top_builddir)/fastjar.info $(srcdir)/fastjar.info
|
||||
touch $@
|
||||
# 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.
|
||||
.NOEXPORT:
|
14
fastjar/NEWS
14
fastjar/NEWS
|
@ -1,14 +0,0 @@
|
|||
Noteworthy changes in fastjar, 11/2000
|
||||
--------------------------------------
|
||||
|
||||
Fastjar as been imported from sourceforge.net/projects/fastjar with
|
||||
Brian Burns' permission so that it can be used as a replacement to the
|
||||
zip utility in order to create the libgcj.zip archive. Several missing
|
||||
distribution files were created, most notably Makefile.am.
|
||||
|
||||
Two new options were added: `-E' to prevent fastjar from reading the
|
||||
content of a directory when specifying one (and instead relying on the
|
||||
provided list of files to populate the archive with regard to the
|
||||
directory entry) and `-@' to let fastjar read the name of the files to
|
||||
add to the archive from the standard input. This last option is
|
||||
supported only when creating or augmenting an archive.
|
|
@ -1,78 +0,0 @@
|
|||
This directory contains the FastJar package, which is not part of GCC but
|
||||
shipped with GCC as convenience.
|
||||
|
||||
=======
|
||||
FastJar 0.90
|
||||
|
||||
12/6/1999
|
||||
=======
|
||||
|
||||
FastJar is an attempt at creating a feature-for-feature copy of Sun's JDK's
|
||||
'jar' command. Sun's jar (or Blackdown's for that matter) is written entirely
|
||||
in Java which makes it dog slow. Since FastJar is written in C, it can create
|
||||
the same .jar file as Sun's tool in a fraction of the time. On my system,
|
||||
Sun's jar takes 50 seconds to create a 10MB jar file, while FastJar only takes
|
||||
a little over a second.
|
||||
|
||||
The reason I wrote fastjar is that building .jar files is a regular process
|
||||
of the build where I work. The way we have it setup, you have to re-create
|
||||
the .jar file everytime you want to test it out, which is about every 5 minutes
|
||||
when I'm busy coding. The .jar file wasn't -that- big, but it did take about
|
||||
30 seconds to be made, and watching all the garbage collection messages was
|
||||
pretty irritating as well. I probably wasted a half-hour a day watching
|
||||
Sun's jar tool chug along. By writing the program in C, I spend much less time
|
||||
banging my head against the monitor waiting for the build to finish. Yay!
|
||||
|
||||
FastJar has been tested on Solaris and Linux 2.2.x systems and nothing else.
|
||||
It should compile/run without any problems on either system, provided you have
|
||||
zlib installed.
|
||||
|
||||
Please mail any bug reports to burnsbr@ucs.orst.edu.
|
||||
|
||||
If you use FastJar and want me to add the rest of the features, send me mail
|
||||
(toast@users.sourceforge.net). I'll be much more likely to put more work into this
|
||||
if I know other people find it useful other than me.
|
||||
|
||||
As always, this not being a final release, bugs may exist. I test each
|
||||
release pretty well, but I can always miss things...
|
||||
|
||||
Compression will slow things down quite a bit. A 10MB jar file takes about
|
||||
1 second on my machine without compression, and 9 seconds with it. If you
|
||||
want fastjar to be fast, use the -0 (zero, not O) flag to turn off compression.
|
||||
|
||||
Supported flags:
|
||||
--------------------------
|
||||
-c | create a new archive
|
||||
-v | verbose output
|
||||
-f | specify archive file name
|
||||
-m | specify existing manifest file
|
||||
-M | don't create manifest
|
||||
-0 | store only
|
||||
-C | change to dir
|
||||
-t | list contents
|
||||
-x | extract contents
|
||||
|
||||
Unsupported flags:
|
||||
----------------------------
|
||||
-u | update exisiting archive
|
||||
|
||||
If you use the "unsupported" flags, nothing bad will happen, but then again
|
||||
nothing will happen at all.
|
||||
|
||||
|
||||
Unsupported features (in this release):
|
||||
---------------------------------------------
|
||||
* updating
|
||||
* full manifest support (?)
|
||||
|
||||
Order or features for the future:
|
||||
--------------------------------------------
|
||||
* archive updating
|
||||
* full manifest support
|
||||
* filtering
|
||||
* dependency checking
|
||||
|
||||
|
||||
===========================================================================
|
||||
http://fastjar.sourceforge.net
|
||||
toast@users.sourceforge.net
|
|
@ -1,21 +0,0 @@
|
|||
dnl Define MKDIR_TAKES_ONE_ARG if mkdir accepts only one argument instead
|
||||
dnl of the usual 2.
|
||||
AC_DEFUN([gcc_AC_FUNC_MKDIR_TAKES_ONE_ARG],
|
||||
[AC_CACHE_CHECK([if mkdir takes one argument], gcc_cv_mkdir_takes_one_arg,
|
||||
[AC_TRY_COMPILE([
|
||||
#include <sys/types.h>
|
||||
#ifdef HAVE_SYS_STAT_H
|
||||
# include <sys/stat.h>
|
||||
#endif
|
||||
#ifdef HAVE_UNISTD_H
|
||||
# include <unistd.h>
|
||||
#endif
|
||||
#ifdef HAVE_DIRECT_H
|
||||
# include <direct.h>
|
||||
#endif], [mkdir ("foo", 0);],
|
||||
gcc_cv_mkdir_takes_one_arg=no, gcc_cv_mkdir_takes_one_arg=yes)])
|
||||
if test $gcc_cv_mkdir_takes_one_arg = yes ; then
|
||||
AC_DEFINE(MKDIR_TAKES_ONE_ARG, 1, [Define if host mkdir takes a
|
||||
single argument.])
|
||||
fi
|
||||
])
|
1085
fastjar/aclocal.m4
vendored
1085
fastjar/aclocal.m4
vendored
File diff suppressed because it is too large
Load diff
|
@ -1,562 +0,0 @@
|
|||
/* $Id: compress.c,v 1.2 2000/12/14 18:45:35 ghazi Exp $
|
||||
|
||||
$Log: compress.c,v $
|
||||
Revision 1.2 2000/12/14 18:45:35 ghazi
|
||||
Warning fixes:
|
||||
|
||||
* compress.c: Include stdlib.h and compress.h.
|
||||
(rcsid): Delete.
|
||||
(report_str_error): Make static.
|
||||
(ez_inflate_str): Delete unused variable. Add parens in if-stmt.
|
||||
(hrd_inflate_str): Likewise.
|
||||
|
||||
* compress.h (init_compression, end_compression, init_inflation,
|
||||
end_inflation): Prototype void arguments.
|
||||
|
||||
* dostime.c (rcsid): Delete.
|
||||
|
||||
* jargrep.c: Include ctype.h, stdlib.h, zlib.h and compress.h.
|
||||
Make functions static. Cast ctype function argument to `unsigned
|
||||
char'. Add parens in if-stmts. Constify.
|
||||
(Usage): Change into a macro.
|
||||
(jargrep): Remove unused parameter.
|
||||
|
||||
* jartool.c: Constify. Add parens in if-stmts. Align
|
||||
signed/unsigned char pointers in functions calls using casts.
|
||||
(rcsid): Delete.
|
||||
(list_jar): Fix printf format specifier.
|
||||
(usage): Chop long string into bits. Reformat.
|
||||
|
||||
* pushback.c (rcsid): Delete.
|
||||
|
||||
Revision 1.1 2000/12/09 03:08:23 apbianco
|
||||
2000-12-08 Alexandre Petit-Bianco <apbianco@cygnus.com>
|
||||
|
||||
* fastjar: Imported.
|
||||
|
||||
Revision 1.7 2000/09/13 14:02:02 cory
|
||||
Reformatted some of the code to more closly match the layout of the orriginal
|
||||
fastjar utility.
|
||||
|
||||
Revision 1.6 2000/09/12 22:29:36 cory
|
||||
Jargrep now seems to do what I want it to do. Performs properly on Linux x86,
|
||||
will test some other platforms later.
|
||||
|
||||
Revision 1.1.1.1 1999/12/06 03:09:16 toast
|
||||
initial checkin..
|
||||
|
||||
|
||||
|
||||
Revision 1.7 1999/05/10 08:50:05 burnsbr
|
||||
*** empty log message ***
|
||||
|
||||
Revision 1.6 1999/05/10 08:38:44 burnsbr
|
||||
*** empty log message ***
|
||||
|
||||
Revision 1.5 1999/05/10 08:30:29 burnsbr
|
||||
added inflation code
|
||||
|
||||
Revision 1.4 1999/04/27 10:03:33 burnsbr
|
||||
added configure support
|
||||
|
||||
Revision 1.3 1999/04/26 02:35:32 burnsbr
|
||||
compression now works.. yahoo
|
||||
|
||||
Revision 1.2 1999/04/23 12:01:59 burnsbr
|
||||
added licence stuff.
|
||||
|
||||
Revision 1.1 1999/04/23 11:58:25 burnsbr
|
||||
Initial revision
|
||||
|
||||
|
||||
*/
|
||||
|
||||
/*
|
||||
compress.c - code for handling deflation
|
||||
Copyright (C) 1999 Bryan Burns
|
||||
Copyright (C) 2004 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License
|
||||
as published by the Free Software Foundation; either version 2
|
||||
of the License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <zlib.h>
|
||||
#include <string.h>
|
||||
#include <stdio.h>
|
||||
#include <errno.h>
|
||||
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#ifdef STDC_HEADERS
|
||||
#include <stdlib.h>
|
||||
#endif
|
||||
|
||||
#include <sys/types.h>
|
||||
|
||||
#include "jartool.h"
|
||||
#include "pushback.h"
|
||||
#include "compress.h"
|
||||
#include "shift.h"
|
||||
|
||||
int write_data (int, void *, size_t, struct zipentry *);
|
||||
|
||||
extern int seekable;
|
||||
extern off_t end_of_entries;
|
||||
|
||||
static z_stream zs;
|
||||
|
||||
void init_compression(){
|
||||
|
||||
memset(&zs, 0, sizeof(z_stream));
|
||||
|
||||
zs.zalloc = Z_NULL;
|
||||
zs.zfree = Z_NULL;
|
||||
zs.opaque = Z_NULL;
|
||||
|
||||
/* Why -MAX_WBITS? zlib has an undocumented feature, where if the windowbits
|
||||
parameter is negative, it omits the zlib header, which seems to kill
|
||||
any other zip/unzip program. This caused me SO much pain.. */
|
||||
if(deflateInit2(&zs, Z_DEFAULT_COMPRESSION, Z_DEFLATED, -MAX_WBITS,
|
||||
9, Z_DEFAULT_STRATEGY) != Z_OK){
|
||||
|
||||
fprintf(stderr, "Error initializing deflation!\n");
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
int
|
||||
write_data (int fd, void *buf, size_t len,
|
||||
struct zipentry *ze __attribute__((unused)))
|
||||
{
|
||||
#ifdef WITH_SHIFT_DOWN
|
||||
struct zipentry *next = NULL;
|
||||
off_t here = lseek (fd, 0, SEEK_CUR);
|
||||
/*
|
||||
* If we are updating and there is not enough space before the next
|
||||
* entry, expand the file.
|
||||
*/
|
||||
if (ze)
|
||||
{
|
||||
next = ze->next_entry;
|
||||
if (next && here + len >= next->offset)
|
||||
{
|
||||
if (shift_down (fd, next->offset, (here + len) - next->offset, next))
|
||||
{
|
||||
perror ("can't expand file");
|
||||
exit (1);
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif /* WITH_SHIFT_DOWN */
|
||||
|
||||
return write (fd, buf, len);
|
||||
}
|
||||
|
||||
int compress_file(int in_fd, int out_fd, struct zipentry *ze,
|
||||
struct zipentry *existing)
|
||||
{
|
||||
Bytef in_buff[RDSZ];
|
||||
Bytef out_buff[RDSZ];
|
||||
unsigned int rdamt, wramt;
|
||||
unsigned long tr = 0;
|
||||
int rtval;
|
||||
|
||||
rdamt = 0;
|
||||
|
||||
zs.avail_in = 0;
|
||||
zs.next_in = in_buff;
|
||||
|
||||
zs.next_out = out_buff;
|
||||
zs.avail_out = (uInt)RDSZ;
|
||||
|
||||
ze->crc = crc32(0L, Z_NULL, 0);
|
||||
|
||||
for(; ;){
|
||||
|
||||
/* If deflate is out of input, fill the input buffer for it */
|
||||
if(zs.avail_in == 0 && zs.avail_out > 0){
|
||||
if((rtval = read(in_fd, in_buff, RDSZ)) == 0)
|
||||
break;
|
||||
|
||||
if(rtval == -1){
|
||||
perror("read");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
rdamt = rtval;
|
||||
|
||||
/* compute the CRC while we're at it */
|
||||
ze->crc = crc32(ze->crc, in_buff, rdamt);
|
||||
|
||||
/* update the total amount read sofar */
|
||||
tr += rdamt;
|
||||
|
||||
zs.next_in = in_buff;
|
||||
zs.avail_in = rdamt;
|
||||
}
|
||||
|
||||
/* deflate the data */
|
||||
if(deflate(&zs, 0) != Z_OK){
|
||||
fprintf(stderr, "Error deflating! %s:%d\n", __FILE__, __LINE__);
|
||||
exit(1);
|
||||
}
|
||||
|
||||
/* If the output buffer is full, dump it to disk */
|
||||
if(zs.avail_out == 0){
|
||||
|
||||
if (write_data (out_fd, out_buff, RDSZ, existing) != RDSZ)
|
||||
{
|
||||
perror("write");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
/* clear the output buffer */
|
||||
zs.next_out = out_buff;
|
||||
zs.avail_out = (uInt)RDSZ;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/* If we have any data waiting in the buffer after we're done with the file
|
||||
we can flush it */
|
||||
if(zs.avail_out < RDSZ){
|
||||
|
||||
wramt = RDSZ - zs.avail_out;
|
||||
|
||||
if (write_data (out_fd, out_buff, wramt, existing) != (int)wramt)
|
||||
{
|
||||
perror("write");
|
||||
exit(1);
|
||||
}
|
||||
/* clear the output buffer */
|
||||
zs.next_out = out_buff;
|
||||
zs.avail_out = (uInt)RDSZ;
|
||||
}
|
||||
|
||||
|
||||
/* finish deflation. This purges zlib's internal data buffers */
|
||||
while(deflate(&zs, Z_FINISH) == Z_OK){
|
||||
wramt = RDSZ - zs.avail_out;
|
||||
|
||||
if (write_data (out_fd, out_buff, wramt, existing) != (int)wramt)
|
||||
{
|
||||
perror("write");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
zs.next_out = out_buff;
|
||||
zs.avail_out = (uInt)RDSZ;
|
||||
}
|
||||
|
||||
/* If there's any data left in the buffer, write it out */
|
||||
if(zs.avail_out != RDSZ){
|
||||
wramt = RDSZ - zs.avail_out;
|
||||
|
||||
if (write_data (out_fd, out_buff, wramt, existing) != (int)wramt)
|
||||
{
|
||||
perror("write");
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
/* update fastjar's entry information */
|
||||
ze->usize = (ub4)zs.total_in;
|
||||
ze->csize = (ub4)zs.total_out;
|
||||
|
||||
/* Reset the deflation for the next time around */
|
||||
if(deflateReset(&zs) != Z_OK){
|
||||
fprintf(stderr, "Error resetting deflation\n");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
void end_compression(){
|
||||
int rtval;
|
||||
|
||||
/* Oddly enough, zlib always returns Z_DATA_ERROR if you specify no
|
||||
zlib header. Go fig. */
|
||||
if((rtval = deflateEnd(&zs)) != Z_OK && rtval != Z_DATA_ERROR){
|
||||
fprintf(stderr, "Error calling deflateEnd\n");
|
||||
fprintf(stderr, "error: (%d) %s\n", rtval, zs.msg);
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void init_inflation(){
|
||||
|
||||
memset(&zs, 0, sizeof(z_stream));
|
||||
|
||||
zs.zalloc = Z_NULL;
|
||||
zs.zfree = Z_NULL;
|
||||
zs.opaque = Z_NULL;
|
||||
|
||||
if(inflateInit2(&zs, -15) != Z_OK){
|
||||
fprintf(stderr, "Error initializing deflation!\n");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
int inflate_file(pb_file *pbf, int out_fd, struct zipentry *ze){
|
||||
Bytef in_buff[RDSZ];
|
||||
Bytef out_buff[RDSZ];
|
||||
unsigned int rdamt;
|
||||
int rtval;
|
||||
ub4 crc = 0;
|
||||
|
||||
zs.avail_in = 0;
|
||||
|
||||
crc = crc32(crc, NULL, 0); /* initialize crc */
|
||||
|
||||
/* loop until we've consumed all the compressed data */
|
||||
for(;;){
|
||||
|
||||
if(zs.avail_in == 0){
|
||||
if((rdamt = pb_read(pbf, in_buff, RDSZ)) == 0)
|
||||
break;
|
||||
else if((int)rdamt < 0){
|
||||
perror("read");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
#ifdef DEBUG
|
||||
printf("%d bytes read\n", rdamt);
|
||||
#endif
|
||||
|
||||
zs.next_in = in_buff;
|
||||
zs.avail_in = rdamt;
|
||||
}
|
||||
|
||||
zs.next_out = out_buff;
|
||||
zs.avail_out = RDSZ;
|
||||
|
||||
if((rtval = inflate(&zs, 0)) != Z_OK){
|
||||
if(rtval == Z_STREAM_END){
|
||||
#ifdef DEBUG
|
||||
printf("end of stream\n");
|
||||
#endif
|
||||
if(zs.avail_out != RDSZ){
|
||||
crc = crc32(crc, out_buff, (RDSZ - zs.avail_out));
|
||||
|
||||
if(out_fd >= 0)
|
||||
if(write(out_fd, out_buff, (RDSZ - zs.avail_out)) !=
|
||||
(int)(RDSZ - zs.avail_out)){
|
||||
perror("write");
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
} else {
|
||||
fprintf(stderr, "Error inflating file! (%d)\n", rtval);
|
||||
exit(1);
|
||||
}
|
||||
} else {
|
||||
if(zs.avail_out != RDSZ){
|
||||
crc = crc32(crc, out_buff, (RDSZ - zs.avail_out));
|
||||
|
||||
if(out_fd >= 0)
|
||||
if(write(out_fd, out_buff, (RDSZ - zs.avail_out)) !=
|
||||
(int)(RDSZ - zs.avail_out)){
|
||||
perror("write");
|
||||
exit(1);
|
||||
}
|
||||
zs.next_out = out_buff;
|
||||
zs.avail_out = RDSZ;
|
||||
}
|
||||
}
|
||||
}
|
||||
#ifdef DEBUG
|
||||
printf("done inflating\n");
|
||||
#endif
|
||||
|
||||
#ifdef DEBUG
|
||||
printf("%d bytes left over\n", zs.avail_in);
|
||||
#endif
|
||||
|
||||
#ifdef DEBUG
|
||||
printf("CRC is %x\n", crc);
|
||||
#endif
|
||||
|
||||
ze->crc = crc;
|
||||
|
||||
pb_push(pbf, zs.next_in, zs.avail_in);
|
||||
|
||||
ze->usize = zs.total_out;
|
||||
|
||||
inflateReset(&zs);
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
Function name: report_str_error
|
||||
args: val Error code returned from zlib.
|
||||
purpose: Put out an error message corresponding to error code returned from zlib.
|
||||
Be suitably cryptic seeing I don't really know exactly what these errors mean.
|
||||
*/
|
||||
|
||||
static void report_str_error(int val) {
|
||||
switch(val) {
|
||||
case Z_STREAM_END:
|
||||
break;
|
||||
case Z_NEED_DICT:
|
||||
fprintf(stderr, "Need a dictionary?\n");
|
||||
exit(1);
|
||||
case Z_DATA_ERROR:
|
||||
fprintf(stderr, "Z_DATA_ERROR\n");
|
||||
exit(1);
|
||||
case Z_STREAM_ERROR:
|
||||
fprintf(stderr, "Z_STREAM_ERROR\n");
|
||||
exit(1);
|
||||
case Z_MEM_ERROR:
|
||||
fprintf(stderr, "Z_MEM_ERROR\n");
|
||||
exit(1);
|
||||
case Z_BUF_ERROR:
|
||||
fprintf(stderr, "Z_BUF_ERROR\n");
|
||||
exit(1);
|
||||
case Z_OK:
|
||||
break;
|
||||
default:
|
||||
fprintf(stderr, "Unknown behavior from inflate\n");
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
Function name: ez_inflate_str
|
||||
args: pbf Pointer to pushback handle for file.
|
||||
csize Compressed size of embedded file.
|
||||
usize Uncompressed size of embedded file.
|
||||
purpose: Read in and decompress the contents of an embedded file and store it in a
|
||||
byte array.
|
||||
returns: Byte array of uncompressed embedded file.
|
||||
*/
|
||||
|
||||
static Bytef *ez_inflate_str(pb_file *pbf, ub4 csize, ub4 usize) {
|
||||
Bytef *out_buff;
|
||||
Bytef *in_buff;
|
||||
unsigned int rdamt;
|
||||
|
||||
if((zs.next_in = in_buff = (Bytef *) malloc(csize))) {
|
||||
if((zs.next_out = out_buff = (Bytef *) malloc(usize + 1))) {
|
||||
if((rdamt = pb_read(pbf, zs.next_in, csize)) == csize) {
|
||||
zs.avail_in = csize;
|
||||
zs.avail_out = usize;
|
||||
report_str_error(inflate(&zs, 0));
|
||||
free(in_buff);
|
||||
inflateReset(&zs);
|
||||
out_buff[usize] = '\0';
|
||||
}
|
||||
else {
|
||||
fprintf(stderr, "Read failed on input file.\n");
|
||||
fprintf(stderr, "Tried to read %u but read %u instead.\n", csize, rdamt);
|
||||
free(in_buff);
|
||||
free(out_buff);
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
else {
|
||||
fprintf(stderr, "Malloc of out_buff failed.\n");
|
||||
fprintf(stderr, "Error: %s\n", strerror(errno));
|
||||
free(in_buff);
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
else {
|
||||
fprintf(stderr, "Malloc of in_buff failed.\n");
|
||||
fprintf(stderr, "Error: %s\n", strerror(errno));
|
||||
exit(1);
|
||||
}
|
||||
|
||||
return out_buff;
|
||||
}
|
||||
|
||||
/*
|
||||
Function name: hrd_inflate_str
|
||||
args: pbf Pointer to pushback handle for file.
|
||||
csize Pointer to compressed size of embedded file.
|
||||
usize Pointer to uncompressed size of embedded file.
|
||||
purpose: Read and decompress an embedded file into a string. Set csize and usize
|
||||
accordingly. This function does the reading for us in the case there is not size
|
||||
information in the header for the embedded file.
|
||||
returns: Byte array of the contents of the embedded file.
|
||||
*/
|
||||
|
||||
static Bytef *hrd_inflate_str(pb_file *pbf, ub4 *csize, ub4 *usize) {
|
||||
Bytef *out_buff;
|
||||
Bytef *tmp;
|
||||
Bytef in_buff[RDSZ];
|
||||
unsigned int rdamt;
|
||||
int i;
|
||||
int zret;
|
||||
|
||||
i = 1;
|
||||
out_buff = NULL;
|
||||
zret = Z_OK;
|
||||
while(zret != Z_STREAM_END && (rdamt = pb_read(pbf, in_buff, RDSZ)))
|
||||
{
|
||||
zs.avail_in = rdamt;
|
||||
zs.avail_out = 0;
|
||||
zs.next_in = in_buff;
|
||||
do {
|
||||
if((tmp = (Bytef *) realloc(out_buff, (RDSZ * i) + 1))) {
|
||||
out_buff = tmp;
|
||||
zs.next_out = &(out_buff[(RDSZ * (i - 1)) - zs.avail_out]);
|
||||
zs.avail_out += RDSZ;
|
||||
i++;
|
||||
}
|
||||
else {
|
||||
fprintf(stderr, "Realloc of out_buff failed.\n");
|
||||
fprintf(stderr, "Error: %s\n", strerror(errno));
|
||||
exit(1);
|
||||
}
|
||||
} while((zret = inflate(&zs, 0)) == Z_OK);
|
||||
report_str_error(zret);
|
||||
}
|
||||
pb_push(pbf, zs.next_in, zs.avail_in);
|
||||
|
||||
out_buff[(RDSZ * (i - 1)) - zs.avail_out] = '\0';
|
||||
*usize = zs.total_out;
|
||||
*csize = zs.total_in;
|
||||
|
||||
inflateReset(&zs);
|
||||
|
||||
return out_buff;
|
||||
}
|
||||
|
||||
/*
|
||||
Function name: inflate_string
|
||||
args: pbf Pointer to pushback handle for file.
|
||||
csize Pointer to compressed size of embedded file. May be 0 if not set.
|
||||
usize Pointer to uncompressed size of embedded file. May be 0 if not set.
|
||||
purpose: Decide the easiest (in computer terms) methos of decompressing this embedded
|
||||
file to a string.
|
||||
returns: Pointer to a string containing the decompressed contents of the embedded file.
|
||||
If csize and usize are not set set them to correct numbers.
|
||||
*/
|
||||
|
||||
Bytef *inflate_string(pb_file *pbf, ub4 *csize, ub4 *usize) {
|
||||
Bytef *ret_buf;
|
||||
|
||||
if(*csize && *usize) ret_buf = ez_inflate_str(pbf, *csize, *usize);
|
||||
else ret_buf = hrd_inflate_str(pbf, csize, usize);
|
||||
|
||||
return ret_buf;
|
||||
}
|
|
@ -1,57 +0,0 @@
|
|||
/* $Id: compress.h,v 1.1 2000/12/09 03:08:23 apbianco Exp $
|
||||
|
||||
$Log: compress.h,v $
|
||||
Revision 1.1 2000/12/09 03:08:23 apbianco
|
||||
2000-12-08 Alexandre Petit-Bianco <apbianco@cygnus.com>
|
||||
|
||||
* fastjar: Imported.
|
||||
|
||||
Revision 1.1.1.1 1999/12/06 03:09:12 toast
|
||||
initial checkin..
|
||||
|
||||
|
||||
|
||||
Revision 1.3 1999/05/10 08:32:09 burnsbr
|
||||
added new function protos.
|
||||
|
||||
Revision 1.2 1999/04/23 12:02:20 burnsbr
|
||||
added licence
|
||||
|
||||
Revision 1.1 1999/04/23 11:59:37 burnsbr
|
||||
Initial revision
|
||||
|
||||
|
||||
*/
|
||||
|
||||
/*
|
||||
compress.h - header for compression
|
||||
Copyright (C) 1999 Bryan Burns
|
||||
|
||||
This program is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License
|
||||
as published by the Free Software Foundation; either version 2
|
||||
of the License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*/
|
||||
|
||||
/* Initializes the compression data structure(s) */
|
||||
void init_compression(void);
|
||||
|
||||
/* Compresses the file specified by in_fd and appends it to out_fd */
|
||||
int compress_file(int, int, struct zipentry *, struct zipentry *);
|
||||
|
||||
/* Frees memory used by compression function */
|
||||
void end_compression(void);
|
||||
|
||||
void init_inflation(void);
|
||||
int inflate_file(pb_file *, int, struct zipentry *);
|
||||
void end_inflation(void);
|
||||
Bytef *inflate_string(pb_file *, ub4 *, ub4 *);
|
|
@ -1,113 +0,0 @@
|
|||
/* config.h.in. Generated from configure.ac by autoheader. */
|
||||
|
||||
/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'.
|
||||
*/
|
||||
#undef HAVE_DIRENT_H
|
||||
|
||||
/* Define to 1 if you have the <fcntl.h> header file. */
|
||||
#undef HAVE_FCNTL_H
|
||||
|
||||
/* Define to 1 if you have the `ftruncate' function. */
|
||||
#undef HAVE_FTRUNCATE
|
||||
|
||||
/* Define to 1 if you have the <inttypes.h> header file. */
|
||||
#undef HAVE_INTTYPES_H
|
||||
|
||||
/* Define to 1 if you have the <limits.h> header file. */
|
||||
#undef HAVE_LIMITS_H
|
||||
|
||||
/* Define to 1 if the system has the type `long long'. */
|
||||
#undef HAVE_LONG_LONG
|
||||
|
||||
/* Define to 1 if you have the <memory.h> header file. */
|
||||
#undef HAVE_MEMORY_H
|
||||
|
||||
/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */
|
||||
#undef HAVE_NDIR_H
|
||||
|
||||
/* Define to 1 if you have the <stdint.h> header file. */
|
||||
#undef HAVE_STDINT_H
|
||||
|
||||
/* Define to 1 if you have the <stdlib.h> header file. */
|
||||
#undef HAVE_STDLIB_H
|
||||
|
||||
/* Define to 1 if you have the <strings.h> header file. */
|
||||
#undef HAVE_STRINGS_H
|
||||
|
||||
/* Define to 1 if you have the <string.h> header file. */
|
||||
#undef HAVE_STRING_H
|
||||
|
||||
/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'.
|
||||
*/
|
||||
#undef HAVE_SYS_DIR_H
|
||||
|
||||
/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR'.
|
||||
*/
|
||||
#undef HAVE_SYS_NDIR_H
|
||||
|
||||
/* Define to 1 if you have the <sys/param.h> header file. */
|
||||
#undef HAVE_SYS_PARAM_H
|
||||
|
||||
/* Define to 1 if you have the <sys/stat.h> header file. */
|
||||
#undef HAVE_SYS_STAT_H
|
||||
|
||||
/* Define to 1 if you have the <sys/types.h> header file. */
|
||||
#undef HAVE_SYS_TYPES_H
|
||||
|
||||
/* Define to 1 if you have the <unistd.h> header file. */
|
||||
#undef HAVE_UNISTD_H
|
||||
|
||||
/* Define to 1 if you have the `_chsize' function. */
|
||||
#undef HAVE__CHSIZE
|
||||
|
||||
/* Define if host mkdir takes a single argument. */
|
||||
#undef MKDIR_TAKES_ONE_ARG
|
||||
|
||||
/* Name of package */
|
||||
#undef PACKAGE
|
||||
|
||||
/* Define to the address where bug reports for this package should be sent. */
|
||||
#undef PACKAGE_BUGREPORT
|
||||
|
||||
/* Define to the full name of this package. */
|
||||
#undef PACKAGE_NAME
|
||||
|
||||
/* Define to the full name and version of this package. */
|
||||
#undef PACKAGE_STRING
|
||||
|
||||
/* Define to the one symbol short name of this package. */
|
||||
#undef PACKAGE_TARNAME
|
||||
|
||||
/* Define to the version of this package. */
|
||||
#undef PACKAGE_VERSION
|
||||
|
||||
/* The size of a `char', as computed by sizeof. */
|
||||
#undef SIZEOF_CHAR
|
||||
|
||||
/* The size of a `int', as computed by sizeof. */
|
||||
#undef SIZEOF_INT
|
||||
|
||||
/* The size of a `long', as computed by sizeof. */
|
||||
#undef SIZEOF_LONG
|
||||
|
||||
/* The size of a `long long', as computed by sizeof. */
|
||||
#undef SIZEOF_LONG_LONG
|
||||
|
||||
/* The size of a `short', as computed by sizeof. */
|
||||
#undef SIZEOF_SHORT
|
||||
|
||||
/* Define to 1 if you have the ANSI C header files. */
|
||||
#undef STDC_HEADERS
|
||||
|
||||
/* Define to 1 if your <sys/time.h> declares `struct tm'. */
|
||||
#undef TM_IN_SYS_TIME
|
||||
|
||||
/* Version number of package */
|
||||
#undef VERSION
|
||||
|
||||
/* Define to 1 if your processor stores words with the most significant byte
|
||||
first (like Motorola and SPARC, unlike Intel and VAX). */
|
||||
#undef WORDS_BIGENDIAN
|
||||
|
||||
/* Define to `long' if <sys/types.h> does not define. */
|
||||
#undef off_t
|
8385
fastjar/configure
vendored
8385
fastjar/configure
vendored
File diff suppressed because it is too large
Load diff
|
@ -1,92 +0,0 @@
|
|||
dnl Process this file with autoconf to produce a configure script.
|
||||
AC_PREREQ(2.59)
|
||||
AC_INIT(jartool.h)
|
||||
AM_INIT_AUTOMAKE(fastjar, 0.92-gcc)
|
||||
AM_CONFIG_HEADER(config.h)
|
||||
|
||||
dnl Checks for programs.
|
||||
AC_PROG_CC
|
||||
AC_PROG_INSTALL
|
||||
AC_PATH_PROG(RM, rm, /bin/rm, $PATH:/bin:/usr/bin:/usr/local/bin)
|
||||
AC_PATH_PROG(CP, cp, /bin/cp, $PATH:/bin:/usr/bin:/usr/local/bin)
|
||||
AC_PATH_PROG(STRIP, strip, /usr/bin/strip, $PATH:/bin:/usr/bin:/usr/local/bin)
|
||||
AC_PATH_PROG(CHMOD, chmod, /bin/chmod, $PATH:/bin:/usr/bin:/usr/local/bin)
|
||||
AC_EXEEXT
|
||||
|
||||
AM_MAINTAINER_MODE
|
||||
|
||||
dnl Add warning flags if we are using gcc.
|
||||
if test "$GCC" = yes; then
|
||||
fastjar_warn_cflags='-W -Wall -pedantic -Wstrict-prototypes -Wmissing-prototypes -Wwrite-strings'
|
||||
fi
|
||||
AC_SUBST(fastjar_warn_cflags)
|
||||
|
||||
dnl Checks for header files.
|
||||
AC_HEADER_DIRENT
|
||||
AC_HEADER_STDC
|
||||
AC_STRUCT_TM
|
||||
AC_CHECK_HEADERS(fcntl.h unistd.h sys/param.h stdlib.h limits.h)
|
||||
|
||||
AC_CHECK_FUNCS(ftruncate _chsize)
|
||||
|
||||
dnl Checks for typedefs, structures, and compiler characteristics.
|
||||
AC_TYPE_OFF_T
|
||||
AC_STRUCT_TM
|
||||
|
||||
# mkdir takes a single argument on some systems.
|
||||
gcc_AC_FUNC_MKDIR_TAKES_ONE_ARG
|
||||
|
||||
dnl Check for type-widths
|
||||
AC_CHECK_SIZEOF(char)
|
||||
AC_CHECK_SIZEOF(short)
|
||||
AC_CHECK_SIZEOF(int)
|
||||
AC_CHECK_SIZEOF(long)
|
||||
AC_CHECK_TYPES([long long],[AC_CHECK_SIZEOF(long long)])
|
||||
|
||||
dnl Check byte order
|
||||
AC_C_BIGENDIAN
|
||||
|
||||
AC_ARG_WITH(system-zlib,
|
||||
[ --with-system-zlib use installed libz])
|
||||
|
||||
ZLIBS=
|
||||
ZDEPS=
|
||||
ZINCS=
|
||||
use_zlib=maybe
|
||||
if test "$with_system_zlib" = yes; then
|
||||
AC_CHECK_LIB(z, deflate, ZLIBS=-lz, use_zlib=no)
|
||||
else
|
||||
use_zlib=no
|
||||
fi
|
||||
|
||||
if test "$use_zlib" = no; then
|
||||
# Brain dead way to find tree's zlib.
|
||||
ZDEPS='$(top_builddir)/../zlib/libz.a'
|
||||
ZLIBS="$ZDEPS -L\$(here)/../zlib/$libsubdir"
|
||||
ZINCS='-I$(top_srcdir)/../zlib'
|
||||
fi
|
||||
AC_SUBST(ZLIBS)
|
||||
AC_SUBST(ZDEPS)
|
||||
AC_SUBST(ZINCS)
|
||||
|
||||
# GCC LOCAL CHANGE
|
||||
# We would like to our source tree to be readonly. However when releases or
|
||||
# pre-releases are generated, the man pages need to be included as they are
|
||||
# converted from the texi files via perl which we don't require end users to
|
||||
# have installed.
|
||||
# Therefore we have --enable-generated-files-in-srcdir to do just that.
|
||||
|
||||
AC_MSG_CHECKING([whether to place generated files in the source directory])
|
||||
dnl generated-files-in-srcdir is disabled by default
|
||||
AC_ARG_ENABLE(generated-files-in-srcdir,
|
||||
[ --enable-generated-files-in-srcdir
|
||||
put copies of generated files in source dir
|
||||
intended for creating source tarballs for users
|
||||
without texinfo, perl, bison or flex.],
|
||||
generated_files_in_srcdir=$enableval,
|
||||
generated_files_in_srcdir=no)
|
||||
|
||||
AC_MSG_RESULT($generated_files_in_srcdir)
|
||||
AM_CONDITIONAL(GENINSRC, test x$generated_files_in_srcdir = xyes)
|
||||
|
||||
AC_OUTPUT(Makefile install-defs.sh)
|
|
@ -1,81 +0,0 @@
|
|||
/* dostime.c - convert dos time to/from time_t.
|
||||
|
||||
Copyright (C) 2002 Free Software Foundation
|
||||
|
||||
This program is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License
|
||||
as published by the Free Software Foundation; either version 2
|
||||
of the License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*/
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <time.h>
|
||||
|
||||
#include <stddef.h>
|
||||
|
||||
#include "dostime.h"
|
||||
|
||||
/*
|
||||
* The specification to which this was written. From Joe Buck.
|
||||
* The DOS format appears to have only 2 second resolution. It is an
|
||||
* unsigned long, and ORs together
|
||||
*
|
||||
* (year-1980)<<25
|
||||
* month<<21 (month is tm_mon + 1, 1=Jan through 12=Dec)
|
||||
* day<<16 (day is tm_mday, 1-31)
|
||||
* hour<<11 (hour is tm_hour, 0-23)
|
||||
* min<<5 (min is tm_min, 0-59)
|
||||
* sec>>1 (sec is tm_sec, 0-59, that's right, we throw away the LSB)
|
||||
*
|
||||
* DOS uses local time, so the localtime() call is used to turn the time_t
|
||||
* into a struct tm.
|
||||
*/
|
||||
|
||||
time_t
|
||||
dos2unixtime (unsigned long dostime)
|
||||
{
|
||||
struct tm ltime;
|
||||
time_t now = time (NULL);
|
||||
|
||||
/* Call localtime to initialize timezone in TIME. */
|
||||
ltime = *localtime (&now);
|
||||
|
||||
ltime.tm_year = (dostime >> 25) + 80;
|
||||
ltime.tm_mon = ((dostime >> 21) & 0x0f) - 1;
|
||||
ltime.tm_mday = (dostime >> 16) & 0x1f;
|
||||
ltime.tm_hour = (dostime >> 11) & 0x0f;
|
||||
ltime.tm_min = (dostime >> 5) & 0x3f;
|
||||
ltime.tm_sec = (dostime & 0x1f) << 1;
|
||||
|
||||
ltime.tm_wday = -1;
|
||||
ltime.tm_yday = -1;
|
||||
ltime.tm_isdst = -1;
|
||||
|
||||
return mktime (<ime);
|
||||
}
|
||||
|
||||
unsigned long
|
||||
unix2dostime (time_t *time)
|
||||
{
|
||||
struct tm *ltime = localtime (time);
|
||||
int year = ltime->tm_year - 80;
|
||||
if (year < 0)
|
||||
year = 0;
|
||||
|
||||
return (year << 25
|
||||
| (ltime->tm_mon + 1) << 21
|
||||
| ltime->tm_mday << 16
|
||||
| ltime->tm_hour << 11
|
||||
| ltime->tm_min << 5
|
||||
| ltime->tm_sec >> 1);
|
||||
}
|
|
@ -1,21 +0,0 @@
|
|||
/*
|
||||
dostime.h - function prototypes
|
||||
Copyright (C) 1999, 2002 Bryan Burns
|
||||
|
||||
This program is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License
|
||||
as published by the Free Software Foundation; either version 2
|
||||
of the License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*/
|
||||
|
||||
time_t dos2unixtime(unsigned long dostime);
|
||||
unsigned long unix2dostime(time_t*);
|
|
@ -1,236 +0,0 @@
|
|||
\input texinfo @c -*-texinfo-*-
|
||||
@setfilename fastjar.info
|
||||
@settitle Guide to GNU jar utilites
|
||||
|
||||
@c Note: When reading this manual you'll find lots of strange
|
||||
@c circumlocutions like ``compiler for the Java language''.
|
||||
@c This is necessary due to Sun's restrictions on the use of
|
||||
@c the word ``Java'.
|
||||
|
||||
@c When this manual is copyrighted.
|
||||
@set copyrights-fastjar 2002
|
||||
|
||||
@include gcc-common.texi
|
||||
|
||||
@c Versions
|
||||
@set which-gcj GCC-@value{version-GCC}
|
||||
|
||||
@ifinfo
|
||||
@format
|
||||
@dircategory Programming
|
||||
@direntry
|
||||
* fastjar: (fastjar). GNU jar utilities
|
||||
@end direntry
|
||||
|
||||
@dircategory Individual utilities
|
||||
@direntry
|
||||
* fastjar: (fastjar)Invoking fastjar.
|
||||
An archive tool for Java archives
|
||||
* grepjar: (fastjar)Invoking grepjar.
|
||||
Search files in a jar file for a pattern
|
||||
@end direntry
|
||||
@end format
|
||||
|
||||
@c man begin COPYRIGHT
|
||||
Copyright (C) @value{copyrights-fastjar} Matthias Klose
|
||||
|
||||
Permission is granted to copy, distribute and/or modify this document
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation; either version 2, or (at your option) any
|
||||
later version. A copy of the license is included in the
|
||||
@c man end
|
||||
section entitled ``GNU General Public License''.
|
||||
@ignore
|
||||
@c man begin COPYRIGHT
|
||||
man page gpl(7).
|
||||
@c man end
|
||||
@end ignore
|
||||
@end ifinfo
|
||||
|
||||
@titlepage
|
||||
@title GNU jar utilites
|
||||
@author Brian Burns
|
||||
|
||||
@page
|
||||
@vskip 0pt plus 1filll
|
||||
Copyright @copyright{} @value{copyrights-gcj} Matthias Klose
|
||||
@sp 2
|
||||
For the @value{which-gcj} Version*
|
||||
@sp 1
|
||||
Published by the Free Software Foundation @*
|
||||
51 Franklin Street, Fifth Floor@*
|
||||
Boston, MA 02110-1301, USA@*
|
||||
@sp 1
|
||||
Permission is granted to copy, distribute and/or modify this document
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation; either version 2, or (at your option) any
|
||||
later version. A copy of the license is included in the
|
||||
section entitled ``GNU General Public License''.
|
||||
@end titlepage
|
||||
@contents
|
||||
@page
|
||||
|
||||
|
||||
@node Top
|
||||
@top Introduction
|
||||
|
||||
This manual describes how to use @command{fastjar} and @command{grepjar}.
|
||||
|
||||
@menu
|
||||
* Invoking fastjar:: Options supported by @command{fastjar}
|
||||
* Invoking grepjar:: Options supported by @command{grepjar}
|
||||
* Copying:: The GNU General Public License
|
||||
@end menu
|
||||
|
||||
@node Invoking fastjar
|
||||
@chapter Invoking fastjar
|
||||
|
||||
@c man title fastjar archive tool for Java archives
|
||||
|
||||
@c man begin DESCRIPTION fastjar
|
||||
|
||||
@code{fastjar} is an implementation of Sun's jar utility that comes with
|
||||
the JDK, written entirely in C, and runs in a fraction of the time while
|
||||
being feature compatible.
|
||||
|
||||
If any file is a directory then it is processed recursively. The
|
||||
manifest file name and the archive file name needs to be specified in
|
||||
the same order the @option{-m} and @option{-f} flags are specified.
|
||||
|
||||
@c man end
|
||||
|
||||
@ignore
|
||||
@c man begin SYNOPSIS fastjar
|
||||
fastjar @option{-ctxu} [@option{OPTIONS}] [@var{jar-file}] [@var{manifest-file}] [@option{-C} @var{dir}] @var{files}@dots{}
|
||||
@c man end
|
||||
@c man begin SEEALSO fastjar
|
||||
gcj(1), gij(1), grepjar(1)
|
||||
and the Info entry for @file{gcj}.
|
||||
@c man end
|
||||
@end ignore
|
||||
|
||||
@c man begin OPTIONS fastjar
|
||||
|
||||
Exactly one of the following actions must be specified:
|
||||
|
||||
@table @gcctabopt
|
||||
|
||||
@item -c
|
||||
Create new archive.
|
||||
|
||||
@item -t
|
||||
List table of contents for archive.
|
||||
|
||||
@item -x
|
||||
Extract named (or all) files from archive.
|
||||
|
||||
@item -u
|
||||
Update existing archive.
|
||||
|
||||
@end table
|
||||
|
||||
The following parameters are optional:
|
||||
|
||||
@table @gcctabopt
|
||||
|
||||
@item -@@
|
||||
Read the names of the files to add to the archive from stdin. This
|
||||
option is supported only in combination with @option{-c} or @option{-u}.
|
||||
Non standard option added in the GCC version.
|
||||
|
||||
@item -C @var{directory}
|
||||
Change to the @var{directory} and include the following file.
|
||||
|
||||
@item -E
|
||||
Prevent fastjar from reading the content of a directory when specifying
|
||||
one (and instead relying on the provided list of files to populate the
|
||||
archive with regard to the directory entry). Non standard option added
|
||||
in the GCC version.
|
||||
|
||||
@item -M
|
||||
Do not create a manifest file for the entries.
|
||||
|
||||
@item -i
|
||||
Generate an index of the packages in this jar and its Class-Path
|
||||
(currently a no-op for jar command-line compatibility).
|
||||
|
||||
@item -0
|
||||
Store only; use no ZIP compression.
|
||||
|
||||
@item -V
|
||||
@itemx --version
|
||||
Display version information.
|
||||
|
||||
@item -f @var{archive}
|
||||
Specify archive file name.
|
||||
|
||||
@item -m @var{manifest}
|
||||
Include manifest information from specified @var{manifest} file.
|
||||
|
||||
@item -v
|
||||
Generate verbose output on standard output.
|
||||
|
||||
@end table
|
||||
|
||||
All remaining options are considered to be names of files.
|
||||
|
||||
@c man end
|
||||
|
||||
@node Invoking grepjar
|
||||
@chapter Invoking grepjar
|
||||
|
||||
@c man title grepjar search files in a jar file for a pattern
|
||||
|
||||
@c man begin DESCRIPTION grepjar
|
||||
|
||||
The @code{grepjar} program can be used to search files in a jar file for
|
||||
a pattern.
|
||||
|
||||
@c man end
|
||||
|
||||
@ignore
|
||||
@c man begin SYNOPSIS grepjar
|
||||
grepjar [@option{-bcinsw}] @option{-e} @var{PATTERN} | @var{PATTERN} @var{files}@dots{}
|
||||
@c man end
|
||||
@c man begin SEEALSO grepjar
|
||||
fastjar(1), gcj(1), gij(1), gfdl(7) and the Info entry for @file{gcj}.
|
||||
@c man end
|
||||
@end ignore
|
||||
|
||||
@c man begin OPTIONS grepjar
|
||||
|
||||
@table @gcctabopt
|
||||
@item -b
|
||||
Print byte offset of match.
|
||||
|
||||
@item -c
|
||||
Print number of matches.
|
||||
|
||||
@item -i
|
||||
Compare case-insensitively.
|
||||
|
||||
@item -n
|
||||
Print line number of each match.
|
||||
|
||||
@item -s
|
||||
Suppress error messages.
|
||||
|
||||
@item -w
|
||||
Force @var{PATTERN} to match only whole words.
|
||||
|
||||
@item -e @var{PATTERN}
|
||||
Use @var{PATTERN} as regular expression.
|
||||
|
||||
@item --help
|
||||
Print help, then exit.
|
||||
|
||||
@item -V
|
||||
@itemx --version
|
||||
Print version number, then exit.
|
||||
@end table
|
||||
|
||||
@c man end
|
||||
|
||||
@include gpl.texi
|
||||
|
||||
@bye
|
|
@ -1,7 +0,0 @@
|
|||
CP=@CP@
|
||||
STRIP=@STRIP@
|
||||
CHMOD=@CHMOD@
|
||||
|
||||
prefix=@prefix@
|
||||
exec_prefix=@exec_prefix@
|
||||
BINDIR=@bindir@
|
|
@ -1,791 +0,0 @@
|
|||
/*
|
||||
jargrep.c - main functions for jargrep utility
|
||||
Copyright (C) 2002, 2003, 2006 Free Software Foundation
|
||||
Copyright (C) 1999, 2000 Bryan Burns
|
||||
Copyright (C) 2000 Cory Hollingsworth
|
||||
|
||||
Parts of this program are base on Bryan Burns work with fastjar
|
||||
Copyright (C) 1999.
|
||||
|
||||
This program is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License
|
||||
as published by the Free Software Foundation; either version 2
|
||||
of the License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*/
|
||||
|
||||
/* Id: jargrep.c,v 1.5 2002/01/03 04:57:56 rodrigc Exp
|
||||
|
||||
Log: jargrep.c,v
|
||||
Revision 1.5 2002/01/03 04:57:56 rodrigc
|
||||
2001-01-02 Craig Rodrigues <rodrigc@gcc.gnu.org>
|
||||
|
||||
PR bootstrap/5117
|
||||
* configure.in (AC_CHECK_HEADERS): Check for stdlib.h.
|
||||
* Makefile.am: Move grepjar to bin_PROGRAMS.
|
||||
* config.h.in: Regenerated.
|
||||
* Makefile.in: Regenerated.
|
||||
* aclocal.m4: Regenerated.
|
||||
* jargrep.c: Eliminate some signed/unsigned and default
|
||||
uninitialized warnings. Use HAVE_STDLIB_H instead of
|
||||
STDC_HEADERS macro.
|
||||
* jartool.c: Likewise.
|
||||
* compress.c: Likewise.
|
||||
|
||||
Revision 1.4 2000/12/15 18:45:09 tromey
|
||||
* jargrep.c: Include getopt.h if it exists.
|
||||
(optind): Declare.
|
||||
* configure, config.h: Rebuilt.
|
||||
* configure.in: Check for getopt.h.
|
||||
|
||||
Revision 1.3 2000/12/14 18:45:35 ghazi
|
||||
Warning fixes:
|
||||
|
||||
* compress.c: Include stdlib.h and compress.h.
|
||||
(rcsid): Delete.
|
||||
(report_str_error): Make static.
|
||||
(ez_inflate_str): Delete unused variable. Add parens in if-stmt.
|
||||
(hrd_inflate_str): Likewise.
|
||||
|
||||
* compress.h (init_compression, end_compression, init_inflation,
|
||||
end_inflation): Prototype void arguments.
|
||||
|
||||
* dostime.c (rcsid): Delete.
|
||||
|
||||
* jargrep.c: Include ctype.h, stdlib.h, zlib.h and compress.h.
|
||||
Make functions static. Cast ctype function argument to `unsigned
|
||||
char'. Add parens in if-stmts. Constify.
|
||||
(Usage): Change into a macro.
|
||||
(jargrep): Remove unused parameter.
|
||||
|
||||
* jartool.c: Constify. Add parens in if-stmts. Align
|
||||
signed/unsigned char pointers in functions calls using casts.
|
||||
(rcsid): Delete.
|
||||
(list_jar): Fix printf format specifier.
|
||||
(usage): Chop long string into bits. Reformat.
|
||||
|
||||
* pushback.c (rcsid): Delete.
|
||||
|
||||
Revision 1.2 2000/12/11 02:59:55 apbianco
|
||||
2000-12-10 Robert Lipe <robertlipe@usa.net>
|
||||
|
||||
* jargrep.c (jargrep): Added null statement after case.
|
||||
|
||||
2000-12-10 Alexandre Petit-Bianco <apbianco@cygnus.com>
|
||||
|
||||
* Makefile: Removed.
|
||||
* Makefile.in: Rebuilt with `-i' and `--enable-foreign'.
|
||||
|
||||
(http://gcc.gnu.org/ml/gcc/2000-12/msg00294.html)
|
||||
|
||||
Revision 1.1 2000/12/09 03:08:23 apbianco
|
||||
2000-12-08 Alexandre Petit-Bianco <apbianco@cygnus.com>
|
||||
|
||||
* fastjar: Imported.
|
||||
|
||||
Revision 1.8 2000/09/13 14:02:02 cory
|
||||
Reformatted some of the code to more closly match the layout of the orriginal
|
||||
fastjar utility.
|
||||
|
||||
Revision 1.7 2000/09/12 22:29:36 cory
|
||||
Jargrep now seems to do what I want it to do. Performs properly on Linux x86,
|
||||
will test some other platforms later.
|
||||
|
||||
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
#include <stdio.h>
|
||||
#include <unistd.h>
|
||||
#include <errno.h>
|
||||
#include <string.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <fcntl.h>
|
||||
#include <ctype.h>
|
||||
#ifdef HAVE_STDLIB_H
|
||||
#include <stdlib.h>
|
||||
#endif
|
||||
|
||||
#include "xregex.h"
|
||||
|
||||
#include "jargrep.h"
|
||||
#include "jartool.h"
|
||||
#include "pushback.h"
|
||||
#include "zipfile.h"
|
||||
#include "zlib.h"
|
||||
#include "compress.h"
|
||||
#include <getopt.h>
|
||||
|
||||
void version(void);
|
||||
void help(const char *name);
|
||||
|
||||
#define Usage "Usage: %s [-bcinsVw] [--version|--help] <-e PATTERN | PATTERN> FILE ...\n"
|
||||
|
||||
/*
|
||||
Function name: opt_valid
|
||||
arg: options Bitfield flag that contains the command line options of grepjar.
|
||||
purpose: To guard agains the occurance of certain incompatible flags being used
|
||||
together.
|
||||
returns: TRUE if options are valid, FALSE otherwise.
|
||||
*/
|
||||
|
||||
static int opt_valid(int options) {
|
||||
int retflag;
|
||||
|
||||
if((options & JG_PRINT_COUNT) &&
|
||||
(options & (JG_PRINT_BYTEOFFSET | JG_PRINT_LINE_NUMBER)))
|
||||
{
|
||||
retflag = FALSE;
|
||||
}
|
||||
else retflag = TRUE;
|
||||
|
||||
return retflag;
|
||||
}
|
||||
|
||||
/*
|
||||
Function name: create_regexp
|
||||
args: regstr String containing the uncompiled regular expression. This may be the
|
||||
expression as is passed in through argv.
|
||||
options This is the flag containing the commandline options that have been
|
||||
parsed by getopt.
|
||||
purpose: Handle the exception handling involved with setting upt a new regular
|
||||
expression.
|
||||
returns: Newly allocated compile regular expression ready to be used in an regexec call.
|
||||
*/
|
||||
|
||||
static regex_t *create_regexp(const char *regstr, int options) {
|
||||
regex_t *exp;
|
||||
int errcode;
|
||||
int msgsize;
|
||||
char *errmsg;
|
||||
|
||||
if((exp = (regex_t *) malloc(sizeof(regex_t))))
|
||||
{
|
||||
if((errcode = regcomp(exp, regstr, (options & JG_IGNORE_CASE) ? REG_ICASE : 0))) {
|
||||
fprintf(stderr, "regcomp of regex failed,\n");
|
||||
if((errmsg = (char *) malloc(msgsize = regerror(errcode, exp, NULL, 0) + 1))) {
|
||||
regerror(errcode, exp, errmsg, msgsize);
|
||||
fprintf(stderr, "Error: %s\n", errmsg);
|
||||
free(exp);
|
||||
free(errmsg);
|
||||
exit(1);
|
||||
}
|
||||
else {
|
||||
fprintf(stderr, "Malloc of errmsg failed.\n");
|
||||
fprintf(stderr, "Error: %s\n", strerror(errno));
|
||||
free(exp);
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
fprintf(stderr, "Malloc of regex failed,\n");
|
||||
fprintf(stderr, "Error: %s\n", strerror(errno));
|
||||
exit(1);
|
||||
}
|
||||
|
||||
return exp;
|
||||
}
|
||||
|
||||
/*
|
||||
Function name: check_sig
|
||||
args: scratch Pointer to array of bytes containing signature.
|
||||
pbf Pointer to push back handle for jar file.
|
||||
purpose: Verify that checksum is correct.
|
||||
returns: 0, 1, or 2. 0 means we are ready to read embedded file information. 1 means
|
||||
we have read beyound the embedded file list and can exit knowing we have read all the
|
||||
relevent information. 2 means we still haven't reached embdedded file list and need to
|
||||
do some more reading.
|
||||
*/
|
||||
static int check_sig(ub1 *scratch, pb_file *pbfp) {
|
||||
ub4 signature;
|
||||
int retflag = 0;
|
||||
|
||||
signature = UNPACK_UB4(scratch, 0);
|
||||
|
||||
#ifdef DEBUG
|
||||
printf("signature is %x\n", signature);
|
||||
#endif
|
||||
if(signature == 0x08074b50){
|
||||
#ifdef DEBUG
|
||||
printf("skipping data descriptor\n");
|
||||
#endif
|
||||
pb_read(pbfp, scratch, 12);
|
||||
retflag = 2;
|
||||
} else if(signature == 0x02014b50){
|
||||
#ifdef DEBUG
|
||||
printf("Central header reached.. we're all done!\n");
|
||||
#endif
|
||||
retflag = 1;
|
||||
}else if(signature != 0x04034b50){
|
||||
printf("Ick! %#x\n", signature);
|
||||
retflag = 1;
|
||||
}
|
||||
|
||||
return retflag;
|
||||
}
|
||||
|
||||
/*
|
||||
Function name: decd_siz
|
||||
args csize Pointer to embedded file's compressed size.
|
||||
usize Pointer to embedded file's uncmpressed size.
|
||||
fnlen Pointer to embedded file's file name length.
|
||||
elfen Pointer to length of extra fields in jar file.
|
||||
flags Pointer to bitmapped flags.
|
||||
method Pointer to indicator of storage method of embedded file.
|
||||
file_header Pointer to string containing the above values to be unbacked.
|
||||
Purpose: Unpack the series of values from file_header.
|
||||
*/
|
||||
|
||||
static void decd_siz(ub4 *csize, ub4 *usize, ub2 *fnlen, ub2 *eflen, ub2 *flags, ub2 *method, ub1 *file_header) {
|
||||
*csize = UNPACK_UB4(file_header, LOC_CSIZE);
|
||||
#ifdef DEBUG
|
||||
printf("Compressed size is %u\n", *csize);
|
||||
#endif
|
||||
|
||||
*usize = UNPACK_UB4(file_header, LOC_USIZE);
|
||||
#ifdef DEBUG
|
||||
printf("Uncompressed size is %u\n", *usize);
|
||||
#endif
|
||||
|
||||
*fnlen = UNPACK_UB2(file_header, LOC_FNLEN);
|
||||
#ifdef DEBUG
|
||||
printf("Filename length is %hu\n", *fnlen);
|
||||
#endif
|
||||
|
||||
*eflen = UNPACK_UB2(file_header, LOC_EFLEN);
|
||||
#ifdef DEBUG
|
||||
printf("Extra field length is %hu\n", *eflen);
|
||||
#endif
|
||||
|
||||
*flags = UNPACK_UB2(file_header, LOC_EXTRA);
|
||||
#ifdef DEBUG
|
||||
printf("Flags are %#hx\n", *flags);
|
||||
#endif
|
||||
|
||||
*method = UNPACK_UB2(file_header, LOC_COMP);
|
||||
#ifdef DEBUG
|
||||
printf("Compression method is %#hx\n", *method);
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
Function name: new_filename
|
||||
args: pbf Pointer to push back file handle. Used for reading input file.
|
||||
len Length of file name to be read.
|
||||
purpose: Read in the embedded file name from jar file.
|
||||
returns: Pointer to newly allocated string containing file name.
|
||||
*/
|
||||
|
||||
static char *new_filename(pb_file *pbf, ub4 len) {
|
||||
char *filename;
|
||||
|
||||
if(!(filename = (char *) malloc(len + 1))) {
|
||||
fprintf(stderr, "Malloc failed of filename\n");
|
||||
fprintf(stderr, "Error: %s\n", strerror(errno));
|
||||
}
|
||||
pb_read(pbf, filename, len);
|
||||
filename[len] = '\0';
|
||||
|
||||
#ifdef DEBUG
|
||||
printf("filename is %s\n", filename);
|
||||
#endif
|
||||
|
||||
return filename;
|
||||
}
|
||||
|
||||
/*
|
||||
Funtion name: read_string
|
||||
args: pbf Pointer to push back file handle. Used for reading input file.
|
||||
size Size of embedded file in bytes.
|
||||
purpose: Create a string containing the contents of the embedded noncompressed file.
|
||||
returns: Pointer to newly allocated string containing embedded file contents.
|
||||
*/
|
||||
|
||||
static char *read_string(pb_file *pbf, int size) {
|
||||
char *page;
|
||||
|
||||
if((page = (char *) malloc(size + 1))) {
|
||||
pb_read(pbf, page, size);
|
||||
page[size] = '\0';
|
||||
}
|
||||
else {
|
||||
fprintf(stderr, "Malloc of page buffer failed.\n");
|
||||
fprintf(stderr, "Error: %s\n", strerror(errno));
|
||||
exit(1);
|
||||
}
|
||||
|
||||
return page;
|
||||
}
|
||||
|
||||
/*
|
||||
Function name: extract_line
|
||||
args: stream String containing the full contents of a file which is to be substringed
|
||||
in order to provide line representing our grep output.
|
||||
begin Index into stream which regular expression first matches.
|
||||
end Index into stream which end of match to the regular expression.
|
||||
b Pointer to the index of what will be the beginning of the line when
|
||||
string is returned. Used for -b option.
|
||||
purpose: Create a string that can be printed by jargrep from the long string stream.
|
||||
The matching line that is printed out by jargrep is generated by this function.
|
||||
returns: Pointer to newly allocated string containing matched expression.
|
||||
*/
|
||||
|
||||
static char *extract_line(const char *stream, regoff_t begin, regoff_t end, int *b) {
|
||||
int e;
|
||||
int length;
|
||||
char *retstr;
|
||||
|
||||
for(*b = begin; *b >= 0 && !iscntrl((unsigned char)stream[*b]); (*b)--);
|
||||
(*b)++;
|
||||
for(e = end; stream[e] == '\t' || !iscntrl((unsigned char)stream[e]); e++);
|
||||
length = e - *b;
|
||||
if((retstr = (char *) malloc(length + 1))) {
|
||||
sprintf(retstr, "%d:", *b);
|
||||
strncpy(retstr, &(stream[*b]), length);
|
||||
retstr[length] = '\0';
|
||||
}
|
||||
else {
|
||||
fprintf(stderr, "Malloc failed of output string.\n");
|
||||
fprintf(stderr, "Error: %s\n", strerror(errno));
|
||||
exit(1);
|
||||
}
|
||||
|
||||
return retstr;
|
||||
}
|
||||
|
||||
/*
|
||||
Function name: chk_wrd
|
||||
args: exp Pointer to compiled POSIX style regular expression of search target.
|
||||
str String known to contain at least one match of exp.
|
||||
purpose: Verify that the occurance of the regular expression in str occurs as a whole
|
||||
word and not a substring of another word.
|
||||
returns: TRUE if it is a word, FALSE of it is a substring.
|
||||
*/
|
||||
|
||||
static int chk_wrd(regex_t *exp, const char *str) {
|
||||
int wrd_fnd = FALSE;
|
||||
int frnt_ok;
|
||||
int bck_ok;
|
||||
const char *str2;
|
||||
regmatch_t match;
|
||||
|
||||
str2 = str;
|
||||
frnt_ok = bck_ok = FALSE;
|
||||
while(!wrd_fnd && !regexec(exp, str2, 1, &match, 0)) {
|
||||
if(!match.rm_so && (str2 == str)) frnt_ok = TRUE;
|
||||
else if(!isalnum((unsigned char)str2[match.rm_so - 1])
|
||||
&& str2[match.rm_so - 1] != '_')
|
||||
frnt_ok = TRUE;
|
||||
else frnt_ok = FALSE;
|
||||
if(frnt_ok) {
|
||||
if(str2[match.rm_eo] == '\0') bck_ok = TRUE;
|
||||
else if(!isalnum((unsigned char)str2[match.rm_eo])
|
||||
&& str2[match.rm_eo] != '_')
|
||||
bck_ok = TRUE;
|
||||
else bck_ok = FALSE;
|
||||
}
|
||||
wrd_fnd = frnt_ok && bck_ok;
|
||||
str2 = &(str2[match.rm_eo]);
|
||||
}
|
||||
|
||||
return wrd_fnd;
|
||||
}
|
||||
|
||||
/*
|
||||
Function name: prnt_mtchs
|
||||
args: exp Pointer to compiled POSIX style regular expression of search target.
|
||||
filename String containing the name of the embedded file which matches have
|
||||
been found in.
|
||||
stream String containing the processed contents of the embedded jar file
|
||||
represended with filename.
|
||||
pmatch Array of regmatch_t matches into stream.
|
||||
nl_offset Array of offsets of '\n' characters in stream. May be NULL if -n is
|
||||
not set on command line.
|
||||
num Number of matches in pmatch array.
|
||||
lines Number of lines in file. Not set if -n is not set on command line.
|
||||
options Bitwise flag containing flags set to represent the command line
|
||||
options.
|
||||
purpose: Control output of jargrep. Output is controlled by which options have been
|
||||
set at the command line.
|
||||
*/
|
||||
|
||||
static void prnt_mtchs(regex_t *exp, const char *filename, const char *stream, regmatch_t *pmatch, regmatch_t *nl_offset, int num, int lines, int options) {
|
||||
int i;
|
||||
int j = 0;
|
||||
int ln_cnt;
|
||||
int begin;
|
||||
int o_begin;
|
||||
char *str;
|
||||
|
||||
o_begin = -1;
|
||||
ln_cnt = 0;
|
||||
for(i = 0; i < num; i++) {
|
||||
str = extract_line(stream, pmatch[i].rm_so, pmatch[i].rm_eo, &begin);
|
||||
if(begin > o_begin) {
|
||||
if(!(options & JG_WORD_EXPRESSIONS) || chk_wrd(exp, str)) {
|
||||
ln_cnt++;
|
||||
if(!(options & JG_PRINT_COUNT)) {
|
||||
printf("%s:", filename);
|
||||
if(options & JG_PRINT_LINE_NUMBER) {
|
||||
for(; j < lines && nl_offset[j].rm_so < begin; j++);
|
||||
printf("%d:", j + 1);
|
||||
}
|
||||
if(options & JG_PRINT_BYTEOFFSET) printf("%d:", begin);
|
||||
printf("%s\n", str);
|
||||
}
|
||||
}
|
||||
}
|
||||
o_begin = begin;
|
||||
free(str);
|
||||
}
|
||||
if(options & JG_PRINT_COUNT) printf("%s:%d\n", filename, ln_cnt);
|
||||
}
|
||||
|
||||
/*
|
||||
Function name: check_crc
|
||||
args: pbf Pointer to pushback file pointer for jar file.
|
||||
stream String containing the non modified contents fo the extraced file entry.
|
||||
usize Size of file in bytes.
|
||||
purpose: Verify the CRC matches that as what is stored in the jar file.
|
||||
*/
|
||||
|
||||
static void check_crc(pb_file *pbf, const char *stream, ub4 usize) {
|
||||
ub4 crc=0;
|
||||
ub4 lcrc;
|
||||
ub1 scratch[16];
|
||||
|
||||
crc = crc32(crc, NULL, 0);
|
||||
crc = crc32(crc, (const unsigned char *)stream, usize);
|
||||
if(pb_read(pbf, scratch, 16) != 16) {
|
||||
perror("read");
|
||||
exit(1);
|
||||
}
|
||||
if(UNPACK_UB4(scratch, 0) != 0x08074b50) {
|
||||
fprintf(stderr, "Error! Missing data descriptor!\n");
|
||||
exit(1);
|
||||
}
|
||||
lcrc = UNPACK_UB4(scratch, 4);
|
||||
if(crc != lcrc){
|
||||
fprintf(stderr, "Error! CRCs do not match! Got %x, expected %x\n",
|
||||
crc, lcrc);
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
Function name mk_ascii
|
||||
args: stream String that contains the contents of the extraced file entry.
|
||||
usize String size.
|
||||
purpose: Make certain that the contents of the file are ASCII, not binary. This
|
||||
permits grepping of binary files as well by converting non ASCII and control characters
|
||||
into '\n'.
|
||||
*/
|
||||
|
||||
static void mk_ascii(char *stream, size_t usize) {
|
||||
size_t i;
|
||||
|
||||
for(i = 0; i < usize; i++)
|
||||
if(stream[i] != '\t'
|
||||
&& (iscntrl((unsigned char)stream[i])
|
||||
|| (unsigned char) stream[i] >= 128))
|
||||
stream[i] = '\n';
|
||||
}
|
||||
|
||||
/*
|
||||
Funtion name: fnd_match
|
||||
args: exp Pointer to compiled POSIX style regular expression of search target.
|
||||
str_stream String that contains the contents of the extracted file entry.
|
||||
i Pointer to counter and index of matches.
|
||||
purpose: Search str_stream for occurances of the regular expression exp and create
|
||||
an array of matches.
|
||||
returns: Pointer to newly allocated array of regmatch_t which gives indexes to start
|
||||
and end of matches. NULL is returned upon no matches found.
|
||||
*/
|
||||
|
||||
static regmatch_t *fnd_match(regex_t *exp, const char *str_stream, int *i) {
|
||||
int regflag;
|
||||
regmatch_t match;
|
||||
regmatch_t *match_array;
|
||||
regmatch_t *tmp;
|
||||
|
||||
match_array = NULL;
|
||||
for(*i = 0, regflag = regexec(exp, str_stream, 1, &match, 0); !regflag;
|
||||
regflag = regexec(exp, &(str_stream[match.rm_eo]), 1, &match, 0), (*i)++)
|
||||
{
|
||||
if((tmp = (regmatch_t *)
|
||||
realloc(match_array, sizeof(regmatch_t) * ((*i) + 1))))
|
||||
{
|
||||
match_array = tmp;
|
||||
if(*i) {
|
||||
match.rm_so += match_array[(*i) - 1].rm_eo;
|
||||
match.rm_eo += match_array[(*i) - 1].rm_eo;
|
||||
}
|
||||
match_array[*i] = match;
|
||||
}
|
||||
else {
|
||||
fprintf(stderr, "Realloc of match_array failed.\n");
|
||||
fprintf(stderr, "Error: %s\n", strerror(errno));
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
return match_array;
|
||||
}
|
||||
|
||||
/*
|
||||
Function name: cont_grep
|
||||
args: exp Pointer to compiled POSIX style regular expression of search target.
|
||||
nl_exp Pointer to compiled POSIX style regular expression of newlines. This
|
||||
argument is NULL unless the -n option is used on the command line.
|
||||
fd File descriptor of the jar file being grepped.
|
||||
pbf Pointer to pushback file style file stream. This is for use with
|
||||
the pushback.c file io funtions.
|
||||
options Bitwise flag containing flags set to represent the command line options.
|
||||
purpose: This function handles single entries in an open jar file. The header is
|
||||
read and then the embeded file is extracted and grepped.
|
||||
returns: FALSE upon failure, TRUE otherwise.
|
||||
*/
|
||||
|
||||
static int cont_grep(regex_t *exp, regex_t *nl_exp, int fd, pb_file *pbf, int options) {
|
||||
int retflag = TRUE;
|
||||
int i;
|
||||
int j;
|
||||
ub4 csize;
|
||||
ub4 usize;
|
||||
ub2 fnlen;
|
||||
ub2 eflen;
|
||||
ub2 flags;
|
||||
ub2 method;
|
||||
ub1 file_header[30];
|
||||
char *filename;
|
||||
char *str_stream;
|
||||
regmatch_t *match_array;
|
||||
regmatch_t *nl_offsets=0;
|
||||
|
||||
if(pb_read(pbf, (file_header + 4), 26) != 26) {
|
||||
perror("read");
|
||||
retflag = FALSE;
|
||||
}
|
||||
else {
|
||||
decd_siz(&csize, &usize, &fnlen, &eflen, &flags, &method, file_header);
|
||||
filename = new_filename(pbf, fnlen);
|
||||
lseek(fd, eflen, SEEK_CUR);
|
||||
if(filename[fnlen - 1] != '/') {
|
||||
str_stream = (method == 8 || (flags & 0x0008)) ?
|
||||
(char *) inflate_string(pbf, &csize, &usize) :
|
||||
read_string(pbf, csize);
|
||||
if(flags & 0x008) check_crc(pbf, str_stream, usize);
|
||||
mk_ascii(str_stream, usize);
|
||||
match_array = fnd_match(exp, str_stream, &i);
|
||||
if((options & JG_PRINT_LINE_NUMBER) && i)
|
||||
nl_offsets = fnd_match(nl_exp, str_stream, &j);
|
||||
prnt_mtchs(exp, filename, str_stream, match_array, nl_offsets, i, j, options);
|
||||
if(match_array) free(match_array);
|
||||
free(str_stream);
|
||||
}
|
||||
free(filename);
|
||||
retflag = TRUE;
|
||||
}
|
||||
|
||||
return retflag;
|
||||
}
|
||||
|
||||
/*
|
||||
Funtion name: jargrep
|
||||
args: exp Pointer to compiled POSIX style regular expression of search target.
|
||||
nl_exp Pointer to compiled regular expression for newlines or NULL. Only set
|
||||
if -n option is present at command line.
|
||||
jarfile Filename of jar file to be searched.
|
||||
options Bitwise flag containing flags set to represent the command line options.
|
||||
purpose: Open jar file. Check signatures. When right signature is found go to deeper
|
||||
grep routine.
|
||||
*/
|
||||
|
||||
static void jargrep(regex_t *exp, regex_t *nl_exp, const char *jarfile, int options){
|
||||
int fd;
|
||||
int floop = TRUE;
|
||||
pb_file pbf;
|
||||
ub1 scratch[16];
|
||||
|
||||
if((fd = open(jarfile, O_RDONLY)) == -1) {
|
||||
if(!(options & JG_SUPRESS_ERROR))
|
||||
fprintf(stderr, "Error reading file '%s': %s\n", jarfile, strerror(errno));
|
||||
}
|
||||
else {
|
||||
pb_init(&pbf, fd);
|
||||
|
||||
do {
|
||||
if(pb_read(&pbf, scratch, 4) != 4) {
|
||||
perror("read");
|
||||
floop = FALSE;
|
||||
}
|
||||
else {
|
||||
switch (check_sig(scratch, &pbf)) {
|
||||
case 0:
|
||||
floop = cont_grep(exp, nl_exp, fd, &pbf, options);
|
||||
break;
|
||||
case 1:
|
||||
floop = FALSE;
|
||||
break;
|
||||
case 2:
|
||||
/* fall through continue */
|
||||
;
|
||||
}
|
||||
}
|
||||
} while(floop);
|
||||
}
|
||||
}
|
||||
|
||||
/* This is used to mark options with no short value. */
|
||||
#define LONG_OPT(Num) ((Num) + 128)
|
||||
|
||||
#define OPT_HELP LONG_OPT (0)
|
||||
|
||||
static const struct option option_vec[] =
|
||||
{
|
||||
{ "help", no_argument, NULL, OPT_HELP },
|
||||
{ "version", no_argument, NULL, 'V' },
|
||||
{ NULL, no_argument, NULL, 0 }
|
||||
};
|
||||
|
||||
/*
|
||||
Funtion Name: main
|
||||
args: argc number of in coming args.
|
||||
argv array of strings.
|
||||
purpose: Entry point of the program. Parse command line arguments and set options.
|
||||
Set up regular expressions. Call grep routines for each file as input.
|
||||
returns: 1 on error 0 on success.
|
||||
*/
|
||||
|
||||
int main(int argc, char **argv) {
|
||||
int c;
|
||||
int retval = 0;
|
||||
int fileindex;
|
||||
int options = 0;
|
||||
regex_t *regexp;
|
||||
regex_t *nl_exp = NULL;
|
||||
char *regexpstr = NULL;
|
||||
|
||||
while((c = getopt_long(argc, argv, "bce:insVw",
|
||||
option_vec, NULL)) != -1) {
|
||||
switch(c) {
|
||||
case 'b':
|
||||
options |= JG_PRINT_BYTEOFFSET;
|
||||
break;
|
||||
case 'c':
|
||||
options |= JG_PRINT_COUNT;
|
||||
break;
|
||||
case 'e':
|
||||
if(!(regexpstr = (char *) malloc(strlen(optarg) + 1))) {
|
||||
fprintf(stderr, "Malloc failure.\n");
|
||||
fprintf(stderr, "Error: %s\n", strerror(errno));
|
||||
exit(1);
|
||||
}
|
||||
strcpy(regexpstr, optarg);
|
||||
break;
|
||||
case 'i':
|
||||
options |= JG_IGNORE_CASE;
|
||||
break;
|
||||
case 'n':
|
||||
options |= JG_PRINT_LINE_NUMBER;
|
||||
break;
|
||||
case 's':
|
||||
options |= JG_SUPRESS_ERROR;
|
||||
break;
|
||||
case 'v':
|
||||
options |= JG_INVERT;
|
||||
break;
|
||||
case 'V':
|
||||
version ();
|
||||
break;
|
||||
case 'w':
|
||||
options |= JG_WORD_EXPRESSIONS;
|
||||
break;
|
||||
case OPT_HELP:
|
||||
help(argv[0]);
|
||||
break;
|
||||
default:
|
||||
fprintf(stderr, Usage, argv[0]);
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
if(!regexpstr){
|
||||
if(((argc - optind) >= 2)) {
|
||||
regexpstr = argv[optind];
|
||||
fileindex = optind + 1;
|
||||
}
|
||||
else {
|
||||
fprintf(stderr, "Invalid arguments.\n");
|
||||
fprintf(stderr, Usage, argv[0]);
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
else if((argc - optind) == 1) {
|
||||
fileindex = optind;
|
||||
}
|
||||
else {
|
||||
fprintf(stderr, "Invalid arguments.\n");
|
||||
fprintf(stderr, Usage, argv[0]);
|
||||
exit(1);
|
||||
}
|
||||
|
||||
if(opt_valid(options)) {
|
||||
regexp = create_regexp(regexpstr, options);
|
||||
if(options & JG_PRINT_LINE_NUMBER) nl_exp = create_regexp("\n", 0);
|
||||
init_inflation();
|
||||
for(; fileindex < argc; fileindex++)
|
||||
jargrep(regexp, nl_exp, argv[fileindex], options);
|
||||
regfree(regexp);
|
||||
if(options & JG_PRINT_LINE_NUMBER) regfree(nl_exp);
|
||||
}
|
||||
else {
|
||||
retval = 1;
|
||||
fprintf(stderr, "Error: Invalid combination of options.\n");
|
||||
}
|
||||
|
||||
return retval;
|
||||
}
|
||||
|
||||
void help(const char *filename)
|
||||
{
|
||||
printf (Usage, filename);
|
||||
printf ("\
|
||||
\n\
|
||||
Search files in a jar file for a pattern.\n\
|
||||
\n\
|
||||
-b print byte offset of match\n\
|
||||
-c print number of matches\n\
|
||||
-i compare case-insensitively\n\
|
||||
-n print line number of each match\n\
|
||||
-s suppress error messages\n\
|
||||
-w force PATTERN to match only whole words\n\
|
||||
-e PATTERN use PATTERN as regular expression\n\
|
||||
-V|--version print version number and exit\n\
|
||||
--help print help\n\
|
||||
");
|
||||
|
||||
exit (0);
|
||||
}
|
||||
|
||||
void version ()
|
||||
{
|
||||
printf("grepjar (%s) %s\n\n", PACKAGE, VERSION);
|
||||
printf("Copyright 1999, 2000, 2001 Bryan Burns\n");
|
||||
printf("Copyright 2000 Cory Hollingsworth\n");
|
||||
printf("Copyright 2006 Free Software Foundation\n");
|
||||
printf("\
|
||||
This is free software; see the source for copying conditions. There is NO\n\
|
||||
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n");
|
||||
exit (0);
|
||||
}
|
|
@ -1,27 +0,0 @@
|
|||
/*
|
||||
jargrep.h - header file for jargrep utility
|
||||
Copyright (C) 2002 Free Software Foundation
|
||||
Copyright (C) 2000 Cory Hollingsworth
|
||||
|
||||
This program is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License
|
||||
as published by the Free Software Foundation; either version 2
|
||||
of the License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*/
|
||||
|
||||
#define JG_PRINT_BYTEOFFSET 0x00000001
|
||||
#define JG_PRINT_COUNT 0x00000002
|
||||
#define JG_IGNORE_CASE 0x00000004
|
||||
#define JG_PRINT_LINE_NUMBER 0x00000008
|
||||
#define JG_SUPRESS_ERROR 0x00000010
|
||||
#define JG_INVERT 0x00000020
|
||||
#define JG_WORD_EXPRESSIONS 0x00000040
|
2357
fastjar/jartool.c
2357
fastjar/jartool.c
File diff suppressed because it is too large
Load diff
|
@ -1,124 +0,0 @@
|
|||
/* $Id: jartool.h,v 1.4 2000/08/24 15:23:35 cory Exp $
|
||||
|
||||
$Log: jartool.h,v $
|
||||
Revision 1.4 2000/08/24 15:23:35 cory
|
||||
Set version number since I think we can let this one out.
|
||||
|
||||
Revision 1.3 2000/08/23 19:42:17 cory
|
||||
Added support for more Unix platforms. The following code has been hacked
|
||||
to work on AIX, Solaris, True 64, and HP-UX.
|
||||
Added bigendian check. Probably works on most big and little endian platforms
|
||||
now.
|
||||
|
||||
Revision 1.2 1999/12/06 03:47:20 toast
|
||||
fixing version string
|
||||
|
||||
Revision 1.1.1.1 1999/12/06 03:08:24 toast
|
||||
initial checkin..
|
||||
|
||||
|
||||
|
||||
Revision 1.6 1999/05/10 09:16:08 burnsbr
|
||||
*** empty log message ***
|
||||
|
||||
Revision 1.5 1999/04/27 10:04:20 burnsbr
|
||||
configure support
|
||||
|
||||
Revision 1.4 1999/04/26 02:36:15 burnsbr
|
||||
changed RDSZ to 4096 from 512
|
||||
|
||||
Revision 1.3 1999/04/23 12:00:29 burnsbr
|
||||
modified zipentry struct
|
||||
|
||||
|
||||
*/
|
||||
|
||||
/*
|
||||
jartool.h - generic defines, struct defs etc.
|
||||
Copyright (C) 1999, 2005 Bryan Burns
|
||||
|
||||
This program is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License
|
||||
as published by the Free Software Foundation; either version 2
|
||||
of the License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*/
|
||||
|
||||
#ifndef __FASTJAR_JARTOOL_H__
|
||||
#define __FASTJAR_JARTOOL_H__
|
||||
|
||||
#include <sys/types.h>
|
||||
#include "config.h"
|
||||
|
||||
#define ACTION_NONE 0
|
||||
#define ACTION_CREATE 1
|
||||
#define ACTION_EXTRACT 2
|
||||
#define ACTION_UPDATE 3
|
||||
#define ACTION_LIST 4
|
||||
#define ACTION_INDEX 5
|
||||
|
||||
#define TRUE 1
|
||||
#define FALSE 0
|
||||
|
||||
/* Amount of bytes to read at a time. You can change this to optimize for
|
||||
your system */
|
||||
#define RDSZ 4096
|
||||
|
||||
/* Change these to match your system:
|
||||
ub1 == unsigned 1 byte word
|
||||
ub2 == unsigned 2 byte word
|
||||
ub4 == unsigned 4 byte word
|
||||
*/
|
||||
#if SIZEOF_CHAR == 1
|
||||
typedef unsigned char ub1;
|
||||
#else
|
||||
typedef u_int8_t ub1;
|
||||
#endif
|
||||
|
||||
#if SIZEOF_SHORT == 2
|
||||
typedef unsigned short ub2;
|
||||
#elif SIZEOF_INT == 2
|
||||
typedef unsigned int ub2;
|
||||
#else
|
||||
typedef u_int16_t ub2;
|
||||
#endif
|
||||
|
||||
#if SIZEOF_INT == 4
|
||||
typedef unsigned int ub4;
|
||||
#elif SIZEOF_LONG == 4
|
||||
typedef unsigned long ub4;
|
||||
#elif defined(HAVE_LONG_LONG) && SIZEOF_LONG_LONG == 4
|
||||
typedef unsigned long long ub4;
|
||||
#else
|
||||
typedef u_int32_t ub4;
|
||||
#endif
|
||||
|
||||
struct zipentry {
|
||||
ub2 mod_time;
|
||||
ub2 mod_date;
|
||||
ub4 crc;
|
||||
ub4 csize;
|
||||
ub4 usize;
|
||||
ub4 offset;
|
||||
ub1 compressed;
|
||||
ub2 flags;
|
||||
char *filename;
|
||||
|
||||
struct zipentry *next_entry;
|
||||
};
|
||||
|
||||
typedef struct zipentry zipentry;
|
||||
|
||||
#ifndef __GNUC__
|
||||
#define __attribute__()
|
||||
#endif
|
||||
|
||||
#endif /* __FASTJAR_JARTOOL_H__ */
|
|
@ -1,194 +0,0 @@
|
|||
/* $Id: pushback.c,v 1.2 2000/12/14 18:45:35 ghazi Exp $
|
||||
|
||||
$Log: pushback.c,v $
|
||||
Revision 1.2 2000/12/14 18:45:35 ghazi
|
||||
Warning fixes:
|
||||
|
||||
* compress.c: Include stdlib.h and compress.h.
|
||||
(rcsid): Delete.
|
||||
(report_str_error): Make static.
|
||||
(ez_inflate_str): Delete unused variable. Add parens in if-stmt.
|
||||
(hrd_inflate_str): Likewise.
|
||||
|
||||
* compress.h (init_compression, end_compression, init_inflation,
|
||||
end_inflation): Prototype void arguments.
|
||||
|
||||
* dostime.c (rcsid): Delete.
|
||||
|
||||
* jargrep.c: Include ctype.h, stdlib.h, zlib.h and compress.h.
|
||||
Make functions static. Cast ctype function argument to `unsigned
|
||||
char'. Add parens in if-stmts. Constify.
|
||||
(Usage): Change into a macro.
|
||||
(jargrep): Remove unused parameter.
|
||||
|
||||
* jartool.c: Constify. Add parens in if-stmts. Align
|
||||
signed/unsigned char pointers in functions calls using casts.
|
||||
(rcsid): Delete.
|
||||
(list_jar): Fix printf format specifier.
|
||||
(usage): Chop long string into bits. Reformat.
|
||||
|
||||
* pushback.c (rcsid): Delete.
|
||||
|
||||
Revision 1.1 2000/12/09 03:08:23 apbianco
|
||||
2000-12-08 Alexandre Petit-Bianco <apbianco@cygnus.com>
|
||||
|
||||
* fastjar: Imported.
|
||||
|
||||
Revision 1.2 2000/08/23 19:42:17 cory
|
||||
Added support for more Unix platforms. The following code has been hacked
|
||||
to work on AIX, Solaris, True 64, and HP-UX.
|
||||
Added bigendian check. Probably works on most big and little endian platforms
|
||||
now.
|
||||
|
||||
Revision 1.1.1.1 1999/12/06 03:09:13 toast
|
||||
initial checkin..
|
||||
|
||||
|
||||
|
||||
Revision 1.1 1999/05/10 08:32:37 burnsbr
|
||||
Initial revision
|
||||
|
||||
*/
|
||||
|
||||
/*
|
||||
pushback.c - code for a pushback buffer to handle file I/O
|
||||
Copyright (C) 1999 Bryan Burns
|
||||
|
||||
This program is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License
|
||||
as published by the Free Software Foundation; either version 2
|
||||
of the License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*/
|
||||
|
||||
#include <unistd.h>
|
||||
#include <string.h>
|
||||
#include <stdio.h>
|
||||
|
||||
#include "jartool.h"
|
||||
#include "pushback.h"
|
||||
|
||||
void pb_init(pb_file *pbf, int fd){
|
||||
pbf->fd = fd;
|
||||
pbf->next = pbf->pb_buff;
|
||||
pbf->buff_amt = 0;
|
||||
}
|
||||
|
||||
int pb_push(pb_file *pbf, void *buff, int amt){
|
||||
int in_amt;
|
||||
int wrap = 0;
|
||||
|
||||
#ifdef DEBUG
|
||||
printf("%d bytes being pushed back to the buffer\n", amt);
|
||||
#endif
|
||||
|
||||
/* determine how much we can take */
|
||||
if((int)(RDSZ - pbf->buff_amt) < amt)
|
||||
in_amt = RDSZ - pbf->buff_amt;
|
||||
else
|
||||
in_amt = amt;
|
||||
|
||||
if(in_amt == 0)
|
||||
return 0;
|
||||
|
||||
/* figure out if we need to wrap around, and if so, by how much */
|
||||
if(((pbf->pb_buff + RDSZ) - pbf->next) < in_amt)
|
||||
wrap = in_amt - ((pbf->pb_buff + RDSZ) - pbf->next);
|
||||
|
||||
/* write everything up til the end of the buffer */
|
||||
memcpy(pbf->next, buff, (in_amt - wrap));
|
||||
|
||||
/* finish writing what's wrapped around */
|
||||
memcpy(pbf->pb_buff, ((char *)buff + (in_amt - wrap)), wrap);
|
||||
|
||||
/* update the buff_amt field */
|
||||
pbf->buff_amt += in_amt;
|
||||
|
||||
#ifdef DEBUG
|
||||
printf("%d bytes we can't accept\n", (amt - in_amt));
|
||||
#endif
|
||||
|
||||
return in_amt;
|
||||
}
|
||||
|
||||
|
||||
int pb_read(pb_file *pbf, void *buff, int amt){
|
||||
int out_amt = 0;
|
||||
int wrap = 0;
|
||||
void *bp = buff;
|
||||
int tmp;
|
||||
|
||||
#ifdef DEBUG
|
||||
printf("%d bytes requested from us\n", amt);
|
||||
#endif
|
||||
while(out_amt < amt){
|
||||
/* if our push-back buffer contains some data */
|
||||
if(pbf->buff_amt > 0){
|
||||
|
||||
#ifdef DEBUG
|
||||
printf("giving data from buffer\n");
|
||||
#endif
|
||||
|
||||
/* calculate how much we can actually give the caller */
|
||||
if( (amt - out_amt) < (int)pbf->buff_amt )
|
||||
tmp = (amt - out_amt);
|
||||
else
|
||||
tmp = pbf->buff_amt;
|
||||
|
||||
/* Determine if we're going to need to wrap around the buffer */
|
||||
if(tmp > ((pbf->pb_buff + RDSZ) - pbf->next))
|
||||
wrap = tmp - ((pbf->pb_buff + RDSZ) - pbf->next);
|
||||
|
||||
memcpy(bp, pbf->next, (tmp - wrap));
|
||||
bp = &(((char *)bp)[tmp - wrap]);
|
||||
|
||||
/* If we need to wrap, read from the start of the buffer */
|
||||
if(wrap > 0){
|
||||
memcpy(bp, pbf->pb_buff, wrap);
|
||||
bp = &(((char *)bp)[wrap]);
|
||||
}
|
||||
|
||||
/* update the buff_amt field */
|
||||
pbf->buff_amt -= tmp;
|
||||
pbf->next += tmp;
|
||||
|
||||
#ifdef DEBUG
|
||||
printf("%d bytes remaining in buffer\n", pbf->buff_amt);
|
||||
#endif
|
||||
|
||||
/* if the buffer is empty, reset the next header to the front of the
|
||||
buffer so subsequent pushbacks/reads won't have to wrap */
|
||||
if(pbf->buff_amt == 0)
|
||||
pbf->next = pbf->pb_buff;
|
||||
|
||||
out_amt += tmp;
|
||||
|
||||
} else {
|
||||
#ifdef DEBUG
|
||||
printf("Reading from file..\n");
|
||||
#endif
|
||||
|
||||
/* The pushback buffer was empty, so we just need to read from the file */
|
||||
tmp = read(pbf->fd, bp, (amt - out_amt));
|
||||
if(tmp == 0)
|
||||
break;
|
||||
else
|
||||
out_amt += tmp;
|
||||
|
||||
bp = &(((char *)bp)[tmp]);
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef DEBUG
|
||||
printf("managed to read %d bytes\n", out_amt);
|
||||
#endif
|
||||
return out_amt;
|
||||
}
|
|
@ -1,32 +0,0 @@
|
|||
/*
|
||||
pushback.h - header for pushback.c
|
||||
Copyright (C) 1999 Bryan Burns
|
||||
|
||||
This program is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License
|
||||
as published by the Free Software Foundation; either version 2
|
||||
of the License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*/
|
||||
|
||||
struct pb_file {
|
||||
unsigned int buff_amt;
|
||||
ub1 pb_buff[RDSZ];
|
||||
int fd;
|
||||
ub1 *next;
|
||||
};
|
||||
|
||||
typedef struct pb_file pb_file;
|
||||
|
||||
|
||||
void pb_init(pb_file *, int);
|
||||
int pb_push(pb_file *, void *, int);
|
||||
int pb_read(pb_file *, void *, int);
|
166
fastjar/shift.c
166
fastjar/shift.c
|
@ -1,166 +0,0 @@
|
|||
/* shift.c -- utilities to move regions of data in a file.
|
||||
Copyright (C) 2004, 2005 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or (at
|
||||
your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
|
||||
USA. */
|
||||
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <unistd.h>
|
||||
#include <stdio.h>
|
||||
#include "jartool.h"
|
||||
#include "shift.h"
|
||||
|
||||
#define BUFFER_SIZE 1024
|
||||
|
||||
#define MIN(a, b) ((a) < (b) ? (a) : (b))
|
||||
|
||||
/*
|
||||
* Shift the contents of a file up by `amount' bytes, starting at `begin'.
|
||||
* The file is not truncated, data from `amount' to `begin - amount' is
|
||||
* overwritten. The current file pointer of `fd' is preserved. Note that
|
||||
* this might be past the new "end" of the file.
|
||||
*
|
||||
* If this function is passed a `struct zipentry', then all `offset'
|
||||
* fields from that entry down the list that are greater than or equal
|
||||
* to `begin' will be decreased by `amount'.
|
||||
*
|
||||
* fd - The file descriptor.
|
||||
* begin - The offset of the first byte that should be shifted.
|
||||
* amount - The number of bytes to shift by.
|
||||
* ze - A pointer into a list of zip entries that should be updated
|
||||
* to reflect the modified offset.
|
||||
*/
|
||||
int
|
||||
shift_up (int fd, off_t begin, off_t amount, struct zipentry *ze)
|
||||
{
|
||||
extern off_t end_of_entries;
|
||||
int len, moved = 0;
|
||||
ub1 buffer[BUFFER_SIZE];
|
||||
off_t where, end, save;
|
||||
|
||||
if (amount <= 0)
|
||||
return 0;
|
||||
|
||||
if ((save = lseek (fd, 0, SEEK_CUR)) == -1)
|
||||
return 1;
|
||||
if ((end = lseek (fd, 0, SEEK_END)) == -1)
|
||||
return 1;
|
||||
if (end < begin)
|
||||
return 0;
|
||||
|
||||
where = begin;
|
||||
|
||||
do
|
||||
{
|
||||
if (lseek (fd, where, SEEK_SET) < 0)
|
||||
return 1;
|
||||
if ((len = read (fd, buffer, BUFFER_SIZE)) < 0)
|
||||
return 1;
|
||||
if (len == 0)
|
||||
break;
|
||||
if (lseek (fd, where - amount, SEEK_SET) < 0)
|
||||
return 1;
|
||||
if (write (fd, buffer, len) < 0)
|
||||
return 1;
|
||||
where += len;
|
||||
}
|
||||
while (where < end);
|
||||
|
||||
for (; ze; ze = ze->next_entry)
|
||||
{
|
||||
if ((off_t) ze->offset >= begin)
|
||||
{
|
||||
ze->offset -= amount;
|
||||
moved = 1;
|
||||
}
|
||||
}
|
||||
if (moved)
|
||||
end_of_entries -= amount;
|
||||
|
||||
if (lseek (fd, save, SEEK_SET) == -1)
|
||||
return 1;
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Shift the contents of this file down by `amount' bytes, extending the
|
||||
* end of file, starting at `begin'. This function will preserve the
|
||||
* current file pointer of `fd'. Naturally, this function will fail if
|
||||
* `fd' is not seekable.
|
||||
*
|
||||
* If this function is passed a `struct zipentry', then all `offset'
|
||||
* fields from that entry down the list that are greater than or equal
|
||||
* to `begin' will be increased by `amount'.
|
||||
*
|
||||
* fd - The file descriptor.
|
||||
* begin - The offset of the first byte that should be shifted.
|
||||
* amount - The number of bytes to shift by.
|
||||
* ze - A pointer into a list of zip entries that should be updated
|
||||
* to reflect the modified offset.
|
||||
*/
|
||||
int
|
||||
shift_down (int fd, off_t begin, off_t amount, struct zipentry *ze)
|
||||
{
|
||||
extern off_t end_of_entries;
|
||||
int off, len, moved = 0;
|
||||
ub1 buffer[BUFFER_SIZE];
|
||||
off_t where, save;
|
||||
|
||||
if (amount <= 0)
|
||||
return 0;
|
||||
|
||||
if ((save = lseek (fd, 0, SEEK_CUR)) == -1)
|
||||
return 1;
|
||||
if ((where = lseek (fd, 0, SEEK_END)) == -1)
|
||||
return 1;
|
||||
if (where < begin)
|
||||
return 0;
|
||||
off = (where - begin) % BUFFER_SIZE;
|
||||
if (off == 0)
|
||||
where -= BUFFER_SIZE;
|
||||
else
|
||||
where -= off;
|
||||
|
||||
do
|
||||
{
|
||||
if (lseek (fd, where, SEEK_SET) < 0)
|
||||
return 1;
|
||||
if ((len = read (fd, buffer, BUFFER_SIZE)) < 0)
|
||||
return 1;
|
||||
if (lseek (fd, where + amount, SEEK_SET) < 0)
|
||||
return 1;
|
||||
if (write (fd, buffer, len) < 0)
|
||||
return 1;
|
||||
where -= BUFFER_SIZE;
|
||||
}
|
||||
while (where >= begin);
|
||||
|
||||
for (; ze; ze = ze->next_entry)
|
||||
{
|
||||
if ((off_t) ze->offset >= begin)
|
||||
{
|
||||
ze->offset += amount;
|
||||
moved = 1;
|
||||
}
|
||||
}
|
||||
if (moved)
|
||||
end_of_entries += amount;
|
||||
|
||||
if (lseek (fd, save, SEEK_SET) == -1)
|
||||
return 1;
|
||||
|
||||
return 0;
|
||||
}
|
|
@ -1,29 +0,0 @@
|
|||
/* shift.h -- utilities to move regions of data in a file.
|
||||
Copyright (C) 2004 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or (at
|
||||
your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
|
||||
USA. */
|
||||
|
||||
|
||||
#ifndef __FASTJAR_SHIFT_H__
|
||||
#define __FASTJAR_SHIFT_H__
|
||||
|
||||
#include <sys/types.h>
|
||||
#include "jartool.h"
|
||||
|
||||
int shift_down (int, off_t, off_t, struct zipentry *);
|
||||
int shift_up (int, off_t, off_t, struct zipentry *);
|
||||
|
||||
#endif /* __FASTJAR_SHIFT_H__ */
|
|
@ -1,75 +0,0 @@
|
|||
/* $Id: zipfile.h,v 1.1.1.1 1999/12/06 03:09:11 toast Exp $
|
||||
|
||||
$Log: zipfile.h,v $
|
||||
Revision 1.1.1.1 1999/12/06 03:09:11 toast
|
||||
initial checkin..
|
||||
|
||||
|
||||
|
||||
Revision 1.6 1999/05/10 08:33:08 burnsbr
|
||||
added UNPACK_UB4 and UNPACK_UB2
|
||||
|
||||
Revision 1.5 1999/04/26 02:36:34 burnsbr
|
||||
added LOC_EXTRA macro
|
||||
|
||||
Revision 1.4 1999/04/23 12:01:19 burnsbr
|
||||
added more defines
|
||||
|
||||
|
||||
*/
|
||||
|
||||
/*
|
||||
zipfile.h - defines for indexing zipfile headers
|
||||
Copyright (C) 1999 Bryan Burns
|
||||
|
||||
This program is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License
|
||||
as published by the Free Software Foundation; either version 2
|
||||
of the License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*/
|
||||
|
||||
#define LOC_EXTRA 6 /* extra bytes */
|
||||
#define LOC_COMP 8 /* compression method */
|
||||
#define LOC_MODTIME 10 /* last modification time */
|
||||
#define LOC_MODDATE 12 /* last modification date */
|
||||
#define LOC_CRC 14 /* CRC */
|
||||
#define LOC_CSIZE 18 /* compressed size */
|
||||
#define LOC_USIZE 22 /* uncompressed size */
|
||||
#define LOC_FNLEN 26 /* filename length */
|
||||
#define LOC_EFLEN 28 /* extra-field length */
|
||||
|
||||
#define CEN_FLAGS 8
|
||||
#define CEN_COMP 10 /* compression method */
|
||||
#define CEN_MODTIME 12
|
||||
#define CEN_MODDATE 14
|
||||
#define CEN_CRC 16
|
||||
#define CEN_CSIZE 20
|
||||
#define CEN_USIZE 24
|
||||
#define CEN_FNLEN 28
|
||||
#define CEN_EFLEN 30
|
||||
#define CEN_COMLEN 32
|
||||
#define CEN_OFFSET 42
|
||||
|
||||
|
||||
/* macros */
|
||||
#define PACK_UB4(d, o, v) d[o] = (ub1)((v) & 0x000000ff); \
|
||||
d[o + 1] = (ub1)(((v) & 0x0000ff00) >> 8); \
|
||||
d[o + 2] = (ub1)(((v) & 0x00ff0000) >> 16); \
|
||||
d[o + 3] = (ub1)(((v) & 0xff000000) >> 24)
|
||||
|
||||
#define PACK_UB2(d, o, v) d[o] = (ub1)((v) & 0x00ff); \
|
||||
d[o + 1] = (ub1)(((v) & 0xff00) >> 8)
|
||||
|
||||
#define UNPACK_UB4(s, o) (ub4)s[o] + (((ub4)s[o + 1]) << 8) +\
|
||||
(((ub4)s[o + 2]) << 16) + (((ub4)s[o + 3]) << 24)
|
||||
|
||||
#define UNPACK_UB2(s, o) (ub2)s[o] + (((ub2)s[o + 1]) << 8)
|
|
@ -1,3 +1,12 @@
|
|||
2006-04-03 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
* Makefile.in: Rebuilt.
|
||||
* Makefile.am (ZIP): Removed.
|
||||
(libgcj-$(gcc_version).jar): Use $(JAR).
|
||||
(src.zip): Likewise.
|
||||
* configure: Rebuilt.
|
||||
* configure.ac: Check for jar. Removed code to set ZIP.
|
||||
|
||||
2006-04-03 Andrew Haley <aph@redhat.com>
|
||||
|
||||
* testsuite/libjava.lang/Float_2.java: New file.
|
||||
|
|
|
@ -87,7 +87,6 @@ bin_SCRIPTS = addr2name.awk
|
|||
##
|
||||
|
||||
GCJH = @GCJH@
|
||||
ZIP = @ZIP@
|
||||
|
||||
## The compiler with whatever flags we want for both -c and -C
|
||||
## compiles.
|
||||
|
@ -322,10 +321,7 @@ $(propertyo_files): %.lo: classpath/resource/%
|
|||
$(LTGCJCOMPILE) -o $@ -c $< -Wc,--resource,$(@:.lo=)
|
||||
|
||||
libgcj-$(gcc_version).jar:
|
||||
jardir=`dirname $(ZIP)`; \
|
||||
jardir=`cd $$jardir && pwd`; \
|
||||
jarname=`basename $(ZIP)`; \
|
||||
cd classpath/lib; $$jardir/$$jarname -cfM \
|
||||
cd classpath/lib; $(JAR) -cfM \
|
||||
../../libgcj-$(gcc_version).jar gnu java javax org
|
||||
|
||||
CLEANFILES = libgcj-$(gcc_version).jar \
|
||||
|
@ -883,9 +879,10 @@ src.zip:
|
|||
echo $$file; \
|
||||
done ); \
|
||||
) | \
|
||||
## Many of the above circumlocutions are because ZIP will most likely
|
||||
## be a relative path to fastjar.
|
||||
$(ZIP) -cfM@ $$here/src.zip
|
||||
## Many of the above circumlocutions were because ZIP used to be a
|
||||
## relative path to fastjar. It didn't seem worthwhile to change the
|
||||
## code when we moved to an external jar.
|
||||
$(JAR) -cfM@ $$here/src.zip
|
||||
## Override GNU Classpath sources with libgcj replacements.
|
||||
here=`pwd`; \
|
||||
( \
|
||||
|
@ -897,7 +894,7 @@ src.zip:
|
|||
echo $$file; \
|
||||
done ); \
|
||||
) | \
|
||||
$(ZIP) -ufM@ $$here/src.zip
|
||||
$(JAR) -ufM@ $$here/src.zip
|
||||
|
||||
## We use a variable for this in case the user wants to override it.
|
||||
sourcesdir = $(jardir)
|
||||
|
|
|
@ -488,6 +488,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
|||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
INTERPRETER = @INTERPRETER@
|
||||
JAR = @JAR@
|
||||
JAVA_HOME = @JAVA_HOME@
|
||||
JAVA_HOME_SET_FALSE = @JAVA_HOME_SET_FALSE@
|
||||
JAVA_HOME_SET_TRUE = @JAVA_HOME_SET_TRUE@
|
||||
|
@ -579,7 +580,6 @@ X_EXTRA_LIBS = @X_EXTRA_LIBS@
|
|||
X_LIBS = @X_LIBS@
|
||||
X_PRE_LIBS = @X_PRE_LIBS@
|
||||
ZINCS = @ZINCS@
|
||||
ZIP = @ZIP@
|
||||
ZLIBS = @ZLIBS@
|
||||
ZLIBSPEC = @ZLIBSPEC@
|
||||
ZLIBTESTSPEC = @ZLIBTESTSPEC@
|
||||
|
@ -8423,10 +8423,7 @@ $(propertyo_files): %.lo: classpath/resource/%
|
|||
$(LTGCJCOMPILE) -o $@ -c $< -Wc,--resource,$(@:.lo=)
|
||||
|
||||
libgcj-$(gcc_version).jar:
|
||||
jardir=`dirname $(ZIP)`; \
|
||||
jardir=`cd $$jardir && pwd`; \
|
||||
jarname=`basename $(ZIP)`; \
|
||||
cd classpath/lib; $$jardir/$$jarname -cfM \
|
||||
cd classpath/lib; $(JAR) -cfM \
|
||||
../../libgcj-$(gcc_version).jar gnu java javax org
|
||||
|
||||
mostlyclean-local:
|
||||
|
@ -10726,7 +10723,7 @@ src.zip:
|
|||
echo $$file; \
|
||||
done ); \
|
||||
) | \
|
||||
$(ZIP) -cfM@ $$here/src.zip
|
||||
$(JAR) -cfM@ $$here/src.zip
|
||||
here=`pwd`; \
|
||||
( \
|
||||
( cd $(srcdir); \
|
||||
|
@ -10737,7 +10734,7 @@ src.zip:
|
|||
echo $$file; \
|
||||
done ); \
|
||||
) | \
|
||||
$(ZIP) -ufM@ $$here/src.zip
|
||||
$(JAR) -ufM@ $$here/src.zip
|
||||
|
||||
install-src.zip: src.zip
|
||||
$(INSTALL_DATA) src.zip $(DESTDIR)$(sourcesdir)/src-$(gcc_version).zip
|
||||
|
|
60
libjava/configure
vendored
60
libjava/configure
vendored
|
@ -310,7 +310,7 @@ ac_includes_default="\
|
|||
# include <unistd.h>
|
||||
#endif"
|
||||
|
||||
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os build_subdir host_subdir target_subdir libgcj_basedir host host_cpu host_vendor host_os target target_cpu target_vendor target_os target_noncanonical LN_S mkinstalldirs CC ac_ct_CC EXEEXT OBJEXT CXX ac_ct_CXX CFLAGS CXXFLAGS LDFLAGS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE AS ac_ct_AS LD ac_ct_LD AR ac_ct_AR RANLIB ac_ct_RANLIB MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT LIBGCJ_CFLAGS LIBGCJ_CXXFLAGS LIBGCJ_JAVAFLAGS LIBGCJ_LD_SYMBOLIC LIBGCJDEBUG TOOLKIT XLIB_AWT_TRUE XLIB_AWT_FALSE GTK_AWT_TRUE GTK_AWT_FALSE QT_AWT_TRUE QT_AWT_FALSE GCJH ZIP INCLTDL LIBLTDL DIRLTDL LIBTOOL CXXCPP CPPFLAGS GCJ GCJFLAGS GCJDEPMODE am__fastdepGCJ_TRUE am__fastdepGCJ_FALSE subdirs TESTSUBDIR_TRUE TESTSUBDIR_FALSE JAVA_HOME_SET_TRUE JAVA_HOME_SET_FALSE JAVA_HOME INTERPRETER LIBFFI LIBFFIINCS PLATFORM_INNER_NAT_HDRS CPP EGREP USING_WIN32_PLATFORM_TRUE USING_WIN32_PLATFORM_FALSE USING_POSIX_PLATFORM_TRUE USING_POSIX_PLATFORM_FALSE USING_DARWIN_CRT_TRUE USING_DARWIN_CRT_FALSE SYSTEMSPEC LIBGCJTESTSPEC ZLIBSPEC ZLIBTESTSPEC X_CFLAGS X_PRE_LIBS X_LIBS X_EXTRA_LIBS GTK_CAIRO_TRUE GTK_CAIRO_FALSE PKG_CONFIG CAIRO_CFLAGS CAIRO_LIBS PANGOFT2_CFLAGS PANGOFT2_LIBS extra_ldflags_libjava GCLIBS GCINCS GCDEPS GCSPEC JC1GCSPEC GCTESTSPEC USING_BOEHMGC_TRUE USING_BOEHMGC_FALSE USING_NOGC_TRUE USING_NOGC_FALSE THREADLIBS THREADINCS THREADDEPS THREADSPEC THREADLDFLAGS THREADCXXFLAGS USING_POSIX_THREADS_TRUE USING_POSIX_THREADS_FALSE USING_WIN32_THREADS_TRUE USING_WIN32_THREADS_FALSE USING_NO_THREADS_TRUE USING_NO_THREADS_FALSE HASH_SYNC_SPEC USING_GCC_TRUE USING_GCC_FALSE LIBICONV LTLIBICONV GTK_CFLAGS GTK_LIBS GLIB_CFLAGS GLIB_LIBS LIBART_CFLAGS LIBART_LIBS CLASSPATH_SEPARATOR ac_ct_GCJ ZLIBS SYS_ZLIBS ZINCS DIVIDESPEC CHECKREFSPEC EXCEPTIONSPEC BACKTRACESPEC IEEESPEC NATIVE_TRUE NATIVE_FALSE NEEDS_DATA_START_TRUE NEEDS_DATA_START_FALSE GCC_UNWIND_INCLUDE toolexecdir toolexecmainlibdir toolexeclibdir dbexecdir GCJVERSION gxx_include_dir libstdcxx_incdir ALLOCA PERL SYSDEP_SOURCES LD_START_STATIC_SPEC LD_FINISH_STATIC_SPEC here LIBOBJS LTLIBOBJS'
|
||||
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os build_subdir host_subdir target_subdir libgcj_basedir host host_cpu host_vendor host_os target target_cpu target_vendor target_os target_noncanonical LN_S mkinstalldirs CC ac_ct_CC EXEEXT OBJEXT CXX ac_ct_CXX CFLAGS CXXFLAGS LDFLAGS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE AS ac_ct_AS LD ac_ct_LD AR ac_ct_AR RANLIB ac_ct_RANLIB JAR MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT LIBGCJ_CFLAGS LIBGCJ_CXXFLAGS LIBGCJ_JAVAFLAGS LIBGCJ_LD_SYMBOLIC LIBGCJDEBUG TOOLKIT XLIB_AWT_TRUE XLIB_AWT_FALSE GTK_AWT_TRUE GTK_AWT_FALSE QT_AWT_TRUE QT_AWT_FALSE GCJH INCLTDL LIBLTDL DIRLTDL LIBTOOL CXXCPP CPPFLAGS GCJ GCJFLAGS GCJDEPMODE am__fastdepGCJ_TRUE am__fastdepGCJ_FALSE subdirs TESTSUBDIR_TRUE TESTSUBDIR_FALSE JAVA_HOME_SET_TRUE JAVA_HOME_SET_FALSE JAVA_HOME INTERPRETER LIBFFI LIBFFIINCS PLATFORM_INNER_NAT_HDRS CPP EGREP USING_WIN32_PLATFORM_TRUE USING_WIN32_PLATFORM_FALSE USING_POSIX_PLATFORM_TRUE USING_POSIX_PLATFORM_FALSE USING_DARWIN_CRT_TRUE USING_DARWIN_CRT_FALSE SYSTEMSPEC LIBGCJTESTSPEC ZLIBSPEC ZLIBTESTSPEC X_CFLAGS X_PRE_LIBS X_LIBS X_EXTRA_LIBS GTK_CAIRO_TRUE GTK_CAIRO_FALSE PKG_CONFIG CAIRO_CFLAGS CAIRO_LIBS PANGOFT2_CFLAGS PANGOFT2_LIBS extra_ldflags_libjava GCLIBS GCINCS GCDEPS GCSPEC JC1GCSPEC GCTESTSPEC USING_BOEHMGC_TRUE USING_BOEHMGC_FALSE USING_NOGC_TRUE USING_NOGC_FALSE THREADLIBS THREADINCS THREADDEPS THREADSPEC THREADLDFLAGS THREADCXXFLAGS USING_POSIX_THREADS_TRUE USING_POSIX_THREADS_FALSE USING_WIN32_THREADS_TRUE USING_WIN32_THREADS_FALSE USING_NO_THREADS_TRUE USING_NO_THREADS_FALSE HASH_SYNC_SPEC USING_GCC_TRUE USING_GCC_FALSE LIBICONV LTLIBICONV GTK_CFLAGS GTK_LIBS GLIB_CFLAGS GLIB_LIBS LIBART_CFLAGS LIBART_LIBS CLASSPATH_SEPARATOR ac_ct_GCJ ZLIBS SYS_ZLIBS ZINCS DIVIDESPEC CHECKREFSPEC EXCEPTIONSPEC BACKTRACESPEC IEEESPEC NATIVE_TRUE NATIVE_FALSE NEEDS_DATA_START_TRUE NEEDS_DATA_START_FALSE GCC_UNWIND_INCLUDE toolexecdir toolexecmainlibdir toolexeclibdir dbexecdir GCJVERSION gxx_include_dir libstdcxx_incdir ALLOCA PERL SYSDEP_SOURCES LD_START_STATIC_SPEC LD_FINISH_STATIC_SPEC here LIBOBJS LTLIBOBJS'
|
||||
ac_subst_files=''
|
||||
|
||||
# Initialize some variables set by options.
|
||||
|
@ -3964,6 +3964,52 @@ else
|
|||
RANLIB="$ac_cv_prog_RANLIB"
|
||||
fi
|
||||
|
||||
for ac_prog in jar fastjar
|
||||
do
|
||||
# Extract the first word of "$ac_prog", so it can be a program name with args.
|
||||
set dummy $ac_prog; ac_word=$2
|
||||
echo "$as_me:$LINENO: checking for $ac_word" >&5
|
||||
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
|
||||
if test "${ac_cv_prog_JAR+set}" = set; then
|
||||
echo $ECHO_N "(cached) $ECHO_C" >&6
|
||||
else
|
||||
if test -n "$JAR"; then
|
||||
ac_cv_prog_JAR="$JAR" # Let the user override the test.
|
||||
else
|
||||
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
||||
for as_dir in $PATH
|
||||
do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
ac_cv_prog_JAR="$ac_prog"
|
||||
echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
||||
fi
|
||||
fi
|
||||
JAR=$ac_cv_prog_JAR
|
||||
if test -n "$JAR"; then
|
||||
echo "$as_me:$LINENO: result: $JAR" >&5
|
||||
echo "${ECHO_T}$JAR" >&6
|
||||
else
|
||||
echo "$as_me:$LINENO: result: no" >&5
|
||||
echo "${ECHO_T}no" >&6
|
||||
fi
|
||||
|
||||
test -n "$JAR" && break
|
||||
done
|
||||
test -n "$JAR" || JAR="false"
|
||||
|
||||
if test "$JAR" = false; then
|
||||
{ { echo "$as_me:$LINENO: error: jar program not found" >&5
|
||||
echo "$as_me: error: jar program not found" >&2;}
|
||||
{ (exit 1); exit 1; }; }
|
||||
fi
|
||||
|
||||
# Find a good install program. We prefer a C program (faster),
|
||||
# so one script is as good as another. But avoid the broken or
|
||||
|
@ -4805,7 +4851,6 @@ case "${which_gcj}" in
|
|||
built)
|
||||
GCJ="$built_gcc_dir/gcj -B`${PWDCMD-pwd}`/ -B$built_gcc_dir/"
|
||||
GCJH='$(top_builddir)/$(MULTIBUILDTOP)../../$(host_subdir)/gcc/gcjh'
|
||||
ZIP='$(top_builddir)/$(MULTIBUILDTOP)../../$(host_subdir)/fastjar/fastjar'
|
||||
;;
|
||||
cross)
|
||||
if test "x${with_newlib}" = "xyes"; then
|
||||
|
@ -4815,21 +4860,16 @@ case "${which_gcj}" in
|
|||
else
|
||||
GCJ="${target_noncanonical}-gcj -B`${PWDCMD-pwd}`/"
|
||||
fi
|
||||
ZIP='$(target_noncanonical)-fastjar'
|
||||
GCJH='$(target_noncanonical)-gcjh'
|
||||
;;
|
||||
path)
|
||||
GCJ="gcj -B`${PWDCMD-pwd}`/"
|
||||
## In this case, gcj is found outside the build tree. However, zip is
|
||||
## found in the build tree.
|
||||
ZIP='$(top_builddir)/$(MULTIBUILDTOP)../$(COMPPATH)/fastjar/fastjar'
|
||||
GCJH=gcjh
|
||||
;;
|
||||
esac
|
||||
|
||||
|
||||
|
||||
|
||||
# Create it, so that compile/link tests don't fail
|
||||
test -f libgcj.spec || touch libgcj.spec
|
||||
|
||||
|
@ -5668,7 +5708,7 @@ test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic"
|
|||
case $host in
|
||||
*-*-irix6*)
|
||||
# Find out which ABI we are using.
|
||||
echo '#line 5671 "configure"' > conftest.$ac_ext
|
||||
echo '#line 5711 "configure"' > conftest.$ac_ext
|
||||
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
|
||||
(eval $ac_compile) 2>&5
|
||||
ac_status=$?
|
||||
|
@ -6671,7 +6711,7 @@ if test "${enable_sjlj_exceptions+set}" = set; then
|
|||
:
|
||||
else
|
||||
cat > conftest.$ac_ext << EOF
|
||||
#line 6674 "configure"
|
||||
#line 6714 "configure"
|
||||
struct S { ~S(); };
|
||||
void bar();
|
||||
void foo()
|
||||
|
@ -17807,6 +17847,7 @@ s,@AR@,$AR,;t t
|
|||
s,@ac_ct_AR@,$ac_ct_AR,;t t
|
||||
s,@RANLIB@,$RANLIB,;t t
|
||||
s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t
|
||||
s,@JAR@,$JAR,;t t
|
||||
s,@MAINTAINER_MODE_TRUE@,$MAINTAINER_MODE_TRUE,;t t
|
||||
s,@MAINTAINER_MODE_FALSE@,$MAINTAINER_MODE_FALSE,;t t
|
||||
s,@MAINT@,$MAINT,;t t
|
||||
|
@ -17823,7 +17864,6 @@ s,@GTK_AWT_FALSE@,$GTK_AWT_FALSE,;t t
|
|||
s,@QT_AWT_TRUE@,$QT_AWT_TRUE,;t t
|
||||
s,@QT_AWT_FALSE@,$QT_AWT_FALSE,;t t
|
||||
s,@GCJH@,$GCJH,;t t
|
||||
s,@ZIP@,$ZIP,;t t
|
||||
s,@INCLTDL@,$INCLTDL,;t t
|
||||
s,@LIBLTDL@,$LIBLTDL,;t t
|
||||
s,@DIRLTDL@,$DIRLTDL,;t t
|
||||
|
|
|
@ -116,6 +116,10 @@ AC_CHECK_TOOL(AS, as)
|
|||
AC_CHECK_TOOL(LD, ld)
|
||||
AC_CHECK_TOOL(AR, ar)
|
||||
AC_CHECK_TOOL(RANLIB, ranlib, :)
|
||||
AC_CHECK_PROGS(JAR, [jar fastjar], false)
|
||||
if test "$JAR" = false; then
|
||||
AC_MSG_ERROR(jar program not found)
|
||||
fi
|
||||
|
||||
AC_PROG_INSTALL
|
||||
|
||||
|
@ -289,7 +293,6 @@ case "${which_gcj}" in
|
|||
built)
|
||||
GCJ="$built_gcc_dir/gcj -B`${PWDCMD-pwd}`/ -B$built_gcc_dir/"
|
||||
GCJH='$(top_builddir)/$(MULTIBUILDTOP)../../$(host_subdir)/gcc/gcjh'
|
||||
ZIP='$(top_builddir)/$(MULTIBUILDTOP)../../$(host_subdir)/fastjar/fastjar'
|
||||
;;
|
||||
cross)
|
||||
if test "x${with_newlib}" = "xyes"; then
|
||||
|
@ -299,20 +302,15 @@ case "${which_gcj}" in
|
|||
else
|
||||
GCJ="${target_noncanonical}-gcj -B`${PWDCMD-pwd}`/"
|
||||
fi
|
||||
ZIP='$(target_noncanonical)-fastjar'
|
||||
GCJH='$(target_noncanonical)-gcjh'
|
||||
;;
|
||||
path)
|
||||
GCJ="gcj -B`${PWDCMD-pwd}`/"
|
||||
## In this case, gcj is found outside the build tree. However, zip is
|
||||
## found in the build tree.
|
||||
ZIP='$(top_builddir)/$(MULTIBUILDTOP)../$(COMPPATH)/fastjar/fastjar'
|
||||
GCJH=gcjh
|
||||
;;
|
||||
esac
|
||||
|
||||
AC_SUBST(GCJH)
|
||||
AC_SUBST(ZIP)
|
||||
|
||||
# Create it, so that compile/link tests don't fail
|
||||
test -f libgcj.spec || touch libgcj.spec
|
||||
|
|
|
@ -138,6 +138,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
|||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
INTERPRETER = @INTERPRETER@
|
||||
JAR = @JAR@
|
||||
JAVA_HOME = @JAVA_HOME@
|
||||
JAVA_HOME_SET_FALSE = @JAVA_HOME_SET_FALSE@
|
||||
JAVA_HOME_SET_TRUE = @JAVA_HOME_SET_TRUE@
|
||||
|
@ -229,7 +230,6 @@ X_EXTRA_LIBS = @X_EXTRA_LIBS@
|
|||
X_LIBS = @X_LIBS@
|
||||
X_PRE_LIBS = @X_PRE_LIBS@
|
||||
ZINCS = @ZINCS@
|
||||
ZIP = @ZIP@
|
||||
ZLIBS = @ZLIBS@
|
||||
ZLIBSPEC = @ZLIBSPEC@
|
||||
ZLIBTESTSPEC = @ZLIBTESTSPEC@
|
||||
|
|
|
@ -137,6 +137,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
|||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
INTERPRETER = @INTERPRETER@
|
||||
JAR = @JAR@
|
||||
JAVA_HOME = @JAVA_HOME@
|
||||
JAVA_HOME_SET_FALSE = @JAVA_HOME_SET_FALSE@
|
||||
JAVA_HOME_SET_TRUE = @JAVA_HOME_SET_TRUE@
|
||||
|
@ -228,7 +229,6 @@ X_EXTRA_LIBS = @X_EXTRA_LIBS@
|
|||
X_LIBS = @X_LIBS@
|
||||
X_PRE_LIBS = @X_PRE_LIBS@
|
||||
ZINCS = @ZINCS@
|
||||
ZIP = @ZIP@
|
||||
ZLIBS = @ZLIBS@
|
||||
ZLIBSPEC = @ZLIBSPEC@
|
||||
ZLIBTESTSPEC = @ZLIBTESTSPEC@
|
||||
|
|
|
@ -126,6 +126,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
|||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
INTERPRETER = @INTERPRETER@
|
||||
JAR = @JAR@
|
||||
JAVA_HOME = @JAVA_HOME@
|
||||
JAVA_HOME_SET_FALSE = @JAVA_HOME_SET_FALSE@
|
||||
JAVA_HOME_SET_TRUE = @JAVA_HOME_SET_TRUE@
|
||||
|
@ -217,7 +218,6 @@ X_EXTRA_LIBS = @X_EXTRA_LIBS@
|
|||
X_LIBS = @X_LIBS@
|
||||
X_PRE_LIBS = @X_PRE_LIBS@
|
||||
ZINCS = @ZINCS@
|
||||
ZIP = @ZIP@
|
||||
ZLIBS = @ZLIBS@
|
||||
ZLIBSPEC = @ZLIBSPEC@
|
||||
ZLIBTESTSPEC = @ZLIBTESTSPEC@
|
||||
|
|
Loading…
Add table
Reference in a new issue