diff options
author | Tor Andersson <tor.andersson@artifex.com> | 2017-03-07 15:40:09 +0100 |
---|---|---|
committer | Tor Andersson <tor.andersson@artifex.com> | 2017-03-15 09:47:01 +0100 |
commit | 3966550ae8198eef2050c24d87dd7a89d1410ded (patch) | |
tree | 8fe50f9a6bf4666cf8cf4a16447956e357ecf01e | |
parent | 0f5f5642a01dc7e8b9bc421ea8712c31e4c43429 (diff) | |
download | mupdf-3966550ae8198eef2050c24d87dd7a89d1410ded.tar.xz |
Only include pthread library when needed.
Rename HAVE_PTHREADS to HAVE_PTHREAD to match naming of other defines,
where the macro is named after the library that is linked.
-rw-r--r-- | Makefile | 7 | ||||
-rw-r--r-- | Makerules | 24 | ||||
-rw-r--r-- | Makethird | 7 | ||||
-rw-r--r-- | include/mupdf/helpers/mu-threads.h | 2 |
4 files changed, 26 insertions, 14 deletions
@@ -191,6 +191,9 @@ $(OUT)/%.o : source/%.c | $(ALL_DIR) $(OUT)/%.o : source/%.cpp | $(ALL_DIR) $(CXX_CMD) +$(OUT)/helpers/%.o : source/helpers/%.c | $(ALL_DIR) + $(CC_CMD) $(PTHREAD_CFLAGS) -DHAVE_PTHREAD + $(OUT)/%.o : scripts/%.c | $(OUT) $(CC_CMD) @@ -275,13 +278,13 @@ $(MUTOOL_OBJ): $(FITZ_HDR) $(PDF_HDR) MUTOOL_LIB = $(OUT)/libmutools.a $(MUTOOL_LIB) : $(MUTOOL_OBJ) $(MUTOOL) : $(MUTOOL_LIB) $(MUPDF_LIB) $(THIRD_LIB) $(THREAD_LIB) - $(LINK_CMD) + $(LINK_CMD) $(PTHREAD_LIBS) MURASTER := $(OUT)/muraster MURASTER_OBJ := $(addprefix $(OUT)/tools/, muraster.o) $(MURASTER_OBJ): $(FITZ_HDR) $(MURASTER) : $(MURASTER_OBJ) $(MUPDF_LIB) $(THIRD_LIB) $(THREAD_LIB) - $(LINK_CMD) + $(LINK_CMD) $(PTHREAD_LIBS) MJSGEN := $(OUT)/mjsgen MJSGEN_OBJ := $(addprefix $(OUT)/tools/, mjsgen.o) @@ -78,12 +78,15 @@ CFLAGS+= -U__STRICT_ANSI__ else ifeq "$(OS)" "MACOS" HAVE_X11 ?= no -HAVE_PTHREADS ?= yes + +HAVE_PTHREAD := yes +SYS_PTHREAD_CFLAGS := +SYS_PTHREAD_LIBS := -lpthread # Mac OS X deprecated libcrypto, so the default is to not include it. -HAVE_LIBCRYTO ?= no -SYS_LIBCRYPTO_CFLAGS = -SYS_LIBCRYPTO_LIBS = +HAVE_LIBCRYTO := no +SYS_LIBCRYPTO_CFLAGS := +SYS_LIBCRYPTO_LIBS := ifeq "$(HAVE_LIBCRYPTO)" "yes" SYS_LIBCRYPTO_CFLAGS := -DHAVE_LIBCRYPTO SYS_LIBCRYPTO_LIBS := -lcrypto @@ -109,7 +112,9 @@ RANLIB_CMD := xcrun ranlib $@ # Linux uses pkg-config for system libraries. else ifeq "$(OS)" "Linux" -HAVE_PTHREADS ?= yes +HAVE_PTHREAD := yes +SYS_PTHREAD_CFLAGS := +SYS_PTHREAD_LIBS := -lpthread ifeq "$(shell pkg-config --exists 'libcrypto <= 1.0.1t' && echo yes)" "yes" HAVE_LIBCRYPTO := yes @@ -175,7 +180,9 @@ LD = arm-none-linux-gnueabi-gcc AR = arm-none-linux-gnueabi-ar CFLAGS += -O3 -mfpu=neon -mcpu=cortex-a8 -mfloat-abi=softfp -ftree-vectorize -ffast-math -fsingle-precision-constant CROSSCOMPILE=yes -HAVE_PTHREADS ?= yes +HAVE_PTHREAD := yes +SYS_PTHREAD_CFLAGS := +SYS_PTHREAD_LIBS := -lpthread endif ifeq "$(OS)" "webos-pre-cross" @@ -272,8 +279,3 @@ ifeq "$(CROSSCOMPILE)" "yes" HAVE_X11 ?= no HAVE_GLFW ?= no endif - -ifeq "$(HAVE_PTHREADS)" "yes" -CFLAGS += -DHAVE_PTHREADS -LIBS += -lpthread -endif @@ -714,3 +714,10 @@ ifeq "$(HAVE_LIBCRYPTO)" "yes" LIBCRYPTO_CFLAGS := $(SYS_LIBCRYPTO_CFLAGS) LIBCRYPTO_LIBS := $(SYS_LIBCRYPTO_LIBS) endif + +# --- pthread --- + +#ifeq "$(HAVE_PTHREAD)" "yes" +PTHREAD_CFLAGS := $(SYS_PTHREAD_CFLAGS) +PTHREAD_LIBS := $(SYS_PTHREAD_LIBS) +#endif diff --git a/include/mupdf/helpers/mu-threads.h b/include/mupdf/helpers/mu-threads.h index 77ee0b6c..d1830a44 100644 --- a/include/mupdf/helpers/mu-threads.h +++ b/include/mupdf/helpers/mu-threads.h @@ -25,7 +25,7 @@ #if !defined(DISABLE_MUTHREADS) #if defined(_WIN32) || defined(_WIN64) #define MU_THREAD_IMPL_TYPE 1 -#elif defined(HAVE_PTHREADS) +#elif defined(HAVE_PTHREAD) #define MU_THREAD_IMPL_TYPE 2 #else #define DISABLE_MUTHREADS |