#!/usr/bin/perl
#  ********************************************************************
#  * Copyright (C) 2016 and later: Unicode, Inc. and others.
#  * License & terms of use: http://www.unicode.org/copyright.html
#  ********************************************************************
#  ********************************************************************
#  * COPYRIGHT:
#  * Copyright (c) 2010-2013, International Business Machines Corporation and
#  * others. All Rights Reserved.
#  ********************************************************************

# Settings by user
$ICULatestVersion = "";     # Change to respective version number
$ICUPreviousVersion = "";   # Change to respective version number

$PerformanceDataPath = "";          #Change to Performance Data Path

$ICULatest = "";      # Change to path of latest ICU (e.g. /home/user/Desktop/icu-4.0)
$ICUPrevious = "";    # Change to path of previous ICU

$OnWindows = 0;           # Change to 1 if on Windows
$Windows64 = 0;           # Change to 1 if on Windows and running 64 bit
# End of settings by user

$CollationDataPath = $PerformanceDataPath."/collation";    # Collation Performance Data Path
$ConversionDataPath = $PerformanceDataPath."/conversion";  # Conversion Performance Data Path
$UDHRDataPath = $PerformanceDataPath."/udhr";              # UDHR Performance Data Path

$ICUPathLatest = $ICULatest."/source/test/perf";
$ICUPathPrevious = $ICUPrevious."/source/test/perf";

$WindowsPlatform = "";
if ($Windows64) {
    $WindowsPlatform = "x64";
} else {
    $WindowsPlatform = "x86";
}

return 1;
