@@ -8,6 +8,11 @@ ONEAPI_VARS?=/opt/intel/oneapi/setvars.sh
88# keep standard at C11 and C++11
99CXXFLAGS = -I. -I$(INCLUDE_PATH ) /../../../../sources/stablediffusion-ggml.cpp/thirdparty -I$(INCLUDE_PATH ) /../../../../sources/stablediffusion-ggml.cpp/ggml/include -I$(INCLUDE_PATH ) /../../../../sources/stablediffusion-ggml.cpp -O3 -DNDEBUG -std=c++17 -fPIC
1010
11+ GOCMD? =go
12+ CGO_LDFLAGS? =
13+ GO_TAGS? =
14+ LD_FLAGS? =
15+
1116# Disable Shared libs as we are linking on static gRPC and we can't mix shared and static
1217CMAKE_ARGS+=-DBUILD_SHARED_LIBS =OFF
1318
@@ -43,6 +48,8 @@ ifeq ($(BUILD_TYPE),sycl_f16)
4348 -DSD_SYCL=ON \
4449 -DGGML_SYCL_F16=ON \
4550 -DCMAKE_CXX_FLAGS="-fsycl"
51+ CC=icx
52+ CXX=icpx
4653endif
4754
4855ifeq ($(BUILD_TYPE ) ,sycl_f32)
@@ -51,6 +58,8 @@ ifeq ($(BUILD_TYPE),sycl_f32)
5158 -DCMAKE_CXX_COMPILER=icpx \
5259 -DSD_SYCL=ON \
5360 -DCMAKE_CXX_FLAGS="-fsycl"
61+ CC=icx
62+ CXX=icpx
5463endif
5564
5665# warnings
@@ -95,11 +104,25 @@ endif
95104 $(MAKE) $(COMBINED_LIB)
96105
97106gosd.o :
107+ ifneq (,$(findstring sycl,$(BUILD_TYPE ) ) )
108+ +bash -c "source $(ONEAPI_VARS)
109+ endif
98110 $(CXX) $(CXXFLAGS) gosd.cpp -o gosd.o -c
99111
100112libsd.a : gosd.o
101113 cp $(INCLUDE_PATH ) /build/libstable-diffusion.a ./libsd.a
102114 $(AR ) rcs libsd.a gosd.o
103115
116+ stablediffusion-ggml :
117+ ifneq (,$(findstring sycl,$(BUILD_TYPE ) ) )
118+ +bash -c "source $(ONEAPI_VARS)
119+ endif
120+ CGO_LDFLAGS="$(CGO_LDFLAGS)" C_INCLUDE_PATH="$(INCLUDE_PATH)" LIBRARY_PATH="$(LIBRARY_PATH)" \
121+ CC=$(CC) CXX=$(CXX) \
122+ $(GOCMD) build -ldflags "$(LD_FLAGS)" -tags "$(GO_TAGS)" -o backend-assets/grpc/stablediffusion-ggml ./backend/go/image/stablediffusion-ggml/
123+ ifneq ($(UPX ) ,)
124+ $(UPX) backend-assets/grpc/stablediffusion-ggml
125+ endif
126+
104127clean :
105128 rm -rf gosd.o libsd.a build $(COMBINED_LIB )
0 commit comments