Bug 61379 - Windows builds fail, because /xml/expat directory does not exist.
Summary: Windows builds fail, because /xml/expat directory does not exist.
Status: NEEDINFO
Alias: None
Product: APR
Classification: Unclassified
Component: APR-util (show other bugs)
Version: 1.6.0
Hardware: PC All
: P2 normal with 1 vote (vote)
Target Milestone: ---
Assignee: Apache Portable Runtime bugs mailinglist
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-08-03 22:37 UTC by trash80
Modified: 2017-08-30 23:14 UTC (History)
0 users



Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description trash80 2017-08-03 22:37:06 UTC
makefile.win and cmake both fail because /xml/expat directory isn't in 1.6.0 release.  It was previously in 1.5.4, which has been removed from the main downloads directory.
Comment 1 Nick Kew 2017-08-30 22:45:03 UTC
I think this is a Wontfix.  Unbundling expat was a project decision, and fixes a bunch of problems.   It's in the release notes that expat has been unbundled and is now a dependency instead.

Maybe the documentation could/should be improved?  Suggestions welcome.

Or is this something in the build files that assumes expat is bundled and fails to use an installed expat?
Comment 2 trash80 2017-08-30 22:48:42 UTC
The build files look into the same place for the expat as before in windows.  I don't see where the build files search for an install path.
Comment 3 trash80 2017-08-30 23:06:06 UTC
I don't remember seeing this in the makefile.win before:

!IF !EXIST("xml\expat\lib\expat.h")
!MESSAGE Please obtain the latest expat source from http://expat.sourceforge.net/
!MESSAGE and place it in the xml folder of apr-util so that expat.h is located in
!MESSAGE apr-util/xml/expat/lib/expat.h and include all the other files in expat's
!MESSAGE "lib" folder.
!MESSAGE 
!ERROR Need expat sources to build!
!ENDIF

But, that isn't in the cmake file.  It's also not in the README files.  
https://apr.apache.org/compiling_win32.html also doesn't mention it.
It's also not in the included Changes file.

The only sources of this information seems to be the main webpage and the linked changefile and the win makefile mentioned above, which is the only location I could find included in the code to mention the change.

I have an automated script that pulls the latest from repositories, and I usually check the included changes files.
Comment 4 trash80 2017-08-30 23:07:24 UTC
Although, now that I know what has happened with expat, I can continue working and just mark this bug as requiring documentation updates.
Comment 5 trash80 2017-08-30 23:14:08 UTC
  *) The expat dependency of apr-util is no longer built with apr-util.
     Install expat (including development headers and libraries) first
     before building apr-util. [https://libexpat.github.io/]

This is the first bullet on the url given above, but is completely absent from the change file included in the source code.