1- $NetBSD: patch-Makefile,v 1.7 2025/11/12 11:49:38 leot Exp $
1+ $NetBSD: patch-Makefile,v 1.8 2026/03/10 17:24:10 osa Exp $
22
33Portability patch for NetBSD.
44
5- --- Makefile.orig 2025-09-13 08:48:28 .000000000 +0000
5+ --- Makefile.orig 2025-12-22 14:12:46 .000000000 +0000
66+++ Makefile
77@@ -22,10 +22,14 @@
88 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
@@ -21,7 +21,7 @@ Portability patch for NetBSD.
2121 CONFIG_FREEBSD=y
2222 endif
2323 # Windows cross compilation from Linux
24- @@ -77 ,6 +81 ,13 @@ CONFIG_CLANG=y
24+ @@ -81 ,6 +85 ,13 @@ CONFIG_CLANG=y
2525 CONFIG_DEFAULT_AR=y
2626 CONFIG_LTO=
2727 endif
@@ -35,7 +35,18 @@ Portability patch for NetBSD.
3535
3636 ifdef CONFIG_WIN32
3737 ifdef CONFIG_M32
38- @@ -243,11 +254,17 @@ QJS_LIB_OBJS=$(OBJDIR)/quickjs.o $(OBJDI
38+ @@ -217,8 +228,10 @@ QJSC_CC=$(CC)
39+ QJSC=./qjsc$(EXE)
40+ endif
41+ PROGS+=libquickjs.a
42+ +PROGS+=libquickjs.so
43+ ifdef CONFIG_LTO
44+ PROGS+=libquickjs.lto.a
45+ +PROGS+=libquickjs.lto.so
46+ endif
47+
48+ # examples
49+ @@ -247,11 +260,17 @@ QJS_LIB_OBJS=$(OBJDIR)/quickjs.o $(OBJDI
3950
4051 QJS_OBJS=$(OBJDIR)/qjs.o $(OBJDIR)/repl.o $(QJS_LIB_OBJS)
4152
@@ -54,7 +65,7 @@ Portability patch for NetBSD.
5465 LIBS+=$(EXTRA_LIBS)
5566
5667 $(OBJDIR):
57- @@ -285 ,6 +302 ,9 @@ QJSC_DEFINES:=-DCONFIG_CC=\"$(QJSC_CC)\"
68+ @@ -289 ,6 +308 ,9 @@ QJSC_DEFINES:=-DCONFIG_CC=\"$(QJSC_CC)\"
5869 ifdef CONFIG_LTO
5970 QJSC_DEFINES+=-DCONFIG_LTO
6071 endif
@@ -64,16 +75,34 @@ Portability patch for NetBSD.
6475 QJSC_HOST_DEFINES:=-DCONFIG_CC=\"$(HOST_CC)\" -DCONFIG_PREFIX=\"$(PREFIX)\"
6576
6677 $(OBJDIR)/qjsc.o: CFLAGS+=$(QJSC_DEFINES)
67- @@ -368,10 +388,9 @@ install: all
78+ @@ -302,10 +324,14 @@ endif
79+
80+ libquickjs$(LTOEXT).a: $(QJS_LIB_OBJS)
81+ $(AR) rcs $@ $^
82+ +libquickjs$(LTOEXT).so: $(QJS_LIB_OBJS)
83+ + $(CC) -shared -Wl,-soname=$@.0 $(LDFLAGS) -o $@ $^
84+
85+ ifdef CONFIG_LTO
86+ libquickjs.a: $(patsubst %.o, %.nolto.o, $(QJS_LIB_OBJS))
87+ $(AR) rcs $@ $^
88+ +libquickjs.so: $(patsubst %.o, %.nolto.o, $(QJS_LIB_OBJS))
89+ + $(CC) -shared -Wl,-soname=$@.0 $(LDFLAGS) -o $@ $^
90+ endif # CONFIG_LTO
91+
92+ libquickjs.fuzz.a: $(patsubst %.o, %.fuzz.o, $(QJS_LIB_OBJS))
93+ @@ -372,10 +398,12 @@ install: all
6894 mkdir -p "$(DESTDIR)$(PREFIX)/bin"
6995 $(STRIP) qjs$(EXE) qjsc$(EXE)
7096 install -m755 qjs$(EXE) qjsc$(EXE) "$(DESTDIR)$(PREFIX)/bin"
7197- mkdir -p "$(DESTDIR)$(PREFIX)/lib/quickjs"
7298- install -m644 libquickjs.a "$(DESTDIR)$(PREFIX)/lib/quickjs"
99+ + mkdir -p "$(DESTDIR)$(PREFIX)/lib"
73100+ install -m644 libquickjs.a "$(DESTDIR)$(PREFIX)/lib"
101+ + install -m644 libquickjs.so "$(DESTDIR)$(PREFIX)/lib"
74102 ifdef CONFIG_LTO
75103- install -m644 libquickjs.lto.a "$(DESTDIR)$(PREFIX)/lib/quickjs"
76104+ install -m644 libquickjs.lto.a "$(DESTDIR)$(PREFIX)/lib"
105+ + install -m644 libquickjs.lto.so "$(DESTDIR)$(PREFIX)/lib"
77106 endif
78107 mkdir -p "$(DESTDIR)$(PREFIX)/include/quickjs"
79108 install -m644 quickjs.h quickjs-libc.h "$(DESTDIR)$(PREFIX)/include/quickjs"
0 commit comments