@cryptotaxi247 / kubo / commits / c569b0be8

plugin: make the plugin preload work again

License: MIT Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>

Jakub Sztandera committed Jul 13, 2017 at 21:14 UTC c569b0be8ae5bcd85d915f8922cd7c4a489aabdf
6 files changed +31 -5
plugin/loader/preload.sh
+2 -2
@@ -14,7 +14,7 @@ import (
14 EOL
15
16 to_preload | while read -r name path num; do
17 - echo "\tplugin$name \"$path\""
17 + echo "plugin$name \"$path\""
18 done | sort -u
19
20 cat <<EOL
@@ -24,7 +24,7 @@ var preloadPlugins = []plugin.Plugin{
24 EOL
25
26 to_preload | while read -r name path num; do
27 - echo "\tplugin$name.Plugins[$num],"
27 + echo "plugin$name.Plugins[$num],"
28 done
29
30
plugin/loader/preload_list
+1 -1
@@ -3,4 +3,4 @@
3 #
4 # name go-path number of the sub-plugin
5
6 -#ipldgit github.com/ipfs/go-ipfs/plugin/plugins/git 0
6 +ipldgit github.com/ipfs/go-ipfs/plugin/plugins/git 0
plugin/plugins/.gitignore
+1
@@ -1 +1,2 @@
1 *.so
2 +*/main
plugin/plugins/Rules.mk
+8 -1
@@ -2,9 +2,16 @@ include mk/header.mk
2
3 $(d)_plugins:=$(d)/git
4 $(d)_plugins_so:=$(addsuffix .so,$($(d)_plugins))
5 +$(d)_plugins_main:=$(addsuffix /main/main.go,$($(d)_plugins))
6
7 +
8 +$($(d)_plugins_main): d:=$(d)
9 +$($(d)_plugins_main):
10 + $(d)/gen_main.sh "$(dir $@).." "$(call go-pkg-name,$(dir $@)/..)"
11 +
12 +$($(d)_plugins_so): %.so : %/main/main.go
13 $($(d)_plugins_so): $$(DEPS_GO) ALWAYS
7 - go build -buildmode=plugin -i -pkgdir "$$GOPATH/pkg/linux_amd64_dynlink" $(go-flags-with-tags) -o "$@" "$(call go-pkg-name,$(basename $@))"
14 + go build -buildmode=plugin -i -pkgdir "$(GOPATH)/pkg/linux_amd64_dynlink" $(go-flags-with-tags) -o "$@" "$(call go-pkg-name,$(basename $@))/main"
15 chmod +x "$@"
16
17 CLEAN += $($(d)_plugins_so)
plugin/plugins/gen_main.sh new
+18
@@ -0,0 +1,18 @@
1 +#!/bin/bash
2 +
3 +dir=${1:?first paramater with dir to work in is required}
4 +pkg=${2:?second parameter with full name of the package is required}
5 +main_pkg="$dir/main"
6 +
7 +shortpkg="uniquepkgname"
8 +
9 +mkdir -p "$main_pkg"
10 +
11 +cat > "$main_pkg/main.go" <<EOL
12 +package main
13 +import (
14 + $shortpkg "$pkg"
15 +)
16 +
17 +var Plugins = $shortpkg.Plugins
18 +EOL
plugin/plugins/git/git.go
+1 -1
@@ -1,4 +1,4 @@
1 -package main
1 +package git
2
3 import (
4 "compress/zlib"