Bug #11865 Files to be soft linked during build, are distributed as copies in source TAR
Submitted: 11 Jul 2005 16:10 Modified: 3 Dec 2006 17:53
Reporter: Kent Boortz Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Packaging Severity:S3 (Non-critical)
Version:4.1 and up OS:
Assigned to: Kent Boortz CPU Architecture:Any

[11 Jul 2005 16:10] Kent Boortz
Description:
All files to be soft linked during build in "mysqld", except "client_settings.h",
are copies in the source TAR file. This causes problems when applying patches,
as patching the original will not patch the "copies".

Also some other files that should be linked during build are copies
in the source TAR

  sql/client.c
  sql/mini_client_errors.c
  sql/mysql_tzinfo_to_sql.cc
  sql/my_time.c
  sql/pack.c
  storage/ndb/src/common/util/testBitmask.cpp

How to repeat:
Build in BitKeeper, and check what files are soft links.
Compare that list of path names to what is in the source TAR.
If correct, there should be none of them there, as they
are to be linked at build time.

Suggested fix:
This copying might be intensionally, to make the creation
of the Windows source TAR easier, as it require copies.
So there are a few options

  A) Correct the build not to use soft links at all. There are
      two ways to do this

       A1) Automake supports building different
             targets from the same source, and with different
             flags. This is a major change, and might create
             problems for the Windows build.

       A2) We require (almost) GNU make, so we can use the
             VPATH feature. Not sure if Windows nmake supports
             VPATH, could be a problem.

  B) Change so that the Windows binaries are not created
      from the Unix source TAR, but instead something like
      "make dist DIST_TYPE=windows". This is also a larger
      change.
[29 Nov 2006 19:23] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/16146

ChangeSet@1.2560, 2006-11-29 20:22:58+01:00, kent@mysql.com +1 -0
  Makefile.am:
    Remove soft links before creating source TAR, to avoid file copies (bug#11865)