From: Boaz Harrosh <bharrosh@panasas.com>
To: cte <cestreich@gmail.com>
Cc: git@vger.kernel.org
Subject: Re: linking libgit.a in C++ projects
Date: Thu, 31 Jul 2008 16:04:50 +0300 [thread overview]
Message-ID: <4891B872.3040707@panasas.com> (raw)
In-Reply-To: <ac9f0f090807310253v1d97e2a1n4ddf34aa4fdc79f0@mail.gmail.com>
cte wrote:
> I'm writing a git gui for OS X using cocoa/Objective-C++, and rather
> than being lame and parsing the output the various git commands, I'm
> using libgit.a to provide all of the needed functionality for my app.
> However, the git source uses a few reserved C++ keywords; namely
> 'typename', and 'new'. So, I was wondering if it is worth submitting a
> patch to fix these issues... I'm asking because I'm new to the whole
> open source thing, and I don't want to get yelled at by the git
> maintainers for submitting stupid patches that no one in their right
> mind would accept :)
>
> Thanks!
> --
The practice of avoiding C++ keywords from public C headers is
very welcome. You should send a patch and try to push it.
That said the problem can be easily avoided.
Produce a C file and header that defines some stable API to your
GUI application, that does not expose any git internal headers.
Then compile that, say git_api.c, with C compiler in Makefile
and extern "C" link that file to your C++ application. This will
completely insulate you from any git code.
This could also solve the other problem of API changing, only
the git_api.c need change, your outer GUI code stays the same.
And if you do all that maybe you can submit it for inclusion
as a: somewhat stable high-level library, for developers.
Ala git-dev
Cheers
Boaz
next prev parent reply other threads:[~2008-07-31 13:06 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-07-31 9:53 linking libgit.a in C++ projects cte
2008-07-31 10:57 ` Dmitry Potapov
2008-07-31 11:10 ` cte
2008-07-31 11:16 ` Pedro Melo
2008-07-31 11:20 ` Petr Baudis
2008-07-31 11:20 ` cte
2008-07-31 18:27 ` Sverre Rabbelier
2008-07-31 21:44 ` cte
2008-07-31 21:51 ` Sverre Rabbelier
2008-07-31 21:58 ` Shawn O. Pearce
2008-07-31 22:10 ` Sverre Rabbelier
2008-08-04 14:52 ` Steve Frécinaux
2008-08-01 1:17 ` cte
2008-08-01 1:54 ` Linus Torvalds
2008-08-01 2:12 ` cte
2008-07-31 22:23 ` Dmitry Potapov
2008-07-31 11:14 ` Petr Baudis
2008-07-31 11:18 ` cte
2008-07-31 12:34 ` Dmitry Potapov
2008-07-31 13:04 ` Boaz Harrosh [this message]
2008-07-31 14:44 ` Dmitry Potapov
2008-07-31 18:37 ` Alex Riesen
2008-07-31 18:55 ` Avery Pennarun
2008-08-03 20:12 ` Alex Riesen
2008-08-04 8:57 ` Boaz Harrosh
2008-07-31 21:31 ` cte
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4891B872.3040707@panasas.com \
--to=bharrosh@panasas.com \
--cc=cestreich@gmail.com \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.