1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
3 NAMEBASE= QR-Code-generator
7 SDESC[standard]= High-quality QR Code generator library
8 HOMEPAGE= https://www.nayuki.io/page/qr-code-generator-library
12 SITES[main]= GITHUB/nayuki:QR-Code-generator:v1.8.0
13 DISTFILE[1]= generated:main
15 SPKGS[standard]= single
17 OPTIONS_AVAILABLE= none
18 OPTIONS_STANDARD= none
20 USES= gmake c++:single
23 LICENSE_FILE= MIT:{{WRKDIR}}/LICENSE
26 FPC_EQUIVALENT= graphics/qr-code-generator
31 ${CP} ${FILESDIR}/Makefile ${WRKSRC}
33 ${AWK} '/^License/,EOF' ${WRKSRC}/Readme.markdown > ${WRKDIR}/LICENSE
36 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/lib*.so
38 [FILE:238:descriptions/desc.single]
39 This project aims to be the best, clearest QR Code generator library in
40 multiple languages. The primary goals are flexible options and absolute
41 correctness. Secondary goals are compact implementation size and good
42 documentation comments.
46 2ec0a4d33d6f521c942eeaf473d42d5fe139abcfa57d2beffe10c5cf7d34ae60 193288 nayuki-QR-Code-generator-1.8.0.tar.gz
49 [FILE:250:manifests/plist.single]
56 libqrcodegen.so.%%SOMAJOR%%
57 libqrcodegen.so.%%SOVERSION%%
60 libqrcodegencpp.so.%%SOMAJOR%%
61 libqrcodegencpp.so.%%SOVERSION%%
64 [FILE:2336:patches/patch-c_Makefile]
65 --- c/Makefile.orig 2021-08-08 17:21:08 UTC
68 # - CFLAGS: Any extra user-specified compiler flags (can be blank).
70 # Recommended compiler flags:
71 -CFLAGS += -std=c99 -O
72 +CFLAGS ?= -std=c99 -O
74 # Extra flags for diagnostics:
75 # CFLAGS += -g -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -fsanitize=undefined,address
77 +# Version information
80 # ---- Controlling make ----
82 @@ -51,18 +53,45 @@ CFLAGS += -std=c99 -O
83 # ---- Targets to build ----
86 -LIBFILE = lib$(LIB).a
88 +LIBFILE = lib$(LIB).so
89 +# Bump the soname number when the ABI changes and gets incompatible
90 +SO_NAME = $(LIBFILE).1
91 +REAL_NAME = $(LIBFILE).$(VERSION)
92 +HEADERS = qrcodegen.h
94 MAINS = qrcodegen-demo qrcodegen-test
96 +# define paths to install
97 +INCLUDEDIR ?= $(DESTDIR)$(PREFIX)/include/qrcodegen
98 +LIBDIR ?= $(DESTDIR)$(PREFIX)/lib
101 -all: $(LIBFILE) $(MAINS)
102 +all: $(LIBFILE) $(ARFILE) $(MAINS)
104 # Delete build output
106 - rm -f -- $(LIBOBJ) $(LIBFILE) $(MAINS:=.o) $(MAINS)
107 + rm -f -- $(LIBOBJ) $(LIBFILE) $(ARFILE) $(MAINS:=.o) $(MAINS)
110 +install-shared: $(LIBFILE)
111 + install -d $(LIBDIR) || true
112 + install -m 0644 $(LIBFILE) $(LIBDIR)/$(REAL_NAME)
113 + rm -f $(LIBDIR)/$(SO_NAME)
114 + ln -s $(REAL_NAME) $(LIBDIR)/$(SO_NAME)
115 + rm -f $(LIBDIR)/$(LIBFILE)
116 + ln -s $(SO_NAME) $(LIBDIR)/$(LIBFILE)
118 +install-static: $(ARFILE)
119 + install -d $(LIBDIR) || true
120 + install -m 0644 $(ARFILE) $(LIBDIR)/$(ARFILE)
122 +install-header: $(HEADERS)
123 + install -d $(INCLUDEDIR) || true
124 + install -m 0644 $(HEADERS) $(INCLUDEDIR)/
126 +install: install-shared install-static install-header
130 $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $< -L . -l $(LIB)
131 @@ -72,12 +101,15 @@ qrcodegen-test: qrcodegen-test.c $(LIBOB
132 $(CC) $(CFLAGS) $(LDFLAGS) -DQRCODEGEN_TEST -o $@ $^
135 -$(LIBFILE): $(LIBOBJ)
136 +$(ARFILE): $(LIBOBJ)
139 +$(LIBFILE): $(LIBOBJ)
140 + $(CC) -shared -Wl,-soname,$(SO_NAME) $(LDFLAGS) -o $@ $^
143 %.o: %.c .deps/timestamp
144 - $(CC) $(CFLAGS) -c -o $@ -MMD -MF .deps/$*.d $<
145 + $(CC) $(CFLAGS) -fPIC -c -o $@ -MMD -MF .deps/$*.d $<
147 # Have a place to store header dependencies automatically generated by compiler
151 [FILE:2245:patches/patch-cpp_Makefile]
152 --- cpp/Makefile.orig 2021-08-08 17:21:08 UTC
155 # - CXXFLAGS: Any extra user-specified compiler flags (can be blank).
157 # Recommended compiler flags:
158 -CXXFLAGS += -std=c++11 -O
159 +CXXFLAGS ?= -std=c++11 -O
161 # Extra flags for diagnostics:
162 # CXXFLAGS += -g -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -fsanitize=undefined,address
164 +# Version information
167 # ---- Controlling make ----
169 @@ -51,29 +53,59 @@ CXXFLAGS += -std=c++11 -O
170 # ---- Targets to build ----
173 -LIBFILE = lib$(LIB).a
174 +ARFILE = lib$(LIB).a
175 +LIBFILE = lib$(LIB).so
176 +# Bump the soname number when the ABI changes and gets incompatible
177 +SO_NAME = $(LIBFILE).1
178 +REAL_NAME = $(LIBFILE).$(VERSION)
179 +HEADERS = qrcodegen.hpp
181 MAINS = QrCodeGeneratorDemo
183 +# define paths to install
184 +INCLUDEDIR ?= $(DESTDIR)$(PREFIX)/include/qrcodegen
185 +LIBDIR ?= $(DESTDIR)$(PREFIX)/lib
188 -all: $(LIBFILE) $(MAINS)
189 +all: $(LIBFILE) $(ARFILE) $(MAINS)
191 # Delete build output
193 - rm -f -- $(LIBOBJ) $(LIBFILE) $(MAINS:=.o) $(MAINS)
194 + rm -f -- $(LIBOBJ) $(LIBFILE) $(ARFILE) $(MAINS:=.o) $(MAINS)
197 +install-shared: $(LIBFILE)
198 + install -d $(LIBDIR) || true
199 + install -m 0644 $(LIBFILE) $(LIBDIR)/$(REAL_NAME)
200 + rm -f $(LIBDIR)/$(SO_NAME)
201 + ln -s $(REAL_NAME) $(LIBDIR)/$(SO_NAME)
202 + rm -f $(LIBDIR)/$(LIBFILE)
203 + ln -s $(SO_NAME) $(LIBDIR)/$(LIBFILE)
205 +install-static: $(ARFILE)
206 + install -d $(LIBDIR) || true
207 + install -m 0644 $(ARFILE) $(LIBDIR)/$(ARFILE)
209 +install-header: $(HEADERS)
210 + install -d $(INCLUDEDIR) || true
211 + install -m 0644 $(HEADERS) $(INCLUDEDIR)/
213 +install: install-shared install-static install-header
217 $(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $< -L . -l $(LIB)
220 -$(LIBFILE): $(LIBOBJ)
221 +$(ARFILE): $(LIBOBJ)
224 +$(LIBFILE): $(LIBOBJ)
225 + $(CC) -shared -Wl,-soname,$(SO_NAME) $(LDFLAGS) -o $@ $^
228 %.o: %.cpp .deps/timestamp
229 - $(CXX) $(CXXFLAGS) -c -o $@ -MMD -MF .deps/$*.d $<
230 + $(CXX) $(CXXFLAGS) -fPIC -c -o $@ -MMD -MF .deps/$*.d $<
232 # Have a place to store header dependencies automatically generated by compiler
236 [FILE:142:files/Makefile]
239 TARGETS= all clean install
241 .PHONY: $(TARGETS) $(SUBDIRS)
243 $(TARGETS): $(SUBDIRS)
246 $(MAKE) -C $@ $(MAKECMDGOALS)