{"thread":{"id":"40856","subject":"[PATCH v7 1/2] config.mak.uname: Darwin: define NO_GETTEXT for OS X 10.9 and later","startedAt":"2015-11-23T08:25:06Z","lastAt":"2015-11-24T21:03:04Z","messageCount":7,"participants":["larsxschneider@gmail.com","Torsten Bögershausen","Jeff King","Lars Schneider"],"isPatch":true,"patchVersion":7,"patchTotal":2},"messages":[{"id":"273598","messageId":"1448267108-55652-1-git-send-email-larsxschneider@gmail.com","threadId":"40856","inReplyTo":null,"subject":"[PATCH v7 0/2] Add Travis CI support","fromName":"","fromEmail":"larsxschneider@gmail.com","sentAt":"2015-11-23T08:25:06Z","receivedAt":"2015-11-23T08:25:06Z","isPatch":true,"sender":{"key":"larsxschneider@gmail.com","avatar":"https://avatars.githubusercontent.com/u/477434?v=4"},"body":"From: Lars Schneider <larsxschneider@gmail.com>\n\ndiff to v6 (thanks Peff for the review):\n* removed sub topics \"de-flaking test_must_fail\" and \"p4 test improvements\"\n  as suggested by Peff\n* fixed Perforce spelling\n* disabled t9810 and t9816 in .travis.yml as they are instable\n* removed commented flags in .travis.yml\n* removed GETTEXT_* flags in .travis.yml\n* removed NO_* build configration in .travis.yml\n* removed autoconf usage\n* fixed OS X 10.9 build and later with NO_GETTEXT flag\n* added cflags \"-Wall -Werror\" to detect all kinds of warnings (see [1])\n* updated Git-LFS and P4D to the latest version\n\nCheers,\nLars\n\n[1] http://thread.gmane.org/gmane.comp.version-control.git/281140\n\n\nLars Schneider (2):\n  config.mak.uname: Darwin: define NO_GETTEXT for OS X 10.9 and later\n  Add Travis CI support\n\n .travis.yml      | 90 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n config.mak.uname |  5 ++++\n 2 files changed, 95 insertions(+)\n create mode 100644 .travis.yml\n\n--\n2.5.1\n"},{"id":"273597","messageId":"1448267108-55652-2-git-send-email-larsxschneider@gmail.com","threadId":"40856","inReplyTo":"1448267108-55652-1-git-send-email-larsxschneider@gmail.com","subject":"[PATCH v7 1/2] config.mak.uname: Darwin: define NO_GETTEXT for OS X 10.9 and later","fromName":"","fromEmail":"larsxschneider@gmail.com","sentAt":"2015-11-23T08:25:07Z","receivedAt":"2015-11-23T08:25:07Z","isPatch":true,"sender":{"key":"larsxschneider@gmail.com","avatar":"https://avatars.githubusercontent.com/u/477434?v=4"},"body":"From: Lars Schneider <larsxschneider@gmail.com>\n\nAt least since OS X 10.9 Mavericks \"libintl.h\" is not available on OS X\nanymore. Disable the support with the NO_GETTEXT flag.\n\nSigned-off-by: Lars Schneider <larsxschneider@gmail.com>\n---\n config.mak.uname | 5 +++++\n 1 file changed, 5 insertions(+)\n\ndiff --git a/config.mak.uname b/config.mak.uname\nindex f34dcaa..f3d98bb 100644\n--- a/config.mak.uname\n+++ b/config.mak.uname\n@@ -102,9 +102,14 @@ ifeq ($(uname_S),Darwin)\n \tifeq ($(shell expr \"$(uname_R)\" : '[15]\\.'),2)\n \t\tNO_STRLCPY = YesPlease\n \tendif\n+\t# MacOS 10.7 Lion and higher\n \tifeq ($(shell test \"`expr \"$(uname_R)\" : '\\([0-9][0-9]*\\)\\.'`\" -ge 11 && echo 1),1)\n \t\tHAVE_GETDELIM = YesPlease\n \tendif\n+\t# MacOS 10.9 Mavericks and higher\n+\tifeq ($(shell test \"`expr \"$(uname_R)\" : '\\([0-9][0-9]*\\)\\.'`\" -ge 13 && echo 1),1)\n+\t\tNO_GETTEXT = YesPlease\n+\tendif\n \tNO_MEMMEM = YesPlease\n \tUSE_ST_TIMESPEC = YesPlease\n \tHAVE_DEV_TTY = YesPlease\n-- \n2.5.1\n"},{"id":"273599","messageId":"1448267108-55652-3-git-send-email-larsxschneider@gmail.com","threadId":"40856","inReplyTo":"1448267108-55652-1-git-send-email-larsxschneider@gmail.com","subject":"[PATCH v7 2/2] Add Travis CI support","fromName":"","fromEmail":"larsxschneider@gmail.com","sentAt":"2015-11-23T08:25:08Z","receivedAt":"2015-11-23T08:25:08Z","isPatch":true,"sender":{"key":"larsxschneider@gmail.com","avatar":"https://avatars.githubusercontent.com/u/477434?v=4"},"body":"From: Lars Schneider <larsxschneider@gmail.com>\n\nThe tests are currently executed on \"Ubuntu 12.04 LTS Server Edition\n64 bit\" and on \"OS X Mavericks\" using gcc and clang.\n\nPerforce and Git-LFS are installed and therefore available for the\nrespective tests.\n\nSigned-off-by: Lars Schneider <larsxschneider@gmail.com>\n---\n .travis.yml | 90 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n 1 file changed, 90 insertions(+)\n create mode 100644 .travis.yml\n\ndiff --git a/.travis.yml b/.travis.yml\nnew file mode 100644\nindex 0000000..1c3fa06\n--- /dev/null\n+++ b/.travis.yml\n@@ -0,0 +1,90 @@\n+language: c\n+\n+os:\n+  - linux\n+  - osx\n+\n+compiler:\n+  - clang\n+  - gcc\n+\n+addons:\n+  apt:\n+    packages:\n+    - language-pack-is\n+\n+env:\n+  global:\n+    - P4_VERSION=\"15.4\"\n+    - GIT_LFS_VERSION=\"1.1.0\"\n+    - DEFAULT_TEST_TARGET=prove\n+    - GIT_PROVE_OPTS=\"--timer --jobs 3\"\n+    - GIT_TEST_OPTS=\"--verbose --tee\"\n+    - CFLAGS=\"-g -O2 -Wall -Werror\"\n+    - GIT_TEST_CLONE_2GB=YesPlease\n+    # t9810 occasionally fails on Travis CI OS X\n+    # t9816 occasionally fails with \"TAP out of sequence errors\" on Travis CI OS X\n+    - GIT_SKIP_TESTS=\"t9810 t9816\"\n+\n+before_install:\n+  - >\n+    case \"${TRAVIS_OS_NAME:-linux}\" in\n+    linux)\n+      mkdir --parents custom/p4\n+      pushd custom/p4\n+        wget --quiet http://filehost.perforce.com/perforce/r$P4_VERSION/bin.linux26x86_64/p4d\n+        wget --quiet http://filehost.perforce.com/perforce/r$P4_VERSION/bin.linux26x86_64/p4\n+        chmod u+x p4d\n+        chmod u+x p4\n+        export PATH=\"$(pwd):$PATH\"\n+      popd\n+      mkdir --parents custom/git-lfs\n+      pushd custom/git-lfs\n+        wget --quiet https://github.com/github/git-lfs/releases/download/v$GIT_LFS_VERSION/git-lfs-linux-amd64-$GIT_LFS_VERSION.tar.gz\n+        tar --extract --gunzip --file \"git-lfs-linux-amd64-$GIT_LFS_VERSION.tar.gz\"\n+        cp git-lfs-$GIT_LFS_VERSION/git-lfs .\n+        export PATH=\"$(pwd):$PATH\"\n+      popd\n+      ;;\n+    osx)\n+      brew_force_set_latest_binary_hash () {\n+        FORMULA=$1\n+        SHA=$(brew fetch --force $FORMULA 2>&1 | grep ^SHA256: | cut -d ' ' -f 2)\n+        sed -E -i.bak \"s/sha256 \\\"[0-9a-f]{64}\\\"/sha256 \\\"$SHA\\\"/g\" \\\n+          /usr/local/Library/Taps/homebrew/homebrew-binary/$FORMULA.rb\n+      }\n+      brew update --quiet\n+      brew tap homebrew/binary --quiet\n+      brew_force_set_latest_binary_hash perforce\n+      brew_force_set_latest_binary_hash perforce-server\n+      brew install git-lfs perforce-server perforce\n+      ;;\n+    esac;\n+    echo \"$(tput setaf 6)Perforce Server Version$(tput sgr0)\";\n+    p4d -V | grep Rev.;\n+    echo \"$(tput setaf 6)Perforce Client Version$(tput sgr0)\";\n+    p4 -V | grep Rev.;\n+    echo \"$(tput setaf 6)Git-LFS Version$(tput sgr0)\";\n+    git-lfs version;\n+\n+before_script: make --jobs=2\n+\n+script: make --quiet test\n+\n+after_failure:\n+  - >\n+    : '<-- Click here to see detailed test output!                                                        ';\n+    for TEST_EXIT in t/test-results/*.exit;\n+    do\n+      if [ \"$(cat \"$TEST_EXIT\")\" != \"0\" ];\n+      then\n+        TEST_OUT=\"${TEST_EXIT%exit}out\";\n+        echo \"------------------------------------------------------------------------\";\n+        echo \"$(tput setaf 1)${TEST_OUT}...$(tput sgr0)\";\n+        echo \"------------------------------------------------------------------------\";\n+        cat \"${TEST_OUT}\";\n+      fi;\n+    done;\n+\n+notifications:\n+  email: false\n-- \n2.5.1\n"},{"id":"273603","messageId":"5652FF18.20602@web.de","threadId":"40856","inReplyTo":"1448267108-55652-2-git-send-email-larsxschneider@gmail.com","subject":"Re: [PATCH v7 1/2] config.mak.uname: Darwin: define NO_GETTEXT for OS X 10.9 and later","fromName":"Torsten Bögershausen","fromEmail":"tboegi@web.de","sentAt":"2015-11-23T11:57:12Z","receivedAt":"2015-11-23T11:57:12Z","isPatch":true,"sender":{"key":"tboegi@web.de","avatar":"https://avatars.githubusercontent.com/u/7138363?v=4"},"body":"On 11/23/2015 09:25 AM, larsxschneider@gmail.com wrote:\n> From: Lars Schneider <larsxschneider@gmail.com>\n>\n> At least since OS X 10.9 Mavericks \"libintl.h\" is not available on OS X\n> anymore. Disable the support with the NO_GETTEXT flag.\n>\n> Signed-off-by: Lars Schneider <larsxschneider@gmail.com>\n> ---\n>   config.mak.uname | 5 +++++\n>   1 file changed, 5 insertions(+)\n>\n> diff --git a/config.mak.uname b/config.mak.uname\n> index f34dcaa..f3d98bb 100644\n> --- a/config.mak.uname\n> +++ b/config.mak.uname\n> @@ -102,9 +102,14 @@ ifeq ($(uname_S),Darwin)\n>   \tifeq ($(shell expr \"$(uname_R)\" : '[15]\\.'),2)\n>   \t\tNO_STRLCPY = YesPlease\n>   \tendif\n> +\t# MacOS 10.7 Lion and higher\n>   \tifeq ($(shell test \"`expr \"$(uname_R)\" : '\\([0-9][0-9]*\\)\\.'`\" -ge 11 && echo 1),1)\n>   \t\tHAVE_GETDELIM = YesPlease\n>   \tendif\n> +\t# MacOS 10.9 Mavericks and higher\n> +\tifeq ($(shell test \"`expr \"$(uname_R)\" : '\\([0-9][0-9]*\\)\\.'`\" -ge 13 && echo 1),1)\n> +\t\tNO_GETTEXT = YesPlease\n> +\tendif\n>   \tNO_MEMMEM = YesPlease\n>   \tUSE_ST_TIMESPEC = YesPlease\n>   \tHAVE_DEV_TTY = YesPlease\nUnless I'm wrong, no Mac OS X had libintl.h, and the \"unwritten \nagreement (?)\" was\nthat either\na) libintl ist installed in some way (fink, mac ports, brew, other ways)\nor\nb) people use\nNO_GETTEXT=yes make\n\nDoesn't this patch close the door for b), making it impossible to build \nGit against libintl ?\nA better test may if libintl is installed may help, or better documentation.\n"},{"id":"273648","messageId":"20151124203453.GB7174@sigill.intra.peff.net","threadId":"40856","inReplyTo":"5652FF18.20602@web.de","subject":"Re: [PATCH v7 1/2] config.mak.uname: Darwin: define NO_GETTEXT for OS X 10.9 and later","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2015-11-24T20:34:53Z","receivedAt":"2015-11-24T20:34:53Z","isPatch":true,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Mon, Nov 23, 2015 at 12:57:12PM +0100, Torsten Bögershausen wrote:\n\n> >+\t# MacOS 10.7 Lion and higher\n> >  \tifeq ($(shell test \"`expr \"$(uname_R)\" : '\\([0-9][0-9]*\\)\\.'`\" -ge 11 && echo 1),1)\n> >  \t\tHAVE_GETDELIM = YesPlease\n> >  \tendif\n> >+\t# MacOS 10.9 Mavericks and higher\n> >+\tifeq ($(shell test \"`expr \"$(uname_R)\" : '\\([0-9][0-9]*\\)\\.'`\" -ge 13 && echo 1),1)\n> >+\t\tNO_GETTEXT = YesPlease\n> >+\tendif\n> >  \tNO_MEMMEM = YesPlease\n> >  \tUSE_ST_TIMESPEC = YesPlease\n> >  \tHAVE_DEV_TTY = YesPlease\n> Unless I'm wrong, no Mac OS X had libintl.h, and the \"unwritten agreement\n> (?)\" was\n> that either\n> a) libintl ist installed in some way (fink, mac ports, brew, other ways)\n> or\n> b) people use\n> NO_GETTEXT=yes make\n> \n> Doesn't this patch close the door for b), making it impossible to build Git\n> against libintl ?\n\nI think the right way to do (b) is:\n\n  make NO_GETTEXT=Yes\n\nwhich will override anything we do in config.mak.uname (and likewise,\nanything from autoconf will override it, if we have a test there).\n\nStill, it will be a surprise to packagers in (a), who assume that\ninstalling libintl and then building git is enough to have gettext\nsupport (now they would actively need to override NO_GETTEXT).\n\n-Peff\n"},{"id":"273649","messageId":"20151124204004.GC7174@sigill.intra.peff.net","threadId":"40856","inReplyTo":"1448267108-55652-3-git-send-email-larsxschneider@gmail.com","subject":"Re: [PATCH v7 2/2] Add Travis CI support","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2015-11-24T20:40:05Z","receivedAt":"2015-11-24T20:40:05Z","isPatch":true,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Mon, Nov 23, 2015 at 09:25:08AM +0100, larsxschneider@gmail.com wrote:\n\n> From: Lars Schneider <larsxschneider@gmail.com>\n> \n> The tests are currently executed on \"Ubuntu 12.04 LTS Server Edition\n> 64 bit\" and on \"OS X Mavericks\" using gcc and clang.\n> \n> Perforce and Git-LFS are installed and therefore available for the\n> respective tests.\n\nThanks, I find this one a little easier to digest.\n\nI'm iffy on the NO_GETTEXT change from patch 1. I had hoped we could\njust build out of the box everywhere, but I think the \"do we have\nlibintl\" decision is a hard one. Most people _do_ have it and want it,\nbut it sounds like the Travis environment does not. So maybe it is a\nplace where it is worth doing the tweak inside travis.yml and leaving\nthe stock build alone.\n\n-Peff\n"},{"id":"273653","messageId":"FC9B19DD-97CA-4ECE-BA99-631F5C14F504@gmail.com","threadId":"40856","inReplyTo":"20151124204004.GC7174@sigill.intra.peff.net","subject":"Re: [PATCH v7 2/2] Add Travis CI support","fromName":"Lars Schneider","fromEmail":"larsxschneider@gmail.com","sentAt":"2015-11-24T21:03:04Z","receivedAt":"2015-11-24T21:03:04Z","isPatch":true,"sender":{"key":"larsxschneider@gmail.com","avatar":"https://avatars.githubusercontent.com/u/477434?v=4"},"body":"\n> On 24 Nov 2015, at 21:40, Jeff King <peff@peff.net> wrote:\n> \n> On Mon, Nov 23, 2015 at 09:25:08AM +0100, larsxschneider@gmail.com wrote:\n> \n>> From: Lars Schneider <larsxschneider@gmail.com>\n>> \n>> The tests are currently executed on \"Ubuntu 12.04 LTS Server Edition\n>> 64 bit\" and on \"OS X Mavericks\" using gcc and clang.\n>> \n>> Perforce and Git-LFS are installed and therefore available for the\n>> respective tests.\n> \n> Thanks, I find this one a little easier to digest.\n> \n> I'm iffy on the NO_GETTEXT change from patch 1. I had hoped we could\n> just build out of the box everywhere, but I think the \"do we have\n> libintl\" decision is a hard one. Most people _do_ have it and want it,\n> but it sounds like the Travis environment does not. So maybe it is a\n> place where it is worth doing the tweak inside travis.yml and leaving\n> the stock build alone.\n\nOK, I'll try to fix it in the next roll.\n\nThanks,\nLars\n"}]}