All of lore.kernel.org
 help / color / mirror / Atom feed
* Building git-1.5.3.7 on HP-UX 11.00
@ 2007-12-04 13:09 H.Merijn Brand
  2007-12-04 13:44 ` Johannes Schindelin
  0 siblings, 1 reply; 27+ messages in thread
From: H.Merijn Brand @ 2007-12-04 13:09 UTC (permalink / raw)
  To: git; +Cc: Sam Vilain

1. It won't compile at all with HP C-ANSI-C, so I have to use gcc-3.4.6

I added this to Makefile to get it compiled

ifeq ($(uname_S),HP-UX)
	# HP-UX
	BASIC_LDFLAGS += -L/usr/local/ssl/lib -L/usr/local/lib
	EXTLIBS += -ldce
	NO_HSTRERROR = YesPlease
	NO_ICONV = YesPlease
	NO_INET_NTOP = YesPlease
	NO_INET_PTON = YesPlease
endif

make test then fails:

/pro/3gl/LINUX/git-1.5.3.7 178 > make test
    LINK git-convert-objects
    LINK git
    BUILTIN git-format-patch
    BUILTIN git-show
    BUILTIN git-whatchanged
    BUILTIN git-cherry
    BUILTIN git-get-tar-commit-id
    BUILTIN git-init
    BUILTIN git-repo-config
    BUILTIN git-fsck-objects
    BUILTIN git-cherry-pick
    BUILTIN git-add
    BUILTIN git-annotate
    BUILTIN git-apply
    BUILTIN git-archive
    BUILTIN git-blame
    BUILTIN git-branch
    BUILTIN git-bundle
    BUILTIN git-cat-file
    BUILTIN git-check-attr
    BUILTIN git-checkout-index
    BUILTIN git-check-ref-format
    BUILTIN git-commit-tree
    BUILTIN git-count-objects
    BUILTIN git-describe
    BUILTIN git-diff
    BUILTIN git-diff-files
    BUILTIN git-diff-index
    BUILTIN git-diff-tree
    BUILTIN git-fetch--tool
    BUILTIN git-fmt-merge-msg
    BUILTIN git-for-each-ref
    BUILTIN git-fsck
    BUILTIN git-gc
    BUILTIN git-grep
    BUILTIN git-init-db
    BUILTIN git-log
    BUILTIN git-ls-files
    BUILTIN git-ls-tree
    BUILTIN git-mailinfo
    BUILTIN git-mailsplit
    BUILTIN git-merge-base
    BUILTIN git-merge-file
    BUILTIN git-mv
    BUILTIN git-name-rev
    BUILTIN git-pack-objects
    BUILTIN git-prune
    BUILTIN git-prune-packed
    BUILTIN git-push
    BUILTIN git-read-tree
    BUILTIN git-reflog
    BUILTIN git-config
    BUILTIN git-rerere
    BUILTIN git-rev-list
    BUILTIN git-rev-parse
    BUILTIN git-revert
    BUILTIN git-rm
    BUILTIN git-runstatus
    BUILTIN git-shortlog
    BUILTIN git-show-branch
    BUILTIN git-stripspace
    BUILTIN git-symbolic-ref
    BUILTIN git-tag
    BUILTIN git-tar-tree
    BUILTIN git-unpack-objects
    BUILTIN git-update-index
    BUILTIN git-update-ref
    BUILTIN git-upload-archive
    BUILTIN git-verify-pack
    BUILTIN git-verify-tag
    BUILTIN git-write-tree
    BUILTIN git-show-ref
    BUILTIN git-pack-refs
    SUBDIR git-gui
    INDEX lib/
    SUBDIR perl
    SUBDIR templates
make -C t/ all
make[1]: Entering directory `/pro/3gl/LINUX/git-1.5.3.7/t'
*** t0000-basic.sh ***
*   ok 1: .git/objects should be empty after git init in an empty repo.
*   ok 2: .git/objects should have 3 subdirectories.
*   ok 3: git update-index without --add should fail adding.
*   ok 4: git update-index with --add should succeed.
*   ok 5: writing tree out with git write-tree
*   ok 6: validate object ID of a known tree.
*   ok 7: git update-index without --remove should fail removing.
*   ok 8: git update-index with --remove should be able to remove.
*   ok 9: git write-tree should be able to write an empty tree.
*   ok 10: validate object ID of a known tree.
*   ok 11: adding various types of objects with git update-index --add.
*   ok 12: showing stage with git ls-files --stage
*   ok 13: validate git ls-files output for a known tree.
*   ok 14: writing tree out with git write-tree.
*   ok 15: validate object ID for a known tree.
*   ok 16: showing tree with git ls-tree
*   ok 17: git ls-tree output for a known tree.
*   ok 18: showing tree with git ls-tree -r
*   ok 19: git ls-tree -r output for a known tree.
*   ok 20: showing tree with git ls-tree -r -t
*   ok 21: git ls-tree -r output for a known tree.
*   ok 22: writing partial tree out with git write-tree --prefix.
*   ok 23: validate object ID for a known tree.
*   ok 24: writing partial tree out with git write-tree --prefix.
*   ok 25: validate object ID for a known tree.
*   ok 26: put invalid objects into the index.
*   ok 27: writing this tree without --missing-ok.
*   ok 28: writing this tree with --missing-ok.
*   ok 29: git read-tree followed by write-tree should be idempotent.
*   ok 30: validate git diff-files output for a know cache/work tree state.
*   ok 31: git update-index --refresh should succeed.
*   ok 32: no diff after checkout and git update-index --refresh.
*   ok 33: git commit-tree records the correct tree in a commit.
*   ok 34: git commit-tree records the correct parent in a commit.
*   ok 35: git commit-tree omits duplicated parent in a commit.
*   ok 36: update-index D/F conflict
*   ok 37: absolute path works as expected
* passed all 37 test(s)
*** t0001-init.sh ***
* FAIL 1: plain

                (
                        unset GIT_DIR GIT_WORK_TREE &&
                        mkdir plain &&
                        cd plain &&
                        git init
                ) &&
                check_config plain/.git false unset

*   ok 2: plain with GIT_WORK_TREE
* FAIL 3: plain bare

                (
                        unset GIT_DIR GIT_WORK_TREE GIT_CONFIG &&
                        mkdir plain-bare-1 &&
                        cd plain-bare-1 &&
                        git --bare init
                ) &&
                check_config plain-bare-1 true unset

*   ok 4: plain bare with GIT_WORK_TREE
*   ok 5: GIT_DIR bare
*   ok 6: GIT_DIR non-bare
*   ok 7: GIT_DIR & GIT_WORK_TREE (1)
*   ok 8: GIT_DIR & GIT_WORK_TREE (2)
* failed 2 among 8 test(s)
make[1]: *** [t0001-init.sh] Error 1
make[1]: Leaving directory `/pro/3gl/LINUX/git-1.5.3.7/t'
make: *** [test] Error 2
Exit 2


and make install probably expects a broken^Wdifferent install than HP-UX has:

/pro/3gl/LINUX/git-1.5.3.7 181 > make install
    SUBDIR git-gui
    INDEX lib/
    SUBDIR perl
    SUBDIR templates
install -d -m755 '/pro/local/bin'
rm: /pro/local/bin/ directory
Usage: mv [-f] [-i] [-e warn|force|ignore] f1 f2
       mv [-f] [-i] [-e warn|force|ignore] f1 ... fn d1
       mv [-f] [-i] [-e warn|force|ignore] d1 d2
install -d -m755 '/pro/local/bin'
rm: /pro/local/bin/ directory
Usage: mv [-f] [-i] [-e warn|force|ignore] f1 f2
       mv [-f] [-i] [-e warn|force|ignore] f1 ... fn d1
       mv [-f] [-i] [-e warn|force|ignore] d1 d2
install git-convert-objects git-fetch-pack git-hash-object git-index-pack git-local-fetch git-fast-import git-daemon git-merge-index git-mktag git-mktree git-patch-id git-peek-remote git-receive-pack git-send-pack git-shell git-show-index git-ssh-fetch git-ssh-upload git-unpack-file git-update-server-info git-upload-pack git-pack-redundant git-var git-merge-tree git-imap-send git-merge-recursive  git-ssh-pull git-ssh-push git-bisect git-checkout git-clean git-clone git-commit git-fetch git-ls-remote git-merge-one-file git-mergetool git-parse-remote git-pull git-rebase git-rebase--interactive git-repack git-request-pull git-reset git-sh-setup git-am git-merge git-merge-stupid git-merge-octopus git-merge-resolve git-merge-ours git-lost-found git-quiltimport git-submodule git-filter-branch gi
 t-stash git-add--interactive git-archimport git-cvsimport git-relink git-cvsserver git-remote git-svnimport git-cvsexportcommit git-send-email git-svn git-status git-instaweb git-merge-subt!
 ree '/pro/local/bin'
install git '/pro/local/bin'
make -C templates DESTDIR='' install
make[1]: Entering directory `/pro/3gl/LINUX/git-1.5.3.7/templates'
install -d -m755 '/pro/local/share/git-core/templates/'
Usage: mv [-f] [-i] [-e warn|force|ignore] f1 f2
       mv [-f] [-i] [-e warn|force|ignore] f1 ... fn d1
       mv [-f] [-i] [-e warn|force|ignore] d1 d2
(cd blt && tar cf - .) | \
(cd '/pro/local/share/git-core/templates/' && tar xf -)
/bin/sh: /pro/local/share/git-core/templates/:  not found.
make[1]: *** [install] Error 1
make[1]: Leaving directory `/pro/3gl/LINUX/git-1.5.3.7/templates'
make: *** [install] Error 2
Exit 2

I have two:

  14241 100555 -r-x    1      bin      1888  12 Jun 2002 10:58 /opt/imake/bin/install
    634 100555 -r-x    1      bin      5147   7 Nov 1997 09:00 /usr/sbin/install

-- 
H.Merijn Brand         Amsterdam Perl Mongers (http://amsterdam.pm.org/)
using & porting perl 5.6.2, 5.8.x, 5.10.x  on HP-UX 10.20, 11.00, 11.11,
& 11.23, SuSE 10.1 & 10.2, AIX 5.2, and Cygwin.       http://qa.perl.org
http://mirrors.develooper.com/hpux/            http://www.test-smoke.org
                        http://www.goldmark.org/jeff/stupid-disclaimers/

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Building git-1.5.3.7 on HP-UX 11.00
  2007-12-04 13:09 Building git-1.5.3.7 on HP-UX 11.00 H.Merijn Brand
@ 2007-12-04 13:44 ` Johannes Schindelin
  2007-12-04 14:03   ` H.Merijn Brand
  0 siblings, 1 reply; 27+ messages in thread
From: Johannes Schindelin @ 2007-12-04 13:44 UTC (permalink / raw)
  To: H.Merijn Brand; +Cc: git, Sam Vilain

Hi,

On Tue, 4 Dec 2007, H.Merijn Brand wrote:

> make test then fails:

Could you run the failing test manually with -i -v, like so:

	$ cd t/
	$ sh t0001*.sh -i -v

Thanks,
Dscho

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Building git-1.5.3.7 on HP-UX 11.00
  2007-12-04 13:44 ` Johannes Schindelin
@ 2007-12-04 14:03   ` H.Merijn Brand
  2007-12-04 14:40     ` Johannes Schindelin
  0 siblings, 1 reply; 27+ messages in thread
From: H.Merijn Brand @ 2007-12-04 14:03 UTC (permalink / raw)
  To: Johannes Schindelin; +Cc: git, Sam Vilain

On Tue, 4 Dec 2007 13:44:02 +0000 (GMT), Johannes Schindelin
<Johannes.Schindelin@gmx.de> wrote:

> Hi,
> 
> On Tue, 4 Dec 2007, H.Merijn Brand wrote:
> 
> > make test then fails:
> 
> Could you run the failing test manually with -i -v, like so:
> 
> 	$ cd t/
> 	$ sh t0001*.sh -i -v

/pro/3gl/LINUX/git-1.5.3.7 183 > cd t
/pro/3gl/LINUX/git-1.5.3.7/t 184 > sh t0001*.sh -i -v
* error: cannot run git init -- have you built things yet?
Exit 1
/pro/3gl/LINUX/git-1.5.3.7/t 185 >

-- 
H.Merijn Brand         Amsterdam Perl Mongers (http://amsterdam.pm.org/)
using & porting perl 5.6.2, 5.8.x, 5.10.x  on HP-UX 10.20, 11.00, 11.11,
& 11.23, SuSE 10.1 & 10.2, AIX 5.2, and Cygwin.       http://qa.perl.org
http://mirrors.develooper.com/hpux/            http://www.test-smoke.org
                        http://www.goldmark.org/jeff/stupid-disclaimers/

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Building git-1.5.3.7 on HP-UX 11.00
  2007-12-04 14:03   ` H.Merijn Brand
@ 2007-12-04 14:40     ` Johannes Schindelin
  2007-12-04 15:01       ` H.Merijn Brand
  2007-12-04 15:11       ` H.Merijn Brand
  0 siblings, 2 replies; 27+ messages in thread
From: Johannes Schindelin @ 2007-12-04 14:40 UTC (permalink / raw)
  To: H.Merijn Brand; +Cc: git, Sam Vilain

Hi,

On Tue, 4 Dec 2007, H.Merijn Brand wrote:

> On Tue, 4 Dec 2007 13:44:02 +0000 (GMT), Johannes Schindelin
> <Johannes.Schindelin@gmx.de> wrote:
> 
> > Hi,
> > 
> > On Tue, 4 Dec 2007, H.Merijn Brand wrote:
> > 
> > > make test then fails:
> > 
> > Could you run the failing test manually with -i -v, like so:
> > 
> > 	$ cd t/
> > 	$ sh t0001*.sh -i -v
> 
> /pro/3gl/LINUX/git-1.5.3.7 183 > cd t
> /pro/3gl/LINUX/git-1.5.3.7/t 184 > sh t0001*.sh -i -v
> * error: cannot run git init -- have you built things yet?
> Exit 1
> /pro/3gl/LINUX/git-1.5.3.7/t 185 >

Next step: add the sh option -x:

	$ sh -x t0001*.sh -i -v

to find out what made it fail.

Thanks,
Dscho

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Building git-1.5.3.7 on HP-UX 11.00
  2007-12-04 14:40     ` Johannes Schindelin
@ 2007-12-04 15:01       ` H.Merijn Brand
  2007-12-04 15:14         ` Andreas Ericsson
  2007-12-04 15:11       ` H.Merijn Brand
  1 sibling, 1 reply; 27+ messages in thread
From: H.Merijn Brand @ 2007-12-04 15:01 UTC (permalink / raw)
  To: Johannes Schindelin; +Cc: git, Sam Vilain

On Tue, 4 Dec 2007 14:40:47 +0000 (GMT), Johannes Schindelin
<Johannes.Schindelin@gmx.de> wrote:

> Hi,
> 
> On Tue, 4 Dec 2007, H.Merijn Brand wrote:
> 
> > On Tue, 4 Dec 2007 13:44:02 +0000 (GMT), Johannes Schindelin
> > <Johannes.Schindelin@gmx.de> wrote:
> > 
> > > Hi,
> > > 
> > > On Tue, 4 Dec 2007, H.Merijn Brand wrote:
> > > 
> > > > make test then fails:
> > > 
> > > Could you run the failing test manually with -i -v, like so:
> > > 
> > > 	$ cd t/
> > > 	$ sh t0001*.sh -i -v
> > 
> > /pro/3gl/LINUX/git-1.5.3.7 183 > cd t
> > /pro/3gl/LINUX/git-1.5.3.7/t 184 > sh t0001*.sh -i -v
> > * error: cannot run git init -- have you built things yet?
> > Exit 1
> > /pro/3gl/LINUX/git-1.5.3.7/t 185 >
> 
> Next step: add the sh option -x:

I also meanwhile forced copied the git binaries to my bin dir

/pro/3gl/LINUX/git-1.5.3.7/t 106 > git --version
git version 1.5.3.7


> 	$ sh -x t0001*.sh -i -v

/pro/3gl/LINUX/git-1.5.3.7/t 105 > sh -x t0001*.sh -i -v
+ test_description=git init
+ . ./test-lib.sh
+ LANG=C
+ LC_ALL=C
+ PAGER=cat
+ TZ=UTC
+ export LANG LC_ALL PAGER TZ
+ EDITOR=:
+ VISUAL=:
+ unset GIT_EDITOR
+ unset AUTHOR_DATE
+ unset AUTHOR_EMAIL
+ unset AUTHOR_NAME
+ unset COMMIT_AUTHOR_EMAIL
+ unset COMMIT_AUTHOR_NAME
+ unset EMAIL
+ unset GIT_ALTERNATE_OBJECT_DIRECTORIES
+ unset GIT_AUTHOR_DATE
+ GIT_AUTHOR_EMAIL=author@example.com
+ GIT_AUTHOR_NAME=A U Thor
+ unset GIT_COMMITTER_DATE
+ GIT_COMMITTER_EMAIL=committer@example.com
+ GIT_COMMITTER_NAME=C O Mitter
+ unset GIT_DIFF_OPTS
+ unset GIT_DIR
+ unset GIT_WORK_TREE
+ unset GIT_EXTERNAL_DIFF
+ unset GIT_INDEX_FILE
+ unset GIT_OBJECT_DIRECTORY
+ unset SHA1_FILE_DIRECTORIES
+ unset SHA1_FILE_DIRECTORY
+ GIT_MERGE_VERBOSITY=5
+ export GIT_MERGE_VERBOSITY
+ export GIT_AUTHOR_EMAIL GIT_AUTHOR_NAME
+ export GIT_COMMITTER_EMAIL GIT_COMMITTER_NAME
+ export EDITOR VISUAL
+ unset CDPATH
+ tr [A-Z] [a-z]
+ echo
+ test git init !=
+ test 2 -ne 0
+ immediate=t
+ shift
+ test 1 -ne 0
+ verbose=t
+ shift
+ test 0 -ne 0
+ exec
+ 5>& 1
+ test t = t
+ exec
+ 4>& 2 3>& 1
+ test_failure=0
+ test_count=0
+ trap echo >&5 "FATAL: Unexpected exit with code $?"; exit 1 exit
+ + pwd
PATH=/pro/3gl/LINUX/git-1.5.3.7/t/..:.:/u/usr/merijn/bin/private:/u/usr/merijn/bin:/pro/local/bin:/pro/bin:/usr/hosts:/usr/bin:/opt/ansic/bin:/usr/ccs/bin:/usr/contrib/bin:/opt/nettladm/bin:/opt/fc/bin:/opt/fcms/bin:/opt/upgrade/bin:/opt/pd/bin:/usr/bin/X11:/usr/contrib/bin/X11:/opt/resmon/bin:/usr/sbin/diag/contrib:/opt/pred/bin:/opt/hparray/bin:/opt/perf/bin:/opt/langtools/bin:/opt/imake/bin:/opt/ignite/bin:/opt/sec_mgmt/spc/bin:/usr/local/bin:/usr/local/sbin:/opt/java1.5/jre/bin:/opt/graphics/common/bin:/pro/local/libexec:/pro/local/sbin:/pro/local/samba/bin:/pro/local/samba/sbin:/opt/hpnpl/bin:/pro/tu/bin:/usr/sbin:/sbin:/usr/local/pa20_64/bin:/pro/3gl/CPAN/bin
+ + pwd
GIT_EXEC_PATH=/pro/3gl/LINUX/git-1.5.3.7/t/..
+ + pwd
GIT_TEMPLATE_DIR=/pro/3gl/LINUX/git-1.5.3.7/t/../templates/blt
+ GIT_CONFIG=.git/config
+ export PATH GIT_EXEC_PATH GIT_TEMPLATE_DIR GIT_CONFIG
+ + pwd
+ pwd
GITPERLLIB=/pro/3gl/LINUX/git-1.5.3.7/t/../perl/blib/lib:/pro/3gl/LINUX/git-1.5.3.7/t/../perl/blib/arch/auto/Git
+ export GITPERLLIB
+ test -d ../templates/blt
+ test -x ../test-chmtime
+ test=trash
+ rm -fr trash
+ test_create_repo trash
* error: cannot run git init -- have you built things yet?
Exit 1

pro/3gl/LINUX/git-1.5.3.7/t 108 > ll /pro/local/bin/git*
127035 -rwxrwxrwx 1 merijn softwr 1081204 Dec  4 15:19 /pro/local/bin/git
 86787 -rwxrwxrwx 1 merijn softwr   16467 Dec  4 15:22 /pro/local/bin/git-add--interactive
 86627 -rwxrwxrwx 1 merijn softwr   11285 Dec  4 15:22 /pro/local/bin/git-am
 86909 -rwxrwxrwx 1 merijn softwr   36968 Dec  4 15:22 /pro/local/bin/git-archimport
 86420 -rwxrwxrwx 1 merijn softwr    8508 Dec  4 15:22 /pro/local/bin/git-bisect
 86423 -rwxrwxrwx 1 merijn softwr    6905 Dec  4 15:22 /pro/local/bin/git-checkout
 86424 -rwxrwxrwx 1 merijn softwr    1972 Dec  4 15:22 /pro/local/bin/git-clean
 86427 -rwxrwxrwx 1 merijn softwr   11560 Dec  4 15:22 /pro/local/bin/git-clone
 86428 -rwxrwxrwx 1 merijn softwr   14693 Dec  4 15:22 /pro/local/bin/git-commit
127036 -rwxrwxrwx 1 merijn softwr  327540 Dec  4 15:19 /pro/local/bin/git-convert-objects
 87086 -rwxrwxrwx 1 merijn softwr    9394 Dec  4 15:22 /pro/local/bin/git-cvsexportcommit
 86968 -rwxrwxrwx 1 merijn softwr   26590 Dec  4 15:22 /pro/local/bin/git-cvsimport
 86997 -rwxrwxrwx 1 merijn softwr  101558 Dec  4 15:22 /pro/local/bin/git-cvsserver
 86356 -rwxrwxrwx 1 merijn softwr  343924 Dec  4 15:22 /pro/local/bin/git-daemon
 86355 -rwxrwxrwx 1 merijn softwr  420048 Dec  4 15:22 /pro/local/bin/git-fast-import
 86440 -rwxrwxrwx 1 merijn softwr    9083 Dec  4 15:22 /pro/local/bin/git-fetch
 87107 -rwxrwxrwx 1 merijn softwr  360308 Dec  4 15:22 /pro/local/bin/git-fetch-pack
 86724 -rwxrwxrwx 1 merijn softwr   10240 Dec  4 15:22 /pro/local/bin/git-filter-branch
 86351 -rwxrwxrwx 1 merijn softwr  323444 Dec  4 15:22 /pro/local/bin/git-hash-object
 86390 -rwxrwxrwx 1 merijn softwr  343924 Dec  4 15:22 /pro/local/bin/git-imap-send
 87114 -rwxrwxrwx 1 merijn softwr  348020 Dec  4 15:22 /pro/local/bin/git-index-pack
 87100 -rwxrwxrwx 1 merijn softwr  177519 Dec  4 15:22 /pro/local/bin/git-instaweb
 86342 -rwxrwxrwx 1 merijn softwr  339828 Dec  4 15:22 /pro/local/bin/git-local-fetch
 86680 -rwxrwxrwx 1 merijn softwr     473 Dec  4 15:22 /pro/local/bin/git-lost-found
 86444 -rwxrwxrwx 1 merijn softwr    2544 Dec  4 15:22 /pro/local/bin/git-ls-remote
 86633 -rwxrwxrwx 1 merijn softwr   11464 Dec  4 15:22 /pro/local/bin/git-merge
 86359 -rwxrwxrwx 1 merijn softwr  323444 Dec  4 15:22 /pro/local/bin/git-merge-index
 86636 -rwxrwxrwx 1 merijn softwr    2415 Dec  4 15:22 /pro/local/bin/git-merge-octopus
 86445 -rwxrwxrwx 1 merijn softwr    3364 Dec  4 15:22 /pro/local/bin/git-merge-one-file
 86656 -rwxrwxrwx 1 merijn softwr     338 Dec  4 15:22 /pro/local/bin/git-merge-ours
 86391 -rwxrwxrwx 1 merijn softwr  491380 Dec  4 15:22 /pro/local/bin/git-merge-recursive
 86643 -rwxrwxrwx 1 merijn softwr     954 Dec  4 15:22 /pro/local/bin/git-merge-resolve
 86634 -rwxrwxrwx 1 merijn softwr    1456 Dec  4 15:22 /pro/local/bin/git-merge-stupid
 86399 -rwxrwxrwx 1 merijn softwr  491380 Dec  4 15:21 /pro/local/bin/git-merge-subtree
 86389 -rwxrwxrwx 1 merijn softwr  348020 Dec  4 15:22 /pro/local/bin/git-merge-tree
 86446 -rwxrwxrwx 1 merijn softwr    8649 Dec  4 15:22 /pro/local/bin/git-mergetool
 86361 -rwxrwxrwx 1 merijn softwr  323444 Dec  4 15:22 /pro/local/bin/git-mktag
 86363 -rwxrwxrwx 1 merijn softwr  323444 Dec  4 15:22 /pro/local/bin/git-mktree
 86387 -rwxrwxrwx 1 merijn softwr  331636 Dec  4 15:22 /pro/local/bin/git-pack-redundant
 86447 -rwxrwxrwx 1 merijn softwr    5892 Dec  4 15:22 /pro/local/bin/git-parse-remote
 86365 -rwxrwxrwx 1 merijn softwr  319348 Dec  4 15:22 /pro/local/bin/git-patch-id
 86367 -rwxrwxrwx 1 merijn softwr  348020 Dec  4 15:22 /pro/local/bin/git-peek-remote
 86450 -rwxrwxrwx 1 merijn softwr    3868 Dec  4 15:22 /pro/local/bin/git-pull
 86692 -rwxrwxrwx 1 merijn softwr    3203 Dec  4 15:22 /pro/local/bin/git-quiltimport
 86454 -rwxrwxrwx 1 merijn softwr    8737 Dec  4 15:22 /pro/local/bin/git-rebase
 86456 -rwxrwxrwx 1 merijn softwr   11642 Dec  4 15:22 /pro/local/bin/git-rebase--interactive
 86369 -rwxrwxrwx 1 merijn softwr  335732 Dec  4 15:22 /pro/local/bin/git-receive-pack
 86988 -rwxrwxrwx 1 merijn softwr    4189 Dec  4 15:22 /pro/local/bin/git-relink
 87012 -rwxrwxrwx 1 merijn softwr    9524 Dec  4 15:22 /pro/local/bin/git-remote
 86457 -rwxrwxrwx 1 merijn softwr    2886 Dec  4 15:22 /pro/local/bin/git-repack
 86458 -rwxrwxrwx 1 merijn softwr    1364 Dec  4 15:22 /pro/local/bin/git-request-pull
 86591 -rwxrwxrwx 1 merijn softwr    2304 Dec  4 15:22 /pro/local/bin/git-reset
 87087 -rwxrwxrwx 1 merijn softwr   20052 Dec  4 15:22 /pro/local/bin/git-send-email
 86371 -rwxrwxrwx 1 merijn softwr  356212 Dec  4 15:22 /pro/local/bin/git-send-pack
 86616 -rwxrwxrwx 1 merijn softwr    2960 Dec  4 15:22 /pro/local/bin/git-sh-setup
 86372 -rwxrwxrwx 1 merijn softwr  319348 Dec  4 15:22 /pro/local/bin/git-shell
 86375 -rwxrwxrwx 1 merijn softwr  323444 Dec  4 15:22 /pro/local/bin/git-show-index
 86376 -rwxrwxrwx 1 merijn softwr  335732 Dec  4 15:22 /pro/local/bin/git-ssh-fetch
 86392 -rwxrwxrwx 1 merijn softwr  335732 Dec  4 15:22 /pro/local/bin/git-ssh-pull
 86414 -rwxrwxrwx 1 merijn softwr  327540 Dec  4 15:22 /pro/local/bin/git-ssh-push
 86379 -rwxrwxrwx 1 merijn softwr  327540 Dec  4 15:22 /pro/local/bin/git-ssh-upload
 86749 -rwxrwxrwx 1 merijn softwr    4613 Dec  4 15:22 /pro/local/bin/git-stash
 87098 -rwxrwxrwx 1 merijn softwr   14693 Dec  4 15:22 /pro/local/bin/git-status
 86697 -rwxrwxrwx 1 merijn softwr    6388 Dec  4 15:22 /pro/local/bin/git-submodule
 87097 -rwxrwxrwx 1 merijn softwr  119623 Dec  4 15:22 /pro/local/bin/git-svn
 87085 -rwxrwxrwx 1 merijn softwr   24869 Dec  4 15:22 /pro/local/bin/git-svnimport
 86381 -rwxrwxrwx 1 merijn softwr  319348 Dec  4 15:22 /pro/local/bin/git-unpack-file
 86382 -rwxrwxrwx 1 merijn softwr  327540 Dec  4 15:22 /pro/local/bin/git-update-server-info
 86386 -rwxrwxrwx 1 merijn softwr  487284 Dec  4 15:22 /pro/local/bin/git-upload-pack
 86388 -rwxrwxrwx 1 merijn softwr  319348 Dec  4 15:22 /pro/local/bin/git-var


> to find out what made it 

-- 
H.Merijn Brand         Amsterdam Perl Mongers (http://amsterdam.pm.org/)
using & porting perl 5.6.2, 5.8.x, 5.10.x  on HP-UX 10.20, 11.00, 11.11,
& 11.23, SuSE 10.1 & 10.2, AIX 5.2, and Cygwin.       http://qa.perl.org
http://mirrors.develooper.com/hpux/            http://www.test-smoke.org
                        http://www.goldmark.org/jeff/stupid-disclaimers/

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Building git-1.5.3.7 on HP-UX 11.00
  2007-12-04 14:40     ` Johannes Schindelin
  2007-12-04 15:01       ` H.Merijn Brand
@ 2007-12-04 15:11       ` H.Merijn Brand
  1 sibling, 0 replies; 27+ messages in thread
From: H.Merijn Brand @ 2007-12-04 15:11 UTC (permalink / raw)
  To: Johannes Schindelin; +Cc: git, Sam Vilain

On Tue, 4 Dec 2007 14:40:47 +0000 (GMT), Johannes Schindelin
<Johannes.Schindelin@gmx.de> wrote:

> Hi,
> 
> On Tue, 4 Dec 2007, H.Merijn Brand wrote:
> 
> > On Tue, 4 Dec 2007 13:44:02 +0000 (GMT), Johannes Schindelin
> > <Johannes.Schindelin@gmx.de> wrote:
> > 
> > > Hi,
> > > 
> > > On Tue, 4 Dec 2007, H.Merijn Brand wrote:
> > > 
> > > > make test then fails:
> > > 
> > > Could you run the failing test manually with -i -v, like so:
> > > 
> > > 	$ cd t/
> > > 	$ sh t0001*.sh -i -v
> > 
> > /pro/3gl/LINUX/git-1.5.3.7 183 > cd t
> > /pro/3gl/LINUX/git-1.5.3.7/t 184 > sh t0001*.sh -i -v
> > * error: cannot run git init -- have you built things yet?
> > Exit 1
> > /pro/3gl/LINUX/git-1.5.3.7/t 185 >
> 
> Next step: add the sh option -x:
> 
> 	$ sh -x t0001*.sh -i -v

After I did # make git
and         # make test

# cd t
# h -x t0001*.sh -i -v
:
:
+ + pwd
GIT_EXEC_PATH=/pro/3gl/LINUX/git-1.5.3.7/t/..
+ + pwd
GIT_TEMPLATE_DIR=/pro/3gl/LINUX/git-1.5.3.7/t/../templates/blt
+ GIT_CONFIG=.git/config
+ export PATH GIT_EXEC_PATH GIT_TEMPLATE_DIR GIT_CONFIG
+ + pwd
+ pwd
GITPERLLIB=/pro/3gl/LINUX/git-1.5.3.7/t/../perl/blib/lib:/pro/3gl/LINUX/git-1.5.
3.7/t/../perl/blib/arch/auto/Git
+ export GITPERLLIB
+ test -d ../templates/blt
+ test -x ../test-chmtime
+ test=trash
+ rm -fr trash
+ test_create_repo trash
+ cd trash
+ + expr ./t0001-init.sh : .*/\(t[0-9]*\)-[^/]*$
this_test=t0001
+ test_expect_success plain
        (
                unset GIT_DIR GIT_WORK_TREE &&
                mkdir plain &&
                cd plain &&
                git init
        ) &&
        check_config plain/.git false unset

* expecting success:
        (
                unset GIT_DIR GIT_WORK_TREE &&
                mkdir plain &&
                cd plain &&
                git init
        ) &&
        check_config plain/.git false unset

* FAIL 1: plain

                (
                        unset GIT_DIR GIT_WORK_TREE &&
                        mkdir plain &&
                        cd plain &&
                        git init
                ) &&
                check_config plain/.git false unset


> to find out what made it fail.
> 
> Thanks,
> Dscho
> 
> 


-- 
H.Merijn Brand         Amsterdam Perl Mongers (http://amsterdam.pm.org/)
using & porting perl 5.6.2, 5.8.x, 5.10.x  on HP-UX 10.20, 11.00, 11.11,
& 11.23, SuSE 10.1 & 10.2, AIX 5.2, and Cygwin.       http://qa.perl.org
http://mirrors.develooper.com/hpux/            http://www.test-smoke.org
                        http://www.goldmark.org/jeff/stupid-disclaimers/

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Building git-1.5.3.7 on HP-UX 11.00
  2007-12-04 15:01       ` H.Merijn Brand
@ 2007-12-04 15:14         ` Andreas Ericsson
  2007-12-04 15:22           ` H.Merijn Brand
  0 siblings, 1 reply; 27+ messages in thread
From: Andreas Ericsson @ 2007-12-04 15:14 UTC (permalink / raw)
  To: H.Merijn Brand; +Cc: Johannes Schindelin, git, Sam Vilain

H.Merijn Brand wrote:
> 
> I also meanwhile forced copied the git binaries to my bin dir
> 

That's no good. "make test" will test binaries residing in ..
relative to where the tests are executed.

-- 
Andreas Ericsson                   andreas.ericsson@op5.se
OP5 AB                             www.op5.se
Tel: +46 8-230225                  Fax: +46 8-230231

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Building git-1.5.3.7 on HP-UX 11.00
  2007-12-04 15:14         ` Andreas Ericsson
@ 2007-12-04 15:22           ` H.Merijn Brand
  2007-12-04 15:39             ` Johannes Schindelin
  0 siblings, 1 reply; 27+ messages in thread
From: H.Merijn Brand @ 2007-12-04 15:22 UTC (permalink / raw)
  To: Andreas Ericsson; +Cc: Johannes Schindelin, git, Sam Vilain

On Tue, 04 Dec 2007 16:14:42 +0100, Andreas Ericsson <ae@op5.se> wrote:

> H.Merijn Brand wrote:
> > 
> > I also meanwhile forced copied the git binaries to my bin dir
> > 
> 
> That's no good. "make test" will test binaries residing in ..
> relative to where the tests are executed.

OK, I removed those again :)

I also removed the -ldce in the HP-UX piece, which was there to
support unsetenv, but using NO_UNSETENV seems to be safer

ifeq ($(uname_S),HP-UX)
	# HP-UX
	BASIC_LDFLAGS += -L/usr/local/ssl/lib -L/usr/local/lib
	#EXTLIBS += -ldce
	NO_HSTRERROR = YesPlease
	NO_ICONV = YesPlease
	NO_INET_NTOP = YesPlease
	NO_INET_PTON = YesPlease
	NO_UNSETENV = YesPlease
endif

causes a clean build

+ + pwd
GIT_EXEC_PATH=/pro/3gl/LINUX/git-1.5.3.7/t/..
+ + pwd
GIT_TEMPLATE_DIR=/pro/3gl/LINUX/git-1.5.3.7/t/../templates/blt
+ GIT_CONFIG=.git/config
+ export PATH GIT_EXEC_PATH GIT_TEMPLATE_DIR GIT_CONFIG
+ + pwd
+ pwd
GITPERLLIB=/pro/3gl/LINUX/git-1.5.3.7/t/../perl/blib/lib:/pro/3gl/LINUX/git-1.5.3.7/t/../perl/blib/arch/auto/Git
+ export GITPERLLIB
+ test -d ../templates/blt
+ test -x ../test-chmtime
+ test=trash
+ rm -fr trash
+ test_create_repo trash
+ cd trash
+ + expr ./t0001-init.sh : .*/\(t[0-9]*\)-[^/]*$
this_test=t0001
+ test_expect_success plain
        (
                unset GIT_DIR GIT_WORK_TREE &&
                mkdir plain &&
                cd plain &&
                git init
        ) &&
        check_config plain/.git false unset

* expecting success:
        (
                unset GIT_DIR GIT_WORK_TREE &&
                mkdir plain &&
                cd plain &&
                git init
        ) &&
        check_config plain/.git false unset

* FAIL 1: plain

                (
                        unset GIT_DIR GIT_WORK_TREE &&
                        mkdir plain &&
                        cd plain &&
                        git init
                ) &&
                check_config plain/.git false unset



/pro/3gl/LINUX/git-1.5.3.7/t 130 > ldd ../git
        /usr/lib/libc.2 =>      /usr/lib/libc.2
        /usr/lib/libdld.2 =>    /usr/lib/libdld.2
        /usr/lib/libc.2 =>      /usr/lib/libc.2
        /usr/local/ssl/lib/libcrypto.sl =>      /usr/local/ssl/lib/libcrypto.sl
        /usr/local/lib/libz.sl =>       /usr/local/lib/libz.sl


I will leave for a meeting in 30 minutes, so don't think I don't want
to communicate any further :)

Sam is pretty enthusiastic on IRC, he's to blame!

-- 
H.Merijn Brand         Amsterdam Perl Mongers (http://amsterdam.pm.org/)
using & porting perl 5.6.2, 5.8.x, 5.10.x  on HP-UX 10.20, 11.00, 11.11,
& 11.23, SuSE 10.1 & 10.2, AIX 5.2, and Cygwin.       http://qa.perl.org
http://mirrors.develooper.com/hpux/            http://www.test-smoke.org
                        http://www.goldmark.org/jeff/stupid-disclaimers/

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Building git-1.5.3.7 on HP-UX 11.00
  2007-12-04 15:22           ` H.Merijn Brand
@ 2007-12-04 15:39             ` Johannes Schindelin
  2007-12-04 15:56               ` H.Merijn Brand
  0 siblings, 1 reply; 27+ messages in thread
From: Johannes Schindelin @ 2007-12-04 15:39 UTC (permalink / raw)
  To: H.Merijn Brand; +Cc: Andreas Ericsson, git, Sam Vilain

Hi,

On Tue, 4 Dec 2007, H.Merijn Brand wrote:

> + + pwd
> GIT_EXEC_PATH=/pro/3gl/LINUX/git-1.5.3.7/t/..
> + + pwd
> GIT_TEMPLATE_DIR=/pro/3gl/LINUX/git-1.5.3.7/t/../templates/blt
> + GIT_CONFIG=.git/config
> + export PATH GIT_EXEC_PATH GIT_TEMPLATE_DIR GIT_CONFIG
> + + pwd
> + pwd
> GITPERLLIB=/pro/3gl/LINUX/git-1.5.3.7/t/../perl/blib/lib:/pro/3gl/LINUX/git-1.5.3.7/t/../perl/blib/arch/auto/Git
> + export GITPERLLIB
> + test -d ../templates/blt
> + test -x ../test-chmtime
> + test=trash
> + rm -fr trash
> + test_create_repo trash
> + cd trash
> + + expr ./t0001-init.sh : .*/\(t[0-9]*\)-[^/]*$
> this_test=t0001
> + test_expect_success plain
>         (
>                 unset GIT_DIR GIT_WORK_TREE &&
>                 mkdir plain &&
>                 cd plain &&
>                 git init
>         ) &&
>         check_config plain/.git false unset
> 
> * expecting success:
>         (
>                 unset GIT_DIR GIT_WORK_TREE &&
>                 mkdir plain &&
>                 cd plain &&
>                 git init
>         ) &&
>         check_config plain/.git false unset
> 
> * FAIL 1: plain
> 
>                 (
>                         unset GIT_DIR GIT_WORK_TREE &&
>                         mkdir plain &&
>                         cd plain &&
>                         git init
>                 ) &&
>                 check_config plain/.git false unset

That's not good.  The relevant part here reads:

-- snip --
+ test_description='git init'
+ . ./test-lib.sh
++ LANG=C
++ LC_ALL=C
++ PAGER=cat
++ TZ=UTC
++ export LANG LC_ALL PAGER TZ
++ EDITOR=:
++ VISUAL=:
++ unset GIT_EDITOR
++ unset AUTHOR_DATE
++ unset AUTHOR_EMAIL
++ unset AUTHOR_NAME
++ unset COMMIT_AUTHOR_EMAIL
++ unset COMMIT_AUTHOR_NAME
++ unset EMAIL
++ unset GIT_ALTERNATE_OBJECT_DIRECTORIES
++ unset GIT_AUTHOR_DATE
++ GIT_AUTHOR_EMAIL=author@example.com
++ GIT_AUTHOR_NAME='A U Thor'
++ unset GIT_COMMITTER_DATE
++ GIT_COMMITTER_EMAIL=committer@example.com
++ GIT_COMMITTER_NAME='C O Mitter'
++ unset GIT_DIFF_OPTS
++ unset GIT_DIR
++ unset GIT_WORK_TREE
++ unset GIT_EXTERNAL_DIFF
++ unset GIT_INDEX_FILE
++ unset GIT_OBJECT_DIRECTORY
++ unset SHA1_FILE_DIRECTORIES
++ unset SHA1_FILE_DIRECTORY
++ GIT_MERGE_VERBOSITY=5
++ export GIT_MERGE_VERBOSITY
++ export GIT_AUTHOR_EMAIL GIT_AUTHOR_NAME
++ export GIT_COMMITTER_EMAIL GIT_COMMITTER_NAME
++ export EDITOR VISUAL
++ unset CDPATH
++ case $(echo $GIT_TRACE |tr "[A-Z]" "[a-z]") in
+++ echo
+++ tr '[A-Z]' '[a-z]'
++ '[' xxterm '!=' xdumb ']'
++ '[' -t 1 ']'
++ test 2 -ne 0
++ case "$1" in
++ immediate=t
++ shift
++ test 1 -ne 0
++ case "$1" in
++ verbose=t
++ shift
++ test 0 -ne 0
++ test -n ''
++ test 'git init' '!=' ''
++ test '' = t
++ exec
++ test t = t
++ exec
++ test_failure=0
++ test_count=0
++ trap 'echo >&5 "FATAL: Unexpected exit with code $?"; exit 1' exit
+++ pwd
++ PATH=/home/gitte/my/git/t/..:/home/gene099/bin:/usr/local/bin:/usr/bin:/usr/X11R6/bin:/bin:/usr/games:/opt/gnome/bin:/opt/kde3/bin:/usr/lib/mit/bin:/usr/lib/mit/sbin:/usr/lib/qt3/bin
+++ pwd
++ GIT_EXEC_PATH=/home/gitte/my/git/t/..
+++ pwd
++ GIT_TEMPLATE_DIR=/home/gitte/my/git/t/../templates/blt
++ GIT_CONFIG=.git/config
++ export PATH GIT_EXEC_PATH GIT_TEMPLATE_DIR GIT_CONFIG
+++ pwd
+++ pwd
++ GITPERLLIB=/home/gitte/my/git/t/../perl/blib/lib:/home/gene099/my/git/t/../perl/blib/arch/auto/Git
++ export GITPERLLIB
++ test -d ../templates/blt
++ test -x ../test-chmtime
++ test=trash
++ rm -fr trash
++ test_create_repo trash
++ test 1 = 1
+++ pwd
++ owd=/home/gitte/my/git/t
++ repo=trash
++ mkdir trash
++ cd trash
++ /home/gitte/my/git/t/../git init --template=/home/gene099/my/git/t/../templates/blt/
++ mv .git/hooks .git/hooks-disabled
++ cd /home/gitte/my/git/t
++ cd trash
+++ expr ./t0001-init.sh : '.*/\(t[0-9]*\)-[^/]*$'
++ this_test=t0001
+ test_expect_success plain '
	(
		unset GIT_DIR GIT_WORK_TREE &&
		mkdir plain &&
		cd plain &&
		git init
	) &&
	check_config plain/.git false unset
'
+ test 2 = 2
+ test_skip plain '
	(
		unset GIT_DIR GIT_WORK_TREE &&
		mkdir plain &&
		cd plain &&
		git init
	) &&
	check_config plain/.git false unset
'
-- snap --

So I get way more information.  Which let's me suspect that your shell 
might be the culprit?  Can you try with bash?

Ciao,
Dscho

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Building git-1.5.3.7 on HP-UX 11.00
  2007-12-04 15:39             ` Johannes Schindelin
@ 2007-12-04 15:56               ` H.Merijn Brand
  2007-12-04 16:28                 ` Johannes Schindelin
  2007-12-04 18:05                 ` Junio C Hamano
  0 siblings, 2 replies; 27+ messages in thread
From: H.Merijn Brand @ 2007-12-04 15:56 UTC (permalink / raw)
  To: Johannes Schindelin; +Cc: Andreas Ericsson, git, Sam Vilain

On Tue, 4 Dec 2007 15:39:47 +0000 (GMT), Johannes Schindelin
<Johannes.Schindelin@gmx.de> wrote:

> Hi,
> 
> On Tue, 4 Dec 2007, H.Merijn Brand wrote:
> 
> > + + pwd
> > GIT_EXEC_PATH=/pro/3gl/LINUX/git-1.5.3.7/t/..
> > + + pwd
> > GIT_TEMPLATE_DIR=/pro/3gl/LINUX/git-1.5.3.7/t/../templates/blt
> > + GIT_CONFIG=.git/config
> > + export PATH GIT_EXEC_PATH GIT_TEMPLATE_DIR GIT_CONFIG
> > + + pwd
> > + pwd
> > GITPERLLIB=/pro/3gl/LINUX/git-1.5.3.7/t/../perl/blib/lib:/pro/3gl/LINUX/git-1.5.3.7/t/../perl/blib/arch/auto/Git
> > + export GITPERLLIB
> > + test -d ../templates/blt
> > + test -x ../test-chmtime
> > + test=trash
> > + rm -fr trash
> > + test_create_repo trash
> > + cd trash
> > + + expr ./t0001-init.sh : .*/\(t[0-9]*\)-[^/]*$
> > this_test=t0001
> > + test_expect_success plain
> >         (
> >                 unset GIT_DIR GIT_WORK_TREE &&
> >                 mkdir plain &&
> >                 cd plain &&
> >                 git init
> >         ) &&
> >         check_config plain/.git false unset
> > 
> > * expecting success:
> >         (
> >                 unset GIT_DIR GIT_WORK_TREE &&
> >                 mkdir plain &&
> >                 cd plain &&
> >                 git init
> >         ) &&
> >         check_config plain/.git false unset
> > 
> > * FAIL 1: plain
> > 
> >                 (
> >                         unset GIT_DIR GIT_WORK_TREE &&
> >                         mkdir plain &&
> >                         cd plain &&
> >                         git init
> >                 ) &&
> >                 check_config plain/.git false unset
> 
> That's not good.  The relevant part here reads:

I found it! unset returns false

/pro/3gl/LINUX/git-1.5.3.7/t 152 > sh t0001*.sh
*   ok 1: plain
*   ok 2: plain with GIT_WORK_TREE
*   ok 3: plain bare
*   ok 4: plain bare with GIT_WORK_TREE
*   ok 5: GIT_DIR bare
*   ok 6: GIT_DIR non-bare
*   ok 7: GIT_DIR & GIT_WORK_TREE (1)
*   ok 8: GIT_DIR & GIT_WORK_TREE (2)
* passed all 8 test(s)

--8<---
--- t0001-init.sh.org   2007-12-04 16:55:25 +0100
+++ t0001-init.sh       2007-12-04 16:52:37 +0100
@@ -25,7 +25,7 @@ check_config () {

 test_expect_success 'plain' '
        (
-               unset GIT_DIR GIT_WORK_TREE &&
+               unset GIT_DIR GIT_WORK_TREE ;
                mkdir plain &&
                cd plain &&
                git init
@@ -35,7 +35,7 @@ test_expect_success 'plain' '

 test_expect_success 'plain with GIT_WORK_TREE' '
        if (
-               unset GIT_DIR &&
+               unset GIT_DIR ;
                mkdir plain-wt &&
                cd plain-wt &&
                GIT_WORK_TREE=$(pwd) git init
@@ -48,7 +48,7 @@ test_expect_success 'plain with GIT_WORK

 test_expect_success 'plain bare' '
        (
-               unset GIT_DIR GIT_WORK_TREE GIT_CONFIG &&
+               unset GIT_DIR GIT_WORK_TREE GIT_CONFIG ;
                mkdir plain-bare-1 &&
                cd plain-bare-1 &&
                git --bare init
@@ -58,7 +58,7 @@ test_expect_success 'plain bare' '

 test_expect_success 'plain bare with GIT_WORK_TREE' '
        if (
-               unset GIT_DIR GIT_CONFIG &&
+               unset GIT_DIR GIT_CONFIG ;
                mkdir plain-bare-2 &&
                cd plain-bare-2 &&
                GIT_WORK_TREE=$(pwd) git --bare init
@@ -72,7 +72,7 @@ test_expect_success 'plain bare with GIT
 test_expect_success 'GIT_DIR bare' '

        (
-               unset GIT_CONFIG &&
+               unset GIT_CONFIG ;
                mkdir git-dir-bare.git &&
                GIT_DIR=git-dir-bare.git git init
        ) &&
@@ -82,7 +82,7 @@ test_expect_success 'GIT_DIR bare' '
 test_expect_success 'GIT_DIR non-bare' '

        (
-               unset GIT_CONFIG &&
+               unset GIT_CONFIG ;
                mkdir non-bare &&
                cd non-bare &&
                GIT_DIR=.git git init
@@ -93,7 +93,7 @@ test_expect_success 'GIT_DIR non-bare' '
 test_expect_success 'GIT_DIR & GIT_WORK_TREE (1)' '

        (
-               unset GIT_CONFIG &&
+               unset GIT_CONFIG ;
                mkdir git-dir-wt-1.git &&
                GIT_WORK_TREE=$(pwd) GIT_DIR=git-dir-wt-1.git git init
        ) &&
@@ -103,7 +103,7 @@ test_expect_success 'GIT_DIR & GIT_WORK_
 test_expect_success 'GIT_DIR & GIT_WORK_TREE (2)' '

        if (
-               unset GIT_CONFIG &&
+               unset GIT_CONFIG ;
                mkdir git-dir-wt-2.git &&
                GIT_WORK_TREE=$(pwd) GIT_DIR=git-dir-wt-2.git git --bare init
        )
-->8---

I must leave now.

-- 
H.Merijn Brand         Amsterdam Perl Mongers (http://amsterdam.pm.org/)
using & porting perl 5.6.2, 5.8.x, 5.10.x  on HP-UX 10.20, 11.00, 11.11,
& 11.23, SuSE 10.1 & 10.2, AIX 5.2, and Cygwin.       http://qa.perl.org
http://mirrors.develooper.com/hpux/            http://www.test-smoke.org
                        http://www.goldmark.org/jeff/stupid-disclaimers/

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Building git-1.5.3.7 on HP-UX 11.00
  2007-12-04 15:56               ` H.Merijn Brand
@ 2007-12-04 16:28                 ` Johannes Schindelin
  2007-12-05 10:49                   ` H.Merijn Brand
  2007-12-04 18:05                 ` Junio C Hamano
  1 sibling, 1 reply; 27+ messages in thread
From: Johannes Schindelin @ 2007-12-04 16:28 UTC (permalink / raw)
  To: H.Merijn Brand; +Cc: Andreas Ericsson, git, Sam Vilain

Hi,

On Tue, 4 Dec 2007, H.Merijn Brand wrote:

> I found it! unset returns false

Oh, wow!  The question is now: how to deal with it (there are quite a few 
unsets in the test scripts).

Is there a way to override "unset" with something like this:

	unset_real () {
		unset "$@"
	}

	unset () {
		unset_real "$@"
		true
	}

?

Ciao,
Dscho

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Building git-1.5.3.7 on HP-UX 11.00
  2007-12-04 15:56               ` H.Merijn Brand
  2007-12-04 16:28                 ` Johannes Schindelin
@ 2007-12-04 18:05                 ` Junio C Hamano
  2007-12-04 22:25                   ` H.Merijn Brand
                                     ` (2 more replies)
  1 sibling, 3 replies; 27+ messages in thread
From: Junio C Hamano @ 2007-12-04 18:05 UTC (permalink / raw)
  To: H.Merijn Brand; +Cc: Johannes Schindelin, Andreas Ericsson, git, Sam Vilain

"H.Merijn Brand" <h.m.brand@xs4all.nl> writes:

> On Tue, 4 Dec 2007 15:39:47 +0000 (GMT), Johannes Schindelin
> ...
> I found it! unset returns false
> ...
> I must leave now.

Thanks, you two.

I do not see "unset VAR... &&" outside t0001 test, but there are
instances of "unset VAR... &&" in git-submodule implementations as well.

In short, not too many places to fix.

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Building git-1.5.3.7 on HP-UX 11.00
  2007-12-04 18:05                 ` Junio C Hamano
@ 2007-12-04 22:25                   ` H.Merijn Brand
  2007-12-04 22:46                     ` Johannes Schindelin
  2007-12-04 22:45                   ` [PATCH] Do not rely on the exit status of "unset" for unset variables Johannes Schindelin
  2007-12-10 14:51                   ` Building git-1.5.3.7 on HP-UX 11.00 H.Merijn Brand
  2 siblings, 1 reply; 27+ messages in thread
From: H.Merijn Brand @ 2007-12-04 22:25 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: Johannes Schindelin, Andreas Ericsson, git, Sam Vilain

On Tue, 04 Dec 2007 10:05:40 -0800, Junio C Hamano <gitster@pobox.com> wrote:

> "H.Merijn Brand" <h.m.brand@xs4all.nl> writes:
> 
> > On Tue, 4 Dec 2007 15:39:47 +0000 (GMT), Johannes Schindelin
> > ...
> > I found it! unset returns false
> > ...
> > I must leave now.
> 
> Thanks, you two.
> 
> I do not see "unset VAR... &&" outside t0001 test, but there are
> instances of "unset VAR... &&" in git-submodule implementations as well.
> 
> In short, not too many places to fix.

Going from there ....

# make test
:
:
:
*** t1300-repo-config.sh ***
*   ok 1: initial
*   ok 2: mixed case
*   ok 3: similar section
*   ok 4: similar section
*   ok 5: replace with non-match
*   ok 6: replace with non-match (actually matching)
*   ok 7: non-match result
*   ok 8: multiple unset
*   ok 9: multiple unset is correct
*   ok 10: --replace-all
*   ok 11: all replaced
*   ok 12: really mean test
*   ok 13: really really mean test
*   ok 14: get value
*   ok 15: unset
*   ok 16: multivar
* FAIL 17: non-match
        git config --get nextsection.nonewline !for
* FAIL 18: non-match value
        test wow = $(git config --get nextsection.nonewline !for)
*   ok 19: ambiguous get
*   ok 20: get multivar
*   ok 21: multivar replace
*   ok 22: ambiguous value
*   ok 23: ambiguous unset
*   ok 24: invalid unset
*   ok 25: multivar unset
*   ok 26: invalid key
*   ok 27: correct key
*   ok 28: hierarchical section
*   ok 29: hierarchical section value
*   ok 30: working --list
*   ok 31: --get-regexp
*   ok 32: --add
*   ok 33: get variable with no value
*   ok 34: get-regexp variable with no value
*   ok 35: no arguments, but no crash
*   ok 36: new section is partial match of another
*   ok 37: new variable inserts into proper section
*   ok 38: alternative GIT_CONFIG (non-existing file should fail)
*   ok 39: alternative GIT_CONFIG
*   ok 40: alternative GIT_CONFIG (--file)
*   ok 41: --set in alternative GIT_CONFIG
*   ok 42: rename section
*   ok 43: rename succeeded
*   ok 44: rename non-existing section
*   ok 45: rename succeeded
*   ok 46: rename another section
*   ok 47: rename succeeded
*   ok 48: remove section
*   ok 49: section was removed properly
*   ok 50: section ending
*   ok 51: numbers
*   ok 52: bool
*   ok 53: invalid bool (--get)
*   ok 54: invalid bool (set)
*   ok 55: set --bool
*   ok 56: set --int
*   ok 57: quoting
*   ok 58: key with newline
*   ok 59: value with newline
*   ok 60: value continued on next line
* FAIL 61: --null --list
        cmp result expect
* FAIL 62: --null --get-regexp
        cmp result expect
*   ok 63: symlinked configuration
* failed 4 among 63 test(s)


-- 
H.Merijn Brand         Amsterdam Perl Mongers (http://amsterdam.pm.org/)
using & porting perl 5.6.2, 5.8.x, 5.10.x  on HP-UX 10.20, 11.00, 11.11,
& 11.23, SuSE 10.1 & 10.2, AIX 5.2, and Cygwin.       http://qa.perl.org
http://mirrors.develooper.com/hpux/            http://www.test-smoke.org
                        http://www.goldmark.org/jeff/stupid-disclaimers/

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH] Do not rely on the exit status of "unset" for unset variables
  2007-12-04 18:05                 ` Junio C Hamano
  2007-12-04 22:25                   ` H.Merijn Brand
@ 2007-12-04 22:45                   ` Johannes Schindelin
  2007-12-05  8:01                     ` H.Merijn Brand
  2007-12-10 14:51                   ` Building git-1.5.3.7 on HP-UX 11.00 H.Merijn Brand
  2 siblings, 1 reply; 27+ messages in thread
From: Johannes Schindelin @ 2007-12-04 22:45 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: H.Merijn Brand, Andreas Ericsson, git, Sam Vilain


From: H.Merijn Brand <h.m.brand@xs4all.nl>

POSIX says that exit status "0" means that "unset" successfully unset
the variable.  However, it is kind of ambiguous if an environment
variable which was not set could be successfully unset.

At least the default shell on HP-UX insists on reporting an error in
such a case, so just ignore the exit status of "unset".

[Dscho: extended the patch to git-submodule.sh, as Junio realized that
 this is the only other place where we check the exit status of "unset".]

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
---

	On Tue, 4 Dec 2007, Junio C Hamano wrote:

	> "H.Merijn Brand" <h.m.brand@xs4all.nl> writes:
	> 
	> > On Tue, 4 Dec 2007 15:39:47 +0000 (GMT), Johannes Schindelin
	> > ...
	> > I found it! unset returns false
	> > ...
	> > I must leave now.
	> 
	> Thanks, you two.
	> 
	> I do not see "unset VAR... &&" outside t0001 test, but there are
	> instances of "unset VAR... &&" in git-submodule implementations 
	> as well.
	> 
	> In short, not too many places to fix.

	You're right.  I grepped for "unset" in t/*.sh, but that catches 
	only false positives other than t0001.

	Merijn, maybe you want to have your sign-off in the commit 
	message?

 git-submodule.sh |   10 +++++-----
 t/t0001-init.sh  |   16 ++++++++--------
 2 files changed, 13 insertions(+), 13 deletions(-)

diff --git a/git-submodule.sh b/git-submodule.sh
index 82ac28f..ad9fe62 100755
--- a/git-submodule.sh
+++ b/git-submodule.sh
@@ -158,7 +158,7 @@ module_add()
 	die "'$path' already exists in the index"
 
 	module_clone "$path" "$realrepo" || exit
-	(unset GIT_DIR && cd "$path" && git checkout -q ${branch:+-b "$branch" "origin/$branch"}) ||
+	(unset GIT_DIR; cd "$path" && git checkout -q ${branch:+-b "$branch" "origin/$branch"}) ||
 	die "Unable to checkout submodule '$path'"
 	git add "$path" ||
 	die "Failed to add submodule '$path'"
@@ -228,14 +228,14 @@ modules_update()
 			module_clone "$path" "$url" || exit
 			subsha1=
 		else
-			subsha1=$(unset GIT_DIR && cd "$path" &&
+			subsha1=$(unset GIT_DIR; cd "$path" &&
 				git rev-parse --verify HEAD) ||
 			die "Unable to find current revision in submodule path '$path'"
 		fi
 
 		if test "$subsha1" != "$sha1"
 		then
-			(unset GIT_DIR && cd "$path" && git-fetch &&
+			(unset GIT_DIR; cd "$path" && git-fetch &&
 				git-checkout -q "$sha1") ||
 			die "Unable to checkout '$sha1' in submodule path '$path'"
 
@@ -246,7 +246,7 @@ modules_update()
 
 set_name_rev () {
 	revname=$( (
-		unset GIT_DIR &&
+		unset GIT_DIR
 		cd "$1" && {
 			git describe "$2" 2>/dev/null ||
 			git describe --tags "$2" 2>/dev/null ||
@@ -285,7 +285,7 @@ modules_list()
 		else
 			if test -z "$cached"
 			then
-				sha1=$(unset GIT_DIR && cd "$path" && git rev-parse --verify HEAD)
+				sha1=$(unset GIT_DIR; cd "$path" && git rev-parse --verify HEAD)
 				set_name_rev "$path" "$sha1"
 			fi
 			say "+$sha1 $path$revname"
diff --git a/t/t0001-init.sh b/t/t0001-init.sh
index b14b3ec..c015405 100755
--- a/t/t0001-init.sh
+++ b/t/t0001-init.sh
@@ -25,7 +25,7 @@ check_config () {
 
 test_expect_success 'plain' '
 	(
-		unset GIT_DIR GIT_WORK_TREE &&
+		unset GIT_DIR GIT_WORK_TREE
 		mkdir plain &&
 		cd plain &&
 		git init
@@ -35,7 +35,7 @@ test_expect_success 'plain' '
 
 test_expect_success 'plain with GIT_WORK_TREE' '
 	if (
-		unset GIT_DIR &&
+		unset GIT_DIR
 		mkdir plain-wt &&
 		cd plain-wt &&
 		GIT_WORK_TREE=$(pwd) git init
@@ -48,7 +48,7 @@ test_expect_success 'plain with GIT_WORK_TREE' '
 
 test_expect_success 'plain bare' '
 	(
-		unset GIT_DIR GIT_WORK_TREE GIT_CONFIG &&
+		unset GIT_DIR GIT_WORK_TREE GIT_CONFIG
 		mkdir plain-bare-1 &&
 		cd plain-bare-1 &&
 		git --bare init
@@ -58,7 +58,7 @@ test_expect_success 'plain bare' '
 
 test_expect_success 'plain bare with GIT_WORK_TREE' '
 	if (
-		unset GIT_DIR GIT_CONFIG &&
+		unset GIT_DIR GIT_CONFIG
 		mkdir plain-bare-2 &&
 		cd plain-bare-2 &&
 		GIT_WORK_TREE=$(pwd) git --bare init
@@ -72,7 +72,7 @@ test_expect_success 'plain bare with GIT_WORK_TREE' '
 test_expect_success 'GIT_DIR bare' '
 
 	(
-		unset GIT_CONFIG &&
+		unset GIT_CONFIG
 		mkdir git-dir-bare.git &&
 		GIT_DIR=git-dir-bare.git git init
 	) &&
@@ -82,7 +82,7 @@ test_expect_success 'GIT_DIR bare' '
 test_expect_success 'GIT_DIR non-bare' '
 
 	(
-		unset GIT_CONFIG &&
+		unset GIT_CONFIG
 		mkdir non-bare &&
 		cd non-bare &&
 		GIT_DIR=.git git init
@@ -93,7 +93,7 @@ test_expect_success 'GIT_DIR non-bare' '
 test_expect_success 'GIT_DIR & GIT_WORK_TREE (1)' '
 
 	(
-		unset GIT_CONFIG &&
+		unset GIT_CONFIG
 		mkdir git-dir-wt-1.git &&
 		GIT_WORK_TREE=$(pwd) GIT_DIR=git-dir-wt-1.git git init
 	) &&
@@ -103,7 +103,7 @@ test_expect_success 'GIT_DIR & GIT_WORK_TREE (1)' '
 test_expect_success 'GIT_DIR & GIT_WORK_TREE (2)' '
 
 	if (
-		unset GIT_CONFIG &&
+		unset GIT_CONFIG
 		mkdir git-dir-wt-2.git &&
 		GIT_WORK_TREE=$(pwd) GIT_DIR=git-dir-wt-2.git git --bare init
 	)
-- 
1.5.3.7.2139.g2a5a3

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* Re: Building git-1.5.3.7 on HP-UX 11.00
  2007-12-04 22:25                   ` H.Merijn Brand
@ 2007-12-04 22:46                     ` Johannes Schindelin
  2007-12-05  8:08                       ` H.Merijn Brand
  0 siblings, 1 reply; 27+ messages in thread
From: Johannes Schindelin @ 2007-12-04 22:46 UTC (permalink / raw)
  To: H.Merijn Brand; +Cc: Junio C Hamano, Andreas Ericsson, git, Sam Vilain

Hi,

On Tue, 4 Dec 2007, H.Merijn Brand wrote:

> * FAIL 17: non-match
>         git config --get nextsection.nonewline !for
> * FAIL 18: non-match value
>         test wow = $(git config --get nextsection.nonewline !for)

Can you investigate further with "-i -v" and/or "-x"?  Could be the 
exclamation mark...

Ciao,
Dscho

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH] Do not rely on the exit status of "unset" for unset variables
  2007-12-04 22:45                   ` [PATCH] Do not rely on the exit status of "unset" for unset variables Johannes Schindelin
@ 2007-12-05  8:01                     ` H.Merijn Brand
  0 siblings, 0 replies; 27+ messages in thread
From: H.Merijn Brand @ 2007-12-05  8:01 UTC (permalink / raw)
  To: Johannes Schindelin; +Cc: Junio C Hamano, Andreas Ericsson, git, Sam Vilain

On Tue, 4 Dec 2007 22:45:16 +0000 (GMT), Johannes Schindelin
<Johannes.Schindelin@gmx.de> wrote:

> From: H.Merijn Brand <h.m.brand@xs4all.nl>
> 
> POSIX says that exit status "0" means that "unset" successfully unset
> the variable.  However, it is kind of ambiguous if an environment
> variable which was not set could be successfully unset.
> 
> At least the default shell on HP-UX insists on reporting an error in

please, for now make that HP-UX 11.11 and older. I'll check if it also
fails in 11.23/IPF.

On 11.11 HP C-ANSI-C cannot be used either.

And I have to remove "#include <sys/select.h>" from pager.c on HP-UX, I
forgot to tell. With the Makefile change in place, building with 64bit
gcc, 

--8<--- skip this part if you're not interested in 64bit builds on HP-UX
On 64bit gcc on HP-UX, there is no strtoull (). Nowhere! strtoul () is
the same there. But this is only in the 64bit world, so NO_STRTOULL can
not be set to YesPlease unconditionally. When I also set NO_STRTOUMAX,
I get shiploads of warnings like:

    CC commit.o
In file included from cache.h:4,
                 from commit.c:1:
git-compat-util.h:166:1: warning: "strtoumax" redefined
In file included from git-compat-util.h:62,
                 from cache.h:4,
                 from commit.c:1:
/usr/include/inttypes.h:527:1: warning: this is the location of the previous
definition

And that is NOT your fault, as this include file has defines like

** When compiling in ILP32 mode long long will be used for the 64-bit data
** types. This will cause compilation errors if 64-bit data types are
** requested and the compiler in use does not support them.

#define strtoimax(__a, __b, __c) __strtoll(__a, __b, __c)
#define strtoumax(__a, __b, __c) __strtoull(__a, __b, __c)

and that is not guarded with something like

/* LP64 takes precedence */
#if (defined(__STDC_EXT__) || defined(_INCLUDE_LONGLONG))
&& !defined(__LP64__)

so I ended up replacing all strtoumax () to strtoul () in git-fast-import.c

Then I end up with the same error as on 11.00.
-->8---


> such a case, so just ignore the exit status of "unset".
> 
> [Dscho: extended the patch to git-submodule.sh, as Junio realized that
>  this is the only other place where we check the exit status of "unset".]
> 
> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
> ---
> 
> 	On Tue, 4 Dec 2007, Junio C Hamano wrote:
> 
> 	> "H.Merijn Brand" <h.m.brand@xs4all.nl> writes:
> 	> 
> 	> > On Tue, 4 Dec 2007 15:39:47 +0000 (GMT), Johannes Schindelin
> 	> > ...
> 	> > I found it! unset returns false
> 	> > ...
> 	> > I must leave now.
> 	> 
> 	> Thanks, you two.
> 	> 
> 	> I do not see "unset VAR... &&" outside t0001 test, but there are
> 	> instances of "unset VAR... &&" in git-submodule implementations 
> 	> as well.
> 	> 
> 	> In short, not too many places to fix.
> 
> 	You're right.  I grepped for "unset" in t/*.sh, but that catches 
> 	only false positives other than t0001.
> 
> 	Merijn, maybe you want to have your sign-off in the commit 
> 	message?

Feel free to do so, I don't really care.

Will you also be looking into the install issue?

-- 
H.Merijn Brand         Amsterdam Perl Mongers (http://amsterdam.pm.org/)
using & porting perl 5.6.2, 5.8.x, 5.10.x  on HP-UX 10.20, 11.00, 11.11,
& 11.23, SuSE 10.1 & 10.2, AIX 5.2, and Cygwin.       http://qa.perl.org
http://mirrors.develooper.com/hpux/            http://www.test-smoke.org
                        http://www.goldmark.org/jeff/stupid-disclaimers/

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Building git-1.5.3.7 on HP-UX 11.00
  2007-12-04 22:46                     ` Johannes Schindelin
@ 2007-12-05  8:08                       ` H.Merijn Brand
  0 siblings, 0 replies; 27+ messages in thread
From: H.Merijn Brand @ 2007-12-05  8:08 UTC (permalink / raw)
  To: Johannes Schindelin; +Cc: Junio C Hamano, Andreas Ericsson, git, Sam Vilain

On Tue, 4 Dec 2007 22:46:30 +0000 (GMT), Johannes Schindelin
<Johannes.Schindelin@gmx.de> wrote:

> Hi,
> 
> On Tue, 4 Dec 2007, H.Merijn Brand wrote:
> 
> > * FAIL 17: non-match
> >         git config --get nextsection.nonewline !for
> > * FAIL 18: non-match value
> >         test wow = $(git config --get nextsection.nonewline !for)
> 
> Can you investigate further with "-i -v" and/or "-x"?  Could be the 
> exclamation mark...

* expecting success: git config --get nextsection.nonewline !for
* FAIL 17: non-match
        git config --get nextsection.nonewline !for

+ git config nextsection.NoNewLine wow2 for me for me$
+ cat
+ 1> expect 0< /var/tmp/sh4066.13
+ test_expect_success multivar cmp .git/config expect
* expecting success: cmp .git/config expect
*   ok 16: multivar

+ test_expect_success non-match git config --get nextsection.nonewline !for
* expecting success: git config --get nextsection.nonewline !for
* FAIL 17: non-match
        git config --get nextsection.nonewline !for


> Ciao,
> Dscho
> 


-- 
H.Merijn Brand         Amsterdam Perl Mongers (http://amsterdam.pm.org/)
using & porting perl 5.6.2, 5.8.x, 5.10.x  on HP-UX 10.20, 11.00, 11.11,
& 11.23, SuSE 10.1 & 10.2, AIX 5.2, and Cygwin.       http://qa.perl.org
http://mirrors.develooper.com/hpux/            http://www.test-smoke.org
                        http://www.goldmark.org/jeff/stupid-disclaimers/

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Building git-1.5.3.7 on HP-UX 11.00
  2007-12-04 16:28                 ` Johannes Schindelin
@ 2007-12-05 10:49                   ` H.Merijn Brand
  0 siblings, 0 replies; 27+ messages in thread
From: H.Merijn Brand @ 2007-12-05 10:49 UTC (permalink / raw)
  To: Johannes Schindelin; +Cc: Andreas Ericsson, git, Sam Vilain

On Tue, 4 Dec 2007 16:28:40 +0000 (GMT), Johannes Schindelin
<Johannes.Schindelin@gmx.de> wrote:

> Hi,
> 
> On Tue, 4 Dec 2007, H.Merijn Brand wrote:
> 
> > I found it! unset returns false
> 
> Oh, wow!  The question is now: how to deal with it (there are quite a few 
> unsets in the test scripts).

HP-UX 11.23/IPF 64bit gcc-4.2.1

env CC=gcc configure --disable-nls --prefix=/pro/local --without-iconv --with-perl=/pro/bin/perl

ifeq ($(uname_S),HP-UX)
	BASIC_CFLAGS += -mlp64
	NO_UNSETENV = YesPlease
endif

needs the unset patch

fails at the same point.

So at least all of HP-UX is consistent, which means that any of the HP
testdrive systems might be worth looking at for you lot.

http://www.testdrive.hp.com/current.shtml

-- 
H.Merijn Brand         Amsterdam Perl Mongers (http://amsterdam.pm.org/)
using & porting perl 5.6.2, 5.8.x, 5.10.x  on HP-UX 10.20, 11.00, 11.11,
& 11.23, SuSE 10.1 & 10.2, AIX 5.2, and Cygwin.       http://qa.perl.org
http://mirrors.develooper.com/hpux/            http://www.test-smoke.org
                        http://www.goldmark.org/jeff/stupid-disclaimers/

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Building git-1.5.3.7 on HP-UX 11.00
  2007-12-04 18:05                 ` Junio C Hamano
  2007-12-04 22:25                   ` H.Merijn Brand
  2007-12-04 22:45                   ` [PATCH] Do not rely on the exit status of "unset" for unset variables Johannes Schindelin
@ 2007-12-10 14:51                   ` H.Merijn Brand
  2007-12-11  8:26                     ` Junio C Hamano
  2 siblings, 1 reply; 27+ messages in thread
From: H.Merijn Brand @ 2007-12-10 14:51 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: Johannes Schindelin, Andreas Ericsson, git, Sam Vilain

On Tue, 04 Dec 2007 10:05:40 -0800, Junio C Hamano <gitster@pobox.com> wrote:

> "H.Merijn Brand" <h.m.brand@xs4all.nl> writes:
> 
> > On Tue, 4 Dec 2007 15:39:47 +0000 (GMT), Johannes Schindelin
> > ...
> > I found it! unset returns false
> > ...
> > I must leave now.
> 
> Thanks, you two.
> 
> I do not see "unset VAR... &&" outside t0001 test, but there are
> instances of "unset VAR... &&" in git-submodule implementations as well.
> 
> In short, not too many places to fix.

I took the snapshot from 10-12-2007 and applied the patch below

Summary of the changes:

1 Added a section for HP-UX in the Makefile. Note that this will
  cover most of HP-UX, but might need several changes for both
  newer HP-UX versions and 64bit environments. Will come to that
  once I've got it all running

2 HP-UX does not have <sys/select.h>. I mentioned this before

3 I am willing to believe that HP_UX' vsnprintf () is broken, or
  at least does not conform to the expectations in the GNU world,
  but chickening out like the way strbuf_addf () does is maybe a
  bit too rude, so I forced a minimum of 64bytes available. That
  fixes a lot!

  but it still breaks t4013 :(

4 'tr' doesn't like '\0', but wants '\000' instead.

5 'tr' cannot deal with character classes

6 I don't know how to attack another HP specific problem: HP has
  a system command called 'patch' and it is *very* incompatible
  with GNU patch. Very. On all my systems I have GNU patch as
  'npatch', but I also know of people that have it as 'gpatch'.
  In whatever case, HP's patch will fail, so you'd have to ask
  if the poor user does have a GNU patch lying around. In t4109
  I changed the three calls to patch to calls to npatch, but did
  not include this in the patch below. Same for the single call
  in t4110.

7 What do you expect for LOCALE's? below is the first failure for
  locale testing, but there are more, like

  *** t4201-shortlog.sh ***
  t4201-shortlog.sh[22]: Invalid multibyte character.

  and somewhere inside t5100-mailinfo.sh:
  fatal: cannot convert from iso-2022-jp to utf-8

After working my way down, I stopped after hitting this:

+ git-index-pack -o tmp.idx test-2-7f8ead892057e78576c0329a70cc83afb113f117.pack
fatal: serious inflate inconsistency

inside t5300-pack-object.sh

# make configure
:
# env CC=gcc configure --prefix=/pro/local --disable-nls --without-iconv \
  --with-perl=/pro/bin/perl
:
# make
:
# make test
:
:
*** t3900-i18n-commit.sh ***
*   ok 1: setup
*   ok 2: no encoding header for base case
*   ok 3: ISO-8859-1 setup
*   ok 4: EUCJP setup
*   ok 5: ISO-2022-JP setup
*   ok 6: check encoding header for ISO-8859-1
*   ok 7: check encoding header for EUCJP
*   ok 8: check encoding header for ISO-2022-JP
*   ok 9: config to remove customization
* FAIL 10: ISO-8859-1 should be shown in UTF-8 now

                compare_with ISO-8859-1 ../t3900/1-UTF-8.txt

* FAIL 11: EUCJP should be shown in UTF-8 now

                        compare_with EUCJP ../t3900/2-UTF-8.txt

* FAIL 12: ISO-2022-JP should be shown in UTF-8 now

                        compare_with ISO-2022-JP ../t3900/2-UTF-8.txt

*   ok 13: config to add customization
*   ok 14: ISO-8859-1 should be shown in itself now
*   ok 15: EUCJP should be shown in itself now
*   ok 16: ISO-2022-JP should be shown in itself now
*   ok 17: config to tweak customization
* FAIL 18: ISO-8859-1 should be shown in UTF-8 now

                compare_with ISO-8859-1 ../t3900/1-UTF-8.txt

* FAIL 19: EUCJP should be shown in UTF-8 now

                        compare_with EUCJP ../t3900/2-UTF-8.txt

* FAIL 20: ISO-2022-JP should be shown in UTF-8 now

                        compare_with ISO-2022-JP ../t3900/2-UTF-8.txt

*   ok 21: EUCJP should be shown in EUCJP now
* FAIL 22: ISO-2022-JP should be shown in EUCJP now

                                compare_with ISO-2022-JP ../t3900/EUCJP.txt

* FAIL 23: EUCJP should be shown in ISO-2022-JP now

                                compare_with EUCJP ../t3900/ISO-2022-JP.txt

*   ok 24: ISO-2022-JP should be shown in ISO-2022-JP now
*   ok 25: No conversion with ISO-8859-1
*   ok 26: No conversion with EUCJP
*   ok 27: No conversion with ISO-2022-JP
* failed 8 among 27 test(s)
make[1]: *** [t3900-i18n-commit.sh] Error 1

# locale -a
C
POSIX
C.iso88591
C.utf8
univ.utf8
nl_NL.iso88591
nl_NL.roman8
en_GB.iso88591
en_GB.roman8
en_US.iso88591
en_US.roman8
C.iso885915
nl_NL.iso885915@euro
en_GB.iso885915@euro

--8<--- git-hpux.diff
diff -pur git-2007-12-10_01/Makefile git-2007-12-10/Makefile
--- git-2007-12-10_01/Makefile  2007-12-09 10:23:48 +0100
+++ git-2007-12-10/Makefile     2007-12-10 13:41:39 +0100
@@ -398,6 +398,18 @@ EXTLIBS =
 # because maintaining the nesting to match is a pain.  If
 # we had "elif" things would have been much nicer...

+ifeq ($(uname_S),HP-UX)
+       # HP-UX
+       BASIC_LDFLAGS += -L/usr/local/ssl/lib -L/usr/local/lib
+       #EXTLIBS += -lc_r -lgcc
+       NO_HSTRERROR = YesPlease
+       NO_ICONV = YesPlease
+       NO_INET_NTOP = YesPlease
+       NO_INET_PTON = YesPlease
+       NO_UNSETENV = YesPlease
+       NO_STRTOULL = YesPlease
+       NO_STRTOUMAX = YesPlease
+endif
 ifeq ($(uname_S),Linux)
        NO_STRLCPY = YesPlease
 endif
diff -pur git-2007-12-10_01/git-compat-util.h git-2007-12-10/git-compat-util.h
--- git-2007-12-10_01/git-compat-util.h 2007-12-09 10:23:48 +0100
+++ git-2007-12-10/git-compat-util.h    2007-12-10 14:25:26 +0100
@@ -68,7 +68,9 @@
 #include <sys/poll.h>
 #include <sys/socket.h>
 #include <sys/ioctl.h>
+#ifndef _HPUX_SOURCE
 #include <sys/select.h>
+#endif
 #include <assert.h>
 #include <regex.h>
 #include <netinet/in.h>
diff -pur git-2007-12-10_01/strbuf.c git-2007-12-10/strbuf.c
--- git-2007-12-10_01/strbuf.c  2007-12-09 10:23:48 +0100
+++ git-2007-12-10/strbuf.c     2007-12-10 15:19:46 +0100
@@ -12,7 +12,7 @@ void strbuf_init(struct strbuf *sb, size
        sb->alloc = sb->len = 0;
        sb->buf = strbuf_slopbuf;
        if (hint)
-               strbuf_grow(sb, hint);
+           strbuf_grow(sb, hint);
 }

 void strbuf_release(struct strbuf *sb)
@@ -118,7 +118,7 @@ void strbuf_addf(struct strbuf *sb, cons
        int len;
        va_list ap;

-       if (!strbuf_avail(sb))
+       if (strbuf_avail(sb) < 64)
                strbuf_grow(sb, 64);
        va_start(ap, fmt);
        len = vsnprintf(sb->buf + sb->len, sb->alloc - sb->len, fmt, ap);
diff -pur git-2007-12-10_01/t/t0020-crlf.sh git-2007-12-10/t/t0020-crlf.sh
--- git-2007-12-10_01/t/t0020-crlf.sh   2007-12-09 10:23:48 +0100
+++ git-2007-12-10/t/t0020-crlf.sh      2007-12-10 14:25:58 +0100
@@ -5,7 +5,7 @@ test_description='CRLF conversion'
 . ./test-lib.sh

 q_to_nul () {
-       tr Q '\0'
+       tr Q '\000'
 }

 append_cr () {
diff -pur git-2007-12-10_01/t/t1300-repo-config.sh git-2007-12-10/t/t1300-repo-config.sh
--- git-2007-12-10_01/t/t1300-repo-config.sh    2007-12-09 10:23:48 +0100
+++ git-2007-12-10/t/t1300-repo-config.sh       2007-12-10 09:49:48 +0100
@@ -591,12 +591,12 @@ Qsection.sub=section.val4
 Qsection.sub=section.val5Q
 EOF

-git config --null --list | tr '[\000]' 'Q' > result
+git config --null --list | tr '\000' 'Q' > result
 echo >>result

 test_expect_success '--null --list' 'cmp result expect'

-git config --null --get-regexp 'val[0-9]' | tr '[\000]' 'Q' > result
+git config --null --get-regexp 'val[0-9]' | tr '\000' 'Q' > result
 echo >>result

 test_expect_success '--null --get-regexp' 'cmp result expect'
-->8--- git-hpux.diff

Can I put the ball back in your court now?


-- 
H.Merijn Brand         Amsterdam Perl Mongers (http://amsterdam.pm.org/)
using & porting perl 5.6.2, 5.8.x, 5.10.x  on HP-UX 10.20, 11.00, 11.11,
& 11.23, SuSE 10.1 & 10.2, AIX 5.2, and Cygwin.       http://qa.perl.org
http://mirrors.develooper.com/hpux/            http://www.test-smoke.org
                        http://www.goldmark.org/jeff/stupid-disclaimers/

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Building git-1.5.3.7 on HP-UX 11.00
  2007-12-10 14:51                   ` Building git-1.5.3.7 on HP-UX 11.00 H.Merijn Brand
@ 2007-12-11  8:26                     ` Junio C Hamano
  2007-12-11  8:54                       ` Shawn O. Pearce
                                         ` (2 more replies)
  0 siblings, 3 replies; 27+ messages in thread
From: Junio C Hamano @ 2007-12-11  8:26 UTC (permalink / raw)
  To: H.Merijn Brand; +Cc: Johannes Schindelin, Andreas Ericsson, git, Sam Vilain

"H.Merijn Brand" <h.m.brand@xs4all.nl> writes:

> Summary of the changes:
>
> 1 Added a section for HP-UX in the Makefile. Note that this will
>   cover most of HP-UX, but might need several changes for both
>   newer HP-UX versions and 64bit environments. Will come to that
>   once I've got it all running
>
> 2 HP-UX does not have <sys/select.h>. I mentioned this before

Unfortunate.  It is even in POSIX.
But nothing "make -DNO_SYS_SELECT=Unfortunately" cannot fix.

> 3 I am willing to believe that HP_UX' vsnprintf () is broken, or
>   at least does not conform to the expectations in the GNU world,
>   but chickening out like the way strbuf_addf () does is maybe a
>   bit too rude, so I forced a minimum of 64bytes available. That
>   fixes a lot!
>
>   but it still breaks t4013 :(

I think Shawn had something similar for Solaris, and if it is a small
cost to help portability, it does not feel so bad.

> 4 'tr' doesn't like '\0', but wants '\000' instead.
> 5 'tr' cannot deal with character classes

Ok, that's odd (and not old fashioned, which makes even odder), but
"\000" is not too bad (unless we have to do that million places).

> 6 I don't know how to attack another HP specific problem: HP has
>   a system command called 'patch' and it is *very* incompatible
>   with GNU patch. Very.

I do not think there is any reason for us to rely on "GNU patch"
anymore.  4109 can have precomputed test vector instead of comparing our
output with what GNU patch of the day happens to do.

> 7 What do you expect for LOCALE's?

I am not opposed to a change that makes these tests to conditionally
skip on systems (not necessarily "platforms" but individual
"installations") that do not have locales necessary to run tests
installed, just like cvs or svn tests are skipped when they are not
installed.  Especially you are not using iconv...

> + git-index-pack -o tmp.idx test-2-7f8ead892057e78576c0329a70cc83afb113f117.pack
> fatal: serious inflate inconsistency

That sounds like a broken zlib X-<.

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Building git-1.5.3.7 on HP-UX 11.00
  2007-12-11  8:26                     ` Junio C Hamano
@ 2007-12-11  8:54                       ` Shawn O. Pearce
  2007-12-11 12:57                         ` H.Merijn Brand
  2007-12-11  9:20                       ` Johannes Sixt
  2007-12-11 13:33                       ` H.Merijn Brand
  2 siblings, 1 reply; 27+ messages in thread
From: Shawn O. Pearce @ 2007-12-11  8:54 UTC (permalink / raw)
  To: Junio C Hamano
  Cc: H.Merijn Brand, Johannes Schindelin, Andreas Ericsson, git, Sam Vilain

Junio C Hamano <gitster@pobox.com> wrote:
> "H.Merijn Brand" <h.m.brand@xs4all.nl> writes:
> 
> > 3 I am willing to believe that HP_UX' vsnprintf () is broken, or
> >   at least does not conform to the expectations in the GNU world,
> >   but chickening out like the way strbuf_addf () does is maybe a
> >   bit too rude, so I forced a minimum of 64bytes available. That
> >   fixes a lot!
> >
> >   but it still breaks t4013 :(
> 
> I think Shawn had something similar for Solaris, and if it is a small
> cost to help portability, it does not feel so bad.

My Solaris change is already in your tree; on Solaris vnsprintf
will return -1 if the input buffer we gave it had a length of 0.
This can happen at odd times, depending on what is already in the
strbuf and how its buffer is. :)

The fix for Solaris turned out to be just make sure there is at
least 1 byte in the buffer before calling vsnprintf().
 
> > + git-index-pack -o tmp.idx test-2-7f8ead892057e78576c0329a70cc83afb113f117.pack
> > fatal: serious inflate inconsistency
> 
> That sounds like a broken zlib X-<.

I think this is actually a broken pread().  Its been reported
multiple times by different people on HP-UX.  Compiling with
NO_PREAD=1 resolves the issues for everyone who has tried it.

Jakub asked me for an autoconf test to look for this sort of
breakage in pread(), I have yet to come up with a theory for
what sort of breakage HP-UX is showing us here, let alone write
a test for it.

-- 
Shawn.

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Building git-1.5.3.7 on HP-UX 11.00
  2007-12-11  8:26                     ` Junio C Hamano
  2007-12-11  8:54                       ` Shawn O. Pearce
@ 2007-12-11  9:20                       ` Johannes Sixt
  2007-12-11 10:42                         ` H.Merijn Brand
  2007-12-11 13:33                       ` H.Merijn Brand
  2 siblings, 1 reply; 27+ messages in thread
From: Johannes Sixt @ 2007-12-11  9:20 UTC (permalink / raw)
  To: H.Merijn Brand
  Cc: Junio C Hamano, Johannes Schindelin, Andreas Ericsson, git, Sam Vilain

Junio C Hamano schrieb:
> "H.Merijn Brand" <h.m.brand@xs4all.nl> writes:
>> 3 I am willing to believe that HP_UX' vsnprintf () is broken, or
>>   at least does not conform to the expectations in the GNU world,
>>   but chickening out like the way strbuf_addf () does is maybe a
>>   bit too rude, so I forced a minimum of 64bytes available. That
>>   fixes a lot!
>>
>>   but it still breaks t4013 :(
> 
> I think Shawn had something similar for Solaris, and if it is a small
> cost to help portability, it does not feel so bad.

Windows's vsnprintf() is broken in two regards: (1) It returns -1 if the
buffer is too small; (2) the size parameter is not the size of the buffer,
but the max. number of chars to write (i.e. does not count the NUL). How
broken is HP-UX's? Maybe we can share the implementation? See:

http://repo.or.cz/w/git/mingw.git?a=commitdiff;h=5fd41ffacdef5454acbe51f5e23a97eb5158226d
http://repo.or.cz/w/git/mingw.git?a=commitdiff;h=e88aa8cbe816526bb0a7d37eaf2f5eb40ff36ae1

-- Hannes

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Building git-1.5.3.7 on HP-UX 11.00
  2007-12-11  9:20                       ` Johannes Sixt
@ 2007-12-11 10:42                         ` H.Merijn Brand
  2007-12-11 11:01                           ` Johannes Sixt
  0 siblings, 1 reply; 27+ messages in thread
From: H.Merijn Brand @ 2007-12-11 10:42 UTC (permalink / raw)
  To: Johannes Sixt
  Cc: Junio C Hamano, Johannes Schindelin, Andreas Ericsson, git, Sam Vilain

On Tue, 11 Dec 2007 10:20:55 +0100, Johannes Sixt <j.sixt@viscovery.net>
wrote:

> Junio C Hamano schrieb:
> > "H.Merijn Brand" <h.m.brand@xs4all.nl> writes:
> >> 3 I am willing to believe that HP_UX' vsnprintf () is broken, or
> >>   at least does not conform to the expectations in the GNU world,
> >>   but chickening out like the way strbuf_addf () does is maybe a
> >>   bit too rude, so I forced a minimum of 64bytes available. That
> >>   fixes a lot!
> >>
> >>   but it still breaks t4013 :(
> > 
> > I think Shawn had something similar for Solaris, and if it is a small
> > cost to help portability, it does not feel so bad.
> 
> Windows's vsnprintf() is broken in two regards: (1) It returns -1 if the
> buffer is too small; (2) the size parameter is not the size of the buffer,
> but the max. number of chars to write (i.e. does not count the NUL). How
> broken is HP-UX's?

Do you have a simple test program to show how `broken' it is?
I have 10.20, 11.00, 11.11, 11.23/PA and 11.23/IPF and both
HP C-ANSI-C and gcc

> Maybe we can share the implementation? See:
> 
> http://repo.or.cz/w/git/mingw.git?a=commitdiff;h=5fd41ffacdef5454acbe51f5e23a97eb5158226d
> http://repo.or.cz/w/git/mingw.git?a=commitdiff;h=e88aa8cbe816526bb0a7d37eaf2f5eb40ff36ae1

-- 
H.Merijn Brand         Amsterdam Perl Mongers (http://amsterdam.pm.org/)
using & porting perl 5.6.2, 5.8.x, 5.10.x  on HP-UX 10.20, 11.00, 11.11,
& 11.23, SuSE 10.1 & 10.2, AIX 5.2, and Cygwin.       http://qa.perl.org
http://mirrors.develooper.com/hpux/            http://www.test-smoke.org
                        http://www.goldmark.org/jeff/stupid-disclaimers/

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Building git-1.5.3.7 on HP-UX 11.00
  2007-12-11 10:42                         ` H.Merijn Brand
@ 2007-12-11 11:01                           ` Johannes Sixt
  0 siblings, 0 replies; 27+ messages in thread
From: Johannes Sixt @ 2007-12-11 11:01 UTC (permalink / raw)
  To: H.Merijn Brand
  Cc: Junio C Hamano, Johannes Schindelin, Andreas Ericsson, git, Sam Vilain

H.Merijn Brand schrieb:
> On Tue, 11 Dec 2007 10:20:55 +0100, Johannes Sixt <j.sixt@viscovery.net>
> wrote:
> 
>> Junio C Hamano schrieb:
>>> "H.Merijn Brand" <h.m.brand@xs4all.nl> writes:
>>>> 3 I am willing to believe that HP_UX' vsnprintf () is broken, or
>>>>   at least does not conform to the expectations in the GNU world,
>>>>   but chickening out like the way strbuf_addf () does is maybe a
>>>>   bit too rude, so I forced a minimum of 64bytes available. That
>>>>   fixes a lot!
>>>>
>>>>   but it still breaks t4013 :(
>>> I think Shawn had something similar for Solaris, and if it is a small
>>> cost to help portability, it does not feel so bad.
>> Windows's vsnprintf() is broken in two regards: (1) It returns -1 if the
>> buffer is too small; (2) the size parameter is not the size of the buffer,
>> but the max. number of chars to write (i.e. does not count the NUL). How
>> broken is HP-UX's?
> 
> Do you have a simple test program to show how `broken' it is?
> I have 10.20, 11.00, 11.11, 11.23/PA and 11.23/IPF and both
> HP C-ANSI-C and gcc

Sorry, no. vsnprintf's behavior on Windows is actually documented, so to be
fair it is not "broken", but "unwanted".

-- Hannes

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Building git-1.5.3.7 on HP-UX 11.00
  2007-12-11  8:54                       ` Shawn O. Pearce
@ 2007-12-11 12:57                         ` H.Merijn Brand
  0 siblings, 0 replies; 27+ messages in thread
From: H.Merijn Brand @ 2007-12-11 12:57 UTC (permalink / raw)
  To: Shawn O. Pearce
  Cc: Junio C Hamano, Johannes Schindelin, Andreas Ericsson, git,
	Sam Vilain, arjen

On Tue, 11 Dec 2007 03:54:40 -0500, "Shawn O. Pearce" <spearce@spearce.org>
wrote:

> Junio C Hamano <gitster@pobox.com> wrote:
> > "H.Merijn Brand" <h.m.brand@xs4all.nl> writes:
> > 
> > > 3 I am willing to believe that HP_UX' vsnprintf () is broken, or
> > >   at least does not conform to the expectations in the GNU world,
> > >   but chickening out like the way strbuf_addf () does is maybe a
> > >   bit too rude, so I forced a minimum of 64bytes available. That
> > >   fixes a lot!
> > >
> > >   but it still breaks t4013 :(
> > 
> > I think Shawn had something similar for Solaris, and if it is a small
> > cost to help portability, it does not feel so bad.
> 
> My Solaris change is already in your tree; on Solaris vnsprintf
> will return -1 if the input buffer we gave it had a length of 0.
> This can happen at odd times, depending on what is already in the
> strbuf and how its buffer is. :)
> 
> The fix for Solaris turned out to be just make sure there is at
> least 1 byte in the buffer before calling vsnprintf().
>  
> > > + git-index-pack -o tmp.idx test-2-7f8ead892057e78576c0329a70cc83afb113f117.pack
> > > fatal: serious inflate inconsistency
> > 
> > That sounds like a broken zlib X-<.

libz is version 1.2.3

> I think this is actually a broken pread().  Its been reported
> multiple times by different people on HP-UX.  Compiling with
> NO_PREAD=1 resolves the issues for everyone who has tried it.

:)

* passed all 114 test(s)

> Jakub asked me for an autoconf test to look for this sort of
> breakage in pread(), I have yet to come up with a theory for
> what sort of breakage HP-UX is showing us here, let alone write
> a test for it.

For now, the HP section in Makefile for 11.00 now looks like

ifeq ($(uname_S),HP-UX)
	# HP-UX
	BASIC_LDFLAGS  += -L/usr/local/ssl/lib -L/usr/local/lib
#	EXTLIBS        += -lc_r -lgcc
	NO_HSTRERROR	= YesPlease
	NO_ICONV	= YesPlease
	NO_INET_NTOP	= YesPlease
	NO_INET_PTON	= YesPlease
	NO_UNSETENV	= YesPlease
	NO_STRTOULL	= YesPlease
	NO_STRTOUMAX	= YesPlease
	NO_PREAD	= YesPlease
endif


-- 
H.Merijn Brand         Amsterdam Perl Mongers (http://amsterdam.pm.org/)
using & porting perl 5.6.2, 5.8.x, 5.10.x  on HP-UX 10.20, 11.00, 11.11,
& 11.23, SuSE 10.1 & 10.2, AIX 5.2, and Cygwin.       http://qa.perl.org
http://mirrors.develooper.com/hpux/            http://www.test-smoke.org
                        http://www.goldmark.org/jeff/stupid-disclaimers/

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Building git-1.5.3.7 on HP-UX 11.00
  2007-12-11  8:26                     ` Junio C Hamano
  2007-12-11  8:54                       ` Shawn O. Pearce
  2007-12-11  9:20                       ` Johannes Sixt
@ 2007-12-11 13:33                       ` H.Merijn Brand
  2007-12-11 13:53                         ` Johannes Sixt
  2 siblings, 1 reply; 27+ messages in thread
From: H.Merijn Brand @ 2007-12-11 13:33 UTC (permalink / raw)
  To: Junio C Hamano
  Cc: Johannes Schindelin, Andreas Ericsson, git, Sam Vilain, arjen

On Tue, 11 Dec 2007 00:26:48 -0800, Junio C Hamano <gitster@pobox.com> wrote:

> "H.Merijn Brand" <h.m.brand@xs4all.nl> writes:
> 
> > Summary of the changes:
> >
> > 1 Added a section for HP-UX in the Makefile. Note that this will
> >   cover most of HP-UX, but might need several changes for both
> >   newer HP-UX versions and 64bit environments. Will come to that
> >   once I've got it all running
> >
> > 2 HP-UX does not have <sys/select.h>. I mentioned this before
> 
> Unfortunate.  It is even in POSIX.

The *include* file, or the function? HP-UX has the function, but
not the include file.

> But nothing "make -DNO_SYS_SELECT=Unfortunately" cannot fix.

I didn't see any #ifdef/#ifndef around the include, otherwise I
would have found that already I think.

> > 3 I am willing to believe that HP_UX' vsnprintf () is broken, or
> >   at least does not conform to the expectations in the GNU world,
> >   but chickening out like the way strbuf_addf () does is maybe a
> >   bit too rude, so I forced a minimum of 64bytes available. That
> >   fixes a lot!
> >
> >   but it still breaks t4013 :(
> 
> I think Shawn had something similar for Solaris, and if it is a small
> cost to help portability, it does not feel so bad.

:)

> > 4 'tr' doesn't like '\0', but wants '\000' instead.
> > 5 'tr' cannot deal with character classes
> 
> Ok, that's odd (and not old fashioned, which makes even odder), but
> "\000" is not too bad (unless we have to do that million places).

> perl -MFile::Find -e'find(sub{m/\.sh$/ or return;local@ARGV=($_);while(<>){/\btr\b.*\\\d(?\!\d\d)/&&print"$File::Find::name\t$.\t$_"}},".")'
./git-filter-branch.sh  293                     git diff-index -r $commit | cut -f 2- | tr '\n' '\0' | \
./test-sha1.sh  13                              tr '[\0]' '[g]'
./test-sha1.sh  58                              tr '[\0]' '[g]'
./t/diff-lib.sh 24          tr '\0' '\012' <"$1" | sed -e "$sanitize_diff_raw_z" >.tmp-1
./t/diff-lib.sh 25          tr '\0' '\012' <"$2" | sed -e "$sanitize_diff_raw_z" >.tmp-2
./t/t2001-checkout-cache-clash.sh       33              sed -e 's/^\([0-9]*\)   [^ ]*   [0-9a-f]*       /tr: \1 /'
./t/t3300-funny-names.sh        57              'git ls-files -z | tr \\0 \\012 >current &&
./t/t3300-funny-names.sh        86              'git diff-index -z --name-status $t0 | tr \\0 \\012 >current &&
./t/t3300-funny-names.sh        90              'git diff-tree -z --name-status $t0 $t1 | tr \\0 \\012 >current &&
./t/t4020-diff-external.sh      102     echo NULZbetweenZwords | tr Z '\0' > file
./t/t4103-apply-binary.sh       27      tr 'x' '\0' <file1 >file3
./t/t4103-apply-binary.sh       30      tr '\0' 'v' <file3 >file1
./t/t4116-apply-reverse.sh      15              tr "[ijk]" '\''[\0\1\2]'\'' <file1 >file2 &&
./t/t4116-apply-reverse.sh      22              tr "[mon]" '\''[\0\1\2]'\'' <file1 >file2 &&
./t/t4200-rerere.sh     132     echo "$sha1     a1" | tr '\012' '\0' > .git/rr-cache/MERGE_RR
./t/t5300-pack-object.sh        18                   dd if=/dev/zero bs=4k count=1 | tr "\\0" $i >$i &&

So with the recent history in the back of my mind, I'd expect all tr commands
with character class like notations to fail. Patch below.

> > 6 I don't know how to attack another HP specific problem: HP has
> >   a system command called 'patch' and it is *very* incompatible
> >   with GNU patch. Very.
> 
> I do not think there is any reason for us to rely on "GNU patch"
> anymore.  4109 can have precomputed test vector instead of comparing our
> output with what GNU patch of the day happens to do.

\o/

> > 7 What do you expect for LOCALE's?
> 
> I am not opposed to a change that makes these tests to conditionally
> skip on systems (not necessarily "platforms" but individual
> "installations") that do not have locales necessary to run tests
> installed, just like cvs or svn tests are skipped when they are not
> installed.  Especially you are not using iconv...

\o/

BTW it is rather unlikely to find Tcl and/or Tk on most HP-UX systems.
Having perl already required, would you cheer an attempt to rewrite
git-gui to Perl/Tk? (I didn't have a look at it yet, but that should
make git-gui an awful lot more portable and when used on windows with
ActivePerl, Tk is already available in all builds)


I have put the output of

% make -i test | & perl -ne'm/^\*\s+ok\s+\d+:/ or print' > git-make-test.log

on http://www.xs4all.nl/~procura/git-make-test.log

which leaves only the following tests as failures:

t3901-i18n-patch.sh        t4201-shortlog.sh            t5100-mailinfo.sh
t5405-send-pack-rewind.sh  t5500-fetch-pack.sh          t5505-remote.sh
t5510-fetch.sh             t5515-fetch-merge-logic.sh   t5516-fetch-push.sh
t5520-pull.sh              t5600-clone-fail-cleanup.sh  t5700-clone-reference.sh
t5701-clone-local.sh       t6002-rev-list-bisect.sh     t6003-rev-list-topo-order.sh
t6022-merge-rename.sh      t6026-merge-attr.sh          t6200-fmt-merge-msg.sh
t7003-filter-branch.sh     t9300-fast-import.sh         t9301-fast-export.sh
t9500-gitweb-standalone-no-errors.sh

How close am I to success?



--8<--- git-tr.diff
--- git-2007-12-10_01/git-filter-branch.sh      2007-12-09 10:23:48 +0100
+++ git-2007-12-10/git-filter-branch.sh 2007-12-11 13:39:02 +0100
@@ -290,7 +290,7 @@ while read commit parents; do
                eval "$filter_tree" < /dev/null ||
                        die "tree filter failed: $filter_tree"

-               git diff-index -r $commit | cut -f 2- | tr '\n' '\0' | \
+               git diff-index -r $commit | cut -f 2- | tr '\n' '\000' | \
                        xargs -0 git update-index --add --replace --remove
                git ls-files -z --others | \
                        xargs -0 git update-index --add --replace --remove
--- git-2007-12-10_01/test-sha1.sh      2007-12-09 10:23:48 +0100
+++ git-2007-12-10/test-sha1.sh 2007-12-11 13:39:29 +0100
@@ -10,7 +10,7 @@ do
                {
                        test -z "$pfx" || echo "$pfx"
                        dd if=/dev/zero bs=1048576 count=$cnt 2>/dev/null |
-                       tr '[\0]' '[g]'
+                       tr '\000' 'g'
                } | ./test-sha1 $cnt
        `
        if test "$expect" = "$actual"
@@ -55,7 +55,7 @@ do
                {
                        test -z "$pfx" || echo "$pfx"
                        dd if=/dev/zero bs=1048576 count=$cnt 2>/dev/null |
-                       tr '[\0]' '[g]'
+                       tr '\000' 'g'
                } | sha1sum |
                sed -e 's/ .*//'
        `
--- git-2007-12-10_01/t/diff-lib.sh     2007-12-09 10:23:48 +0100
+++ git-2007-12-10/t/diff-lib.sh        2007-12-11 13:39:56 +0100
@@ -21,8 +21,8 @@ compare_diff_raw_z () {
     # Also we do not check SHA1 hash generation in this test, which
     # is a job for t0000-basic.sh

-    tr '\0' '\012' <"$1" | sed -e "$sanitize_diff_raw_z" >.tmp-1
-    tr '\0' '\012' <"$2" | sed -e "$sanitize_diff_raw_z" >.tmp-2
+    tr '\000' '\012' <"$1" | sed -e "$sanitize_diff_raw_z" >.tmp-1
+    tr '\000' '\012' <"$2" | sed -e "$sanitize_diff_raw_z" >.tmp-2
     git diff .tmp-1 .tmp-2 && rm -f .tmp-1 .tmp-2
 }

--- git-2007-12-10_01/t/t3300-funny-names.sh    2007-12-09 10:23:48 +0100
+++ git-2007-12-10/t/t3300-funny-names.sh       2007-12-11 13:40:32 +0100
@@ -54,7 +54,7 @@ echo 'just space
 no-funny
 tabs   ," (dq) and spaces' >expected
 test_expect_success 'git ls-files -z with-funny' \
-       'git ls-files -z | tr \\0 \\012 >current &&
+       'git ls-files -z | tr \\000 \\012 >current &&
        git diff expected current'

 t1=`git write-tree`
@@ -83,11 +83,11 @@ test_expect_success 'git diff-tree with-
 echo 'A
 tabs   ," (dq) and spaces' >expected
 test_expect_success 'git diff-index -z with-funny' \
-       'git diff-index -z --name-status $t0 | tr \\0 \\012 >current &&
+       'git diff-index -z --name-status $t0 | tr \\000 \\012 >current &&
        git diff expected current'

 test_expect_success 'git diff-tree -z with-funny' \
-       'git diff-tree -z --name-status $t0 $t1 | tr \\0 \\012 >current &&
+       'git diff-tree -z --name-status $t0 $t1 | tr \\000 \\012 >current &&
        git diff expected current'

 cat > expected <<\EOF
--- git-2007-12-10_01/t/t4020-diff-external.sh  2007-12-09 10:23:48 +0100
+++ git-2007-12-10/t/t4020-diff-external.sh     2007-12-11 13:40:44 +0100
@@ -99,7 +99,7 @@ test_expect_success 'no diff with -diff'
        git diff | grep Binary
 '

-echo NULZbetweenZwords | tr Z '\0' > file
+echo NULZbetweenZwords | tr Z '\000' > file

 test_expect_success 'force diff with "diff"' '
        echo >.gitattributes "file diff" &&
--- git-2007-12-10_01/t/t4103-apply-binary.sh   2007-12-09 10:23:48 +0100
+++ git-2007-12-10/t/t4103-apply-binary.sh      2007-12-11 13:40:57 +0100
@@ -24,10 +24,10 @@ git update-index --add --remove file1 fi
 git-commit -m 'Initial Version' 2>/dev/null

 git-checkout -b binary
-tr 'x' '\0' <file1 >file3
+tr 'x' '\000' <file1 >file3
 cat file3 >file4
 git add file2
-tr '\0' 'v' <file3 >file1
+tr '\000' 'v' <file3 >file1
 rm -f file2
 git update-index --add --remove file1 file2 file3 file4
 git-commit -m 'Second Version'
--- git-2007-12-10_01/t/t4116-apply-reverse.sh  2007-12-09 10:23:48 +0100
+++ git-2007-12-10/t/t4116-apply-reverse.sh     2007-12-11 13:42:13 +0100
@@ -12,14 +12,14 @@ test_description='git apply in reverse
 test_expect_success setup '

        for i in a b c d e f g h i j k l m n; do echo $i; done >file1 &&
-       tr "[ijk]" '\''[\0\1\2]'\'' <file1 >file2 &&
+       tr "ijk" '\''\000\001\002'\'' <file1 >file2 &&

        git add file1 file2 &&
        git commit -m initial &&
        git tag initial &&

        for i in a b c g h i J K L m o n p q; do echo $i; done >file1 &&
-       tr "[mon]" '\''[\0\1\2]'\'' <file1 >file2 &&
+       tr "mon" '\''\000\001\002'\'' <file1 >file2 &&

        git commit -a -m second &&
        git tag second &&
--- git-2007-12-10_01/t/t4200-rerere.sh 2007-12-09 10:23:48 +0100
+++ git-2007-12-10/t/t4200-rerere.sh    2007-12-11 13:42:28 +0100
@@ -129,7 +129,7 @@ test_expect_success 'rerere kicked in' "
 test_expect_success 'rerere prefers first change' 'git diff a1 expect'

 rm $rr/postimage
-echo "$sha1    a1" | tr '\012' '\0' > .git/rr-cache/MERGE_RR
+echo "$sha1    a1" | tr '\012' '\000' > .git/rr-cache/MERGE_RR

 test_expect_success 'rerere clear' 'git rerere clear'

--- git-2007-12-10_01/t/t5300-pack-object.sh    2007-12-09 10:23:48 +0100
+++ git-2007-12-10/t/t5300-pack-object.sh       2007-12-11 13:42:46 +0100
@@ -15,7 +15,7 @@ test_expect_success \
     'rm -f .git/index*
      for i in a b c
      do
-            dd if=/dev/zero bs=4k count=1 | tr "\\0" $i >$i &&
+            dd if=/dev/zero bs=4k count=1 | tr "\\000" $i >$i &&
             git update-index --add $i || return 1
      done &&
      cat c >d && echo foo >>d && git update-index --add d &&
-->8--- git-tr.diff


-- 
H.Merijn Brand         Amsterdam Perl Mongers (http://amsterdam.pm.org/)
using & porting perl 5.6.2, 5.8.x, 5.10.x  on HP-UX 10.20, 11.00, 11.11,
& 11.23, SuSE 10.1 & 10.2, AIX 5.2, and Cygwin.       http://qa.perl.org
http://mirrors.develooper.com/hpux/            http://www.test-smoke.org
                        http://www.goldmark.org/jeff/stupid-disclaimers/

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Building git-1.5.3.7 on HP-UX 11.00
  2007-12-11 13:33                       ` H.Merijn Brand
@ 2007-12-11 13:53                         ` Johannes Sixt
  0 siblings, 0 replies; 27+ messages in thread
From: Johannes Sixt @ 2007-12-11 13:53 UTC (permalink / raw)
  To: H.Merijn Brand
  Cc: Junio C Hamano, Johannes Schindelin, Andreas Ericsson, git,
	Sam Vilain, arjen

H.Merijn Brand schrieb:
> I have put the output of
> 
> % make -i test | & perl -ne'm/^\*\s+ok\s+\d+:/ or print' > git-make-test.log
> 
> on http://www.xs4all.nl/~procura/git-make-test.log
> 
> which leaves only the following tests as failures:
> 
> t3901-i18n-patch.sh        t4201-shortlog.sh            t5100-mailinfo.sh
> t5405-send-pack-rewind.sh  t5500-fetch-pack.sh          t5505-remote.sh
> t5510-fetch.sh             t5515-fetch-merge-logic.sh   t5516-fetch-push.sh
> t5520-pull.sh              t5600-clone-fail-cleanup.sh  t5700-clone-reference.sh
> t5701-clone-local.sh       t6002-rev-list-bisect.sh     t6003-rev-list-topo-order.sh
> t6022-merge-rename.sh      t6026-merge-attr.sh          t6200-fmt-merge-msg.sh
> t7003-filter-branch.sh     t9300-fast-import.sh         t9301-fast-export.sh
> t9500-gitweb-standalone-no-errors.sh
> 
> How close am I to success?

There are a number of tests that pass only if you have iconv, most notably
t3901 and t5100. pull, clone, merge, filter-branch are shell scripts with
plenty of opportunities to stumble over incompatible/unportable constructs.

-- Hannes

^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2007-12-11 13:53 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-12-04 13:09 Building git-1.5.3.7 on HP-UX 11.00 H.Merijn Brand
2007-12-04 13:44 ` Johannes Schindelin
2007-12-04 14:03   ` H.Merijn Brand
2007-12-04 14:40     ` Johannes Schindelin
2007-12-04 15:01       ` H.Merijn Brand
2007-12-04 15:14         ` Andreas Ericsson
2007-12-04 15:22           ` H.Merijn Brand
2007-12-04 15:39             ` Johannes Schindelin
2007-12-04 15:56               ` H.Merijn Brand
2007-12-04 16:28                 ` Johannes Schindelin
2007-12-05 10:49                   ` H.Merijn Brand
2007-12-04 18:05                 ` Junio C Hamano
2007-12-04 22:25                   ` H.Merijn Brand
2007-12-04 22:46                     ` Johannes Schindelin
2007-12-05  8:08                       ` H.Merijn Brand
2007-12-04 22:45                   ` [PATCH] Do not rely on the exit status of "unset" for unset variables Johannes Schindelin
2007-12-05  8:01                     ` H.Merijn Brand
2007-12-10 14:51                   ` Building git-1.5.3.7 on HP-UX 11.00 H.Merijn Brand
2007-12-11  8:26                     ` Junio C Hamano
2007-12-11  8:54                       ` Shawn O. Pearce
2007-12-11 12:57                         ` H.Merijn Brand
2007-12-11  9:20                       ` Johannes Sixt
2007-12-11 10:42                         ` H.Merijn Brand
2007-12-11 11:01                           ` Johannes Sixt
2007-12-11 13:33                       ` H.Merijn Brand
2007-12-11 13:53                         ` Johannes Sixt
2007-12-04 15:11       ` H.Merijn Brand

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.