This is an automated email from the ASF dual-hosted git repository.

yuchanns pushed a commit to branch support-darwin
in repository https://gitbox.apache.org/repos/asf/opendal-go-services.git


The following commit(s) were added to refs/heads/support-darwin by this push:
     new 985be34  generate: support darwin
985be34 is described below

commit 985be340f5647b448af22ddfe14d1dd6e35ff200
Author: Hanchin Hsieh <[email protected]>
AuthorDate: Mon Nov 18 13:01:29 2024 +0800

    generate: support darwin
---
 internal/generate/generate.go | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/internal/generate/generate.go b/internal/generate/generate.go
index ed3ad8a..2e6d537 100644
--- a/internal/generate/generate.go
+++ b/internal/generate/generate.go
@@ -47,9 +47,17 @@ func genGoFile(build Build, service string) error {
                }
        }
 
+       var so string
+       if build.GOOS == "darwin" {
+               so = "dylib"
+       } else if build.GOOS == "linux" {
+               so = "so"
+       } else {
+               so = "dll"
+       }
        err = os.Rename(
-               fmt.Sprintf("%s/libopendal_c_%s_%s_%s/libopendal_c.%s.so.zst", 
workspace, version, service, build.Target, build.Target),
-               fmt.Sprintf("%s/%s/libopendal_c.%s.%s.so.zst", workspace, pkg, 
build.GOOS, build.GOARCH))
+               fmt.Sprintf("%s/libopendal_c_%s_%s_%s/libopendal_c.%s.%s.zst", 
workspace, version, service, build.Target, build.Target, so),
+               fmt.Sprintf("%s/%s/libopendal_c.%s.%s.%s.zst", workspace, pkg, 
build.GOOS, build.GOARCH, so))
        if err != nil {
                return err
        }
@@ -77,6 +85,7 @@ func genGoFile(build Build, service string) error {
                        "pkg":  pkg,
                        "os":   build.GOOS,
                        "arch": build.GOARCH,
+                       "so":   so,
                }); err != nil {
                        return fmt.Errorf("execute template: %s: %s", t.Name(), 
err)
                }

Reply via email to