Skip to content

Commit 36acb54

Browse files
committed
Auto generate the native base
1 parent fc344ea commit 36acb54

File tree

4 files changed

+30
-140
lines changed

4 files changed

+30
-140
lines changed

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
/src/*
1212
!/src/functions/copy.cc
1313
!/src/wrapper.cc
14-
!/src/nodegit.cc
1514

1615
/include/*
1716
!/include/functions/copy.h

generate/index.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,9 @@ var headerTemplate = ejs.compile(
1919
var bindingTemplate = ejs.compile(
2020
"" + fs.readFileSync(local("templates/binding.gyp.ejs")), {});
2121

22+
var nodegitSourceTemplate = ejs.compile(
23+
"" + fs.readFileSync(local("templates/nodegit.cc.ejs")), {});
24+
2225
var enabled = idefs.filter(function(idef) {
2326
idef.name = path.basename(idef.filename, ".h");
2427
return !idef.ignore;
@@ -34,4 +37,8 @@ enabled.forEach(function(idef) {
3437
fs.writeFileSync(local("../binding.gyp"), bindingTemplate({
3538
idefs: idefs
3639
}));
40+
41+
fs.writeFileSync(local("../src/nodegit.cc"), nodegitSourceTemplate({
42+
idefs: idefs
43+
}));
3744
});

generate/templates/nodegit.cc.ejs

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
#include <v8.h>
2+
#include <node.h>
3+
4+
#include "git2.h"
5+
6+
#include "../include/wrapper.h"
7+
#include "../include/functions/copy.h"
8+
9+
<% idefs.forEach(function(idef) { -%>
10+
#include "../include/<%- idef.filename %>"
11+
<% }); -%>
12+
13+
extern "C" void init(Handle<v8::Object> target) {
14+
NanScope();
15+
16+
Wrapper::Initialize(target);
17+
18+
<% idefs.forEach(function(idef) { -%>
19+
<%- idef.cppClassName %>::Initialize(target);
20+
<% }); -%>
21+
}
22+
23+
NODE_MODULE(nodegit, init)

src/nodegit.cc

Lines changed: 0 additions & 139 deletions
This file was deleted.

0 commit comments

Comments
 (0)