Skip to contentSkip to conversation

package/nbd: fix static builds

PATCH New Yann E. MORIN 2 participants 4 messages Aug 13, 2015 – Aug 18, 2015

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 package/nbd: fix static builds

Fixes:

    http://autobuild.buildroot.org/results/aa8/aa8a1ac35a93e1c8b9fddbc2b5d66ecaa921f31e/ (arm)
    http://autobuild.buildroot.org/results/e5b/e5bd05623dd6c57bb0338592ecd21a5ba0cbe95a/ (arc)
    http://autobuild.buildroot.org/results/e0f/e0fd23eec2dd31bece122d84515b2b7cb14594b8/ (ppc)
    http://autobuild.buildroot.org/results/3a2/3a2d4124f78d4e504e8e961fabe038e570923408/ (mips)
    ...
---
 package/nbd/0001-avoid-name-clashing.patch | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)
 create mode 100644 package/nbd/0001-avoid-name-clashing.patch
package/nbd/0001-avoid-name-clashing.patch new file +28 -0
new file mode 100644
index 0000000..b3ea9c9
@@ -0,0 +1,28 @@
+rename err() function to avoid clashing with err() form C library
+
+err() is a function available in the C library, so when static linking,
+there is a clash at link timebecause the function is provided both by
+nbd and the C library:
+    http://autobuild.buildroot.org/results/aa8/aa8a1ac35a93e1c8b9fddbc2b5d66ecaa921f31e/build-end.log
+
+Fix that by renaming err() to nbd_err() and providing a small maco
+wrapper to avoid touching the many call sites.
+
+Signed-off-by: "Yann E. MORIN" <[email protected]>
+
+---
+Upstream status: hack, not submitted.
+
+diff -durN nbd-3.11.orig/cliserv.h nbd-3.11/cliserv.h
+--- nbd-3.11.orig/cliserv.h	2015-05-25 12:27:56.000000000 +0200
++++ nbd-3.11/cliserv.h	2015-08-13 19:28:21.609467505 +0200
+@@ -75,7 +75,8 @@
+ void setmysockopt(int sock);
+ void err_nonfatal(const char *s);
+ 
+-void err(const char *s) G_GNUC_NORETURN;
++void nbd_err(const char *s) G_GNUC_NORETURN;
++#define err(S) nbd_err(S)
+ 
+ void logging(const char* name);
+ 
Signature · 1 line
1.9.1
#1 lore raw

PATCH 1/1 package/nbd: fix static builds

Dear Yann E. MORIN,

Quoted 23 lines · Yann E. MORIN

Fixes:

    http://autobuild.buildroot.org/results/aa8/aa8a1ac35a93e1c8b9fddbc2b5d66ecaa921f31e/ (arm)
    http://autobuild.buildroot.org/results/e5b/e5bd05623dd6c57bb0338592ecd21a5ba0cbe95a/ (arc)
    http://autobuild.buildroot.org/results/e0f/e0fd23eec2dd31bece122d84515b2b7cb14594b8/ (ppc)
    http://autobuild.buildroot.org/results/3a2/3a2d4124f78d4e504e8e961fabe038e570923408/ (mips)
    ...
---
 package/nbd/0001-avoid-name-clashing.patch | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)
 create mode 100644 package/nbd/0001-avoid-name-clashing.patch
package/nbd/0001-avoid-name-clashing.patch new file +4 -0
new file mode 100644
index 0000000..b3ea9c9
@@ -0,0 +1,28 @@
+rename err() function to avoid clashing with err() form C library
+
+err() is a function available in the C library, so when static linking,
+there is a clash at link timebecause the function is provided both by

package/nbd/0001-avoid-name-clashing.patch line 14

Quoted 10 lines
package/nbd/0001-avoid-name-clashing.patch new file +10 -0
+nbd and the C library:
+    http://autobuild.buildroot.org/results/aa8/aa8a1ac35a93e1c8b9fddbc2b5d66ecaa921f31e/build-end.log
+
+Fix that by renaming err() to nbd_err() and providing a small maco
+wrapper to avoid touching the many call sites.
+
+Signed-off-by: "Yann E. MORIN" <[email protected]>
+
+---
+Upstream status: hack, not submitted.

Please submit the patch upstream anyway, so that upstream is aware of the problem, and hopefully implements a proper solution.

I've applied your patch to master, thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#2 lore raw

PATCH 1/1 package/nbd: fix static builds

Thomas, All,

On 2015-08-18 11:18 +0200, Thomas Petazzoni spake thusly:

Quoted 10 lines · Yann E. MORIN
Quoted 9 lines
package/nbd/0001-avoid-name-clashing.patch new file +9 -0
+rename err() function to avoid clashing with err() form C library
+
+err() is a function available in the C library, so when static linking,
+there is a clash at link timebecause the function is provided both by
+nbd and the C library:
+    http://autobuild.buildroot.org/results/aa8/aa8a1ac35a93e1c8b9fddbc2b5d66ecaa921f31e/build-end.log
+
+Fix that by renaming err() to nbd_err() and providing a small maco
+wrapper to avoid touching the many call sites.
Quoted 8 lines

package/nbd/0001-avoid-name-clashing.patch line 14

Quoted 5 lines
package/nbd/0001-avoid-name-clashing.patch new file +5 -0
+
+Signed-off-by: "Yann E. MORIN" <[email protected]>
+
+---
+Upstream status: hack, not submitted.

Please submit the patch upstream anyway, so that upstream is aware of the problem, and hopefully implements a proper solution.

I'm doing a proper patch for upstream, that does the rename globally, and that's what I'm gonna submit.

Regards,
Yann E. MORIN.

Signature · 6 lines
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'
#3 lore raw

PATCH 1/1 package/nbd: fix static builds

Dear Yann E. MORIN,

Quoted 7 lines · Yann E. MORIN
Quoted 4 lines
Quoted 1 line

+Upstream status: hack, not submitted.

Please submit the patch upstream anyway, so that upstream is aware of the problem, and hopefully implements a proper solution.

I'm doing a proper patch for upstream, that does the rename globally, and that's what I'm gonna submit.

Perfect, thanks.

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com