plugin: make the plugin preload work again

License: MIT
Signed-off-by: 's avatarJakub Sztandera <kubuxu@protonmail.ch>
上级 b0679728
......@@ -14,7 +14,7 @@ import (
EOL
to_preload | while read -r name path num; do
echo "\tplugin$name \"$path\""
echo "plugin$name \"$path\""
done | sort -u
cat <<EOL
......@@ -24,7 +24,7 @@ var preloadPlugins = []plugin.Plugin{
EOL
to_preload | while read -r name path num; do
echo "\tplugin$name.Plugins[$num],"
echo "plugin$name.Plugins[$num],"
done
......
......@@ -3,4 +3,4 @@
#
# name go-path number of the sub-plugin
#ipldgit github.com/ipfs/go-ipfs/plugin/plugins/git 0
ipldgit github.com/ipfs/go-ipfs/plugin/plugins/git 0
......@@ -2,9 +2,16 @@ include mk/header.mk
$(d)_plugins:=$(d)/git
$(d)_plugins_so:=$(addsuffix .so,$($(d)_plugins))
$(d)_plugins_main:=$(addsuffix /main/main.go,$($(d)_plugins))
$($(d)_plugins_main): d:=$(d)
$($(d)_plugins_main):
$(d)/gen_main.sh "$(dir $@).." "$(call go-pkg-name,$(dir $@)/..)"
$($(d)_plugins_so): %.so : %/main/main.go
$($(d)_plugins_so): $$(DEPS_GO) ALWAYS
go build -buildmode=plugin -i -pkgdir "$$GOPATH/pkg/linux_amd64_dynlink" $(go-flags-with-tags) -o "$@" "$(call go-pkg-name,$(basename $@))"
go build -buildmode=plugin -i -pkgdir "$(GOPATH)/pkg/linux_amd64_dynlink" $(go-flags-with-tags) -o "$@" "$(call go-pkg-name,$(basename $@))/main"
chmod +x "$@"
CLEAN += $($(d)_plugins_so)
......
#!/bin/bash
dir=${1:?first paramater with dir to work in is required}
pkg=${2:?second parameter with full name of the package is required}
main_pkg="$dir/main"
shortpkg="uniquepkgname"
mkdir -p "$main_pkg"
cat > "$main_pkg/main.go" <<EOL
package main
import (
$shortpkg "$pkg"
)
var Plugins = $shortpkg.Plugins
EOL
package main
package git
import (
"compress/zlib"
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论