Ravenports generated: 14 Jan 2024 04:52
[ravenports.git] / bucket_DB / QR-Code-generator
1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
2
3 NAMEBASE=               QR-Code-generator
4 VERSION=                1.8.0
5 KEYWORDS=               graphics
6 VARIANTS=               standard
7 SDESC[standard]=        High-quality QR Code generator library
8 HOMEPAGE=               https://www.nayuki.io/page/qr-code-generator-library
9 CONTACT=                nobody
10
11 DOWNLOAD_GROUPS=        main
12 SITES[main]=            GITHUB/nayuki:QR-Code-generator:v1.8.0
13 DISTFILE[1]=            generated:main
14 DF_INDEX=               1
15 SPKGS[standard]=        single
16
17 OPTIONS_AVAILABLE=      none
18 OPTIONS_STANDARD=       none
19
20 USES=                   gmake c++:single
21
22 LICENSE=                MIT:single
23 LICENSE_FILE=           MIT:{{WRKDIR}}/LICENSE
24 LICENSE_SCHEME=         solo
25
26 FPC_EQUIVALENT=         graphics/qr-code-generator
27
28 SOVERSION=              1.7.0
29
30 post-patch:
31         ${CP} ${FILESDIR}/Makefile ${WRKSRC}
32         # extract license
33         ${AWK} '/^License/,EOF' ${WRKSRC}/Readme.markdown > ${WRKDIR}/LICENSE
34
35 post-install:
36         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/lib*.so
37
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.
43
44
45 [FILE:116:distinfo]
46 2ec0a4d33d6f521c942eeaf473d42d5fe139abcfa57d2beffe10c5cf7d34ae60       193288 nayuki-QR-Code-generator-1.8.0.tar.gz
47
48
49 [FILE:250:manifests/plist.single]
50 include/qrcodegen/
51  qrcodegen.h
52  qrcodegen.hpp
53 lib/
54  libqrcodegen.a
55  libqrcodegen.so
56  libqrcodegen.so.%%SOMAJOR%%
57  libqrcodegen.so.%%SOVERSION%%
58  libqrcodegencpp.a
59  libqrcodegencpp.so
60  libqrcodegencpp.so.%%SOMAJOR%%
61  libqrcodegencpp.so.%%SOVERSION%%
62
63
64 [FILE:2336:patches/patch-c_Makefile]
65 --- c/Makefile.orig     2021-08-08 17:21:08 UTC
66 +++ c/Makefile
67 @@ -29,11 +29,13 @@
68  # - CFLAGS: Any extra user-specified compiler flags (can be blank).
69  
70  # Recommended compiler flags:
71 -CFLAGS += -std=c99 -O
72 +CFLAGS ?= -std=c99 -O
73  
74  # Extra flags for diagnostics:
75  # CFLAGS += -g -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -fsanitize=undefined,address
76  
77 +# Version information
78 +VERSION = 1.7.0
79  
80  # ---- Controlling make ----
81  
82 @@ -51,18 +53,45 @@ CFLAGS += -std=c99 -O
83  # ---- Targets to build ----
84  
85  LIB = qrcodegen
86 -LIBFILE = lib$(LIB).a
87 +ARFILE = 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
93  LIBOBJ = qrcodegen.o
94  MAINS = qrcodegen-demo qrcodegen-test
95  
96 +# define paths to install
97 +INCLUDEDIR ?= $(DESTDIR)$(PREFIX)/include/qrcodegen
98 +LIBDIR ?= $(DESTDIR)$(PREFIX)/lib
99 +
100  # Build all binaries
101 -all: $(LIBFILE) $(MAINS)
102 +all: $(LIBFILE) $(ARFILE) $(MAINS)
103  
104  # Delete build output
105  clean:
106 -       rm -f -- $(LIBOBJ) $(LIBFILE) $(MAINS:=.o) $(MAINS)
107 +       rm -f -- $(LIBOBJ) $(LIBFILE) $(ARFILE) $(MAINS:=.o) $(MAINS)
108         rm -rf .deps
109  
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)
117 +
118 +install-static: $(ARFILE)
119 +       install -d $(LIBDIR) || true
120 +       install -m 0644 $(ARFILE) $(LIBDIR)/$(ARFILE)
121 +
122 +install-header: $(HEADERS)
123 +       install -d $(INCLUDEDIR) || true
124 +       install -m 0644 $(HEADERS) $(INCLUDEDIR)/
125 +
126 +install: install-shared install-static install-header
127 +
128  # Executable files
129  %: %.o $(LIBFILE)
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 $@ $^
133  
134  # The library
135 -$(LIBFILE): $(LIBOBJ)
136 +$(ARFILE): $(LIBOBJ)
137         $(AR) -crs $@ -- $^
138  
139 +$(LIBFILE): $(LIBOBJ)
140 +       $(CC) -shared -Wl,-soname,$(SO_NAME) $(LDFLAGS) -o $@ $^
141 +
142  # Object files
143  %.o: %.c .deps/timestamp
144 -       $(CC) $(CFLAGS) -c -o $@ -MMD -MF .deps/$*.d $<
145 +       $(CC) $(CFLAGS) -fPIC -c -o $@ -MMD -MF .deps/$*.d $<
146  
147  # Have a place to store header dependencies automatically generated by compiler
148  .deps/timestamp:
149
150
151 [FILE:2245:patches/patch-cpp_Makefile]
152 --- cpp/Makefile.orig   2021-08-08 17:21:08 UTC
153 +++ cpp/Makefile
154 @@ -29,11 +29,13 @@
155  # - CXXFLAGS: Any extra user-specified compiler flags (can be blank).
156  
157  # Recommended compiler flags:
158 -CXXFLAGS += -std=c++11 -O
159 +CXXFLAGS ?= -std=c++11 -O
160  
161  # Extra flags for diagnostics:
162  # CXXFLAGS += -g -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -fsanitize=undefined,address
163  
164 +# Version information
165 +VERSION = 1.7.0
166  
167  # ---- Controlling make ----
168  
169 @@ -51,29 +53,59 @@ CXXFLAGS += -std=c++11 -O
170  # ---- Targets to build ----
171  
172  LIB = qrcodegencpp
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
180  LIBOBJ = qrcodegen.o
181  MAINS = QrCodeGeneratorDemo
182  
183 +# define paths to install
184 +INCLUDEDIR ?= $(DESTDIR)$(PREFIX)/include/qrcodegen
185 +LIBDIR ?= $(DESTDIR)$(PREFIX)/lib
186 +
187  # Build all binaries
188 -all: $(LIBFILE) $(MAINS)
189 +all: $(LIBFILE) $(ARFILE) $(MAINS)
190  
191  # Delete build output
192  clean:
193 -       rm -f -- $(LIBOBJ) $(LIBFILE) $(MAINS:=.o) $(MAINS)
194 +       rm -f -- $(LIBOBJ) $(LIBFILE) $(ARFILE) $(MAINS:=.o) $(MAINS)
195         rm -rf .deps
196  
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)
204 +
205 +install-static: $(ARFILE)
206 +       install -d $(LIBDIR) || true
207 +       install -m 0644 $(ARFILE) $(LIBDIR)/$(ARFILE)
208 +
209 +install-header: $(HEADERS)
210 +       install -d $(INCLUDEDIR) || true
211 +       install -m 0644 $(HEADERS) $(INCLUDEDIR)/
212 +
213 +install: install-shared install-static install-header
214 +
215  # Executable files
216  %: %.o $(LIBFILE)
217         $(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $< -L . -l $(LIB)
218  
219  # The library
220 -$(LIBFILE): $(LIBOBJ)
221 +$(ARFILE): $(LIBOBJ)
222         $(AR) -crs $@ -- $^
223  
224 +$(LIBFILE): $(LIBOBJ)
225 +       $(CC) -shared -Wl,-soname,$(SO_NAME) $(LDFLAGS) -o $@ $^
226 +
227  # Object files
228  %.o: %.cpp .deps/timestamp
229 -       $(CXX) $(CXXFLAGS) -c -o $@ -MMD -MF .deps/$*.d $<
230 +       $(CXX) $(CXXFLAGS) -fPIC -c -o $@ -MMD -MF .deps/$*.d $<
231  
232  # Have a place to store header dependencies automatically generated by compiler
233  .deps/timestamp:
234
235
236 [FILE:142:files/Makefile]
237 SUBDIRS= c cpp
238
239 TARGETS= all clean install
240
241 .PHONY: $(TARGETS) $(SUBDIRS)
242
243 $(TARGETS): $(SUBDIRS)
244
245 $(SUBDIRS):
246         $(MAKE) -C $@ $(MAKECMDGOALS)
247