build: Swap symbol and alias arguments order in macros creating aliases The current order is rather confusing, pass the real symbol first and the alias we want to create next.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213
diff --git a/src/local-link.h b/src/local-link.h
index a05d5ed..d6bd77f 100644
--- a/src/local-link.h
+++ b/src/local-link.h
@@ -38,47 +38,47 @@
#endif
#if defined(__APPLE__)
-#define libbsd_strong_alias(alias, symbol) \
+#define libbsd_strong_alias(symbol, alias) \
__asm__(".globl _" #alias); \
__asm__(".set _" #alias ", _" #symbol); \
extern __typeof(symbol) alias
#elif !defined(_MSC_VER)
-#define libbsd_strong_alias(alias, symbol) \
+#define libbsd_strong_alias(symbol, alias) \
extern __typeof__(symbol) alias __attribute__((__alias__(#symbol)))
#endif
#ifdef __ELF__
# if __has_attribute(symver)
/* The symver attribute is supported since gcc 10.x. */
-#define libbsd_symver_default(alias, symbol, version) \
+#define libbsd_symver_default(symbol, alias, version) \
extern __typeof__(symbol) symbol \
__attribute__((__symver__(#alias "@@" #version)))
-#define libbsd_symver_variant(alias, symbol, version) \
+#define libbsd_symver_variant(symbol, alias, version) \
extern __typeof__(symbol) symbol \
__attribute__((__symver__(#alias "@" #version)))
-#define libbsd_symver_weak(alias, symbol, version) \
+#define libbsd_symver_weak(symbol, alias, version) \
extern __typeof__(symbol) symbol \
__attribute__((__symver__(#alias "@" #version), __weak__))
# else
-#define libbsd_symver_default(alias, symbol, version) \
+#define libbsd_symver_default(symbol, alias, version) \
__asm__(".symver " #symbol "," #alias "@@" #version)
-#define libbsd_symver_variant(alias, symbol, version) \
+#define libbsd_symver_variant(symbol, alias, version) \
__asm__(".symver " #symbol "," #alias "@" #version)
-#define libbsd_symver_weak(alias, symbol, version) \
- libbsd_symver_variant(alias, symbol, version); \
+#define libbsd_symver_weak(symbol, alias, version) \
+ libbsd_symver_variant(symbol, alias, version); \
extern __typeof__(symbol) alias \
__attribute__((__weak__))
# endif
#else
-#define libbsd_symver_default(alias, symbol, version) \
- libbsd_strong_alias(alias, symbol)
+#define libbsd_symver_default(symbol, alias, version) \
+ libbsd_strong_alias(symbol, alias)
-#define libbsd_symver_variant(alias, symbol, version)
+#define libbsd_symver_variant(symbol, alias, version)
-#define libbsd_symver_weak(alias, symbol, version)
+#define libbsd_symver_weak(symbol, alias, version)
#endif
#endif
diff --git a/src/md5.c b/src/md5.c
index ef4df33..289cba4 100644
--- a/src/md5.c
+++ b/src/md5.c
@@ -37,7 +37,7 @@ libbsd_MD5Init(MD5_CTX *context)
libbsd_link_warning(MD5Init,
"The MD5Init() function in libbsd is a deprecated wrapper, "
"use libmd instead.");
-libbsd_symver_weak(MD5Init, libbsd_MD5Init, LIBBSD_0.0);
+libbsd_symver_weak(libbsd_MD5Init, MD5Init, LIBBSD_0.0);
void
libbsd_MD5Update(MD5_CTX *context, const uint8_t *data, size_t len)
@@ -47,7 +47,7 @@ libbsd_MD5Update(MD5_CTX *context, const uint8_t *data, size_t len)
libbsd_link_warning(MD5Update,
"The MD5Update() function in libbsd is a deprecated wrapper, "
"use libmd instead.");
-libbsd_symver_weak(MD5Update, libbsd_MD5Update, LIBBSD_0.0);
+libbsd_symver_weak(libbsd_MD5Update, MD5Update, LIBBSD_0.0);
void
libbsd_MD5Pad(MD5_CTX *context)
@@ -57,7 +57,7 @@ libbsd_MD5Pad(MD5_CTX *context)
libbsd_link_warning(MD5Pad,
"The MD5Pad() function in libbsd is a deprecated wrapper, "
"use libmd instead.");
-libbsd_symver_weak(MD5Pad, libbsd_MD5Pad, LIBBSD_0.0);
+libbsd_symver_weak(libbsd_MD5Pad, MD5Pad, LIBBSD_0.0);
void
libbsd_MD5Final(uint8_t digest[MD5_DIGEST_LENGTH], MD5_CTX *context)
@@ -67,7 +67,7 @@ libbsd_MD5Final(uint8_t digest[MD5_DIGEST_LENGTH], MD5_CTX *context)
libbsd_link_warning(MD5Final,
"The MD5Final() function in libbsd is a deprecated wrapper, "
"use libmd instead.");
-libbsd_symver_weak(MD5Final, libbsd_MD5Final, LIBBSD_0.0);
+libbsd_symver_weak(libbsd_MD5Final, MD5Final, LIBBSD_0.0);
void
libbsd_MD5Transform(uint32_t state[4], const uint8_t block[MD5_BLOCK_LENGTH])
@@ -77,7 +77,7 @@ libbsd_MD5Transform(uint32_t state[4], const uint8_t block[MD5_BLOCK_LENGTH])
libbsd_link_warning(MD5Transform,
"The MD5Transform() function in libbsd is a deprecated wrapper, "
"use libmd instead.");
-libbsd_symver_weak(MD5Transform, libbsd_MD5Transform, LIBBSD_0.0);
+libbsd_symver_weak(libbsd_MD5Transform, MD5Transform, LIBBSD_0.0);
char *
libbsd_MD5End(MD5_CTX *context, char *buf)
@@ -87,7 +87,7 @@ libbsd_MD5End(MD5_CTX *context, char *buf)
libbsd_link_warning(MD5End,
"The MD5End() function in libbsd is a deprecated wrapper, "
"use libmd instead.");
-libbsd_symver_weak(MD5End, libbsd_MD5End, LIBBSD_0.0);
+libbsd_symver_weak(libbsd_MD5End, MD5End, LIBBSD_0.0);
char *
libbsd_MD5File(const char *filename, char *buf)
@@ -97,7 +97,7 @@ libbsd_MD5File(const char *filename, char *buf)
libbsd_link_warning(MD5File,
"The MD5File() function in libbsd is a deprecated wrapper, "
"use libmd instead.");
-libbsd_symver_weak(MD5File, libbsd_MD5File, LIBBSD_0.0);
+libbsd_symver_weak(libbsd_MD5File, MD5File, LIBBSD_0.0);
char *
libbsd_MD5FileChunk(const char *filename, char *buf, off_t offset, off_t length)
@@ -107,7 +107,7 @@ libbsd_MD5FileChunk(const char *filename, char *buf, off_t offset, off_t length)
libbsd_link_warning(MD5FileChunk,
"The MD5FileChunk() function in libbsd is a deprecated wrapper, "
"use libmd instead.");
-libbsd_symver_weak(MD5FileChunk, libbsd_MD5FileChunk, LIBBSD_0.0);
+libbsd_symver_weak(libbsd_MD5FileChunk, MD5FileChunk, LIBBSD_0.0);
char *
libbsd_MD5Data(const uint8_t *data, size_t len, char *buf)
@@ -117,4 +117,4 @@ libbsd_MD5Data(const uint8_t *data, size_t len, char *buf)
libbsd_link_warning(MD5Data,
"The MD5Data() function in libbsd is a deprecated wrapper, "
"use libmd instead.");
-libbsd_symver_weak(MD5Data, libbsd_MD5Data, LIBBSD_0.0);
+libbsd_symver_weak(libbsd_MD5Data, MD5Data, LIBBSD_0.0);
diff --git a/src/setproctitle.c b/src/setproctitle.c
index d77d67f..06928e6 100644
--- a/src/setproctitle.c
+++ b/src/setproctitle.c
@@ -289,17 +289,17 @@ setproctitle_impl(const char *fmt, ...)
*++nul = '\0';
}
}
-libbsd_symver_default(setproctitle, setproctitle_impl, LIBBSD_0.5);
+libbsd_symver_default(setproctitle_impl, setproctitle, LIBBSD_0.5);
/* The original function introduced in 0.2 was a stub, it only got implemented
* in 0.5, make the implementation available in the old version as an alias
* for code linking against that version, and change the default to use the
* new version, so that new code depends on the implemented version. */
#if defined(libbsd_strong_alias)
-libbsd_strong_alias(setproctitle_stub, setproctitle_impl);
+libbsd_strong_alias(setproctitle_impl, setproctitle_stub);
#else
void
setproctitle_stub(const char *fmt, ...)
__attribute__((__alias__("setproctitle_impl")));
#endif
-libbsd_symver_variant(setproctitle, setproctitle_stub, LIBBSD_0.2);
+libbsd_symver_variant(setproctitle_stub, setproctitle, LIBBSD_0.2);
diff --git a/src/unvis.c b/src/unvis.c
index 9c29f9e..378cee6 100644
--- a/src/unvis.c
+++ b/src/unvis.c
@@ -570,7 +570,7 @@ strnunvis_openbsd(char *dst, const char *src, size_t dlen)
{
return strnunvisx(dst, dlen, src, 0);
}
-libbsd_symver_default(strnunvis, strnunvis_openbsd, LIBBSD_0.2);
+libbsd_symver_default(strnunvis_openbsd, strnunvis, LIBBSD_0.2);
int
strnunvis_netbsd(char *, size_t, const char *);
@@ -579,4 +579,4 @@ strnunvis_netbsd(char *dst, size_t dlen, const char *src)
{
return strnunvisx(dst, dlen, src, 0);
}
-libbsd_symver_variant(strnunvis, strnunvis_netbsd, LIBBSD_0.9.1);
+libbsd_symver_variant(strnunvis_netbsd, strnunvis, LIBBSD_0.9.1);
diff --git a/src/vis.c b/src/vis.c
index 1a18a57..0dafa62 100644
--- a/src/vis.c
+++ b/src/vis.c
@@ -739,7 +739,7 @@ strnvis_openbsd(char *mbdst, const char *mbsrc, size_t dlen, int flags)
{
return istrsenvisxl(mbdst, &dlen, mbsrc, flags, "", NULL);
}
-libbsd_symver_default(strnvis, strnvis_openbsd, LIBBSD_0.2);
+libbsd_symver_default(strnvis_openbsd, strnvis, LIBBSD_0.2);
int
strnvis_netbsd(char *, size_t, const char *, int);
@@ -748,7 +748,7 @@ strnvis_netbsd(char *mbdst, size_t dlen, const char *mbsrc, int flags)
{
return istrsenvisxl(mbdst, &dlen, mbsrc, flags, "", NULL);
}
-libbsd_symver_variant(strnvis, strnvis_netbsd, LIBBSD_0.9.1);
+libbsd_symver_variant(strnvis_netbsd, strnvis, LIBBSD_0.9.1);
int
stravis(char **mbdstp, const char *mbsrc, int flags)