Compiling git

Ken Cunningham ken.cunningham.webuse at gmail.com
Sat Oct 28 04:42:16 UTC 2017


Ah, you want to do something special that the port  doesn't currently offer.

I read in the install document that doing a profile build of git is felt to add only a tiny amount of extra performance...

Anyway, it does not appear that macports git port offers this at present.

Unless you have some skills in what would be mildly tricky Portfile writing, you'd either need to ask someone to do it for you (put in a trac ticket with the request) 

-OR-

use macports to do some of the work, by running a configure-only phase, then run your profile component yourself from the portsrcdir, then finish off a modified build phase to include the profile phase and let macports finish it off for you.

This is tricky to do, and so I'm being purposefully a bit vague -- if what I described makes sense to you, it could probably work.

But I'm not sure there is a lot of point, given the minimal benefit mentioned...

K



On 2017-10-27, at 7:02 PM, Michael wrote:

>> Hello my friend,
>> 
>> The only way we would be able to help you is if you
>> 
>> sudo port -v install git
>> 
>> and then tell us what happens.
>> 
>> There are too many unknowns to realistically get you going with any other approach.
>> 
>> Best,
>> 
>> Ken
>> 
> 
> So I really don't think this is of any help:
> 
> keybounceMBP:git michael$ sudo port -v install git
> Password:
> Warning: port definitions are more than two weeks old, consider updating them by running 'port selfupdate'.
> --->  Computing dependencies for git.
> --->  Cleaning git
> --->  Removing work directory for git
> --->  Scanning binaries for linking errors
> --->  No broken files found.                             
> keybounceMBP:git michael$ 
> 
> Now, if I uninstall macports git, and then reinstall it:
> 
> Oh, wow:
> 
> keybounceMBP:git michael$ sudo port uninstall git
> Warning: port definitions are more than two weeks old, consider updating them by running 'port selfupdate'.
> The following versions of git are currently installed:
>  1) git @2.1.3_0+credential_osxkeychain+doc+pcre+perl5_16+python27
>  2) git @2.2.0_0+credential_osxkeychain+doc+pcre+perl5_16+python27
>  3) git @2.2.1_0+credential_osxkeychain+doc+pcre+perl5_16+python27
>  4) git @2.2.2_0+credential_osxkeychain+doc+pcre+perl5_16+python27
>  5) git @2.4.5_0+credential_osxkeychain+doc+pcre+perl5_16+python27
>  6) git @2.8.0_0+credential_osxkeychain+doc+pcre+perl5_22+python27
>  7) git @2.8.2_0+credential_osxkeychain+doc+pcre+perl5_22+python27
>  8) git @2.9.1_0+credential_osxkeychain+doc+pcre+perl5_22+python27
>  9) git @2.9.3_0+credential_osxkeychain+doc+pcre+perl5_22+python27
> 10) git @2.10.1_0+credential_osxkeychain+doc+pcre+perl5_24
> 11) git @2.10.2_0+credential_osxkeychain+doc+pcre+perl5_24
> 12) git @2.11.0_0+credential_osxkeychain+doc+pcre+perl5_24
> 13) git @2.12.0_0+credential_osxkeychain+doc+pcre+perl5_24
> 14) git @2.12.2_0+credential_osxkeychain+doc+pcre+perl5_24
> 15) git @2.13.0_0+credential_osxkeychain+doc+pcre+perl5_24
> 16) git @2.13.1_0+credential_osxkeychain+doc+pcre+perl5_24
> 17) git @2.13.3_0+credential_osxkeychain+doc+pcre+perl5_24
> 18) git @2.14.0_0+credential_osxkeychain+doc+pcre+perl5_24
> 19) git @2.14.1_0+credential_osxkeychain+doc+pcre+perl5_24
> 20) git @2.14.1_1+credential_osxkeychain+doc+pcre+perl5_24 (active)
> Enter option(s) [1-20/all]: 
> 
> Lets remove #20 :-)
> 
> Now an install ... oh, I was expecting a pre-built.
> 
> https://gist.github.com/keybounce/bc46da3308aa6b52221cd0458eb74f26
> 
> I cannot figure out how to get macports to do a profile build; as far as I can tell, that's not a supported option.
> Nor do I know how to apply a local patch to the source of git when using macports.
> 
>> 
>> On 2017-10-27, at 11:21 AM, Michael wrote:
>> 
>>> So I'm trying to compile git from sources.
>>> 
>>> The first thing I tried was a straight download of the raw git. No go. 
>>> The second thing I tried was using the macport patches (a makefile patch setting a linker flag, it looks like).
>>> 
>>> But, attempting to compile the profiling mode fails. There does not seem to be an option in macports for working with profiling.
>>> 
>>> Error line:
>>> clang: error: unknown argument: '-fprofile-generate=/Volumes/UserData/Users/michael/Documents/Programming/git'
>>> make[1]: *** [credential-store.o] Error 1
>>> make: *** [profile] Error 2
>>> 
>>> Full log:
>>> https://gist.github.com/keybounce/45621acfa8af7c96ef2668d73db7b329
>>> 
>>> Anything obvious to porters, or should I bounce this up to the git list?
>>> 
>>> ---
>>> Entertaining minecraft videos
>>> http://YouTube.com/keybounce
>>> 
>> 
> 
> ---
> Entertaining minecraft videos
> http://YouTube.com/keybounce
> 



More information about the macports-users mailing list