Skip to content

Add Git 1.8.2 easyconfig#210

Merged
boegel merged 10 commits intoeasybuilders:developfrom
gribozavr:git_1_8_2
Apr 9, 2013
Merged

Add Git 1.8.2 easyconfig#210
boegel merged 10 commits intoeasybuilders:developfrom
gribozavr:git_1_8_2

Conversation

@gribozavr
Copy link
Copy Markdown
Contributor

No description provided.

@gribozavr
Copy link
Copy Markdown
Contributor Author

@boegel Ping. This should be a very simple PR.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this only for v1.8.2?
The git v1.7.12 easyconfigs have

configopts = "--enable-pthreads='-lpthread'"

instead. This doesn't work with git v1.8.2?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It does. The workaround you mention is used only in git-1.7.12-ictce-4.0.6.eb, and I was using git-1.7.12-goolf-1.4.10.eb as a base.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So, why is it not there in the other easyconfigs? Is it because we don't notice the issue on our end?

What issue does this resolve, exactly?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't know why it is not needed in other easyconfigs. The issue is described in the comment. configure knows about LIBS and will think that it does not need to do anything extra to get pthread linked in. But configure will not pass LIBS to Makefile, and linking will fail.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@gribozavr: Did you actually run into the issue yourself? Do you still have the exact error message that occurs? That (and Google) might help us (and others) in the future.

It's probably need it for the others as well, my guess is that this only fails on certain systems or with certain OS packages installed.

The commit (by myself) that introduced it is 2fec9f7, but that doesn't give much information as to why it's there exactly.

@gribozavr: Please add that line to the other git easyconfigs as well, to keep them consistent.

Then this is ready to merge in...

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I did run into the issue. A developer on IRC confirmed that he sees an issue here.

I have sent an email to the mailing list, but did not get a reply yet:
http://marc.info/?l=git&m=136500220703901&w=2

Here's the error text for the record:

    AR libgit.a
    LINK git-credential-store
    LINK git-http-backend
    LINK git-fast-import
    LINK git-daemon
libgit.a(run-command.o): In function `run_thread':
run-command.c:(.text+0x11e): undefined reference to `pthread_setspecific'
libgit.a(run-command.o): In function `die_async':
run-command.c:(.text+0x166): undefined reference to `pthread_getspecific'
libgit.a(run-command.o): In function `start_async':
run-command.c:(.text+0x109f): undefined reference to `pthread_create'
run-command.c:(.text+0x1103): undefined reference to `pthread_key_create'
libgit.a(run-command.o): In function `finish_async':
run-command.c:(.text+0x1267): undefined reference to `pthread_join'
collect2: error: ld returned 1 exit status
make: *** [git-credential-store] Error 1
make: *** Waiting for unfinished jobs....

I added this change to other easyconfigs.

@gribozavr
Copy link
Copy Markdown
Contributor Author

@boegel Consistent fix pushed.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi there,

great thing to push again the git easyconfig, because some repairs were indeed pending over here (mea culpa):

  • notably, the current build does not properly support all 3 transport mechanisms of git,
    we need to clarify its dependencies to get it done right (cURL and what else, need to investigate).

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like it is cURL and expat. Added them as dependencies.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@fgeorgatos: Is there an easy way to check whether a git build supports all 3 transport mechanism, i.e. something we can check via a sanity check command? Please follow-up on this in another pull request if so.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On Tue, Apr 9, 2013 at 9:59 PM, Kenneth Hoste [email protected]:

@fgeorgatos https://github.com/fgeorgatos: Is there an easy way to
check whether a git build supports all 3 transport mechanism, i.e.
something we can check via a sanity check command? Please follow-up on this
in another pull request if so.

Not that I know of, but I agree it's desirable if there is one...

ps. will check what is missing in this one as part of a quality control
before v1.3.1 release... do we have ETA?

@gribozavr
Copy link
Copy Markdown
Contributor Author

@fgeorgatos Added more git transports that use cURL and expat.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's add dependencies here, too!

Also, I suggest you put your name in the header.
More generally, I like the idea of having 2 authors per easyconfig: it may help down the road, for communications redundancy...

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@fgeorgatos I don't have Intel Compilers, so I'll leave adding additional dependencies to someone who can test the result. Git 1.8.2 easyconfig is tested.

@boegel
Copy link
Copy Markdown
Member

boegel commented Apr 9, 2013

I was going to merge this, and then you guys started fiddling with it again... :p

Please make sure all git easyconfigs are in sync, and tested.

@gribozavr
Copy link
Copy Markdown
Contributor Author

@boegel I don't have Intel compilers, so I'd ask to merge this PR in its current state. It makes sense: all of 1.7.x have minimal dependencies, and 1.8.x are compiled with everything.

Actually, I don't see a point in updating git 1.7.x easyconfigs. It makes more sense to package git 1.8.2 for Intel compilers.

@boegel
Copy link
Copy Markdown
Member

boegel commented Apr 9, 2013

@gribozavr: Tests work out great on my end, so merging it in.

boegel added a commit that referenced this pull request Apr 9, 2013
@boegel boegel merged commit 1fe250e into easybuilders:develop Apr 9, 2013
@gribozavr
Copy link
Copy Markdown
Contributor Author

I used ldd to check that binaries require curl and expat. But a functional test would be better.

@gribozavr gribozavr deleted the git_1_8_2 branch April 9, 2013 20:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants