diff --git a/README.md b/README.md index c313ac4..b8639c3 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,5 @@ # fastjar +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 100% feature compatible. + diff --git a/fastjar-0.93-gcc34.patch b/fastjar-0.93-gcc34.patch new file mode 100644 index 0000000..a36bd3a --- /dev/null +++ b/fastjar-0.93-gcc34.patch @@ -0,0 +1,28 @@ +diff -Nru fastjar-0.93.orig/jargrep.c fastjar-0.93/jargrep.c +--- fastjar-0.93.orig/jargrep.c 2005-08-11 16:58:23.000000000 +0200 ++++ fastjar-0.93/jargrep.c 2005-08-11 17:15:23.000000000 +0200 +@@ -572,7 +572,7 @@ + floop = FALSE; + break; + case 2: +- /* fall through continue */ ++ /* fall through continue */ ; + } + } + } while(floop); +diff -Nru fastjar-0.93.orig/Makefile.in fastjar-0.93/Makefile.in +--- fastjar-0.93.orig/Makefile.in 2005-08-11 16:58:23.000000000 +0200 ++++ fastjar-0.93/Makefile.in 2005-08-11 17:15:08.000000000 +0200 +@@ -114,12 +114,6 @@ + all: all-redirect + .SUFFIXES: + .SUFFIXES: .S .c .o .s +-$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) +- cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile +- +-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) +- cd $(top_builddir) \ +- && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status + + $(ACLOCAL_M4): configure.in + cd $(srcdir) && $(ACLOCAL) diff --git a/fastjar-0.97-len1.patch b/fastjar-0.97-len1.patch new file mode 100644 index 0000000..a796dcc --- /dev/null +++ b/fastjar-0.97-len1.patch @@ -0,0 +1,11 @@ +--- fastjar-0.97/jartool.c 2010-02-03 17:52:35.000000000 +0100 ++++ fastjar-0.97/jartool.c-gil 2010-02-03 17:55:50.000000000 +0100 +@@ -1257,7 +1257,7 @@ + exit_on_error("write"); + + /* write the file name to the zip file */ +- if (1 == write(jfd, fname, file_name_length)) ++ if (-1 == write(jfd, fname, file_name_length)) + exit_on_error("write"); + + if(verbose){ diff --git a/fastjar-0.97-segfault.patch b/fastjar-0.97-segfault.patch new file mode 100644 index 0000000..b44679a --- /dev/null +++ b/fastjar-0.97-segfault.patch @@ -0,0 +1,24 @@ +--- fastjar-0.97/jartool.c 2008-10-15 18:35:37.000000000 +0200 ++++ fastjar-0.97/jartool.c-gil 2010-02-03 17:52:35.000000000 +0100 +@@ -820,6 +820,10 @@ + int mod_time; /* file modification time */ + struct zipentry *ze; + ++ current_time = time(NULL); ++ if(current_time == (time_t)-1) ++ exit_on_error("time"); ++ + mod_time = unix2dostime(¤t_time); + + /* If we are creating a new manifest, create a META-INF directory entry */ +@@ -828,10 +832,6 @@ + + memset((file_header + 12), '\0', 16); /*clear mod time, crc, size fields*/ + +- current_time = time(NULL); +- if(current_time == (time_t)-1) +- exit_on_error("time"); +- + PACK_UB2(file_header, LOC_EXTRA, 0); + PACK_UB2(file_header, LOC_COMP, 0); + PACK_UB2(file_header, LOC_FNLEN, nlen); diff --git a/fastjar.spec b/fastjar.spec new file mode 100644 index 0000000..ca48fd6 --- /dev/null +++ b/fastjar.spec @@ -0,0 +1,105 @@ +Name: fastjar +Version: 0.98 +Release: 1mamba +Summary: An implementation of Sun's jar utility that comes with the JDK +Group: Development/Tools +Vendor: openmamba +Distribution: openmamba +Packager: Silvan Calarco +URL: http://sourceforge.net/projects/fastjar +Source: http://download.savannah.nongnu.org/releases/fastjar/fastjar-%{version}.tar.gz +Patch0: fastjar-0.93-gcc34.patch +Patch1: fastjar-0.97-segfault.patch +Patch2: fastjar-0.97-len1.patch +License: GPL +## AUTOBUILDREQ-BEGIN +BuildRequires: glibc-devel +BuildRequires: libz-devel +## AUTOBUILDREQ-END +Requires(post):%{__install_info} +BuildRoot: %{_tmppath}/%{name}-%{version}-root + +%description +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 100% feature compatible. + +%package -n grepjar +Group: Development/Tools +Summary: grepjar - search files in a jar file for a pattern + +%description -n grepjar +The grepjar program can be used to search files in a jar file for a +pattern. + +%package manual +Group: Documentation +Summary: %{name} documentation + +%description manual +Fastjar is an implementation of Sun's jar utility that comes with the JDK. + +This package contains %{name} documentation in different formats (html,pdf,dvi,ps). + +%prep +%setup -q +#%patch0 -p1 +#%patch1 -p1 +%patch2 -p1 + +%build +%configure \ + CFLAGS="%{optflags}" \ + --prefix=%{_prefix} \ + --mandir=%{_mandir} \ + --infodir=%{_infodir} +%make +%make html +%make pdf +%make ps +%make dvi + +%install +[ "%{buildroot}" != / ] && rm -rf %{buildroot} +%makeinstall + +%clean +[ "%{buildroot}" != / ] && rm -rf %{buildroot} + +%post +%install_info fastjar.info + +%preun +%uninstall_info fastjar.info + +%files +%defattr(-,root,root) +%{_bindir}/fastjar +%{_mandir}/man1/fastjar.1.gz +%{_infodir}/fastjar.info.gz +%doc fastjar.dvi fastjar.html +%doc fastjar.pdf fastjar.ps +%doc AUTHORS CHANGES COPYING +%doc ChangeLog CHANGES INSTALL +%doc NEWS README + +%files -n grepjar +%defattr(-,root,root) +%{_bindir}/grepjar +%{_mandir}/man1/grepjar.1.gz + +%changelog +* Mon Nov 28 2011 Automatic Build System 0.98-1mamba +- automatic update by autodist + +* Thu Feb 04 2010 gil 0.97-1mamba +- update to 0.97 +- added new sub package: grepjar + +* Thu Jul 10 2008 Silvan Calarco 0.94-1mamba +- update to 0.94 + +* Tue Mar 11 2008 Silvan Calarco 0.93-2mamba +- specfile updated + +* Thu Aug 11 2005 Silvan Calarco 0.93-1qilnx +- package created by autospec