2
0
mirror of https://github.com/telegramdesktop/tdesktop synced 2025-09-02 23:45:44 +00:00

Move build to Ubuntu 14.04 and GCC 7.2.

To be able to run on the same distributions as before we need to have
the same GLIBC version dependency as in Ubuntu 12.04, which is 2.15.

For that we need to remove all usages of GLIBC features from 2.16 and above.
Currently there are three methods used, so they're wrapped in a separate
static library, linux_glibc_wraps.

It is a separate library because it must be compiled without '-flto' flag,
otherwise the inline __asm__ is not working and we get unresolved symbols.
This commit is contained in:
John Preston
2017-09-28 12:40:26 +03:00
parent 1cd126d728
commit 21b1ba1f88
16 changed files with 468 additions and 202 deletions

View File

@@ -2119,7 +2119,7 @@ private:
status.eor = QChar::DirON;
dir = QChar::DirAN;
}
// fall through
[[fallthrough]];
case QChar::DirEN:
case QChar::DirL:
eor = current;
@@ -2133,12 +2133,14 @@ private:
else
eor = current;
status.eor = QChar::DirEN;
dir = QChar::DirAN; break;
dir = QChar::DirAN;
break;
case QChar::DirES:
case QChar::DirCS:
if(status.eor == QChar::DirEN || dir == QChar::DirAN) {
eor = current; break;
}
[[fallthrough]];
case QChar::DirBN:
case QChar::DirB:
case QChar::DirS:
@@ -2168,11 +2170,13 @@ private:
eor = current; status.eor = dirCurrent;
}
}
[[fallthrough]];
default:
break;
}
break;
}
[[fallthrough]];
case QChar::DirAN:
hasBidi = true;
dirCurrent = QChar::DirAN;
@@ -2181,7 +2185,8 @@ private:
{
case QChar::DirL:
case QChar::DirAN:
eor = current; status.eor = QChar::DirAN; break;
eor = current; status.eor = QChar::DirAN;
break;
case QChar::DirR:
case QChar::DirAL:
case QChar::DirEN:
@@ -2196,6 +2201,7 @@ private:
if(status.eor == QChar::DirAN) {
eor = current; break;
}
[[fallthrough]];
case QChar::DirES:
case QChar::DirET:
case QChar::DirBN:
@@ -2226,6 +2232,7 @@ private:
eor = current; status.eor = dirCurrent;
}
}
[[fallthrough]];
default:
break;
}
@@ -2297,7 +2304,7 @@ private:
status.last = QChar::DirL;
break;
}
// fall through
[[fallthrough]];
default:
status.last = dirCurrent;
}