Skip to content

Commit e85253c

Browse files
committed
make cgo dependencies venodr-able
1 parent af1dea6 commit e85253c

File tree

5 files changed

+41
-0
lines changed

5 files changed

+41
-0
lines changed

libde265/extra/vendorkeep.go

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
//go:build vendorkeep
2+
// +build vendorkeep
3+
4+
package cgowrapper

libde265/include_cgo.go

+25
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
//go:build vendorkeep
2+
// +build vendorkeep
3+
4+
package libde265
5+
6+
// https://github.com/golang/go/issues/26366
7+
8+
// This file exists purely to prevent the golang toolchain from stripping
9+
// away the c source directories and files when `go mod vendor` is used
10+
// to populate a `vendor/` directory of a project depending on `goheif`.
11+
//
12+
// How it works:
13+
// - every directory which only includes c/c++ source files receives a
14+
// vendorkeep.go file.
15+
// - every directory we want to preserve is included here as a _ import.
16+
// - every dummy go file is given a build tag to exclude it from the regular
17+
// build.
18+
19+
import (
20+
// Prevent go tooling from stripping out the c source files.
21+
_ "github.com/jdeng/goheif/libde265/extra"
22+
_ "github.com/jdeng/goheif/libde265/libde265"
23+
_ "github.com/jdeng/goheif/libde265/libde265/arm"
24+
_ "github.com/jdeng/goheif/libde265/libde265/x86"
25+
)

libde265/libde265/arm/vendorkeep.go

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
//go:build vendorkeep
2+
// +build vendorkeep
3+
4+
package cgowrapper

libde265/libde265/vendorkeep.go

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
//go:build vendorkeep
2+
// +build vendorkeep
3+
4+
package cgowrapper

libde265/libde265/x86/vendorkeep.go

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
//go:build vendorkeep
2+
// +build vendorkeep
3+
4+
package cgowrapper

0 commit comments

Comments
 (0)