Libmng: Difference between revisions

From CBLFS
Jump to navigationJump to search
No edit summary
Kalessin (talk | contribs)
I added a new patch and updated the instructions to take advantage of it.
Line 1: Line 1:
{| style="text-align: left; background-color: AliceBlue;"
{| style="text-align: left; background-color: AliceBlue;"
|-valign="top"
|-valign="top"
!Download Source:
! Download Source:
| http://prdownloads.sourceforge.net/libmng/libmng-{{Libmng-Version}}.tar.gz  
| http://prdownloads.sourceforge.net/libmng/libmng-{{Libmng-Version}}.tar.gz
|-
! Download Patch:
| http://svn.cross-lfs.org/svn/repos/patches/libmng/libmng-{{Libmng-Version}}-libdir-1.patch
|}
|}


Line 16: Line 19:
*[[libjpeg]]
*[[libjpeg]]
*[[little cms]]
*[[little cms]]
== Additional Configuration Options ==
'''Note to DESTDIR fans:''' You will need to alter the installation of the documentation to:
  install -dv -m755 <DESTDIR>/usr/share/man/man{3,5}
  install -v -m644 doc/man/*.3 <DESTDIR>/usr/share/man/man3
  install -v -m644 doc/man/*.5 <DESTDIR>/usr/share/man/man5
  install -dv -m755 <DESTDIR>/usr/share/doc/libmng-{{Libmng-Version}}
  install -v -m644 doc/*.{png,txt} <DESTDIR>/usr/share/doc/libmng-{{Libmng-Version}}
Other than that - thanks to the patch - DESTDIR should work as it normally does.


== Non-Multilib ==
== Non-Multilib ==
Line 22: Line 38:


  cp makefiles/makefile.linux Makefile &&
  cp makefiles/makefile.linux Makefile &&
patch -Np1 -i ../libmng-{{Libmng-Version}}-libdir-1.patch &&
  make
  make


Install the package
Install the package


  make prefix=/usr install &&
  make install &&
  install -v -m644 doc/man/*.3 /usr/share/man/man3 &&
  install -v -m644 doc/man/*.3 /usr/share/man/man3 &&
  install -v -m644 doc/man/*.5 /usr/share/man/man5 &&
  install -v -m644 doc/man/*.5 /usr/share/man/man5 &&
  install -v -m755 -d /usr/share/doc/libmng-{{Libmng-Version}} &&
  install -dv -m755 /usr/share/doc/libmng-{{Libmng-Version}} &&
  install -v -m644 doc/*.{png,txt} /usr/share/doc/libmng-{{Libmng-Version}}
  install -v -m644 doc/*.{png,txt} /usr/share/doc/libmng-{{Libmng-Version}}


=== Command Explanations ===
=== Command Explanations ===


'''cp makefiles/makefile.linux Makefile''': There are no autotools shipped with this package. The Linux Makefile is copied to the root of the source tree, facilitating the installation.
'''cp makefiles/makefile.linux Makefile''': There are no autotools shipped with this package. We copy the appropriate Makefile to the base directory so that we can use it.
 
'''patch -Np1 -i ../libmng-{{Libmng-Version}}-libdir-1.patch''': This patch makes it more sane to build libmng. Basically it makes the default prefix /usr and makes it so that all you have to do to change the library directory is pass ''libdir=/usr/lib64'' (or the equivalent) to '''make''' and '''make install'''. It also adds DESTDIR to the Makefile for those that want it.


'''install ...''': The documentation files are not installed by the installation procedure, so they are copied manually.
'''install ...''': The documentation files are not installed by the installation procedure, so we copy them manually.


== Multilib ==
== Multilib ==
Line 44: Line 63:
Compile the package:
Compile the package:


  sed "/OBJSDLL/s/\.0/.o/" makefiles/makefile.linux > Makefile
  cp makefiles/makefile.linux Makefile
patch -Np1 -i ../libmng-{{Libmng-Version}}-libdir-1.patch
  make CC="gcc ${BUILD32}"
  make CC="gcc ${BUILD32}"


Install the package
Install the package


  make prefix=/usr install
  make install


=== N32 ===
=== N32 ===
Line 55: Line 75:
Compile the package
Compile the package


  sed "/OBJSDLL/s/\.0/.o/" makefiles/makefile.linux > Makefile
  cp makefiles/makefile.linux Makefile
  make CC="gcc ${BUILDN32}" prefix=/usr LIBPATH=/usr/lib32 ZLIBLIB=/usr/lib32 \
patch -Np1 -i ../libmng-{{Libmng-Version}}-libdir-1.patch
    JPEGLIB=/usr/lib32 LCMSLIB=/usr/lib32
  make CC="gcc ${BUILDN32}" libdir=/usr/lib32


Install the package
Install the package
   
   
  make prefix=/usr LIBPATH=/usr/lib32 install
  make libdir=/usr/lib32 install


=== 64Bit ===
=== 64Bit ===
Line 67: Line 87:
Compile the package
Compile the package


  sed "/OBJSDLL/s/\.0/.o/" makefiles/makefile.linux > Makefile
  cp makefiles/makefile.linux Makefile
  make CC="gcc ${BUILD64}" prefix=/usr LIBPATH=/usr/lib64 \
patch -Np1 -i ../libmng-{{Libmng-Version}}-libdir-1.patch
    ZLIBLIB=/usr/lib64 JPEGLIB=/usr/lib64 LCMSLIB=/usr/lib64
  make CC="gcc ${BUILD64}" libdir=/usr/lib64


Install the package
Install the package
   
   
  make prefix=/usr LIBPATH=/usr/lib64 install
  make libdir=/usr/lib64 install
  install -v -m644 doc/man/*.3 /usr/share/man/man3 &&
  install -v -m644 doc/man/*.3 /usr/share/man/man3 &&
  install -v -m644 doc/man/*.5 /usr/share/man/man5 &&
  install -v -m644 doc/man/*.5 /usr/share/man/man5 &&

Revision as of 23:19, 4 January 2007

Download Source: http://prdownloads.sourceforge.net/libmng/libmng-1.0.10.tar.gz
Download Patch: http://svn.cross-lfs.org/svn/repos/patches/libmng/libmng-1.0.10-libdir-1.patch

Introduction to libmng

The libmng libraries are used by programs wanting to read and write Multiple-image Network Graphics (MNG) files which are the animation equivalents to PNG files.

Dependencies

Required

Additional Configuration Options

Note to DESTDIR fans: You will need to alter the installation of the documentation to:

 install -dv -m755 <DESTDIR>/usr/share/man/man{3,5}
 install -v -m644 doc/man/*.3 <DESTDIR>/usr/share/man/man3
 install -v -m644 doc/man/*.5 <DESTDIR>/usr/share/man/man5
 install -dv -m755 <DESTDIR>/usr/share/doc/libmng-1.0.10
 install -v -m644 doc/*.{png,txt} <DESTDIR>/usr/share/doc/libmng-1.0.10

Other than that - thanks to the patch - DESTDIR should work as it normally does.


Non-Multilib

Compile the package:

cp makefiles/makefile.linux Makefile &&
patch -Np1 -i ../libmng-1.0.10-libdir-1.patch &&
make

Install the package

make install &&
install -v -m644 doc/man/*.3 /usr/share/man/man3 &&
install -v -m644 doc/man/*.5 /usr/share/man/man5 &&
install -dv -m755 /usr/share/doc/libmng-1.0.10 &&
install -v -m644 doc/*.{png,txt} /usr/share/doc/libmng-1.0.10

Command Explanations

cp makefiles/makefile.linux Makefile: There are no autotools shipped with this package. We copy the appropriate Makefile to the base directory so that we can use it.

patch -Np1 -i ../libmng-1.0.10-libdir-1.patch: This patch makes it more sane to build libmng. Basically it makes the default prefix /usr and makes it so that all you have to do to change the library directory is pass libdir=/usr/lib64 (or the equivalent) to make and make install. It also adds DESTDIR to the Makefile for those that want it.

install ...: The documentation files are not installed by the installation procedure, so we copy them manually.

Multilib

32Bit

Compile the package:

cp makefiles/makefile.linux Makefile
patch -Np1 -i ../libmng-1.0.10-libdir-1.patch
make CC="gcc ${BUILD32}"

Install the package

make install

N32

Compile the package

cp makefiles/makefile.linux Makefile
patch -Np1 -i ../libmng-1.0.10-libdir-1.patch
make CC="gcc ${BUILDN32}" libdir=/usr/lib32

Install the package

make libdir=/usr/lib32 install

64Bit

Compile the package

cp makefiles/makefile.linux Makefile
patch -Np1 -i ../libmng-1.0.10-libdir-1.patch
make CC="gcc ${BUILD64}" libdir=/usr/lib64

Install the package

make libdir=/usr/lib64 install
install -v -m644 doc/man/*.3 /usr/share/man/man3 &&
install -v -m644 doc/man/*.5 /usr/share/man/man5 &&
install -v -m755 -d /usr/share/doc/libmng-1.0.10 &&
install -v -m644 doc/*.{png,txt} /usr/share/doc/libmng-1.0.10

Contents

Installed Programs: None
Installed Libraries: libmng.{so,a}
Installed Directories: /usr/share/doc/libmng-1.0.10

Short Descriptions

libmng.{so,a} provides functions for programs wishing to read and write MNG files which are animation files without the patent problems associated with certain other formats.
Retrieved from "?title=Libmng&oldid=6648"