# # patch "ChangeLog" # from [e112fae8fe4dab216835e0323a85cc1d603068bb] # to [97d760e4023907d790eec7256a96b2f44f4af9de] # # patch "tests/t_i18n_file.at" # from [24f53ae44968a9520711fd7874995a8c4b0a65e0] # to [a39e207b12af72749c8345dc62c15198ab12c2ff] # # patch "transforms.cc" # from [888e4e9eb0434a45927fe7c4b43d89c1c5e70b85] # to [7ee0ff93f777c9d6e076394671b7af5a628b94b2] # --- ChangeLog +++ ChangeLog @@ -1,3 +1,8 @@ +2005-04-28 Matt Johnston * tests/t_automate_select.at: silly ignores not needed any more. --- tests/t_i18n_file.at +++ tests/t_i18n_file.at @@ -21,9 +21,12 @@ AT_CHECK(touch "weird/$FUNNY_FILENAME", [], [ignore], [ignore]) AT_CHECK(touch "utf8/$EUROPEAN_UTF8", [], [ignore], [ignore]) AT_CHECK(touch "utf8/$JAPANESE_UTF8", [], [ignore], [ignore]) -AT_CHECK(touch "8859-1/$EUROPEAN_8859_1", [], [ignore], [ignore]) -AT_CHECK(touch "euc/$JAPANESE_EUC_JP", [], [ignore], [ignore]) +if test `uname` != "Darwin"; then + AT_CHECK(touch "8859-1/$EUROPEAN_8859_1", [], [ignore], [ignore]) + AT_CHECK(touch "euc/$JAPANESE_EUC_JP", [], [ignore], [ignore]) +fi + AT_CHECK(MONOTONE add "weird/file name with spaces", [], [ignore], [ignore]) AT_CHECK(MONOTONE add "weird/$FUNNY_FILENAME", [], [ignore], [ignore]) @@ -60,13 +63,17 @@ AT_CHECK(MONOTONE drop "utf8/$EUROPEAN_UTF8" "utf8/$JAPANESE_UTF8", [], [ignore], [ignore]) AT_CHECK(MONOTONE --branch=testbranch commit --message 'cleaning up utf8 files', [], [ignore], [ignore]) -# now try iso-8859-1 +# OS X expects data passed to the OS to be utf8, so these tests don't make +# sense. +if test `uname` != "Darwin"; then + # now try iso-8859-1 -export LANG=de_DE.iso-8859-1 -export CHARSET=iso-8859-1 -AT_CHECK(MONOTONE add "8859-1/$EUROPEAN_8859_1", [], [ignore], [ignore]) + export LANG=de_DE.iso-8859-1 + export CHARSET=iso-8859-1 + AT_CHECK(MONOTONE add "8859-1/$EUROPEAN_8859_1", [], [ignore], [ignore]) -AT_CHECK(MONOTONE --branch=testbranch commit --message 'adding european name in ISO 8859-1', [], [ignore], [ignore]) + AT_CHECK(MONOTONE --branch=testbranch commit --message 'adding european name in ISO 8859-1', [], [ignore], [ignore]) +fi # check the names showed up in our manifest @@ -74,21 +81,26 @@ AT_CHECK(mv stdout manifest) AT_CHECK(grep funny manifest, [], [ignore], [ignore]) AT_CHECK(grep spaces manifest, [], [ignore], [ignore]) -AT_CHECK(grep "8859-1/$EUROPEAN_UTF8" manifest, [], [ignore], [ignore]) +if test `uname` != "Darwin"; then + AT_CHECK(grep "8859-1/$EUROPEAN_UTF8" manifest, [], [ignore], [ignore]) +fi # okay, clean up again -AT_CHECK(MONOTONE drop "8859-1/$EUROPEAN_8859_1", [], [ignore], [ignore]) -AT_CHECK(MONOTONE --branch=testbranch commit --message 'cleaning up 8859-1 files', [], [ignore], [ignore]) +if test `uname` != "Darwin"; then + AT_CHECK(MONOTONE drop "8859-1/$EUROPEAN_8859_1", [], [ignore], [ignore]) + AT_CHECK(MONOTONE --branch=testbranch commit --message 'cleaning up 8859-1 files', [], [ignore], [ignore]) +fi - # now try euc -export LANG=ja_JP.euc-jp -export CHARSET=euc-jp -AT_CHECK(MONOTONE add "euc/$JAPANESE_EUC_JP", [], [ignore], [ignore]) +if test `uname` != "Darwin"; then + export LANG=ja_JP.euc-jp + export CHARSET=euc-jp + AT_CHECK(MONOTONE add "euc/$JAPANESE_EUC_JP", [], [ignore], [ignore]) -AT_CHECK(MONOTONE --branch=testbranch commit --message 'adding japanese name in EUC-JP', [], [ignore], [ignore]) + AT_CHECK(MONOTONE --branch=testbranch commit --message 'adding japanese name in EUC-JP', [], [ignore], [ignore]) +fi # check the names showed up in our manifest @@ -96,6 +108,8 @@ AT_CHECK(mv stdout manifest) AT_CHECK(grep funny manifest, [], [ignore], [ignore]) AT_CHECK(grep spaces manifest, [], [ignore], [ignore]) -AT_CHECK(grep "euc/$JAPANESE_UTF8" manifest, [], [ignore], [ignore]) +if test `uname` != "Darwin"; then + AT_CHECK(grep "euc/$JAPANESE_UTF8" manifest, [], [ignore], [ignore]) +fi AT_CLEANUP --- transforms.cc +++ transforms.cc @@ -634,6 +634,10 @@ inline static fs::path localized_impl(string const & utf) { +#ifdef __APPLE__ + // on OS X paths for the filesystem/kernel are UTF-8 encoded. + return mkpath(utf); +#else if (filesystem_is_utf8()) return mkpath(utf); if (filesystem_is_ascii_extension()) @@ -658,6 +662,7 @@ ret /= mkpath(ext()); } return ret; +#endif } fs::path