]> git.ipfire.org Git - ipfire.org.git/blob - Makefile.am
12080b72f66cd36f7ae9a439ca382c9c681a8c96
[ipfire.org.git] / Makefile.am
1 #!/usr/bin/make
2
3 AM_MAKEFLAGS = --no-print-directory
4 AUTOMAKE_OPTIONS = color-tests
5
6 # remove target it the command fails
7 .DELETE_ON_ERROR:
8
9 # keep itermediate files
10 .SECONDARY:
11
12 pythondir = $(pyexecdir)
13
14 configsdir = $(sysconfdir)/ipfire.org
15 crondir = $(sysconfdir)/cron.d
16
17 CLEANFILES =
18 DISTCLEANFILES =
19 EXTRA_DIST =
20 INSTALL_DIRS =
21 noinst_DATA =
22
23 DISTCHECK_CONFIGURE_FLAGS = \
24 --with-systemdsystemunitdir=$$dc_install_base/$(systemdsystemunitdir)
25
26 # ------------------------------------------------------------------------------
27
28 bin_SCRIPTS = \
29 src/scripts/ipfire.org \
30 src/scripts/ipfire.org-webapp
31
32 EXTRA_DIST += \
33 src/scripts/ipfire.org.in \
34 src/scripts/ipfire.org-webapp.in
35
36 CLEANFILES += \
37 src/scripts/ipfire.org \
38 src/scripts/ipfire.org-webapp
39
40 configs_DATA = \
41 ipfire.org.conf.sample
42
43 EXTRA_DIST += \
44 ipfire.org.conf.sample.in
45
46 CLEANFILES += \
47 ipfire.org.conf.sample
48
49 backend_PYTHON = \
50 src/backend/__init__.py \
51 src/backend/accounts.py \
52 src/backend/base.py \
53 src/backend/blog.py \
54 src/backend/countries.py \
55 src/backend/database.py \
56 src/backend/decorators.py \
57 src/backend/fireinfo.py \
58 src/backend/geoip.py \
59 src/backend/iuse.py \
60 src/backend/mirrors.py \
61 src/backend/misc.py \
62 src/backend/netboot.py \
63 src/backend/nopaste.py \
64 src/backend/releases.py \
65 src/backend/settings.py \
66 src/backend/talk.py \
67 src/backend/tracker.py \
68 src/backend/util.py \
69 src/backend/zeiterfassung.py
70
71 backenddir = $(pythondir)/ipfire
72
73 # ------------------------------------------------------------------------------
74
75 web_PYTHON = \
76 src/web/__init__.py \
77 src/web/auth.py \
78 src/web/base.py \
79 src/web/blog.py \
80 src/web/boot.py \
81 src/web/download.py \
82 src/web/handlers.py \
83 src/web/handlers_fireinfo.py \
84 src/web/handlers_mirrors.py \
85 src/web/iuse.py \
86 src/web/location.py \
87 src/web/newsletter.py \
88 src/web/nopaste.py \
89 src/web/people.py \
90 src/web/ui_modules.py
91
92 webdir = $(backenddir)/web
93
94 # ------------------------------------------------------------------------------
95
96 # TODO install the base for now and add all other templates later
97
98 templates_DATA = \
99 src/templates/base.html \
100 src/templates/donate.html \
101 src/templates/error.html \
102 src/templates/index.html
103
104 templatesdir = $(datadir)/templates
105
106 templates_auth_DATA = \
107 src/templates/auth/login.html
108
109 templates_authdir = $(templatesdir)/auth
110
111 templates_blog_DATA = \
112 src/templates/blog/author.html \
113 src/templates/blog/base.html \
114 src/templates/blog/compose.html \
115 src/templates/blog/drafts.html \
116 src/templates/blog/feed.xml \
117 src/templates/blog/index.html \
118 src/templates/blog/post.html \
119 src/templates/blog/search-results.html \
120 src/templates/blog/tag.html \
121 src/templates/blog/year.html
122
123 templates_blogdir = $(templatesdir)/blog
124
125 templates_blog_modules_DATA = \
126 src/templates/blog/modules/history-navigation.html \
127 src/templates/blog/modules/list.html \
128 src/templates/blog/modules/post.html \
129 src/templates/blog/modules/posts.html
130
131 templates_blog_modulesdir = $(templates_blogdir)/modules
132
133 templates_download_DATA = \
134 src/templates/download/release.html
135
136 templates_downloaddir = $(templatesdir)/download
137
138 templates_location_DATA = \
139 src/templates/location/lookup.html
140
141 templates_locationdir = $(templatesdir)/location
142
143 templates_modules_DATA = \
144 src/templates/modules/map.html
145
146 templates_modulesdir = $(templatesdir)/modules
147
148 templates_netboot_DATA = \
149 src/templates/netboot/menu.cfg \
150 src/templates/netboot/menu-config.cfg \
151 src/templates/netboot/menu-header.cfg \
152 src/templates/netboot/menu-separator.cfg \
153 src/templates/netboot/premenu.cfg
154
155 templates_netbootdir = $(templatesdir)/netboot
156
157 templates_newsletter_DATA = \
158 src/templates/newsletter/subscribed.html
159
160 templates_newsletterdir = $(templatesdir)/newsletter
161
162 templates_nopaste_DATA = \
163 src/templates/nopaste/create.html \
164 src/templates/nopaste/view.html
165
166 templates_nopastedir = $(templatesdir)/nopaste
167
168 templates_nopaste_modules_DATA = \
169 src/templates/nopaste/modules/code.html
170
171 templates_nopaste_modulesdir = $(templates_nopastedir)/modules
172
173 templates_people_DATA = \
174 src/templates/people/base.html \
175 src/templates/people/conferences.html \
176 src/templates/people/call.html \
177 src/templates/people/calls.html \
178 src/templates/people/index.html \
179 src/templates/people/passwd.html \
180 src/templates/people/search.html \
181 src/templates/people/sip.html \
182 src/templates/people/user.html \
183 src/templates/people/user-edit.html \
184 src/templates/people/users.html
185
186 templates_peopledir = $(templatesdir)/people
187
188 templates_people_modules_DATA = \
189 src/templates/people/modules/accounts-list.html \
190 src/templates/people/modules/cdr.html \
191 src/templates/people/modules/channels.html \
192 src/templates/people/modules/mos.html \
193 src/templates/people/modules/password.html \
194 src/templates/people/modules/password.js \
195 src/templates/people/modules/registrations.html \
196 src/templates/people/modules/sip-status.html
197
198 templates_people_modulesdir = $(templates_peopledir)/modules
199
200 templates_people_ssh_keys_DATA = \
201 src/templates/people/ssh-keys/delete.html \
202 src/templates/people/ssh-keys/error.html \
203 src/templates/people/ssh-keys/error-invalid-key.html \
204 src/templates/people/ssh-keys/index.html \
205 src/templates/people/ssh-keys/upload.html
206
207 templates_people_ssh_keysdir = $(templates_peopledir)/ssh-keys
208
209 templates_static_DATA = \
210 src/templates/static/blocked.html \
211 src/templates/static/chat.html \
212 src/templates/static/features.html \
213 src/templates/static/legal.html \
214 src/templates/static/support.html
215
216 templates_staticdir = $(templatesdir)/static
217
218 # ------------------------------------------------------------------------------
219
220 SCSS_FILES = \
221 src/scss/style.scss \
222 src/scss/_fonts.scss \
223 src/scss/_icons.scss \
224 src/scss/_variables.scss
225
226 EXTRA_DIST += \
227 src/templates/messages/main.scss
228
229 CLEANFILES += \
230 src/templates/messages/main.css
231
232 static_DATA = \
233 src/static/favicon.ico \
234 src/static/robots.txt \
235 src/scss/main.css
236
237 CLEANFILES += \
238 src/scss/main.css
239
240 EXTRA_DIST += \
241 $(SCSS_FILES)
242
243 staticdir = $(datadir)/static
244
245 static_css_DATA = \
246 src/static/css/prettify.css
247
248 static_cssdir = $(staticdir)/css
249
250 static_fonts_DATA = \
251 src/fonts/ofl/mukta/Mukta-Bold.ttf \
252 src/fonts/ofl/mukta/Mukta-ExtraBold.ttf \
253 src/fonts/ofl/mukta/Mukta-ExtraLight.ttf \
254 src/fonts/ofl/mukta/Mukta-Light.ttf \
255 src/fonts/ofl/mukta/Mukta-Medium.ttf \
256 src/fonts/ofl/mukta/Mukta-Regular.ttf \
257 src/fonts/ofl/mukta/Mukta-SemiBold.ttf \
258 \
259 src/font-awesome/web-fonts-with-css/webfonts/fa-brands-400.eot \
260 src/font-awesome/web-fonts-with-css/webfonts/fa-brands-400.svg \
261 src/font-awesome/web-fonts-with-css/webfonts/fa-brands-400.ttf \
262 src/font-awesome/web-fonts-with-css/webfonts/fa-brands-400.woff \
263 src/font-awesome/web-fonts-with-css/webfonts/fa-brands-400.woff2 \
264 src/font-awesome/web-fonts-with-css/webfonts/fa-regular-400.eot \
265 src/font-awesome/web-fonts-with-css/webfonts/fa-regular-400.svg \
266 src/font-awesome/web-fonts-with-css/webfonts/fa-regular-400.ttf \
267 src/font-awesome/web-fonts-with-css/webfonts/fa-regular-400.woff \
268 src/font-awesome/web-fonts-with-css/webfonts/fa-regular-400.woff2 \
269 src/font-awesome/web-fonts-with-css/webfonts/fa-solid-900.eot \
270 src/font-awesome/web-fonts-with-css/webfonts/fa-solid-900.svg \
271 src/font-awesome/web-fonts-with-css/webfonts/fa-solid-900.ttf \
272 src/font-awesome/web-fonts-with-css/webfonts/fa-solid-900.woff \
273 src/font-awesome/web-fonts-with-css/webfonts/fa-solid-900.woff2 \
274 \
275 src/payment-font/fonts/paymentfont-webfont.eot \
276 src/payment-font/fonts/paymentfont-webfont.svg \
277 src/payment-font/fonts/paymentfont-webfont.ttf \
278 src/payment-font/fonts/paymentfont-webfont.woff
279
280 static_fontsdir = $(staticdir)/fonts
281
282 static_images_DATA = \
283 src/static/img/default-avatar.jpg \
284 src/static/img/ipfire-tux.png \
285 src/static/img/iuse-not-found.png \
286 src/static/img/lightningwirelabs-logo.svg
287
288 static_imagesdir = $(staticdir)/img
289
290 static_images_tux_DATA = \
291 src/static/img/tux/ipfire_tux_16x16.png \
292 src/static/img/tux/ipfire_tux_20x20.png \
293 src/static/img/tux/ipfire_tux_32x32.png \
294 src/static/img/tux/ipfire_tux_48x48.png \
295 src/static/img/tux/ipfire_tux_64x64.png \
296 src/static/img/tux/ipfire_tux_128x128.png \
297 src/static/img/tux/ipfire_tux_256x256.png \
298 src/static/img/tux/ipfire_tux_420x420.png \
299 src/static/img/tux/ipfire_tux_512x512.png
300
301 static_images_tuxdir = $(static_imagesdir)/tux
302
303 static_js_DATA = \
304 src/bootstrap/dist/js/bootstrap.min.js \
305 src/bootstrap/dist/js/bootstrap.min.js.map \
306 \
307 src/static/js/jquery-3.3.1.min.js \
308 src/static/js/popper.min.js \
309 src/static/js/prettify.js \
310 \
311 src/static/js/zxcvbn/dist/zxcvbn.js \
312 src/static/js/zxcvbn/dist/zxcvbn.js.map
313
314 static_jsdir = $(staticdir)/js
315
316 static_netboot_DATA = \
317 src/static/netboot/boot.png \
318 src/static/netboot/boot.svg \
319 src/static/netboot/ipxe.kpxe \
320 src/static/netboot/menu.c32 \
321 src/static/netboot/pxelinux.0 \
322 src/static/netboot/vesamenu.c32
323
324 static_netbootdir = $(staticdir)/netboot
325
326 # ------------------------------------------------------------------------------
327
328 dist_cron_DATA = \
329 src/crontab/ipfire.org
330
331 # ------------------------------------------------------------------------------
332
333 if HAVE_SYSTEMD
334 systemdsystemunit_DATA = \
335 src/systemd/ipfire.org-webapp-1.service \
336 src/systemd/ipfire.org-webapp-2.service \
337 src/systemd/ipfire.org-webapp-3.service \
338 src/systemd/ipfire.org-webapp-4.service
339
340 CLEANFILES += \
341 $(systemdsystemunit_DATA)
342
343 INSTALL_DIRS += \
344 $(systemdsystemunitdir)
345 endif
346
347 EXTRA_DIST += \
348 src/systemd/ipfire.org-webapp-1.service.in \
349 src/systemd/ipfire.org-webapp-3.service.in \
350 src/systemd/ipfire.org-webapp-3.service.in \
351 src/systemd/ipfire.org-webapp-4.service.in
352
353 # ------------------------------------------------------------------------------
354
355 substitutions = \
356 '|PACKAGE_NAME=$(PACKAGE_NAME)|' \
357 '|PACKAGE_VERSION=$(PACKAGE_VERSION)|' \
358 '|PYTHON=$(PYTHON)|' \
359 '|configsdir=$(configsdir)|' \
360 '|bindir=$(bindir)|' \
361 '|datadir=$(datadir)|'
362
363 SED_PROCESS = \
364 $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
365 $(SED) $(subst '|,-e 's|@,$(subst =,\@|,$(subst |',|g',$(substitutions)))) \
366 < $< > $@
367
368 %: %.in Makefile
369 $(SED_PROCESS)
370
371 %.css: %.scss Makefile
372 $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
373 $(SASSC) --style compressed $< > $@
374
375 src/scss/main.css: $(SCSS_FILES) Makefile
376 $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
377 $(SASSC) --style compressed $< > $@