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