libgdiplus/libgdiplus.spec

Mon, 28 Jan 2013 17:37:18 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Mon, 28 Jan 2013 17:37:18 +0100
changeset 758
a2c6460cfb16
parent 85
e6a1cd7ed6ba
permissions
-rw-r--r--

Correct socket error reporting improvement with IPv6 portable code,
after helpful recommendation by Saúl Ibarra Corretgé on OSips devlist.

     1 ##
     2 ##  libgdiplus.spec -- OpenPKG RPM Package Specification
     3 ##  Copyright (c) 2009 Michael Schloh von Bennewitz <michael@schloh.com>
     4 ##
     5 ##  Permission to use, copy, modify, and distribute this software for
     6 ##  any purpose with or without fee is hereby granted, provided that
     7 ##  the above copyright notice and this permission notice appear in all
     8 ##  copies.
     9 ##
    10 ##  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
    11 ##  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
    12 ##  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
    13 ##  IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
    14 ##  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
    15 ##  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
    16 ##  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
    17 ##  USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
    18 ##  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
    19 ##  OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
    20 ##  OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    21 ##  SUCH DAMAGE.
    22 ##
    24 #   package information
    25 Name:         libgdiplus
    26 Summary:      Unix GDI+ Development API
    27 URL:          http://www.mono-project.com/Libgdiplus
    28 Packager:     Michael Schloh von Bennewitz
    29 Distribution: Europalab Networks Production
    30 Class:        EVAL
    31 Group:        XWindow
    32 License:      MIT X11
    33 Version:      2.0
    34 Release:      20090106
    36 #   build options
    37 %option       with_shared  no
    39 #   list of sources
    40 Source0:      ftp://ftp.novell.com/pub/mono/sources/libgdiplus/libgdiplus-%{version}.tar.bz2
    42 #   build information
    43 Prefix:       %{l_prefix}
    44 BuildRoot:    %{l_buildroot}
    45 BuildPreReq:  OpenPKG, openpkg >= 20040130, make
    46 PreReq:       OpenPKG, openpkg >= 20040130
    47 BuildPreReq:  zlib, glib2, X11, xrender, cairo
    48 PreReq:       zlib, glib2, X11, xrender, cairo
    49 BuildPreReq:  fontconfig, freetype, giflib, jpeg, png, tiff
    50 PreReq:       fontconfig, freetype, giflib, jpeg, png, tiff
    51 AutoReq:      no
    52 AutoReqProv:  no
    53 Conflicts:    pnet
    55 %description
    56     The Graphics Device Interface Plus (GDI+) development API exposes
    57     abstract graphics and formatted text logic. The calling process
    58     may write to those devices for which the GDI+ has a device driver,
    59     such as a video display or printer.
    61 %track
    62     prog libgdiplus = {
    63         version   = %{version}
    64         url       = ftp://ftp.novell.com/pub/mono/sources/libgdiplus/
    65         regex     = libgdiplus-(\d+\.\d+)\.tar\.bz2
    66     }
    68 %prep
    69     #   unpack sources
    70     %setup -q
    72     #   remove subdirectory builds to assure internal library usage
    73     rm -rf cairo
    75     #   correct flaws in the build configuration
    76     %{l_shtool} subst \
    77         -e 's;\(libexif_pkgconfig=\)\("No\.[^"]*"\);\1no \&\& echo \2;g' \
    78         configure
    79     %{l_shtool} subst \
    80         -e 's;^\(SUBDIRS\) *= *@CAIRO_DIR@ src tests;\1=src tests;' \
    81         Makefile.in
    83 %build
    84     #   detect X11 paths
    85     x11_incdir=`%{l_rc} --query x11_incdir`
    86     x11_libdir=`%{l_rc} --query x11_libdir`
    88 %if "%{with_shared}" == "yes"
    89     #   configure shared library
    90     CC="%{l_cc}" \
    91     CFLAGS="%{l_cflags -O}" \
    92     CPPFLAGS="%{l_cppflags tiff} -I${x11_incdir}" \
    93     LDFLAGS="%{l_ldflags}" \
    94     ./configure \
    95         --prefix=%{l_prefix} \
    96         --with-cairo=installed \
    97         --without-libexif \
    98         --disable-static \
    99         --enable-shared \
   100         --with-gnu-ld
   102     #   build shared library
   103     %{l_make} %{l_mflags -O}
   105     #   install early, as we delete to build again
   106     %{l_shtool} mkdir -f -p -m 755 gdidyn
   107     mv src/.libs/libgdiplus* gdidyn/
   109     #   reset build configuration
   110     %{l_make} %{l_mflags} distclean
   111 %endif
   113     #   configure static library
   114     CC="%{l_cc}" \
   115     CFLAGS="%{l_cflags -O}" \
   116     CPPFLAGS="%{l_cppflags tiff} -I${x11_incdir}" \
   117     LDFLAGS="%{l_ldflags}" \
   118     ./configure \
   119         --prefix=%{l_prefix} \
   120         --with-cairo=installed \
   121         --without-libexif \
   122         --enable-static \
   123         --disable-shared \
   124         --with-gnu-ld
   126     #   build static library
   127     %{l_make} %{l_mflags -O}
   129 %install
   130     #   install static library
   131     rm -rf $RPM_BUILD_ROOT
   132     %{l_make} %{l_mflags} install DESTDIR="$RPM_BUILD_ROOT"
   134 %if "%{with_shared}" == "yes"
   135     #   install shared library
   136     %{l_tar} cf - gdidyn | %{l_tar} xf - -C $RPM_BUILD_ROOT%{l_prefix}/lib
   137 %endif
   139     #   determine installation files
   140     %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \
   141         %{l_files_std} \
   142         '%not %dir %{l_prefix}/lib/pkgconfig'
   144 %files -f files
   146 %clean
   147     rm -rf $RPM_BUILD_ROOT

mercurial