diff --git a/.cvsignore b/.cvsignore deleted file mode 100644 index e69de29..0000000 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..59f7a55 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +ustr-1.0.1.tar.gz diff --git a/Makefile b/Makefile deleted file mode 100644 index 18282e9..0000000 --- a/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# Makefile for source rpm: ustr -# $Id$ -NAME := ustr -SPECFILE = $(firstword $(wildcard *.spec)) - -define find-makefile-common -for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done -endef - -MAKEFILE_COMMON := $(shell $(find-makefile-common)) - -ifeq ($(MAKEFILE_COMMON),) -# attept a checkout -define checkout-makefile-common -test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2 -endef - -MAKEFILE_COMMON := $(shell $(checkout-makefile-common)) -endif - -include $(MAKEFILE_COMMON) diff --git a/html_doc_fixes.patch b/html_doc_fixes.patch new file mode 100644 index 0000000..9aab590 --- /dev/null +++ b/html_doc_fixes.patch @@ -0,0 +1,42 @@ +--- Documentation/index.html 2007-08-04 01:21:02.000000000 -0400 ++++ Documentation/index.html 2007-08-04 01:43:27.000000000 -0400 +@@ -39,7 +39,7 @@ + +

Micro String API - for C

+ +-

Download

++

Download - Version 1.0.1

+ +

You can get the stable release of 1.0.x here, it still + doesn't have 100% documentation but it's pretty close. You can get the current +@@ -693,8 +693,8 @@ + + ustr_free(s2); /* free'd one reference to the data pointed to by both s2 and s3 */ + +-ustr_set_share(s2); /* Make s2/s3 "shared" data, +- so it always has infinite references */ ++ustr_setf_share(s2); /* Make s2/s3 "shared" data, ++ so it always has infinite references */ + + if (ustr_shared(s2)) /* This is TRUE */ + /* whatever */ ; +@@ -718,8 +718,8 @@ + hence the explicit first check */ + /* error */ ; + +-ustr_set_owner(s2); /* Make s2 be "non-shared" and have a single owner */ +-ustr_set_owner(s1); /* This fails, as you can't make a read-only string be "non-shared" */ ++ustr_setf_owner(s2); /* Make s2 be "non-shared" and have a single owner */ ++ustr_setf_owner(s1); /* This fails, as you can't make a read-only string be "non-shared" */ + + ustr_sc_del(&s2); /* free'd s2 and set s2 = USTR("") */ + +@@ -742,7 +742,7 @@ +

James Antill
+ + +-Last modified: Sat Aug 4 01:21:02 EDT 2007 ++Last modified: Sat Aug 4 01:43:27 EDT 2007 + + + diff --git a/import_repl.patch b/import_repl.patch new file mode 100644 index 0000000..14c7b22 --- /dev/null +++ b/import_repl.patch @@ -0,0 +1,13 @@ +diff --git a/ustr-import.in b/ustr-import.in +index cdc0ab0..54acb7d 100644 +--- a/ustr-import.in ++++ b/ustr-import.in +@@ -255,7 +255,7 @@ if $pool; then + fi + + if $repl; then +- copy repl ++ copy replace + fi + + if $sc; then diff --git a/inst_examples.patch b/inst_examples.patch new file mode 100644 index 0000000..3f81020 --- /dev/null +++ b/inst_examples.patch @@ -0,0 +1,12 @@ +diff --git a/Makefile b/Makefile +index 53edefe..6232cf2 100644 +--- a/Makefile ++++ b/Makefile +@@ -72,6 +72,7 @@ MAN_PAGES_3 = \ + Documentation/ustr_const.3 + + EXAMPLES = examples/Makefile \ ++ examples/fgrep.c \ + examples/hello_world.c \ + examples/hexdump.c \ + examples/mkdir_p.c \ diff --git a/sources b/sources index e69de29..5bd2b46 100644 --- a/sources +++ b/sources @@ -0,0 +1 @@ +5f855b3ebb8dd4da40f94952efa6c6d5 ustr-1.0.1.tar.gz diff --git a/ustr.spec b/ustr.spec new file mode 100644 index 0000000..8f3bf2d --- /dev/null +++ b/ustr.spec @@ -0,0 +1,175 @@ + +Name: ustr +Version: 1.0.1 +Release: 5%{?dist} +Summary: String library, very low memory overhead, simple to import +Group: System Environment/Libraries +License: MIT or LGPLv2+ or BSD +URL: http://www.and.org/ustr/ +Source0: http://www.and.org/ustr/%{version}/%{name}-%{version}.tar.gz +Patch0: inst_examples.patch +Patch1: html_doc_fixes.patch +Patch2: import_repl.patch +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +# BuildRequires: make gcc sed + +%description + Micro string library, very low overhead from plain strdup() (Ave. 44% for +0-20B strings). Very easy to use in existing C code. At it's simplest you can +just include a single header file into your .c and start using it. + This package also distributes pre-built shared libraries. + +%package devel +Summary: Development files for %{name} +Group: Development/Libraries +# This isn't required, but Fedora policy makes it so +Requires: pkgconfig >= 0.14 +Requires: %{name} = %{version}-%{release} + +%description devel + Header files for the Ustr string library, and the .so to link with. + Also includes a %{name}.pc file for pkg-config usage. + Includes the ustr-import tool, for if you jsut want to include +the code in your projects ... you don't have to link to the shared lib. + +%package static +Summary: Static development files for %{name} +Group: Development/Libraries +Requires: %{name}-devel = %{version}-%{release} + +%description static + Static library for the Ustr string library. + +%package debug +Summary: Development files for %{name}, with debugging options turned on +Group: Development/Libraries +# This isn't required, but Fedora policy makes it so +Requires: pkgconfig >= 0.14 +Requires: %{name}-devel = %{version}-%{release} + +%description debug + Header files and dynamic libraries for a debug build of the Ustr string +library. + Also includes a %{name}-debug.pc file for pkg-config usage. + +%package debug-static +Summary: Static development files for %{name}, with debugging options turned on +Group: Development/Libraries +Requires: %{name}-debug = %{version}-%{release} + +%description debug-static + Static library for the debug build of the Ustr string library. + +%prep +%setup -q + +%patch0 -p1 +%patch1 -p0 +%patch2 -p1 + +%build +# Last variable name explains itself. +make %{?_smp_mflags} all-shared CFLAGS="${CFLAGS:-%optflags}" HIDE= \ + DBG_ONLY_BAD_POLICIES_HAVE_THIS_EMPTY_CFLAGS= + +%check +%if %{?chk}%{!?chk:1} +make check HIDE= +%endif + +%install +rm -rf $RPM_BUILD_ROOT +make $@ install prefix=%{_prefix} \ + bindir=%{_bindir} mandir=%{_mandir} \ + datadir=%{_datadir} libdir=%{_libdir} \ + includedir=%{_includedir} \ + DESTDIR=$RPM_BUILD_ROOT LDCONFIG=/bin/true HIDE= + +%clean +rm -rf $RPM_BUILD_ROOT + +%post -p /sbin/ldconfig + +%postun -p /sbin/ldconfig + +%post debug -p /sbin/ldconfig + +%postun debug -p /sbin/ldconfig + +%files +%defattr(-,root,root,-) +%{_libdir}/libustr-1.0.so.* +%doc ChangeLog LICENSE* README NEWS + +%files devel +%defattr(-,root,root,-) +%{_datadir}/ustr-%{version} +%{_bindir}/ustr-import +%{_includedir}/ustr.h +%{_includedir}/ustr-*.h +%exclude %{_includedir}/ustr*debug.h +%{_libdir}/pkgconfig/ustr.pc +%{_libdir}/libustr.so +%{_datadir}/doc/ustr-devel-%{version} +%{_mandir}/man1/* +%{_mandir}/man3/* + +%files static +%{_libdir}/libustr.a + +%files debug +%defattr(-,root,root,-) +%{_libdir}/libustr-debug-1.0.so.* +%{_libdir}/libustr-debug.so +%{_includedir}/ustr-debug.h +%{_includedir}/ustr-conf-debug.h +%{_libdir}/pkgconfig/ustr-debug.pc + +%files debug-static +%{_libdir}/libustr-debug.a + + +%changelog +* Wed Aug 8 2007 James Antill - 1.0.1-5 +- Import fix for ustr-import, wrt. repl <=> replace + +* Sun Aug 5 2007 James Antill - 1.0.1-4 +- Patches for minor GIT HEAD documentation fixes. +- Install mkdir_p and fgrep examples. + +* Sat Aug 4 2007 James Antill - 1.0.1-2 +- First upload to Fedora repos. + +* Fri Aug 3 2007 James Antill - 1.0.1-0.10.fc7 +- Re-fix dups in -devel and -debug file lists. +- Change license to new format + +* Thu Aug 2 2007 James Antill - 1.0.1-0.9.fc7 +- Fix dups in -devel and -debug file lists. + +* Wed Aug 1 2007 James Antill - 1.0.1-0.8.fc7 +- Required to make DBG_ONLY_BAD_POLICIES_HAVE_THIS_EMPTY_CFLAGS empty +- due to so called "review" + +* Fri Jul 27 2007 James Antill - 1.0.1-0.2.fc7 +- Next test release of 1.0.1, lots of fixes from Fedora review. + +* Wed Jul 25 2007 James Antill - 1.0.1-0 +- Test release of 1.0.1. + +* Wed Jul 11 2007 James Antill - 1.0.0-1 +- Upgrade to 1.0.0 +- Minor fixes on specfile + +* Sun Jun 3 2007 James Antill - 0.99.2-1 +- Upgrade to 0.99.2 + +* Thu May 24 2007 James Antill - 0.99.1-2 +- Fix ver typo to be version. + +* Fri May 18 2007 James Antill - 0.99.1-1 +- Use all-shared to get GCC-ish specific shared libs. + +* Mon May 14 2007 James Antill - 0.98.1-0 +- Initial spec +