Use CMake for libmng package (#14747)

* Convert libmng to use CMake rather than autoconf

The autoconf script failed to recognize the intel compiler; it was
harwired to use gcc.

* Simplify cmake logic and remove unused variant
This commit is contained in:
Seth R. Johnson 2020-02-04 19:33:33 -06:00 committed by GitHub
parent 52d1f5b839
commit 731148e0e1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -6,16 +6,17 @@
from spack import *
class Libmng(AutotoolsPackage):
"""libmng -THE reference library for reading, displaying, writing
class Libmng(CMakePackage):
"""THE reference library for reading, displaying, writing
and examining Multiple-Image Network Graphics. MNG is the animation
extension to the popular PNG image-format."""
extension to the popular PNG image format."""
homepage = "http://sourceforge.net/projects/libmng/"
url = "http://downloads.sourceforge.net/project/libmng/libmng-devel/2.0.3/libmng-2.0.3.tar.gz"
version('2.0.3', sha256='cf112a1fb02f5b1c0fce5cab11ea8243852c139e669c44014125874b14b7dfaa')
version('2.0.2', sha256='4908797bb3541fb5cd8fffbe0b1513ed163509f2a4d57a78b26a96f8d1dd05a2')
depends_on("gzip")
depends_on("jpeg")
depends_on("zlib")
depends_on("lcms")
@ -25,11 +26,6 @@ def patch(self):
filter_file(r'^(\#include \<jpeglib\.h\>)',
'#include<stdio.h>\n\\1', 'libmng_types.h')
@run_before('configure')
def clean_configure_directory(self):
"""Without this, configure crashes with:
configure: error: source directory already configured;
run "make distclean" there first
"""
make('distclean')
def cmake_args(self):
return ['-DWITH_LCMS2:BOOL=ON',
'-DWITH_LCMS1:BOOL=OFF']