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