diff --git a/tools/buildzip.pl b/tools/buildzip.pl index 59c32d3e3d..65aca59e13 100755 --- a/tools/buildzip.pl +++ b/tools/buildzip.pl @@ -388,9 +388,12 @@ sub buildzip { } } - # create the file so the database does not try indexing a folder + # create the file so the database indexer skips this folder open(IGNORE, ">$temp_dir/database.ignore") || die "can't open database.ignore"; close(IGNORE); + # create the file so the talkclip generation skips this folder + open(IGNORE, ">$temp_dir/talkclips.ignore") || die "can't open talkclips.ignore"; + close(IGNORE); # the samsung ypr0 has a loader script that's needed in the zip if ($modelname =~ /samsungypr[01]/) { diff --git a/tools/voice.pl b/tools/voice.pl index 2c966cb0df..9efc844c10 100755 --- a/tools/voice.pl +++ b/tools/voice.pl @@ -582,13 +582,13 @@ sub gentalkclips { if ($file eq '.' || $file eq '..' || $file =~ /\.talk$/) { next; } - # Element is a dir - if ( -d $path) { + + if ( -d $path) { # Element is a dir $enc = sprintf("%s/_dirname.talk", $path); - gentalkclips($path, $tts_object, $encoder, $encoder_opts, $tts_engine_opts, $i); - } - # Element is a file - else { + if (! -e "$path/talkclips.ignore") { # Skip directories containing "talkclips.ignore" + gentalkclips($path, $tts_object, $encoder, $encoder_opts, $tts_engine_opts, $i); + } + } else { # Element is a file $enc = sprintf("%s.talk", $path); $voice =~ s/\.[^\.]*$//; # Trim extension }