@@ -33,7 +33,7 @@ DEB_REVISION ?= 0
3333RPM_VERSION ?= $(DEB_VERSION )
3434RPM_REVISION ?= 0
3535
36- # used by hack/jenkins/release_build_and_upload.sh and KVM_BUILD_IMAGE , see also BUILD_IMAGE below
36+ # used by hack/jenkins/release_build_and_upload.sh, see also BUILD_IMAGE below
3737# update this only by running `make update-golang-version`
3838GO_VERSION ?= 1.24.6
3939# set GOTOOLCHAIN to GO_VERSION to override any toolchain version specified in
@@ -42,10 +42,6 @@ export GOTOOLCHAIN := go$(GO_VERSION)
4242# update this only by running `make update-golang-version`
4343GO_K8S_VERSION_PREFIX ?= v1.34.0
4444
45- # replace "x.y.0" => "x.y". kube-cross and go.dev/dl use different formats for x.y.0 go versions
46- KVM_GO_VERSION ?= $(GO_VERSION:.0= )
47-
48-
4945INSTALL_SIZE ?= $(shell du out/minikube-windows-amd64.exe | cut -f1)
5046BUILDROOT_BRANCH ?= 2025.02
5147# the go version on the line below is for the ISO
@@ -69,9 +65,6 @@ BUILD_IMAGE ?= registry.k8s.io/build-image/kube-cross:$(GO_K8S_VERSION_PREFIX)-
6965
7066ISO_BUILD_IMAGE ?= $(REGISTRY ) /buildroot-image
7167
72- KVM_BUILD_IMAGE_AMD64 ?= $(REGISTRY ) /kvm-build-image_amd64:$(KVM_GO_VERSION )
73- KVM_BUILD_IMAGE_ARM64 ?= $(REGISTRY ) /kvm-build-image_arm64:$(KVM_GO_VERSION )
74-
7568ISO_BUCKET ?= minikube/iso
7669
7770MINIKUBE_VERSION ?= $(ISO_VERSION )
@@ -147,7 +140,11 @@ MARKDOWNLINT ?= markdownlint
147140
148141MINIKUBE_MARKDOWN_FILES := README.md CONTRIBUTING.md CHANGELOG.md
149142
150- MINIKUBE_BUILD_TAGS :=
143+ # The `libvirt_dlopen` build tag is used only linux to avoid linking with
144+ # libvirt shared library. This is not documnted but can be found in the source.
145+ # https://gitlab.com/libvirt/libvirt-go-module/-/blob/f7cdeba9979dd248582901d2aaf7ab1f2d27cbe0/domain.go#L30
146+ MINIKUBE_BUILD_TAGS := libvirt_dlopen
147+
151148MINIKUBE_INTEGRATION_BUILD_TAGS := integration $(MINIKUBE_BUILD_TAGS )
152149
153150CMD_SOURCE_DIRS = cmd pkg deploy/addons translations
@@ -160,9 +157,6 @@ ADDON_FILES = $(shell find "deploy/addons" -type f | grep -v "\.go")
160157TRANSLATION_FILES = $(shell find "translations" -type f | grep -v "\.go")
161158ASSET_FILES = $(ADDON_FILES ) $(TRANSLATION_FILES )
162159
163- # kvm2 ldflags
164- KVM2_LDFLAGS := -X k8s.io/minikube/pkg/drivers/kvm.version=$(VERSION ) -X k8s.io/minikube/pkg/drivers/kvm.gitCommitID=$(COMMIT )
165-
166160# hyperkit ldflags
167161HYPERKIT_LDFLAGS := -X k8s.io/minikube/pkg/drivers/hyperkit.version=$(VERSION ) -X k8s.io/minikube/pkg/drivers/hyperkit.gitCommitID=$(COMMIT )
168162
@@ -362,18 +356,11 @@ all: cross drivers e2e-cross cross-tars exotic retro out/gvisor-addon ## Build a
362356
363357# After https://github.com/kubernetes/minikube/issues/19959 is fixed kvm2-arm64 can be added back
364358.PHONY : drivers
365- drivers : # # Build Hyperkit and KVM2 drivers
366- drivers : docker-machine-driver-hyperkit \
367- docker-machine-driver-kvm2 \
368- out/docker-machine-driver-kvm2-amd64
369-
359+ drivers : docker-machine-driver-hyperkit # # Build external drivers
370360
371361.PHONY : docker-machine-driver-hyperkit
372362docker-machine-driver-hyperkit : out/docker-machine-driver-hyperkit # # Build Hyperkit driver
373363
374- .PHONY : docker-machine-driver-kvm2
375- docker-machine-driver-kvm2 : out/docker-machine-driver-kvm2 # # Build KVM2 driver
376-
377364.PHONY : integration
378365integration : out/minikube$(IS_EXE ) # # Trigger minikube integration test, logs to ./out/testout_COMMIT.txt
379366 go test -ldflags=" ${MINIKUBE_LDFLAGS} " -v -test.timeout=90m $(INTEGRATION_TESTS_TO_RUN ) --tags=" $( MINIKUBE_INTEGRATION_BUILD_TAGS) " $(TEST_ARGS ) 2>&1 | tee " ./out/testout_$( COMMIT_SHORT) .txt"
@@ -473,7 +460,6 @@ checksum: ## Generate checksums
473460 for f in out/minikube-amd64.iso out/minikube-arm64.iso out/minikube-linux-amd64 out/minikube-linux-arm \
474461 out/minikube-linux-arm64 out/minikube-linux-ppc64le out/minikube-linux-s390x \
475462 out/minikube-darwin-amd64 out/minikube-darwin-arm64 out/minikube-windows-amd64.exe \
476- out/docker-machine-driver-kvm2 out/docker-machine-driver-kvm2-amd64 out/docker-machine-driver-kvm2-arm64 \
477463 out/docker-machine-driver-hyperkit; do \
478464 if [ -f " $$ {f}" ]; then \
479465 openssl sha256 " $$ {f}" | awk ' {print $$2}' > " $$ {f}.sha256" ; \
@@ -532,9 +518,9 @@ out/linters/golangci-lint-$(GOLINT_VERSION):
532518ifeq ($(MINIKUBE_BUILD_IN_DOCKER ) ,y)
533519lint :
534520 docker run --rm -v ` pwd` :/app:Z -w /app golangci/golangci-lint:$(GOLINT_VERSION ) \
535- golangci-lint run ${GOLINT_OPTIONS} ./..."
536- # --skip-dirs "cmd/drivers/kvm|cmd/drivers/hyperkit|pkg/drivers/kvm|pkg/drivers/hyperkit"
537- # The "--skip-dirs" parameter is no longer supported in the V2 version. If you need to skip the directory,
521+ golangci-lint run ${GOLINT_OPTIONS} ./..."
522+ # --skip-dirs "cmd/drivers/kvm|cmd/drivers/hyperkit|pkg/drivers/kvm|pkg/drivers/hyperkit"
523+ # The "--skip-dirs" parameter is no longer supported in the V2 version. If you need to skip the directory,
538524 # add it under "linters.settings.exclusions.paths" in the ".golangci.yaml" file.
539525else
540526lint : out/linters/golangci-lint-$(GOLINT_VERSION ) # # Run lint
@@ -567,10 +553,7 @@ out/docs/minikube.md: $(shell find "cmd") $(shell find "pkg/minikube/constants")
567553
568554.PHONY : debs # # Build all deb packages
569555debs : out/minikube_$(DEB_VERSION ) -$(DEB_REVISION ) _amd64.deb \
570- out/minikube_$(DEB_VERSION ) -$(DEB_REVISION ) _arm64.deb \
571- out/docker-machine-driver-kvm2_$(DEB_VERSION ) .deb \
572- out/docker-machine-driver-kvm2_$(DEB_VERSION ) -$(DEB_REVISION ) _amd64.deb
573- # out/docker-machine-driver-kvm2_$(DEB_VERSION)-$(DEB_REVISION)_arm64.deb
556+ out/minikube_$(DEB_VERSION ) -$(DEB_REVISION ) _arm64.deb
574557
575558.PHONY : deb_version
576559deb_version :
@@ -634,8 +617,8 @@ out/repodata/repomd.xml: out/minikube-$(RPM_VERSION).rpm
634617 -u " $( MINIKUBE_RELEASES_URL) /$( VERSION) /" out
635618
636619.SECONDEXPANSION :
637- TAR_TARGETS_linux-amd64 := out/minikube-linux-amd64 out/docker-machine-driver-kvm2
638- TAR_TARGETS_linux-arm64 := out/minikube-linux-arm64 # out/docker-machine-driver-kvm2
620+ TAR_TARGETS_linux-amd64 := out/minikube-linux-amd64
621+ TAR_TARGETS_linux-arm64 := out/minikube-linux-arm64
639622TAR_TARGETS_darwin-amd64 := out/minikube-darwin-amd64 out/docker-machine-driver-hyperkit
640623TAR_TARGETS_darwin-arm64 := out/minikube-darwin-arm64 # out/docker-machine-driver-hyperkit
641624TAR_TARGETS_windows-amd64 := out/minikube-windows-amd64.exe
@@ -847,113 +830,6 @@ update-leaderboard:
847830update-yearly-leaderboard :
848831 hack/yearly-leaderboard.sh
849832
850- out/docker-machine-driver-kvm2 : out/docker-machine-driver-kvm2-$(GOARCH )
851- # skipping kvm2-arm64 till https://github.com/kubernetes/minikube/issues/19959 is fixed
852- ifneq ($(GOARCH ) ,arm64)
853- $(if $(quiet),@echo " CP $@")
854- $(Q)cp $< $@
855- endif
856-
857- out/docker-machine-driver-kvm2-x86_64 : out/docker-machine-driver-kvm2-amd64
858- $(if $(quiet ) ,@echo " CP $@ ")
859- $(Q ) cp $< $@
860-
861- # https://github.com/kubernetes/minikube/issues/19959
862- out/docker-machine-driver-kvm2-aarch64 : out/docker-machine-driver-kvm2-arm64
863- $(if $(quiet ) ,@echo " CP $@ ")
864- $(Q ) cp $< $@
865-
866-
867- out/docker-machine-driver-kvm2_$(DEB_VERSION ) .deb : out/docker-machine-driver-kvm2_$(DEB_VERSION ) -0_amd64.deb
868- cp $< $@
869-
870- out/docker-machine-driver-kvm2_$(DEB_VERSION ) -0_% .deb : out/docker-machine-driver-kvm2-%
871- cp -r installers/linux/deb/kvm2_deb_template out/docker-machine-driver-kvm2_$(DEB_VERSION )
872- chmod 0755 out/docker-machine-driver-kvm2_$(DEB_VERSION ) /DEBIAN
873- sed -E -i -e ' s/--VERSION--/$(DEB_VERSION)/g' out/docker-machine-driver-kvm2_$(DEB_VERSION ) /DEBIAN/control
874- sed -E -i -e ' s/--ARCH--/' $* ' /g' out/docker-machine-driver-kvm2_$(DEB_VERSION ) /DEBIAN/control
875- mkdir -p out/docker-machine-driver-kvm2_$(DEB_VERSION ) /usr/bin
876- cp $< out/docker-machine-driver-kvm2_$(DEB_VERSION ) /usr/bin/docker-machine-driver-kvm2
877- fakeroot dpkg-deb --build out/docker-machine-driver-kvm2_$(DEB_VERSION ) $@
878- rm -rf out/docker-machine-driver-kvm2_$(DEB_VERSION )
879-
880- out/docker-machine-driver-kvm2-$(RPM_VERSION ) .rpm : out/docker-machine-driver-kvm2-$(RPM_VERSION ) -0.x86_64.rpm
881- cp $< $@
882-
883- out/docker-machine-driver-kvm2_$(RPM_VERSION ) .amd64.rpm : out/docker-machine-driver-kvm2-$(RPM_VERSION ) -0.x86_64.rpm
884- cp $< $@
885-
886- out/docker-machine-driver-kvm2_$(RPM_VERSION ) .arm64.rpm : out/docker-machine-driver-kvm2-$(RPM_VERSION ) -0.aarch64.rpm
887- cp $< $@
888-
889- out/docker-machine-driver-kvm2-$(RPM_VERSION ) -0.% .rpm : out/docker-machine-driver-kvm2-%
890- cp -r installers/linux/rpm/kvm2_rpm_template out/docker-machine-driver-kvm2-$(RPM_VERSION )
891- sed -E -i -e ' s/--VERSION--/' $(RPM_VERSION ) ' /g' out/docker-machine-driver-kvm2-$(RPM_VERSION ) /docker-machine-driver-kvm2.spec
892- sed -E -i -e ' s|--OUT--|' $(PWD ) /out' |g' out/docker-machine-driver-kvm2-$(RPM_VERSION ) /docker-machine-driver-kvm2.spec
893- rpmbuild -bb -D " _rpmdir $( PWD) /out" --target $* \
894- out/docker-machine-driver-kvm2-$(RPM_VERSION ) /docker-machine-driver-kvm2.spec
895- @mv out/$* /docker-machine-driver-kvm2-$(RPM_VERSION ) -0.$* .rpm out/ && rmdir out/$*
896- rm -rf out/docker-machine-driver-kvm2-$(RPM_VERSION )
897-
898- .PHONY : kvm-image-amd64
899- kvm-image-amd64 : installers/linux/kvm/Dockerfile.amd64 # # Convenient alias to build the docker container
900- docker build --build-arg " GO_VERSION=$( GO_VERSION) " -t $(KVM_BUILD_IMAGE_AMD64 ) -f $< $(dir $< )
901- @echo " "
902- @echo " $( @) successfully built"
903-
904- .PHONY : kvm-image-arm64
905- kvm-image-arm64 : installers/linux/kvm/Dockerfile.arm64 docker-multi-arch-build # # Convenient alias to build the docker container
906- docker buildx build --platform linux/arm64 --build-arg " GO_VERSION=$( GO_VERSION) " -t $(KVM_BUILD_IMAGE_ARM64 ) -f $< $(dir $< )
907- @echo " "
908- @echo " $( @) successfully built"
909-
910- kvm_in_docker :
911- docker image inspect -f ' {{.Id}} {{.RepoTags}}' $(KVM_BUILD_IMAGE_AMD64 ) || $(MAKE ) kvm-image-amd64
912- rm -f out/docker-machine-driver-kvm2
913- $(call DOCKER,$(KVM_BUILD_IMAGE_AMD64 ) ,/usr/bin/make out/docker-machine-driver-kvm2 COMMIT=$(COMMIT ) )
914-
915- .PHONY : install-kvm-driver
916- install-kvm-driver : out/docker-machine-driver-kvm2 # # Install KVM Driver
917- mkdir -p $(GOBIN )
918- cp out/docker-machine-driver-kvm2 $(GOBIN ) /docker-machine-driver-kvm2
919-
920-
921- out/docker-machine-driver-kvm2-arm64 :
922- @echo " skipping kvm2-arm64 till https://github.com/kubernetes/minikube/issues/19959 is fixed"
923- # ifeq ($(MINIKUBE_BUILD_IN_DOCKER),y)
924- # docker image inspect -f '{{.Id}} {{.RepoTags}}' $(KVM_BUILD_IMAGE_ARM64) || $(MAKE) kvm-image-arm64
925- # $(call DOCKER,$(KVM_BUILD_IMAGE_ARM64),/usr/bin/make $@ COMMIT=$(COMMIT))
926- # else
927- # $(if $(quiet),@echo " GO $@")
928- # $(Q)GOARCH=arm64 \
929- # go build \
930- # -buildvcs=false \
931- # -installsuffix "static" \
932- # -ldflags="$(KVM2_LDFLAGS)" \
933- # -tags "libvirt_without_lxc" \
934- # -o $@ \
935- # k8s.io/minikube/cmd/drivers/kvm
936- # endif
937- # chmod +X $@
938-
939- out/docker-machine-driver-kvm2-% :
940- ifeq ($(MINIKUBE_BUILD_IN_DOCKER ) ,y)
941- docker image inspect -f '{{.Id}} {{.RepoTags}}' $(KVM_BUILD_IMAGE_AMD64) || $(MAKE) kvm-image-amd64
942- $(call DOCKER,$(KVM_BUILD_IMAGE_AMD64),/usr/bin/make $@ COMMIT=$(COMMIT))
943- else
944- $(if $(quiet),@echo " GO $@")
945- $(Q)GOARCH=$* \
946- go build \
947- -buildvcs=false \
948- -installsuffix "static" \
949- -ldflags="$(KVM2_LDFLAGS)" \
950- -tags "libvirt_without_lxc" \
951- -o $@ \
952- k8s.io/minikube/cmd/drivers/kvm
953- endif
954- chmod +X $@
955-
956-
957833site/themes/docsy/assets/vendor/bootstrap/package.js : # # update the website docsy theme git submodule
958834 git submodule update -f --init
959835
0 commit comments