Re: Building DLLs out of C++ code
Bram Moolenaar <[email protected]> Mon, 30 Jan 2006 16:59:10 +0100
| Newsgroups | gmane.comp.tools.aap.devel |
|---|---|
| Message-ID | <[email protected]> |
Adriaan de Groot wrote:
> On Monday 30 January 2006 13:50, Adriaan de Groot wrote:
> > I have a tiny recipe and a tiny fragment of C++ code (both attached) =
from
> > which I would like to build a shared library (DLL). Running A-A-P (CV=
S
> > HEAD) on this generates a Python recursion-depth exception and the bu=
ild
>=20
> default.aap, near line 537, seems to always take the DEFER_ACTION_NAME
> branch, so it goes in circles in cxx_builddll. Simply removing the if
> and always going to :sys Works For Me (tm), but I doubt it's the right
> thing.
Aha, somehow DEFER_ACTION_NAME gets set to 'cxx_builddll' and is never
reset, thus it loops there.
We should at least check for this value to avoid the recursive loop.
I'm not sure there isn't something else wrong, but this fixes the
problem without causing new trouble.
--- default.aap 29 Nov 2005 10:22:07 -0000 1.65
+++ default.aap 30 Jan 2006 15:43:36 -0000
@@ -532,7 +532,7 @@
CXXSHLINKFLAGS ?=3D -shared
:python
define_action("cxx_builddll", 1, """
- @if DEFER_ACTION_NAME:
+ @if DEFER_ACTION_NAME and DEFER_ACTION_NAME !=3D 'cxx_bu=
ilddll':
:do $DEFER_ACTION_NAME {target =3D $target} $source
@else:
:sys $CXXSHLINK $LDFLAGS $CXXSHLINKFLAGS -o $target =
$source
I'll do the same for the other actions.
--=20
hundred-and-one symptoms of being an internet addict:
202. You're amazed to find out Spam is a food.
/// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net \=
\\
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ =
\\\
\\\ download, build and distribute -- http://www.A-A-P.org =
///
\\\ help me help AIDS victims -- http://www.ICCF.nl /=
//
-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log fi=
les
for problems? Stop! Download the new AJAX search engine that makes
searching your log files as easy as surfing the web. DOWNLOAD SPLUNK!
http://sel.as-us.falkag.net/sel?cmd=3Dlnk&kid=3D103432&bid=3D230486&dat=3D=
121642