Opennet Firmware
 Alle Dateien Funktionen Variablen Gruppen Seiten
makefile_include_opennet_packages.patch
gehe zur Dokumentation dieser Datei
1 die opennet-Pakete verwenden gemeinsame Makefile-Elemente
2 --- /dev/null
3 +++ b/openwrt/include/opennet.mk
4 @@ -0,0 +1,47 @@
5 +# fuer "VERSION_NUMBER"
6 +include $(INCLUDE_DIR)/version.mk
7 +
8 +# Wir verwenden die Version des Gesamt-Builds
9 +# Wir teilen die VERSION_NUMBER (z.B. "0.5.0-694" oder "0.5.1-unstable-810") an der Stelle des letzten Bindestrichs
10 +PKG_VERSION := $(shell echo "$(VERSION_NUMBER)" | sed 's/-[0-9]\+$$//g')
11 +PKG_RELEASE := $(shell echo "$(VERSION_NUMBER)" | sed 's/^.*-\([0-9]\+\)$$/\1/g')
12 +PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
13 +PKG_BUILD_DEPENDS := $(if $(STAGING_DIR_ROOT),lua/host)
14 +
15 +# "package.mk" muss nach dem Setzen von PKG_VERSION und PKG_RELEASE geladen werden
16 +include $(INCLUDE_DIR)/package.mk
17 +
18 +
19 +PO_CONV = ../../../luci/build/po2lmo
20 +
21 +
22 +define Package/opennet/install/template
23 + $(CP) -a -R "$(PKG_BUILD_DIR)/files/." "$(1)/"
24 + @# Zertifikate hashen, falls noetig (nur fuer on-core relevant; notwendig fuer csr-Upload via https)
25 + [ -d "$(1)/etc/ssl/certs" ] && c_rehash "$(1)/etc/ssl/certs" || true
26 + @# falls es keine ipkg-Dateien gibt, existiert das Quell-Verzeichnis in git nicht
27 + $(CP) -a -R "$(PKG_BUILD_DIR)/ipkg/." "$(1)/CONTROL" || true
28 + $(INSTALL_DIR) "$(1)/usr/lib/lua/luci/i18n"
29 + # leere po-Dateien fuehren zu fehlenden lmo-Dateien (z.B. on-core) - das koennen wir ignorieren
30 + $(CP) "$(PKG_BUILD_DIR)/lmo"/*.lmo "$(1)/usr/lib/lua/luci/i18n/" || true
31 +endef
32 +
33 +# falls Build/Compile nicht definiert wird, dann wird das Makefile aus dem build_dir geloescht
34 +# siehe https://forum.openwrt.org/viewtopic.php?pid=143534#p143534
35 +define Build/Compile
36 +endef
37 +
38 +define Build/Prepare
39 + mkdir -p $(PKG_BUILD_DIR)/lmo; $(TAR) c . \
40 + --exclude=.pc --exclude=.svn --exclude=.git \
41 + --exclude='boa-0*' --exclude='*.o' --exclude='*.so' \
42 + --exclude=dist | \
43 + $(TAR) x -C $(PKG_BUILD_DIR)/
44 + @# po2lmo bauen, falls nicht vorhanden
45 + [ -x "$(PO_CONV)" ] || make -C ../../../luci/libs/web/ host-install
46 + @# "find" liefert leider keine Fehlermeldung, falls "-exec" fehlschlaegt - also loesen wir es manuell aus
47 + [ -x "$(PO_CONV)" ] || { echo >&2 "ERROR: po2lmo does not exist"; exit 1; }
48 + @# TODO: mehrere Sprachen?
49 + find ../../po/de -type f -name "$(PKG_NAME).po" -exec "$(PO_CONV)" '{}' "$(PKG_BUILD_DIR)/lmo/$(PKG_NAME).de.lmo" \;
50 +endef
51 +