From b3cbfd9c1a7f80e16f660432e0948590b6006532 Mon Sep 17 00:00:00 2001 From: Jim Hauxwell Date: Mon, 19 Jun 2023 22:25:26 +0100 Subject: [PATCH] fix parallel build for makefile The copy for bits.h ran in parallel with the initial CC. sometimes on CI the build would fail as the file had not arrived by the time needed. Fix matches meson build process. --- .gitignore | 1 - Makefile | 24 +++++------------------- 2 files changed, 5 insertions(+), 20 deletions(-) diff --git a/.gitignore b/.gitignore index 35d4f49..137b520 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,3 @@ -include/libucontext/bits.h *.o examples/cooperative_threading test_libucontext diff --git a/Makefile b/Makefile index 74ea13c..72d641a 100644 --- a/Makefile +++ b/Makefile @@ -36,7 +36,9 @@ FREESTANDING := no ifeq ($(FREESTANDING),yes) CPPFLAGS += -DFREESTANDING - EXPORT_UNPREFIXED = no + EXPORT_UNPREFIXED = no -Iarch/${ARCH}/include +else + CPPFLAGS += -Iarch/common/include endif FORCE_SOFT_FLOAT := no @@ -112,10 +114,10 @@ ${LIBUCONTEXT_POSIX_STATIC_NAME}: ${LIBUCONTEXT_STATIC_NAME} ${LIBUCONTEXT_POSIX ${LIBUCONTEXT_POSIX_SONAME}: ${LIBUCONTEXT_POSIX_NAME} ln -sf ${LIBUCONTEXT_POSIX_NAME} ${LIBUCONTEXT_POSIX_SONAME} -${LIBUCONTEXT_STATIC_NAME}: ${LIBUCONTEXT_HEADERS} ${LIBUCONTEXT_OBJ} +${LIBUCONTEXT_STATIC_NAME}: ${LIBUCONTEXT_OBJ} $(AR) rcs ${LIBUCONTEXT_STATIC_NAME} ${LIBUCONTEXT_OBJ} -${LIBUCONTEXT_NAME}: ${LIBUCONTEXT_HEADERS} ${LIBUCONTEXT_OBJ} +${LIBUCONTEXT_NAME}: ${LIBUCONTEXT_OBJ} $(CC) -fPIC -o ${LIBUCONTEXT_NAME} ${LIBUCONTEXT_LINKER_FLAGS} ${LIBUCONTEXT_OBJ} ${LDFLAGS} ${LIBUCONTEXT_SONAME}: ${LIBUCONTEXT_NAME} @@ -164,9 +166,6 @@ libucontext_obj_clean: ${LIBUCONTEXT_PC}_clean: rm -f ${LIBUCONTEXT_PC} -bits_clean: - rm -f include/libucontext/bits.h - ${LIBUCONTEXT_POSIX_NAME}_clean: rm -f ${LIBUCONTEXT_POSIX_NAME} @@ -197,7 +196,6 @@ clean: ${LIBUCONTEXT_NAME}_clean clean: ${LIBUCONTEXT_SONAME}_clean clean: ${LIBUCONTEXT_STATIC_NAME}_clean clean: ${LIBUCONTEXT_PC}_clean -clean: bits_clean clean: ${LIBUCONTEXT_POSIX_NAME}_clean clean: ${LIBUCONTEXT_POSIX_SONAME}_clean clean: ${LIBUCONTEXT_POSIX_STATIC_NAME}_clean @@ -258,18 +256,6 @@ examples: ${LIBUCONTEXT_EXAMPLES} examples/cooperative_threading: examples/cooperative_threading.c ${LIBUCONTEXT_NAME} $(CC) -std=gnu99 -D_BSD_SOURCE ${CFLAGS} ${CPPFLAGS} $@.c -o $@ -L. -lucontext -ifeq ($(FREESTANDING),no) - -include/libucontext/bits.h: arch/common/include/libucontext/bits.h - cp $< $@ - -else - -include/libucontext/bits.h: arch/${ARCH}/include/libucontext/bits.h - cp $< $@ - -endif - PACKAGE_NAME = libucontext PACKAGE_VERSION = ${LIBUCONTEXT_VERSION} DIST_NAME = ${PACKAGE_NAME}-${PACKAGE_VERSION}