|Summary:||Makefile.am must include header files and template scripts|
|Product:||[Retired] 389||Reporter:||Masato Taruishi <taruishi>|
|Component:||Directory Server||Assignee:||Rich Megginson <rmeggins>|
|Status:||CLOSED DUPLICATE||QA Contact:||Ben Levenson <benl>|
|Version:||1.1.0beta||CC:||jgalipea, nhosoi, nobody|
|Fixed In Version:||Doc Type:||Bug Fix|
|Doc Text:||Story Points:||---|
|Last Closed:||2015-11-13 20:55:23 UTC||Type:||---|
|oVirt Team:||---||RHEL 7.3 requirements from Atomic Host:|
|Bug Depends On:|
Description Masato Taruishi 2007-06-15 15:44:04 UTC
Description of problem: The current Makefile.am in ldapserver doesn't include any header files nor template script files (c.f. *.in), however, these files must be included in Makefile.am, or 'make dist' can't create proper distribution tarball correctly. Version-Release number of selected component (if applicable): How reproducible: ./configure make dist and check the generated tarball. Steps to Reproduce: 1. ./configure 2. make dist 3. check the generated tarball such as fedora-ds-1.1.0a3.tar.gz Actual results: different between cvs tree and the contents of its tarball Expected results: tarball should consist of all the files required to build. Additional info: I attached the patch to add these files in Makefile.am , but there're few things of which you have to take care. I added header files in each <blah>_SOURCES by using an ad-hoc script to add minimal required header files to it. The script monitors errors for each target and add necessary files to it and tries to rebuild it. So if some file has been already included in tarball, then the script can't detect nesessary files correctly. Second problem is that the patch is not up-to-date but for few days ago because the CVS HEAD is often changed, but I send this patch to inform you about this potential problem rather than creating appropriate patch. This patch do as follows: * add header files for each <blah>_SOURCES * add original files for each <blah>_SCRIPTS * add other files in EXTRA_DIST I hope this example helps this problem fix.
Comment 1 Masato Taruishi 2007-06-15 15:44:05 UTC
Created attachment 157123 [details] patch to add nesessary files to Makefile.am
Comment 2 Rich Megginson 2007-06-15 15:53:02 UTC
Thanks. Some of these files have been deprecated, so we'll have to go through the list. Finally, I thought autotools were supposed to calculate all of these dependencies automatically?
Comment 3 Masato Taruishi 2007-06-18 09:51:38 UTC
I guess it's not easy to calculate these dependencies correctly because automake can't recognize which file is really required in the tarball. For example, say there are foo.in and foo in the cvs tree, and foo.in requires too many extra tools to build foo. In this case, if the tarball includes 'foo', other developer doesn't need these extra tools to build the software. The same situation applies to the header files. As another solution, you can use dist-hook target to install required files for its distribution. In addition, it seems the latest automake supports the following style to include scripts files in the distrubution: dist_<blah>_SCRIPTS so you can use this variable instead of using EXTRA_DIST.
Comment 11 Martin Kosek 2012-01-04 13:46:52 UTC
Upstream ticket: https://fedorahosted.org/389/ticket/132
Comment 13 Noriko Hosoi 2015-11-13 20:55:23 UTC
Fixed by Simo by this commit (and followings): commit 5d98edd35881888a15feefc2b9ba7bbb9230f653 Author: Simo Sorce <email@example.com> Date: Tue Sep 15 17:16:05 2015 -0400 Fix Makefile so that make dist works Signed-off-by: Simo Sorce <firstname.lastname@example.org> Closing this bug as a dup of 1270020 -- rebase 389-ds-base to 1.3.5 in RHEL-7.3 since there is no need to bug opened for the build issue. *** This bug has been marked as a duplicate of bug 1270020 ***