[llvm-bugs] [Bug 32417] New: Duplicate files blow up installation sizes up +33.37% on NTFS and FAT32 filesystems

via llvm-bugs llvm-bugs at lists.llvm.org
Sat Mar 25 04:07:19 PDT 2017


            Bug ID: 32417
           Summary: Duplicate files blow up installation sizes up +33.37%
                    on NTFS and FAT32 filesystems
           Product: clang
           Version: unspecified
          Hardware: PC
                OS: Windows NT
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: -New Bugs
          Assignee: unassignedclangbugs at nondot.org
          Reporter: jujjyl at gmail.com
                CC: llvm-bugs at lists.llvm.org

Looking at deployment sizes of LLVM+Clang on Windows, the current size of the
toolchain when built with CMake CMAKE_BUILD_CONFIG=Release option is
488,262,953 bytes.

Out of that size, there are four .exe files that are identical to each other:

clang.exe, clang++.exe, clang-cl.exe and clang-cpp.exe

These are the four largest files in the build output, each is a 37,638,144 byte
duplicate of each other.

Additionally, there are the following three files, which are identical
duplicates of each other:

llvm-ar.exe, llvm-lib.exe and llvm-ranlib.exe

and have each a size of 4,632,576 bytes.

If these duplicates did not exist, the installation size would go down from
488,262,953 bytes to 366,083,369 bytes. That would be a -25.02% size reduction
on the deployment size on disk, or conversely, these duplicates bloat up the
installation size by +33.37%.

Because the potential savings are so large, it would be very advantageous to
replace clang++.exe, clang-cl.exe and clang-cpp.exe by small stubs that route
to clang.exe, and llvm-lib.exe and llvm-ranlib.exe with stubs that route to

(This issue is NTFS and FAT32 filesystem specific, since those filesystems
don't have symbolic links)

You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20170325/23a919cd/attachment.html>

More information about the llvm-bugs mailing list