@@ -12,6 +12,15 @@ MISSPELL = $(TOOLS_DIR)/$(MISSPELL_BINARY)
12
12
13
13
DOCKER_COMPOSE_CMD ?= docker compose
14
14
DOCKER_COMPOSE_ENV =--env-file .env --env-file .env.override
15
+ DOCKER_COMPOSE_BUILD_ARGS =
16
+
17
+ # Java Workaround for macOS 15.2+ and M4 chips (see https://bugs.openjdk.org/browse/JDK-8345296)
18
+ ifeq ($(shell uname -m) ,arm64)
19
+ ifeq ($(shell uname -s),Darwin)
20
+ DOCKER_COMPOSE_ENV+= --env-file .env.arm64
21
+ DOCKER_COMPOSE_BUILD_ARGS+= --build-arg=_JAVA_OPTIONS=-XX:UseSVE=0
22
+ endif
23
+ endif
15
24
16
25
# see https://github.com/open-telemetry/build-tools/releases for semconvgen updates
17
26
# Keep links in semantic_conventions/README.md and .vscode/settings.json in sync!
@@ -77,11 +86,11 @@ install-tools: $(MISSPELL)
77
86
78
87
.PHONY : build
79
88
build :
80
- $(DOCKER_COMPOSE_CMD ) build
89
+ $(DOCKER_COMPOSE_CMD ) build $( DOCKER_COMPOSE_BUILD_ARGS )
81
90
82
91
.PHONY : build-and-push
83
92
build-and-push :
84
- $(DOCKER_COMPOSE_CMD ) $(DOCKER_COMPOSE_ENV ) build --push
93
+ $(DOCKER_COMPOSE_CMD ) $(DOCKER_COMPOSE_ENV ) build $( DOCKER_COMPOSE_BUILD_ARGS ) --push
85
94
86
95
# Create multiplatform builder for buildx
87
96
.PHONY : create-multiplatform-builder
@@ -209,7 +218,7 @@ ifdef SERVICE
209
218
endif
210
219
211
220
ifdef service
212
- $(DOCKER_COMPOSE_CMD) $(DOCKER_COMPOSE_ENV) build $(service)
221
+ $(DOCKER_COMPOSE_CMD) $(DOCKER_COMPOSE_ENV) build $(DOCKER_COMPOSE_BUILD_ARGS) $( service)
213
222
$(DOCKER_COMPOSE_CMD) $(DOCKER_COMPOSE_ENV) stop $(service)
214
223
$(DOCKER_COMPOSE_CMD) $(DOCKER_COMPOSE_ENV) rm --force $(service)
215
224
$(DOCKER_COMPOSE_CMD) $(DOCKER_COMPOSE_ENV) create $(service)
0 commit comments