confuse/confuse.spec

Fri, 03 Aug 2012 20:11:53 +0200

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Fri, 03 Aug 2012 20:11:53 +0200
changeset 470
f8813e60f168
parent 127
1706cab8c621
child 545
66949ddfb716
permissions
-rw-r--r--

Neutralize buggy code causing OpenPKG to have 'fatal problems' in
spite of correct installation, configuration, and operation. An
administrator suffering from this failure is even unable to
uninstall the flawed software.

michael@116 1 ##
michael@116 2 ## confuse.spec -- OpenPKG RPM Specification
michael@116 3 ## Copyright (c) 2009 Michael Schloh von Bennewitz <michael@schloh.com>
michael@116 4 ##
michael@116 5 ## Permission to use, copy, modify, and distribute this software for
michael@116 6 ## any purpose with or without fee is hereby granted, provided that
michael@116 7 ## the above copyright notice and this permission notice appear in all
michael@116 8 ## copies.
michael@116 9 ##
michael@116 10 ## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
michael@116 11 ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
michael@116 12 ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
michael@116 13 ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
michael@116 14 ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
michael@116 15 ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
michael@116 16 ## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
michael@116 17 ## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
michael@116 18 ## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
michael@116 19 ## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
michael@116 20 ## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
michael@116 21 ## SUCH DAMAGE.
michael@116 22 ##
michael@116 23
michael@116 24
michael@116 25 # package information
michael@116 26 Name: confuse
michael@118 27 Summary: Configuration Parsing Library
michael@116 28 URL: http://www.nongnu.org/confuse/
michael@116 29 Vendor: Martin Hedenfalk
michael@116 30 Packager: Michael Schloh von Bennewitz
michael@387 31 Distribution: Europalab Networks Production
michael@116 32 Class: EVAL
michael@116 33 Group: Libraries
michael@116 34 License: ISC
michael@116 35 Version: 2.6
michael@116 36 Release: 20090320
michael@116 37
michael@116 38 # list of sources
michael@117 39 Source0: http://bzero.se/confuse/confuse-%{version}.tar.gz
michael@116 40
michael@116 41 # build information
michael@116 42 Prefix: %{l_prefix}
michael@116 43 BuildRoot: %{l_buildroot}
michael@116 44 BuildPreReq: OpenPKG, openpkg >= 20040130, make
michael@116 45 PreReq: OpenPKG, openpkg >= 20040130
michael@116 46 AutoReq: no
michael@116 47 AutoReqProv: no
michael@116 48
michael@116 49 %description
michael@116 50 Previously known as libcfg, confuse is a configuration file
michael@116 51 parser library which supports sections and (lists of) values
michael@116 52 (strings, integers, floats, booleans or other sections). Other
michael@116 53 features include parsing of single and double quoted strings,
michael@116 54 environment variable expansion, functions and nested include
michael@116 55 statements. It makes it very easy to add configuration file
michael@116 56 capability to a program using a simple API.
michael@116 57
michael@116 58 %track
michael@116 59 prog confuse = {
michael@116 60 version = %{version}
michael@116 61 url = http://bzero.se/confuse/
michael@117 62 regex = confuse-(__VER__)\.tar\.gz
michael@116 63 }
michael@116 64
michael@116 65 %prep
michael@116 66 # unpack sources
michael@116 67 %setup -q
michael@116 68
michael@116 69 %build
michael@116 70 # run the autoconf(1) generated configuration logic
michael@116 71 CC="%{l_cc}" \
michael@116 72 CFLAGS="%{l_cflags -O}" \
michael@116 73 CPPFLAGS="%{l_cppflags}" \
michael@116 74 LDFLAGS="%{l_ldflags}" \
michael@127 75 GREP="grep" \
michael@116 76 ./configure \
michael@116 77 --prefix=%{l_prefix} \
michael@116 78 --disable-nls
michael@116 79
michael@116 80 # run the native build logic using parallel make
michael@116 81 %{l_make} %{l_mflags -O}
michael@116 82
michael@116 83 %install
michael@116 84 # remove previously existing installations
michael@116 85 rm -rf $RPM_BUILD_ROOT
michael@116 86
michael@116 87 # install files
michael@116 88 %{l_make} %{l_mflags} install DESTDIR=$RPM_BUILD_ROOT
michael@116 89
michael@116 90 # determine installation files
michael@116 91 %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std}
michael@116 92
michael@116 93 %files -f files
michael@116 94
michael@116 95 %clean
michael@116 96 rm -rf $RPM_BUILD_ROOT
michael@116 97

mercurial