[LLVMdev] proposal to avoid zlib dependency.

Mueller-Roemer, Johannes Sebastian Johannes.Sebastian.Mueller-Roemer at igd.fraunhofer.de
Wed Sep 17 09:26:40 PDT 2014


Well, I just had a quick look again and there were two issues:

You added ${ZLIB_LIBRARIES} to CMAKE_REQUIRED_LIBRARIES not ${ZLIB_LIBRARY}
That was covered up under Linux/MacOSX by

if ( LLVM_ENABLE_ZLIB AND HAVE_LIBZ )
  set(system_libs ${system_libs} z)
endif()

in Support's CMakeLists.txt

I corrected the first point and removed the second. Now, HAVE_LIBZ and HAVE_ZLIB_H aren't used at all anymore so I removed those as well.

Patch attached.

PS: I wouldn't really consider CMAKE_REQUIRED_LIBRARIES/CMAKE_REQUIRED_INCLUDES a clean solution. target_include_directories and target_link_libraries offer much finer control.

--
Johannes S. Mueller-Roemer, MSc
Wiss. Mitarbeiter - Interactive Engineering Technologies (IET)

Fraunhofer-Institut für Graphische Datenverarbeitung IGD
Fraunhoferstr. 5  |  64283 Darmstadt  |  Germany
Tel +49 6151 155-606  |  Fax +49 6151 155-139
johannes.mueller-roemer at igd.fraunhofer.de  |  www.igd.fraunhofer.de


-----Original Message-----
From: Dan Liew [mailto:dan at su-root.co.uk] 
Sent: Wednesday, September 17, 2014 17:52
To: Mueller-Roemer, Johannes Sebastian
Cc: llvmdev at cs.uiuc.edu
Subject: Re: [LLVMdev] proposal to avoid zlib dependency.

On 17 September 2014 16:34, Mueller-Roemer, Johannes Sebastian <Johannes.Sebastian.Mueller-Roemer at igd.fraunhofer.de> wrote:
> I'll have another look tomorrow.

Thanks.

> IMO, it is unnecessary clutter. It will fail if ${ZLIB_LIBRARIES} or ${ZLIB_INCLUDE_DIRS} are used anyways as they will be set to NOTFOUND. Or we go back to a silent-fail solution:

Fair enough. I've never been a big fan of silent failure. So perhaps just this...

```
if (LLVM_ENABLE_ZLIB )
  find_package(ZLIB REQUIRED)
    set(HAVE_ZLIB_H 1)
    set(HAVE_LIBZ 1)
    list(APPEND CMAKE_REQUIRED_LIBRARIES ${ZLIB_LIBRARIES})
    list(APPEND CMAKE_REQUIRED_INCLUDES ${ZLIB_INCLUDE_DIRS})
else()
  set(HAVE_ZLIB_H 0)
  set(HAVE_LIBZ 0)
endif()
```

--
Dan Liew
PhD Student - Imperial College London
-------------- next part --------------
A non-text attachment was scrubbed...
Name: zlibfix.patch
Type: application/octet-stream
Size: 1928 bytes
Desc: zlibfix.patch
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140917/1adb46c9/attachment.obj>


More information about the llvm-dev mailing list