Bug 244423 - Makefile.am must include header files and template scripts
Summary: Makefile.am must include header files and template scripts
Status: CLOSED DUPLICATE of bug 1270020
Alias: None
Product: 389
Classification: Retired
Component: Directory Server
Version: 1.1.0beta
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Rich Megginson
QA Contact: Ben Levenson
Depends On:
Blocks: 389_1.3.0
TreeView+ depends on / blocked
Reported: 2007-06-15 15:44 UTC by Masato Taruishi
Modified: 2015-11-13 20:55 UTC (History)
3 users (show)

Clone Of:
Last Closed: 2015-11-13 20:55:23 UTC

Attachments (Terms of Use)
patch to add nesessary files to Makefile.am (51.38 KB, patch)
2007-06-15 15:44 UTC, Masato Taruishi
no flags Details | Diff

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:

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

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:


so you can use this variable instead of using EXTRA_DIST.

Comment 11 Martin Kosek 2012-01-04 13:46:52 UTC
Upstream ticket:

Comment 13 Noriko Hosoi 2015-11-13 20:55:23 UTC
Fixed by Simo by this commit (and followings):
commit 5d98edd35881888a15feefc2b9ba7bbb9230f653
Author: Simo Sorce <simo@redhat.com>
Date:   Tue Sep 15 17:16:05 2015 -0400
    Fix Makefile so that make dist works
    Signed-off-by: Simo Sorce <simo@redhat.com>

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 ***

Note You need to log in before you can comment on or make changes to this bug.