- Oct 19, 2017
-
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
- Oct 17, 2017
-
-
Simon McVittie authored
Debugging is a lot easier when you can copy source code between the two worlds. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
- Oct 12, 2017
-
-
Simon McVittie authored
This means we don't have to hack the container to have a /libc, making the container preparation step much simpler. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
This is what Flatpak does. It means those directories remain read/write, so we can create new top-level items in them. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
The type-safety isn't particularly important, but the types make them more self-documenting. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
The base address is a perfectly valid address, which we could dereference if we wanted to, so it should be a pointer. The start of the PT_DYNAMIC program header isn't an address (it's relative to base) so make it a mere integer. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Now that we do this in two passes, if we haven't found a valid DT_PLTRELSZ, DT_PLTREL or DT_RELASZ yet, we never will. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Use the right type for that role. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
base is a valid pointer into memory, whereas start is only an offset and so is not a pointer that we can dereference. Previously, base was a pointer-sized integer and start was a pointer, which is exactly backwards if we want to stick to a rule of "it's a pointer iff you could dereference it". Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Previously, we would have tried to adjust stab according to the base address, so in practice we'd return base, which the observant will note is not a string table. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
It turns out none of the callers currently use the size. We should probably have some way to know it can work. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Now we do! Signed-off-by: Simon McVittie <smcv@collabora.com>
-
- Oct 11, 2017
-
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
We relocate DT_REL entries in a DT_JMPREL section, and DT_RELA entries either in a DT_JMPREL or DT_RELA section, so for symmetry it seems like we should maybe be willing to relocate DT_REL entries in a DT_REL section? For now, log it so we know whether it even happens. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
In the first pass, we record the information we'll need in the second pass. In the second pass, we do the actual work. In particular this appears to fix a crash I was seeing with OpenArena on a Debian 9 runtime on a Debian 8-based host, where the symbol table appeared to be NULL - it looks as though that was crashing because for that particular library, the DT_SYMTAB happened to appear later in the dynamic section entry array than the DT_RELA or DT_JMPREL. This should also let us stop using find_value(), but I haven't tried that yet. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
It makes sense to run directly. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Use pkg-config to find the right one by default. To make sure we can be cross-architecture, use $PKG_CONFIG, so we can cross between architectures with an incantation like PKG_CONFIG=i386-linux-gnu-pkg-config capsule-init-project ... Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
For the practically useful case (GL provider = host), the X11 server and libGL will likely be switched over to GLVND in lockstep, so the only case where this is interesting is if the GL provider is not actually the host. This is only going to happen during testing, not in real life. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
- Oct 10, 2017
-
-
Simon McVittie authored
This proves we can. It also means we ship believed-to-work libGL proxy data with libcapsule. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
-
Simon McVittie authored
git-subtree-dir: examples git-subtree-mainline: f23f5300 git-subtree-split: 70bf2784
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Parts of glibc are free to use each other's internal/private symbols, and in particular libpthread.so.0 in Debian jessie uses h_errno, which no longer exists in the glibc in Debian stretch. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
We certainly can't replace glibc, because libc and libdl are loaded before libcapsule, and can have arbitrary internal state. We might be able to encapsulate some of the X11 libraries later, but for now they're a low priority: if they have to come from the host system, that isn't terrible. Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-
Simon McVittie authored
Signed-off-by: Simon McVittie <smcv@collabora.com>
-