diff options
author | Erik Schnetter <schnetter@cct.lsu.edu> | 2010-12-06 14:42:45 -0600 |
---|---|---|
committer | Erik Schnetter <schnetter@cct.lsu.edu> | 2010-12-06 14:42:45 -0600 |
commit | 15a542847a134f51fdd94a9a1ea46cf883de8226 (patch) | |
tree | ae35964c8964167a756aa0aa52dfa50687a08d30 /Tools/CodeGen | |
parent | 3b7c2193b41cebf8ebb8ba3586928ace23ee720c (diff) |
Use C++ for all source files.
Add extern "C" to scheduled functions.
Diffstat (limited to 'Tools/CodeGen')
-rw-r--r-- | Tools/CodeGen/CactusBoundary.m | 2 | ||||
-rw-r--r-- | Tools/CodeGen/CodeGen.m | 2 | ||||
-rw-r--r-- | Tools/CodeGen/KrancThorn.m | 8 | ||||
-rw-r--r-- | Tools/CodeGen/Thorn.m | 4 |
4 files changed, 8 insertions, 8 deletions
diff --git a/Tools/CodeGen/CactusBoundary.m b/Tools/CodeGen/CactusBoundary.m index 3f3a110..0fff93b 100644 --- a/Tools/CodeGen/CactusBoundary.m +++ b/Tools/CodeGen/CactusBoundary.m @@ -169,7 +169,7 @@ GetSources[evolvedGroups_, groups_, implementation_, thornName_] := ExcisionGFs -> evolvedGFs }; - Return[{{Filename -> "Boundaries.c", + Return[{{Filename -> "Boundaries.cc", Contents -> CreateMoLBoundariesSource[boundarySpec]}}]]; End[]; diff --git a/Tools/CodeGen/CodeGen.m b/Tools/CodeGen/CodeGen.m index 4743f2d..1bcdfb9 100644 --- a/Tools/CodeGen/CodeGen.m +++ b/Tools/CodeGen/CodeGen.m @@ -395,7 +395,7 @@ defineSubroutineF[name_, args_, contents_] := (* This is a Cactus-callable function *) DefineCCTKFunction[name_, type_, contents_] := - DefineFunction[name, type, "CCTK_ARGUMENTS", + DefineFunction[name, "extern \"C\" " <> type, "CCTK_ARGUMENTS", { "DECLARE_CCTK_ARGUMENTS;\n", "DECLARE_CCTK_PARAMETERS;\n\n", diff --git a/Tools/CodeGen/KrancThorn.m b/Tools/CodeGen/KrancThorn.m index 28bf6e1..4861f31 100644 --- a/Tools/CodeGen/KrancThorn.m +++ b/Tools/CodeGen/KrancThorn.m @@ -228,7 +228,7 @@ CreateKrancThorn[groupsOrig_, parentDirectory_, thornName_, opts:OptionsPattern[ (* Makefile *) InfoMessage[Terse, "Creating make file"]; - make = CreateMakefile[Join[{"Startup.c", "RegisterMoL.c", "RegisterSymmetries.c"}, calcFilenames, + make = CreateMakefile[Join[{"Startup.cc", "RegisterMoL.cc", "RegisterSymmetries.cc"}, calcFilenames, Map[lookup[#, Filename] &, boundarySources]]]; (* Put all the above together and generate the Cactus thorn *) @@ -240,9 +240,9 @@ CreateKrancThorn[groupsOrig_, parentDirectory_, thornName_, opts:OptionsPattern[ Param -> param, Makefile -> make, Sources -> Join[{ - {Filename -> "Startup.c", Contents -> startup}, - {Filename -> "RegisterMoL.c", Contents -> molregister}, - {Filename -> "RegisterSymmetries.c", Contents -> symregister}, + {Filename -> "Startup.cc", Contents -> startup}, + {Filename -> "RegisterMoL.cc", Contents -> molregister}, + {Filename -> "RegisterSymmetries.cc", Contents -> symregister}, {Filename -> "Differencing.h", Contents -> diffHeader}}, MapThread[{Filename -> #1, Contents -> #2} &, {calcFilenames, calcSources}], boundarySources]}; diff --git a/Tools/CodeGen/Thorn.m b/Tools/CodeGen/Thorn.m index f09a669..7f9f8a5 100644 --- a/Tools/CodeGen/Thorn.m +++ b/Tools/CodeGen/Thorn.m @@ -1333,7 +1333,7 @@ CreateStartupFile[thornName_, bannerText_] := tmp = {whoWhen["C"], IncludeFile["cctk.h"], - DefineFunction[thornName <> "_Startup", "int", "void", + DefineFunction[thornName <> "_Startup", "extern \"C\" int", "void", {DefineVariable["banner", "const char *", Quote[bannerText]], "CCTK_RegisterBanner(banner);\n", "return 0;\n"}]}; @@ -1347,7 +1347,7 @@ CreateStartupFile[thornName_, bannerText_] := Thorn creation ------------------------------------------------------------------------ *) -(* source = {Filename -> "MoLRegister.c", Contents -> "#include ..."} *) +(* source = {Filename -> "MoLRegister.cc", Contents -> "#include ..."} *) (* thorn = {Name -> "ClassicADMMolEvolve", Directory -> "ClassicADM", Interface -> i, Schedule -> s, Param -> p, Makefile -> m, |