Re: Help needed for solving a few issues with building git

2017-07-05 Thread Kaartic Sivaraam
On Wed, 2017-07-05 at 01:30 +0530, Kaartic Sivaraam wrote:
> I tried pointing it to the installed location, it doesn't seem to be
> working. To elaborate a little on what I did,
> 
> * I installed the "libcurl4-openssl-dev" package b
> * I found that the 'include' directory to be present  at
> '/usr/include/x86_64-linux-gnu/curl'. I wasn't sure if
> '/usr/lib/x86_64-linux-gnu/' is the corresponding library
> directory. 
> * I took the common parent of both '/usr' and ran the
> following 
>   commands to build 'git'
> 
> $ make CURLDIR=/usr prefix=/custom/location
> $ make CURLDIR=/usr install prefix=/custom/location
> 
> * The build did succeed but I get an error that "'https'
> helper
> is not found"
> 
> Was anything I did, wrong?
> 
Ok, at last I was able to build git with https support using 'curl'
built from it's source. Anyways, thanks for the help, folks.

> >  This is probably because you are trying to run without installing?
> 
> Nope. I'm *installing* git not using the binary wrappers.
> 
> >  Ask the "git" you built what its --exec-path is, and run "ls" on
> >  that directory to see if you have git-remote-https installed?
> >  
> 
> Obviously, I don't see any 'git-remote-https' binary in the folder to
> which I built git.
> 
> >  Trying a freshly built Git binaries without installing is done by
> >  setting GIT_EXEC_PATH to point at bin-wrappers/ directory at the
> >  top-level of your build tree (that is how our tests can run on an
> >  otherwise virgin box with no Git installed).
> > 
> 


Re: Help needed for solving a few issues with building git

2017-07-04 Thread Kaartic Sivaraam
On Mon, 2017-07-03 at 11:13 -0700, Junio C Hamano wrote:
> Adding HTTPS support
> > > 
> > > I tried to add HTTP/HTTPS support to the custom built version
> > > for which
> > > AFAIK 'git' depends on 'curl'. I tried providing the location
> > > of the
> > > curl source in the Makefile using the following line after
> > > reading the
> > > instructions in the Makefile.
> > > 
> > > CURLDIR=/path/to/curl/source
> > 
>  Shouldn't this point at an installed location (iow, we do not build
>  curl from the source while building Git)?
>  
>  # Define CURLDIR=/foo/bar if your curl header and library files
>  are in
>  # /foo/bar/include and /foo/bar/lib directories.
I tried pointing it to the installed location, it doesn't seem to be
working. To elaborate a little on what I did,

* I installed the "libcurl4-openssl-dev" package b
* I found that the 'include' directory to be present  at
'/usr/include/x86_64-linux-gnu/curl'. I wasn't sure if
'/usr/lib/x86_64-linux-gnu/' is the corresponding library
directory. 
* I took the common parent of both '/usr' and ran the following 
  commands to build 'git'

$ make CURLDIR=/usr prefix=/custom/location
$ make CURLDIR=/usr install prefix=/custom/location

* The build did succeed but I get an error that "'https' helper
is not found"

Was anything I did, wrong?

>  This is probably because you are trying to run without installing?
Nope. I'm *installing* git not using the binary wrappers.

>  Ask the "git" you built what its --exec-path is, and run "ls" on
>  that directory to see if you have git-remote-https installed?
>  
Obviously, I don't see any 'git-remote-https' binary in the folder to
which I built git.

>  Trying a freshly built Git binaries without installing is done by
>  setting GIT_EXEC_PATH to point at bin-wrappers/ directory at the
>  top-level of your build tree (that is how our tests can run on an
>  otherwise virgin box with no Git installed).
> 


On Mon, 2017-07-03 at 13:11 -0700, Junio C Hamano wrote:
> Junio C Hamano  writes:
> 
> $ make NO_GETTEXT=1 NO_MSGFMT=1
> 
> may help.
> 
Ok, I seem to have crapped a little. It seems following the intructions
in the Makefile blindly led to this issue. Reading the instruction
"Define NO_GETTEXT if you don't want Git output to be translated.", I
defined NO_GETTEXT=1 in the Makefile itself! (as specified in the
previous thread)

I'm able to build git without localization support by using the
following command,

make NO_GETTEXT=1 prefix=/custom/location

> NO_GETTEXT is "My build environment may or may not be capable of
> doing the gettext things, but I choose not to use it in my build
> result" but NO_MSGFMT is simply "I do not have the msgfmt tool".
> 
> Having to specify both is rather unfortunate and we may want to
> streamline this.
I guess it's not required!

-- 
Kaartic


Re: Help needed for solving a few issues with building git

2017-07-03 Thread Junio C Hamano
Junio C Hamano  writes:

>> While trying to build (without the 'gettext' library that's required
>> for localization) I get the following error,
>>
>> Manifying 8 pod documents
>> SUBDIR templates
>> MSGFMT po/build/locale/pt_PT/LC_MESSAGES/git.mo
>> /bin/sh: 1: msgfmt: not found
>> Makefile:2179: recipe for target
>> 'po/build/locale/pt_PT/LC_MESSAGES/git.mo' failed
>> make: *** [po/build/locale/pt_PT/LC_MESSAGES/git.mo] Error 127
>>
>> What could I be missing?
>
> There is
>
> ifndef NO_GETTEXT
> all:: $(MOFILES)
> endif
>
> which attempts to avoid generating *.mo files, but that does not
> seem to be working.

The above comes from one of the Tcl things (probably gitk-git)
For now

$ make NO_GETTEXT=1 NO_MSGFMT=1

may help.

NO_GETTEXT is "My build environment may or may not be capable of
doing the gettext things, but I choose not to use it in my build
result" but NO_MSGFMT is simply "I do not have the msgfmt tool".

Having to specify both is rather unfortunate and we may want to
streamline this.


Re: Help needed for solving a few issues with building git

2017-07-03 Thread Junio C Hamano
Kaartic Sivaraam  writes:

> Hello all,
>
> Building without localization support
> 
> I tried to build git from source without localization support by adding
> the following line to the Makefile,
>
> NO_GETTEXT=1
>
> It doesn't seem to be working for reasons I'm unable to find. I used
> the following commands to build git.
>
> make prefix=$CUSTOM_BUILD_LOCATION
> make install prefix=$CUSTOM_BUILD_LOCATION
>
> While trying to build (without the 'gettext' library that's required
> for localization) I get the following error,
>
> Manifying 8 pod documents
> SUBDIR templates
> MSGFMT po/build/locale/pt_PT/LC_MESSAGES/git.mo
> /bin/sh: 1: msgfmt: not found
> Makefile:2179: recipe for target
> 'po/build/locale/pt_PT/LC_MESSAGES/git.mo' failed
> make: *** [po/build/locale/pt_PT/LC_MESSAGES/git.mo] Error 127
>
> What could I be missing?

There is

ifndef NO_GETTEXT
all:: $(MOFILES)
endif

which attempts to avoid generating *.mo files, but that does not
seem to be working.

>
>
> Adding HTTPS support
> 
> I tried to add HTTP/HTTPS support to the custom built version for which
> AFAIK 'git' depends on 'curl'. I tried providing the location of the
> curl source in the Makefile using the following line after reading the
> instructions in the Makefile.
>
> CURLDIR=/path/to/curl/source

Shouldn't this point at an installed location (iow, we do not build
curl from the source while building Git)?

# Define CURLDIR=/foo/bar if your curl header and library files are in
# /foo/bar/include and /foo/bar/lib directories.


> Even after doing this the custom built git errors with the following
> message when I try to use the 'git fetch' command,
>
> fatal: Unable to find remote helper for 'https'

This is probably because you are trying to run without installing?
Ask the "git" you built what its --exec-path is, and run "ls" on
that directory to see if you have git-remote-https installed?

Trying a freshly built Git binaries without installing is done by
setting GIT_EXEC_PATH to point at bin-wrappers/ directory at the
top-level of your build tree (that is how our tests can run on an
otherwise virgin box with no Git installed).


Re: Help needed for solving a few issues with building git

2017-07-03 Thread Torsten Bögershausen
On 2017-07-03 15:18, Kaartic Sivaraam wrote:
> Hello all,
> 
> Building without localization support
> 
> I tried to build git from source without localization support by adding
> the following line to the Makefile,
> 
> NO_GETTEXT=1
> 

May be

make NO_GETTEXT=yes


Help needed for solving a few issues with building git

2017-07-03 Thread Kaartic Sivaraam
Hello all,

Building without localization support

I tried to build git from source without localization support by adding
the following line to the Makefile,

NO_GETTEXT=1

It doesn't seem to be working for reasons I'm unable to find. I used
the following commands to build git.

make prefix=$CUSTOM_BUILD_LOCATION
make install prefix=$CUSTOM_BUILD_LOCATION

While trying to build (without the 'gettext' library that's required
for localization) I get the following error,

Manifying 8 pod documents
SUBDIR templates
MSGFMT po/build/locale/pt_PT/LC_MESSAGES/git.mo
/bin/sh: 1: msgfmt: not found
Makefile:2179: recipe for target
'po/build/locale/pt_PT/LC_MESSAGES/git.mo' failed
make: *** [po/build/locale/pt_PT/LC_MESSAGES/git.mo] Error 127

What could I be missing?


Adding HTTPS support

I tried to add HTTP/HTTPS support to the custom built version for which
AFAIK 'git' depends on 'curl'. I tried providing the location of the
curl source in the Makefile using the following line after reading the
instructions in the Makefile.

CURLDIR=/path/to/curl/source

Even after doing this the custom built git errors with the following
message when I try to use the 'git fetch' command,

fatal: Unable to find remote helper for 'https'

Any thing I'm missing?

Note: In case you were wondering, I was able to build 'git' after
installing the dependant package which I find useless as I don't
require any localization messages.

-- 
Kaartic