]> git.proxmox.com Git - proxmox-widget-toolkit.git/blame - src/Makefile
notification: add gui for sendmail notification endpoints
[proxmox-widget-toolkit.git] / src / Makefile
CommitLineData
ecabd437
TL
1include defines.mk
2
efcb34fa
DC
3ESLINT ?= $(if $(shell command -v pve-eslint), pve-eslint, eslint)
4
6bf5e125 5SUBDIRS= css images proxmox-dark
ecabd437 6
51a2f11c
TL
7# bundle it for now from the libjs-marked debian package to avoid touching our proxies file mapper,
8# we could also just ship a link to the packages file and load from same path as the widget-toolkit
e09af565 9MARKEDJS=/usr/share/javascript/marked/marked.js
51a2f11c 10
ecabd437
TL
11JSSRC= \
12 Utils.js \
5c085daf 13 Schema.js \
ecabd437
TL
14 Toolkit.js \
15 Logo.js \
51a2f11c 16 Parser.js \
ecabd437
TL
17 mixin/CBind.js \
18 data/reader/JsonObject.js \
19 data/ProxmoxProxy.js \
20 data/UpdateStore.js \
21 data/DiffStore.js \
22 data/ObjectStore.js \
23 data/RRDStore.js \
24 data/TimezoneStore.js \
84f70dfa 25 data/model/NotificationConfig.js \
ecabd437 26 data/model/Realm.js \
c0acd784
WB
27 data/model/Certificates.js \
28 data/model/ACME.js \
52a0eae9 29 form/BandwidthSelector.js \
ecabd437
TL
30 form/DisplayEdit.js \
31 form/ExpireDate.js \
32 form/IntegerField.js \
33 form/TextField.js \
34 form/DateTimeField.js \
35 form/Checkbox.js \
36 form/KVComboBox.js \
37 form/LanguageSelector.js \
38 form/ComboGrid.js \
39 form/RRDTypeSelector.js \
40 form/BondModeSelector.js \
41 form/NetworkSelector.js \
42 form/RealmComboBox.js \
9b4b2e74 43 form/PruneKeepField.js \
ecabd437 44 form/RoleSelector.js \
4f0c0764 45 form/DiskSelector.js \
a57a5c77 46 form/MultiDiskSelector.js \
050c1684 47 form/TaskTypeSelector.js \
63be5c59 48 form/ACME.js \
d3812684 49 form/UserSelector.js \
15fddc20 50 form/ThemeSelector.js \
ecabd437 51 button/Button.js \
46317728 52 button/AltText.js \
ecabd437
TL
53 button/HelpButton.js \
54 grid/ObjectGrid.js \
55 grid/PendingObjectGrid.js \
c1594495 56 panel/AuthView.js \
98edb916 57 panel/DiskList.js \
9716d0de 58 panel/EOLNotice.js \
ecabd437 59 panel/InputPanel.js \
9354dc13 60 panel/InfoWidget.js \
ecabd437 61 panel/LogView.js \
14247821 62 panel/NodeInfoRepoStatus.js \
84f70dfa 63 panel/NotificationConfigView.js \
ecabd437 64 panel/JournalView.js \
b99a771b 65 panel/PermissionView.js \
04eb02d9 66 panel/PruneKeepPanel.js \
ecabd437
TL
67 panel/RRDChart.js \
68 panel/GaugeWidget.js \
60fead29 69 panel/Certificates.js \
5df894de 70 panel/ACMEAccount.js \
658bfdff 71 panel/ACMEPlugin.js \
8915422f 72 panel/ACMEDomains.js \
84f70dfa 73 panel/SendmailEditPanel.js \
b87d4733 74 panel/StatusView.js \
ab2538f5 75 panel/TfaView.js \
e9144532 76 panel/NotesView.js \
ecabd437
TL
77 window/Edit.js \
78 window/PasswordEdit.js \
8d86570c 79 window/SafeDestroy.js \
1820e77d 80 window/PackageVersions.js \
ecabd437
TL
81 window/TaskViewer.js \
82 window/LanguageEdit.js \
402991a7 83 window/DiskSmart.js \
bde489e5 84 window/ZFSDetail.js \
60fead29 85 window/Certificates.js \
5df894de 86 window/ACMEAccount.js \
658bfdff 87 window/ACMEPluginEdit.js \
8915422f 88 window/ACMEDomains.js \
84f70dfa 89 window/EndpointEditBase.js \
09195cb6 90 window/FileBrowser.js \
6a504e19 91 window/AuthEditBase.js \
8f30708d 92 window/AuthEditOpenId.js \
aa5cbdbb 93 window/AuthEditLDAP.js \
9e1f1ef6 94 window/TfaWindow.js \
64176447
WB
95 window/AddTfaRecovery.js \
96 window/AddTotp.js \
97 window/AddWebauthn.js \
20b39dd8 98 window/AddYubico.js \
64176447 99 window/TfaEdit.js \
e9144532 100 window/NotesEdit.js \
15fddc20 101 window/ThemeEdit.js \
d6b65a89 102 window/SyncWindow.js \
ecabd437 103 node/APT.js \
24313a9d 104 node/APTRepositories.js \
ecabd437
TL
105 node/NetworkEdit.js \
106 node/NetworkView.js \
107 node/DNSEdit.js \
108 node/HostsView.js \
109 node/DNSView.js \
110 node/Tasks.js \
111 node/ServiceView.js \
112 node/TimeEdit.js \
113 node/TimeView.js
114
89f32167
TL
115all: $(SUBDIRS)
116 set -e && for i in $(SUBDIRS); do $(MAKE) -C $$i; done
ecabd437 117
89f32167 118.lint-incremental: $(JSSRC)
efcb34fa 119 $(ESLINT) $?
2622cc7c
TL
120 touch "$@"
121
ecabd437
TL
122.PHONY: lint
123check: lint
efcb34fa 124 $(ESLINT) --strict api-viewer/APIViewer.js
89f32167 125lint: $(JSSRC)
efcb34fa 126 $(ESLINT) --strict $(JSSRC)
557c4505 127 touch ".lint-incremental"
ecabd437 128
d7fa9ea4
TL
129BUILD_TIME=$(or $(SOURCE_DATE_EPOCH),$(shell date '+%s.%N'))
130BUILD_VERSION=$(or $(DEB_VERSION),$(shell git rev-parse HEAD),unknown version)
89f32167 131proxmoxlib.js: .lint-incremental $(JSSRC)
ecabd437 132 # add the version as comment in the file
0676eb37 133 echo "// v$(BUILD_VERSION)-t$(BUILD_TIME)" > $@.tmp
89f32167 134 cat $(JSSRC) $(MARKEDJS) >> $@.tmp
ecabd437
TL
135 mv $@.tmp $@
136
e09af565
TL
137proxmoxlib.min.js: proxmoxlib.js
138 uglifyjs $< -c -m -o $@.tmp
139 mv $@.tmp $@
140
141install: proxmoxlib.js proxmoxlib.min.js
89f32167 142 install -d -m 755 $(WWWBASEDIR)
e09af565 143 install -m 0644 proxmoxlib.js proxmoxlib.min.js $(WWWBASEDIR)
89f32167 144 set -e && for i in $(SUBDIRS); do $(MAKE) -C $$i $@; done
16f2ad97
TL
145
146.PHONY: clean
147clean:
e09af565 148 rm -f proxmoxlib.js* proxmoxlib.min.js* .lint-incremental