commit ab2d9c3af038981120d2dc366bd6804236ed4b4e
Author: Stephan Witt <[email protected]>
Date:   Thu Jul 23 12:55:02 2015 +0200

    Avoid duplicates of dictionaries and thesauri in distributed package
    (cherry picked from commit f45202acde6a98d9338f162f8ba917b2432580aa)

diff --git a/development/LyX-Mac-binary-release.sh 
b/development/LyX-Mac-binary-release.sh
index 5df1107..18d394d 100644
--- a/development/LyX-Mac-binary-release.sh
+++ b/development/LyX-Mac-binary-release.sh
@@ -777,6 +777,21 @@ convert_universal() {
        done
 }
 
+deduplicate() {
+       find "$@" -type f -print | while read file ; do
+               echo $(md5 -q "$file") "$file"
+       done | sort | while read hash file ; do
+               if [ "$phash" = "$hash" ]; then
+                       cmp -s "$pfile" "$file" && (
+                               rm "$file"
+                               ln -s "$pfile" "$file" && echo link for "$file" 
created
+                       )
+               fi
+               phash="$hash"
+               pfile="$file"
+       done
+}
+
 copy_dictionaries() {
        if [ -d "${ASpellInstallDir}" -a "yes" = "${aspell_dictionaries}" ]; 
then
                ASpellResources="${LyxAppPrefix}/Contents/Resources"
@@ -792,11 +807,13 @@ copy_dictionaries() {
                HunSpellResources="${LyxAppPrefix}/Contents/Resources"
                if [ -d "${DictionarySourceDir}" ]; then
                        ( cd "${DictionarySourceDir}" && find dicts -name .svn 
-prune -o -type f -print | cpio -pmdv "${HunSpellResources}" )
+                       deduplicate "${HunSpellResources}"/dicts
                fi
        fi
        if [ -d "${DictionarySourceDir}" -a "yes" = "${thesaurus_deployment}" 
]; then
                MyThesResources="${LyxAppPrefix}/Contents/Resources"
                ( cd "${DictionarySourceDir}" && find thes -name .svn -prune -o 
-type f -print | cpio -pmdv "${MyThesResources}" )
+               deduplicate "${MyThesResources}"/thes
        fi
 }
 
diff --git a/status.21x b/status.21x
index a7c3a6c..6d78bdf 100644
--- a/status.21x
+++ b/status.21x
@@ -97,6 +97,8 @@ What's new
 
 - Allow automake 1.15.
 
+- Use symlinks for duplicated dictionaries and thesauri when creating the
+  package on Mac OS X.
 
 ** Bug fixes:
 *************

Reply via email to