44 lines
1.0 KiB
Plaintext
44 lines
1.0 KiB
Plaintext
If OPJ_STATIC is defined, load-jpx.c linkage with libopenjp2.so is broken
|
|
("relocation R_X86_64_PC32 against symbol ... can not be used when making a
|
|
shared object")
|
|
|
|
Index: source/fitz/load-jpx.c
|
|
--- source/fitz/load-jpx.c.orig
|
|
+++ source/fitz/load-jpx.c
|
|
@@ -163,6 +163,9 @@ void opj_free(void *ptr)
|
|
|
|
static void * opj_aligned_malloc_n(size_t alignment, size_t size)
|
|
{
|
|
+#ifdef __OpenBSD__
|
|
+ return opj_malloc(size);
|
|
+#else
|
|
uint8_t *ptr;
|
|
size_t off;
|
|
|
|
@@ -176,6 +179,7 @@ static void * opj_aligned_malloc_n(size_t alignment, s
|
|
off = alignment-(((int)(intptr_t)ptr) & (alignment - 1));
|
|
ptr[off-1] = (uint8_t)off;
|
|
return ptr + off;
|
|
+#endif
|
|
}
|
|
|
|
void * opj_aligned_malloc(size_t size)
|
|
@@ -190,6 +194,9 @@ void * opj_aligned_32_malloc(size_t size)
|
|
|
|
void opj_aligned_free(void* ptr_)
|
|
{
|
|
+#ifdef __OpenBSD__
|
|
+ opj_free(ptr_);
|
|
+#else
|
|
uint8_t *ptr = (uint8_t *)ptr_;
|
|
uint8_t off;
|
|
if (ptr == NULL)
|
|
@@ -197,6 +204,7 @@ void opj_aligned_free(void* ptr_)
|
|
|
|
off = ptr[-1];
|
|
opj_free((void *)(((unsigned char *)ptr) - off));
|
|
+#endif
|
|
}
|
|
|
|
#if 0
|