Skip to contentSkip to conversation

provide a common machine configuration to developer for customizing specific machine

RFC PATCH In review Bian Naimeng 3 participants 11 messages Jul 29, 2013 – Jul 30, 2013

lore
Share & tools
lore
#0 lore raw

cover provide a common machine configuration to developer for customizing specific machine

The main purposes are following.
- make it possible for developers/distributor to customize their specific machine based common machine configurations such as meta/conf/machine/inc/qemuxx.inc
- make our specific machine compatible with bb file which depends on COMPATIBLE_MACHINE="qemuxx|..."
- easy to developers to merge mainline to their branch which containing specific machine.

Bian Naimeng (6):
qemuarm.conf: provide a common qemuarm machine configuration,
so developer/distributor can customize their specific one.
qemuxmips64.conf: provide a common qemuxmips64 machine configuration,
so developer/distributor can customize their specific one.
qemumips.conf: provide a common qemumips machine configuration,
so developer/distributor can customize their specific one.
qemuppc.conf: provide a common qemuppc machine configuration,
so developer/distributor can customize their specific one.
qemux86-64.conf: provide a common qemux86-64 machine configuration,
so developer/distributor can customize their specific one.
qemux86.conf: provide a common qemux86 machine configuration,
so developer/distributor can customize their specific one.

 meta/conf/machine/include/qemuarm.inc    |   10 ++++++++++
 meta/conf/machine/include/qemumips.inc   |   11 +++++++++++
 meta/conf/machine/include/qemumips64.inc |   11 +++++++++++
 meta/conf/machine/include/qemuppc.inc    |    9 +++++++++
 meta/conf/machine/include/qemux86-64.inc |   24 ++++++++++++++++++++++++
 meta/conf/machine/include/qemux86.inc    |   24 ++++++++++++++++++++++++
 meta/conf/machine/qemuarm.conf           |   10 ++--------
 meta/conf/machine/qemumips.conf          |   12 ++----------
 meta/conf/machine/qemumips64.conf        |   12 ++----------
 meta/conf/machine/qemuppc.conf           |    8 +-------
 meta/conf/machine/qemux86-64.conf        |   23 +----------------------
 meta/conf/machine/qemux86.conf           |   25 ++-----------------------
 12 files changed, 99 insertions(+), 80 deletions(-)
#1 lore raw

RFC PATCH 1/6 qemuarm.conf: provide a common qemuarm machine configuration

qemux86.conf: provide a common qemux86 machine configuration, so developer/distributor can customize their specific one.

Although, we can modify the meta/conf/machine/qemux86.conf to customize our configuration, but it's uncomfortable for developer/distributor maintaining their branch.
After applying this patch, developer can tell poky using their machine configuration by prepending their layer to BBPATH(Of course, the bblayers.conf should be adapted to it).

---
 meta/conf/machine/include/qemux86.inc |   24 ++++++++++++++++++++++++
 meta/conf/machine/qemux86.conf        |   25 ++-----------------------
 2 files changed, 26 insertions(+), 23 deletions(-)
 create mode 100644 meta/conf/machine/include/qemux86.inc
meta/conf/machine/include/qemux86.inc new file +24 -0
new file mode 100644
index 0000000..a5ef314
@@ -0,0 +1,24 @@
+#@DESCRIPTION: Common x86 machine configuration.
+
+PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xorg"
+PREFERRED_PROVIDER_virtual/libgl ?= "mesa"
+PREFERRED_PROVIDER_virtual/libgles1 ?= "mesa"
+PREFERRED_PROVIDER_virtual/libgles2 ?= "mesa"
+
+require conf/machine/include/qemu.inc
+require conf/machine/include/tune-i586.inc
+
+KERNEL_IMAGETYPE = "bzImage"
+
+SERIAL_CONSOLE = "115200 ttyS0"
+
+XSERVER = "xserver-xorg \
+           mesa-driver-swrast \
+           xf86-input-vmmouse \
+           xf86-input-keyboard \
+           xf86-input-evdev \
+           xf86-video-vmware"
+
+MACHINE_FEATURES += "x86"
+
+MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "v86d"
meta/conf/machine/qemux86.conf +2 -23
index 5f107be..fb183eb 100644
@@ -1,26 +1,5 @@
 #@TYPE: Machine
 #@NAME: common_pc
 #@DESCRIPTION: Machine configuration for running a common x86
-
-PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xorg"
-PREFERRED_PROVIDER_virtual/libgl ?= "mesa"
-PREFERRED_PROVIDER_virtual/libgles1 ?= "mesa"
-PREFERRED_PROVIDER_virtual/libgles2 ?= "mesa"
-
-require conf/machine/include/qemu.inc
-require conf/machine/include/tune-i586.inc
-
-KERNEL_IMAGETYPE = "bzImage"
-
-SERIAL_CONSOLE = "115200 ttyS0"
-
-XSERVER = "xserver-xorg \
-           mesa-driver-swrast \
-           xf86-input-vmmouse \
-           xf86-input-keyboard \
-           xf86-input-evdev \
-           xf86-video-vmware"
-
-MACHINE_FEATURES += "x86"
-
-MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "v86d"
+#
+require conf/machine/include/qemux86.inc
Signature · 1 line
1.7.7
#2 lore raw

Re: [RFC][PATCH 1/6]qemuarm.conf: provide a common qemuarm machine configuration

Quoted 9 lines · Bian Naimeng

qemux86.conf: provide a common qemux86 machine configuration, so developer/distributor can customize their specific one.

Although, we can modify the meta/conf/machine/qemux86.conf to customize our configuration, but it's uncomfortable for developer/distributor maintaining their branch.
After applying this patch, developer can tell poky using their machine configuration by prepending their layer to BBPATH(Of course, the bblayers.conf should be adapted to it).

I don't really understand the purpose of this patch. Surely there is nothing to stop you from shipping an overlay qemux86.conf in some other layer today, right? What exactly is the advantage of this extra indirection through an .inc file?

Also, as a side note, your patches 1/6, 2/6 and 6/6 all said "qemuarm.conf" in the subject lines but only the last of them actually contained changes to qemuarm.conf.

Also also, the patches in this form are quite hard to follow. Did you use "git format-patch -M" when creating them?

p.

#3 lore raw

Re: [RFC][PATCH 1/6]qemuarm.conf: provide a common qemuarm machine configuration

Quoted 11 lines · Phil Blundell
Quoted 9 lines · Bian Naimeng

qemux86.conf: provide a common qemux86 machine configuration, so developer/distributor can customize their specific one.

Although, we can modify the meta/conf/machine/qemux86.conf to customize our configuration, but it's uncomfortable for developer/distributor maintaining their branch.
After applying this patch, developer can tell poky using their machine configuration by prepending their layer to BBPATH(Of course, the bblayers.conf should be adapted to it).

Quoted 5 lines

I don't really understand the purpose of this patch. Surely there is nothing to stop you from shipping an overlay qemux86.conf in some other layer today, right? What exactly is the advantage of this extra indirection through an .inc file?

What my purpose is that make it easy to implement the below case.
1. I want inherit all the configuration item of qemux86.conf.
2. I want add some new items to my qemux86.conf.
3. If there're changes to qemux86.conf, i want merge them to my qemux86.conf

Yes, we can implement this case today.
1. Copy the meta/conf/machine/qemux86.conf to my layer.
2. Add new items to my qemux86.conf
3. Rewrite my qemux86.conf to merge community changes.

However, if applying these patches, it becomes easy.
1. add "require conf/machine/include/qemux86.inc" to my qemux86.conf
2. add new items to my qemux86.conf
3. modify qemux86.inc to update qemux86 configration at community, so all community changes will be merged to my qemux86.conf automatically when merging the mainline.

Quoted 3 lines

Also, as a side note, your patches 1/6, 2/6 and 6/6 all said "qemuarm.conf" in the subject lines but only the last of them actually contained changes to qemuarm.conf.

Sorry for my mistake. The correct one is following. 1/6: qemux86.conf.
2/6: qemux86-64.conf

Quoted 3 lines

Also also, the patches in this form are quite hard to follow. Did you use "git format-patch -M" when creating them?

Yes, I used "git format-patch -M" to create them. I will check them by linux/scripts/checkpatch.pl next time.

Thanks
bian

Quoted 4 lines

p.

#4 lore raw

Re: [RFC][PATCH 1/6]qemuarm.conf: provide a common qemuarm machine configuration

Quoted 29 lines · Bian Naimeng
Quoted 11 lines · Phil Blundell
Quoted 9 lines · Bian Naimeng

qemux86.conf: provide a common qemux86 machine configuration, so developer/distributor can customize their specific one.

Although, we can modify the meta/conf/machine/qemux86.conf to customize our configuration, but it's uncomfortable for developer/distributor maintaining their branch.
After applying this patch, developer can tell poky using their machine configuration by prepending their layer to BBPATH(Of course, the bblayers.conf should be adapted to it).

Quoted 5 lines

I don't really understand the purpose of this patch. Surely there is nothing to stop you from shipping an overlay qemux86.conf in some other layer today, right? What exactly is the advantage of this extra indirection through an .inc file?

What my purpose is that make it easy to implement the below case.
1. I want inherit all the configuration item of qemux86.conf.
2. I want add some new items to my qemux86.conf.
3. If there're changes to qemux86.conf, i want merge them to my qemux86.conf

Yes, we can implement this case today.
1. Copy the meta/conf/machine/qemux86.conf to my layer.
2. Add new items to my qemux86.conf
3. Rewrite my qemux86.conf to merge community changes.

Quoted 6 lines

However, if applying these patches, it becomes easy.
1. add "require conf/machine/include/qemux86.inc" to my qemux86.conf
2. add new items to my qemux86.conf
3. modify qemux86.inc to update qemux86 configration at community, so all community changes will be merged to my qemux86.conf automatically when merging the mainline.

Without patches
1. add require ${COREBASE}/meta/conf/machine/qemux86.conf at the beginning of your qemux86.conf copy
2. add new items

Quoted 28 lines
Quoted 4 lines

Also, as a side note, your patches 1/6, 2/6 and 6/6 all said "qemuarm.conf" in the subject lines but only the last of them actually contained changes to qemuarm.conf.

Sorry for my mistake. The correct one is following. 1/6: qemux86.conf.
2/6: qemux86-64.conf

Quoted 3 lines

Also also, the patches in this form are quite hard to follow. Did you use "git format-patch -M" when creating them?

Yes, I used "git format-patch -M" to create them. I will check them by linux/scripts/checkpatch.pl next time.

Thanks
bian

Quoted 4 lines

p.

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Signature · 1 line
Martin 'JaMa' Jansa     jabber: [email protected]
#5 lore raw

Re: [RFC][PATCH 1/6]qemuarm.conf: provide a common qemuarm machine configuration

Quoted 37 lines · Martin Jansa
Quoted 29 lines · Bian Naimeng
Quoted 11 lines · Phil Blundell
Quoted 9 lines · Bian Naimeng

qemux86.conf: provide a common qemux86 machine configuration, so developer/distributor can customize their specific one.

Although, we can modify the meta/conf/machine/qemux86.conf to customize our configuration, but it's uncomfortable for developer/distributor maintaining their branch.
After applying this patch, developer can tell poky using their machine configuration by prepending their layer to BBPATH(Of course, the bblayers.conf should be adapted to it).

Quoted 5 lines

I don't really understand the purpose of this patch. Surely there is nothing to stop you from shipping an overlay qemux86.conf in some other layer today, right? What exactly is the advantage of this extra indirection through an .inc file?

What my purpose is that make it easy to implement the below case.
1. I want inherit all the configuration item of qemux86.conf.
2. I want add some new items to my qemux86.conf.
3. If there're changes to qemux86.conf, i want merge them to my qemux86.conf

Yes, we can implement this case today.
1. Copy the meta/conf/machine/qemux86.conf to my layer.
2. Add new items to my qemux86.conf
3. Rewrite my qemux86.conf to merge community changes.

Quoted 6 lines

However, if applying these patches, it becomes easy.
1. add "require conf/machine/include/qemux86.inc" to my qemux86.conf
2. add new items to my qemux86.conf
3. modify qemux86.inc to update qemux86 configration at community, so all community changes will be merged to my qemux86.conf automatically when merging the mainline.

Quoted 5 lines

Without patches
1. add require ${COREBASE}/meta/conf/machine/qemux86.conf at the beginning of your qemux86.conf copy
2. add new items

You are right. ^_^

Thanks
Bian

Quoted 28 lines
Quoted 28 lines
Quoted 4 lines

Also, as a side note, your patches 1/6, 2/6 and 6/6 all said "qemuarm.conf" in the subject lines but only the last of them actually contained changes to qemuarm.conf.

Sorry for my mistake. The correct one is following. 1/6: qemux86.conf.
2/6: qemux86-64.conf

Quoted 3 lines

Also also, the patches in this form are quite hard to follow. Did you use "git format-patch -M" when creating them?

Yes, I used "git format-patch -M" to create them. I will check them by linux/scripts/checkpatch.pl next time.

Thanks
bian

Quoted 4 lines

p.

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

#6 lore raw

RFC PATCH 2/6 qemuarm.conf: provide a common qemux86-64 machine configuration

In reply to Bian Naimeng

qemux86-64.conf: provide a common qemux86-64 machine configuration, so developer/distributor can customize their specific one.

Although, we can modify the meta/conf/machine/qemux86-64.conf to customize our configuration, but it's uncomfortable for developer/distributor maintaining their branch.
After applying this patch, developer can tell poky using their machine configuration by prepending their layer to BBPATH(Of course,
the bblayers.conf should be adapted to it).

---
 meta/conf/machine/include/qemux86-64.inc |   24 ++++++++++++++++++++++++
 meta/conf/machine/qemux86-64.conf        |   23 +----------------------
 2 files changed, 25 insertions(+), 22 deletions(-)
 create mode 100644 meta/conf/machine/include/qemux86-64.inc
meta/conf/machine/include/qemux86-64.inc new file +24 -0
new file mode 100644
index 0000000..25d9884
@@ -0,0 +1,24 @@
+#@DESCRIPTION: Common x86-64 machine configuration.
+
+PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xorg"
+PREFERRED_PROVIDER_virtual/libgl ?= "mesa"
+PREFERRED_PROVIDER_virtual/libgles1 ?= "mesa"
+PREFERRED_PROVIDER_virtual/libgles2 ?= "mesa"
+
+require conf/machine/include/qemu.inc
+require conf/machine/include/tune-x86_64.inc
+
+KERNEL_IMAGETYPE = "bzImage"
+
+SERIAL_CONSOLE = "115200 ttyS0"
+
+XSERVER = "xserver-xorg \
+           mesa-driver-swrast \
+           xf86-input-vmmouse \
+           xf86-input-keyboard \
+           xf86-input-evdev \
+           xf86-video-vmware"
+
+MACHINE_FEATURES += "x86"
+
+MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "v86d"
meta/conf/machine/qemux86-64.conf +1 -22
index ff666af..1ba5e96 100644
@@ -2,25 +2,4 @@
 #@NAME: common_pc
 #@DESCRIPTION: Machine configuration for running a common x86
 
-PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xorg"
-PREFERRED_PROVIDER_virtual/libgl ?= "mesa"
-PREFERRED_PROVIDER_virtual/libgles1 ?= "mesa"
-PREFERRED_PROVIDER_virtual/libgles2 ?= "mesa"
-
-require conf/machine/include/qemu.inc
-require conf/machine/include/tune-x86_64.inc
-
-KERNEL_IMAGETYPE = "bzImage"
-
-SERIAL_CONSOLE = "115200 ttyS0"
-
-XSERVER = "xserver-xorg \
-           mesa-driver-swrast \
-           xf86-input-vmmouse \
-           xf86-input-keyboard \
-           xf86-input-evdev \
-           xf86-video-vmware"
-
-MACHINE_FEATURES += "x86"
-
-MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "v86d"
+require conf/machine/include/qemux86-64.inc
Signature · 1 line
1.7.7
#7 lore raw

RFC PATCH 3/6 qemuppc.conf: provide a common qemuppc machine configuration

In reply to Bian Naimeng

qemuppc.conf: provide a common qemuppc machine configuration, so developer/distributor can customize their specific one.

Although, we can modify the meta/conf/machine/qemuppc.conf to customize our configuration, but it's uncomfortable for developer/distributor maintaining their branch.
After applying this patch, developer can tell poky using their machine configuration by prepending their layer to BBPATH(Of course, the bblayers.conf should be adapted to it).

---
 meta/conf/machine/include/qemuppc.inc |    9 +++++++++
 meta/conf/machine/qemuppc.conf        |    8 +-------
 2 files changed, 10 insertions(+), 7 deletions(-)
 create mode 100644 meta/conf/machine/include/qemuppc.inc
meta/conf/machine/include/qemuppc.inc new file +9 -0
new file mode 100644
index 0000000..4e6e16e
@@ -0,0 +1,9 @@
+#@DESCRIPTION: Common machine configuration for running an PPC system under qemu emulation
+
+require conf/machine/include/qemu.inc
+require conf/machine/include/tune-ppc603e.inc
+
+KERNEL_IMAGETYPE = "vmlinux"
+
+SERIAL_CONSOLE = "115200 ttyS0"
+
meta/conf/machine/qemuppc.conf +1 -7
index 48eecb7..0752aa7 100644
@@ -2,10 +2,4 @@
 #@NAME: qemu PPC Emulator setup
 #@DESCRIPTION: Machine configuration for running an PPC system under qemu emulation
 
-require conf/machine/include/qemu.inc
-require conf/machine/include/tune-ppc603e.inc
-
-KERNEL_IMAGETYPE = "vmlinux"
-
-SERIAL_CONSOLE = "115200 ttyS0"
-
+require conf/machine/include/qemuppc.inc
Signature · 1 line
1.7.7
#8 lore raw

RFC PATCH 4/6 qemumips.conf: provide a common qemumips machine configuration

In reply to Bian Naimeng

qemumips.conf: provide a common qemumips machine configuration, so developer/distributor can customize their specific one.

Although, we can modify the meta/conf/machine/qemumips.conf to customize our configuration, but it's uncomfortable for developer/distributor maintaining their branch.
After applying this patch, developer can tell poky using their machine configuration by prepending their layer to BBPATH(Of course,
the bblayers.conf should be adapted to it).

---
 meta/conf/machine/include/qemumips.inc |   11 +++++++++++
 meta/conf/machine/qemumips.conf        |   12 ++----------
 2 files changed, 13 insertions(+), 10 deletions(-)
 create mode 100644 meta/conf/machine/include/qemumips.inc
meta/conf/machine/include/qemumips.inc new file +11 -0
new file mode 100644
index 0000000..9b884a5
@@ -0,0 +1,11 @@
+#@DESCRIPTION: Common machine configuration for running an MIPS system under qemu emulation
+
+require conf/machine/include/qemu.inc
+require conf/machine/include/tune-mips32.inc
+
+KERNEL_IMAGETYPE = "vmlinux"
+KERNEL_ALT_IMAGETYPE = "vmlinux.bin"
+
+SERIAL_CONSOLE = "115200 ttyS0"
+
+MACHINE_EXTRA_RRECOMMENDS = " kernel-modules"
meta/conf/machine/qemumips.conf +2 -10
index ce1c419..b874f7b 100644
@@ -1,13 +1,5 @@
 #@TYPE: Machine
 #@NAME: mti_malta32_be MIPS
-#@DESCRIPTION: mti_malta32_be
+#@DESCRIPTION: Machine configuration for running an PPC system under qemu emulation
 
-require conf/machine/include/qemu.inc
-require conf/machine/include/tune-mips32.inc
-
-KERNEL_IMAGETYPE = "vmlinux"
-KERNEL_ALT_IMAGETYPE = "vmlinux.bin"
-
-SERIAL_CONSOLE = "115200 ttyS0"
-
-MACHINE_EXTRA_RRECOMMENDS = " kernel-modules"
+require conf/machine/include/qemumips.inc
Signature · 1 line
1.7.7
#9 lore raw

RFC PATCH 5/6 qemumips64.conf: provide a common qemumips64 machine configuration

In reply to Bian Naimeng

qemuxmips64.conf: provide a common qemumips64 machine configuration, so developer/distributor can customize their specific one.

Although, we can modify the meta/conf/machine/qemuxmips64.conf to customize our configuration, but it's uncomfortable for developer/distributor maintaining their branch.
After applying this patch, developer can tell poky using their machine configuration by prepending their layer to BBPATH(Of course,
the bblayers.conf should be adapted to it).

---
 meta/conf/machine/include/qemumips64.inc |   11 +++++++++++
 meta/conf/machine/qemumips64.conf        |   12 ++----------
 2 files changed, 13 insertions(+), 10 deletions(-)
 create mode 100644 meta/conf/machine/include/qemumips64.inc
meta/conf/machine/include/qemumips64.inc new file +11 -0
new file mode 100644
index 0000000..7ba2f94
@@ -0,0 +1,11 @@
+#@DESCRIPTION: Common machine configuration for running an MIPS64 system under qemu emulation
+
+require conf/machine/include/qemu.inc
+require conf/machine/include/tune-mips64.inc
+
+KERNEL_IMAGETYPE = "vmlinux"
+KERNEL_ALT_IMAGETYPE = "vmlinux.bin"
+
+SERIAL_CONSOLE = "115200 ttyS0"
+
+MACHINE_EXTRA_RRECOMMENDS = " kernel-modules"
meta/conf/machine/qemumips64.conf +2 -10
index b2c7998..1f2ee94 100644
@@ -1,13 +1,5 @@
 #@TYPE: Machine
 #@NAME: mti-malta64-be MIPS64
-#@DESCRIPTION: mti-malta64-be
+#@DESCRIPTION: Machine configuration for running an MIPS64 system under qemu emulation
 
-require conf/machine/include/qemu.inc
-require conf/machine/include/tune-mips64.inc
-
-KERNEL_IMAGETYPE = "vmlinux"
-KERNEL_ALT_IMAGETYPE = "vmlinux.bin"
-
-SERIAL_CONSOLE = "115200 ttyS0"
-
-MACHINE_EXTRA_RRECOMMENDS = " kernel-modules"
+require conf/machine/include/qemumips64.inc
Signature · 1 line
1.7.7
#10 lore raw

RFC PATCH 6/6 qemuarm.conf: provide a common qemuarm machine configuration

In reply to Bian Naimeng

qemuarm.conf: provide a common qemuarm machine configuration, so developer/distributor can customize their specific one.

Although, we can modify the meta/conf/machine/qemuarm.conf to customize our configuration,but it's uncomfortable for developer/distributor maintaining their branch.
After applying this patch, developer can tell poky using their machine configuration by prepending their layer to BBPATH(Of course, the bblayers.conf should be adapted to it).

---
 meta/conf/machine/include/qemuarm.inc |   10 ++++++++++
 meta/conf/machine/qemuarm.conf        |   10 ++--------
 2 files changed, 12 insertions(+), 8 deletions(-)
 create mode 100644 meta/conf/machine/include/qemuarm.inc
meta/conf/machine/include/qemuarm.inc new file +10 -0
new file mode 100644
index 0000000..366a52a
@@ -0,0 +1,10 @@
+#@DESCRIPTION: Common machine configuration for versatile 926ejs.
+
+require conf/machine/include/qemu.inc
+require conf/machine/include/tune-arm926ejs.inc
+#require conf/machine/include/tune-arm1136jf-s.inc
+
+KERNEL_IMAGETYPE = "zImage"
+
+SERIAL_CONSOLE = "115200 ttyAMA0"
+
meta/conf/machine/qemuarm.conf +2 -8
index d07084b..bc6287a 100644
@@ -1,12 +1,6 @@
 #@TYPE: Machine
 #@NAME: arm_versatile_926ejs
-#@DESCRIPTION: arm_versatile_926ejs
+#@DESCRIPTION: Machine configuration for versatile 926ejs.
 
-require conf/machine/include/qemu.inc
-require conf/machine/include/tune-arm926ejs.inc
-#require conf/machine/include/tune-arm1136jf-s.inc
-
-KERNEL_IMAGETYPE = "zImage"
-
-SERIAL_CONSOLE = "115200 ttyAMA0"
+require conf/machine/include/qemuarm.inc
 
Signature · 1 line
1.7.7