mirror of
https://github.com/mudler/LocalAI.git
synced 2024-12-25 07:11:03 +00:00
a00e9a82ae
Signed-off-by: Loric <117862619+LoricOSC@users.noreply.github.com>
71 lines
2.0 KiB
Makefile
71 lines
2.0 KiB
Makefile
# Basic platform detection
|
|
HOST_SYSTEM = $(shell uname | cut -f 1 -d_)
|
|
SYSTEM ?= $(HOST_SYSTEM)
|
|
|
|
TAG_LIB_GRPC?=v1.59.0
|
|
GIT_REPO_LIB_GRPC?=https://github.com/grpc/grpc.git
|
|
GIT_CLONE_DEPTH?=1
|
|
|
|
INSTALLED_PACKAGES=installed_packages
|
|
GRPC_REPO=grpc_repo
|
|
GRPC_BUILD=grpc_build
|
|
|
|
export CMAKE_ARGS?=
|
|
CMAKE_ARGS+=-DCMAKE_BUILD_TYPE=Release
|
|
CMAKE_ARGS+=-DgRPC_INSTALL=ON
|
|
CMAKE_ARGS+=-DEXECUTABLE_OUTPUT_PATH=../$(INSTALLED_PACKAGES)/grpc/bin
|
|
CMAKE_ARGS+=-DLIBRARY_OUTPUT_PATH=../$(INSTALLED_PACKAGES)/grpc/lib
|
|
CMAKE_ARGS+=-DgRPC_BUILD_TESTS=OFF
|
|
CMAKE_ARGS+=-DgRPC_BUILD_CSHARP_EXT=OFF
|
|
CMAKE_ARGS+=-DgRPC_BUILD_GRPC_CPP_PLUGIN=ON
|
|
CMAKE_ARGS+=-DgRPC_BUILD_GRPC_CSHARP_PLUGIN=OFF
|
|
CMAKE_ARGS+=-DgRPC_BUILD_GRPC_NODE_PLUGIN=OFF
|
|
CMAKE_ARGS+=-DgRPC_BUILD_GRPC_OBJECTIVE_C_PLUGIN=OFF
|
|
CMAKE_ARGS+=-DgRPC_BUILD_GRPC_PHP_PLUGIN=OFF
|
|
CMAKE_ARGS+=-DgRPC_BUILD_GRPC_PYTHON_PLUGIN=ON
|
|
CMAKE_ARGS+=-DgRPC_BUILD_GRPC_RUBY_PLUGIN=OFF
|
|
CMAKE_ARGS+=-Dprotobuf_WITH_ZLIB=ON
|
|
CMAKE_ARGS+=-DRE2_BUILD_TESTING=OFF
|
|
CMAKE_ARGS+=-DCMAKE_INSTALL_PREFIX=../$(INSTALLED_PACKAGES)
|
|
|
|
# windows need to set OPENSSL_NO_ASM. Results in slower crypto performance but doesn't build otherwise.
|
|
# May be resolvable, but for now its set. More info: https://stackoverflow.com/a/75240504/480673
|
|
ifeq ($(SYSTEM),MSYS)
|
|
CMAKE_ARGS+=-DOPENSSL_NO_ASM=ON
|
|
endif
|
|
ifeq ($(SYSTEM),MINGW64)
|
|
CMAKE_ARGS+=-DOPENSSL_NO_ASM=ON
|
|
endif
|
|
ifeq ($(SYSTEM),MINGW32)
|
|
CMAKE_ARGS+=-DOPENSSL_NO_ASM=ON
|
|
endif
|
|
ifeq ($(SYSTEM),CYGWIN)
|
|
CMAKE_ARGS+=-DOPENSSL_NO_ASM=ON
|
|
endif
|
|
|
|
$(INSTALLED_PACKAGES): grpc_build
|
|
|
|
$(GRPC_REPO):
|
|
mkdir -p $(GRPC_REPO)/grpc
|
|
cd $(GRPC_REPO)/grpc && \
|
|
git init && \
|
|
git remote add origin $(GIT_REPO_LIB_GRPC) && \
|
|
git fetch origin && \
|
|
git checkout $(TAG_LIB_GRPC) && \
|
|
git submodule update --init --recursive --depth 1
|
|
|
|
$(GRPC_BUILD): $(GRPC_REPO)
|
|
mkdir -p $(GRPC_BUILD)
|
|
cd $(GRPC_BUILD) && cmake $(CMAKE_ARGS) ../$(GRPC_REPO)/grpc && cmake --build . && cmake --build . --target install
|
|
|
|
build: $(INSTALLED_PACKAGES)
|
|
|
|
rebuild:
|
|
rm -rf grpc_build
|
|
$(MAKE) grpc_build
|
|
|
|
clean:
|
|
rm -rf grpc_build
|
|
rm -rf grpc_repo
|
|
rm -rf installed_packages
|