On Fri, Jun 4, 2010 at 11:28 AM, Ævar Arnfjörð Bjarmason <avarab@xxxxxxxxx> wrote: > On Thu, Jun 3, 2010 at 21:22, Dario Rodriguez <soft.d4rio@xxxxxxxxx> wrote: >> On Thu, Jun 3, 2010 at 5:21 PM, Ævar Arnfjörð Bjarmason >>> What do you mean by "disappears" anyway, was it like $(echo|less), or >>> did it just return with no output? What was the exit code? >>> >> >> 'dissapears'? I will paste my output as is, there are 2 commits, but >> 'git log' simply don't show them if $PAGER is not present: >> >> $ ../git log >> $ echo $? >> 0 >> $ PAGER=/bin/cat ../git log >> commit 3274a12f940680612e3bfd3d022a0eab460c0f1f >> Author: usuario tuxedo ####### <tx#####@MachineName.(none)> >> Date: Thu Jun 3 20:02:23 2010 +0200 >> >> OtherCom >> >> commit acf110f7c878a37e4a5af8499134df28da0e8ab3 >> Author: usuario tuxedo ####### <tx#####@MachineName.(none)> >> Date: Thu Jun 3 20:01:37 2010 +0200 >> >> inicial > > That's interesting. > Yes, I will check it better today at home. >>> In any case, running git's make test might reveal other problems on >>> AIX worth fixing. Maybe do that and post the results? >>> >> >> The make test execution output is fairly long... do I post it all, or >> attach MIME? However I'm leaving here and I cannot access the server >> until tomorrow... > > The best thing would be to post cd t && ./$some_test -d -v for all > tests that fail, I guess. > >>>>>> $ /usr/linux/bin/make prefix=$HOME/apps/ NO_OPENSSL=1 NO_TCLTK=1 >>>>>> NO_EXPAT=1 PYTHON_PATH=/usr/local/bin/python install >>>>>> >>>>>> [...] >>>>>> install -d -m 755 '/myhomedir/apps/bin' >>>>>> getopt: illegal option -- d >>>>>> Usage: install [-c dira] [-f dirb] [-i] [-m] [-M mode] [-O owner] >>>>>> [-G group] [-S] [-n dirc] [-o] [-s] file [dirx ...] >>>>>> make: *** [install] Error 2 >>>>>> >>>>>> Now the installing process fails because of the AIX 'install' tool and >>>>>> I wonder, can I patch/configure the installing process for AIX? May be >>>>>> a set of utils for building in such systems would help some people. >>>>> >>>>> Does AIX's install have something equivalent to GNU install's -d? The >>>>> -c and -f options look likely from that synopsis. >>>>> >>>> >>>> I don't know since I just use this system for development and testing >>>> (I'm debian user), but let me post the manpage info, for -c and -f: >>>> >>>> -c DirectoryA Installs a new command file in the DirectoryA variable only if >>>> that file does not already exist there. If it finds a copy of File there, it >>>> issues a message and exits without overwriting the file. This flag can be used >>>> alone or with the -s, -M, -O, -G, or -S flag. >>>> >>>> -f DirectoryB Forces installation of File in DirectoryB whether or not File >>>> already exists. If the file being installed does not already exist, the command >>>> sets the permission code and owner of the new file to 755 and bin, respectively. >>>> This flag can be used alone or with the -o,-s, -M, -O, -G, or -S flag. >>> >>> Looks like there's no equivalent to -d. FWIW perl uses a installperl >>> script that also works on AIX. Maybe a similar fallback or default >>> would make sense for Git. >>> >> >> Yes, I installed 'top' on other AIX machine today, and it uses it's >> own install script too... may be it's the best way for systems having >> a poor 'install' tool. >> >>>>>> PD2: I don't know if AIX python path is always /usr/local/bin/python, >>>>>> but I've seen that git Makefiles set /usr/local/bin/python for FreeBSD >>>>>> only: >>>>>> >>>>>> git_remote_helpers/Makefile: >>>>>> ifndef PYTHON_PATH >>>>>> ifeq ($(uname_S),FreeBSD) >>>>>> PYTHON_PATH = /usr/local/bin/python >>>>>> else >>>>>> PYTHON_PATH = /usr/bin/python >>>>>> endif >>>>>> endif >>>>> >>>>> That's presumably because Python is most likely installed via the >>>>> ports system on FreeBSD which drops it in /usr/local. How did you >>>>> install Python on AIX? Is it from some IBM package or another method >>>>> that's the most common & standard way to do it on AIX?. >>>>> >>>> >>>> Again, I don't know since I'm not the sysadmin. I just looked for >>>> python and found it's in /usr/local/bin >>> >>> Does using /usr/bin/env python instead work? >>> >>> $ cat /tmp/py.py >>> #!/usr/bin/env python >>> print "hello" >>> $ /tmp/py.py >>> hello >>> >> >> Yes, it works... at least the executable is found :P >> >> $ cat temp.py >> #!/usr/bin/env python >> print "hello" >> >> $ ./temp.py >> Could not find platform dependent libraries <exec_prefix> >> Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>] >> hello > > That's one reason why I think we should just use /usr/bin/env for > perl/python instead of hardcoding it to /usr/bin/{perl,python}. It's > more likely to work on systems like AIX. > I agree... it's off topic, but something like this is what I say with 'test' for python, and I think those 2 are the only files impacted: >From e89f18c29c171207002d4718ea4b9d08c7efe1d7 Mon Sep 17 00:00:00 2001 From: Dario Rodriguez <soft.d4rio@xxxxxxxxx> Date: Fri, 4 Jun 2010 00:28:56 -0300 Subject: [PATCH] Now Makefiles check for Python executable Check for python executable instead of predicting based on the system --- Makefile | 9 +++++++-- git_remote_helpers/Makefile | 12 +++++++----- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/Makefile b/Makefile index d5d6565..29cf8ff 100644 --- a/Makefile +++ b/Makefile @@ -449,7 +449,13 @@ ifndef PERL_PATH PERL_PATH = /usr/bin/perl endif ifndef PYTHON_PATH - PYTHON_PATH = /usr/bin/python + ifeq ($(shell test -x /usr/bin/python && echo y), y) + PYTHON_PATH = /usr/bin/python + else + ifeq ($(shell test -x /usr/local/bin/python && echo y), y) + PYTHON_PATH = /usr/local/bin/python + endif + endif endif export PERL_PATH @@ -875,7 +881,6 @@ ifeq ($(uname_S),FreeBSD) NO_UINTMAX_T = YesPlease NO_STRTOUMAX = YesPlease endif - PYTHON_PATH = /usr/local/bin/python HAVE_PATHS_H = YesPlease endif ifeq ($(uname_S),OpenBSD) diff --git a/git_remote_helpers/Makefile b/git_remote_helpers/Makefile index 74b05dc..8b5f50c 100644 --- a/git_remote_helpers/Makefile +++ b/git_remote_helpers/Makefile @@ -7,11 +7,13 @@ pysetupfile:=setup.py DESTDIR_SQ = $(subst ','\'',$(DESTDIR)) ifndef PYTHON_PATH - ifeq ($(uname_S),FreeBSD) - PYTHON_PATH = /usr/local/bin/python - else - PYTHON_PATH = /usr/bin/python - endif + ifeq ($(shell test -x /usr/bin/python && echo y), y) + PYTHON_PATH = /usr/bin/python + else + ifeq ($(shell test -x /usr/local/bin/python && echo y), y) + PYTHON_PATH = /usr/local/bin/python + endif + endif endif ifndef prefix prefix = $(HOME) -- 1.7.1 Then, the path is checked if ever it's empty (after this stuff), but the case is that no matter the system, '/usr/bin' and '/usr/local/bin' are the most common places... I think it's totally sane the needing of PYTHON_PATH if it's not in those commonly used dirs. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html