[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Minios-devel] [UNIKRAFT PATCH v4 0/4] isolate symbols inside libraries



Provide per lib/app namespaces

Changes since v1:
1) Remove --globalize-symbols (patch 1/3)
2) Complete (I hope) list of symbols needed to be exported to support
   current codebase. Except arm and linux userpace, which are brocken
   currently.
3) Update doccumentation

Changes since v2:
1) Export uk_sched_thread_sleep
2) Add option to specify per-lib suffix for export.syms

Changes since v3:
1) export.syms is renamed to exportsyms.uk in order to point out
   that this is a Unikraft-specific file
2) Output a warning whenever the exportsyms.uk file is missing but
   continue building. This way we can subsequently introduce required
   symbol files for each library afterwards and independently.
3) Give user the option to specify a alternative filename and path
   instead of just a suffix. This makes this scheme more flexible
   including supporting the case when symbol files are part of
   fetched archives from remote.
5) Add further missing symbols in symbol files
4) Removed symbol files from platform libs. They will get
   introduced separately after the long patch series for ARM
   
(https://lists.xenproject.org/archives/html/minios-devel/2018-08/msg00044.html)
   and linux userspace
   
(https://lists.xenproject.org/archives/html/minios-devel/2018-08/msg00120.html)
   are integrated.

Simon Kuenzer (2):
  build: Introduce symbols exporting for each library
  lib/*: Add missing exportsyms.uk for libraries in `/lib`

Yuri Volchkov (2):
  doc: Add section about symbol exporting
  lib/*: Integrate existing lists of exported symbols

 doc/guides/developers-app.rst          | 32 +++++++++++++++-
 doc/guides/developers-external-lib.rst |  9 +++--
 doc/guides/developers-internal-lib.rst | 25 +++++++-----
 lib/fdt/Makefile.uk                    |  3 --
 lib/fdt/exportsyms.uk                  | 62 ++++++++++++++++++++++++++++++
 lib/fdt/global.syms                    | 62 ------------------------------
 lib/nolibc/exportsyms.uk               | 69 ++++++++++++++++++++++++++++++++++
 lib/ukalloc/exportsyms.uk              |  9 +++++
 lib/ukallocbbuddy/exportsyms.uk        |  2 +
 lib/ukargparse/exportsyms.uk           |  1 +
 lib/ukboot/exportsyms.uk               |  3 ++
 lib/ukbus/export.syms                  |  5 ---
 lib/ukbus/exportsyms.uk                |  5 +++
 lib/ukdebug/exportsyms.uk              |  8 ++++
 lib/uklock/export.syms                 |  2 -
 lib/uklock/exportsyms.uk               |  2 +
 lib/ukmpi/export.syms                  |  7 ----
 lib/ukmpi/exportsyms.uk                |  7 ++++
 lib/uksched/exportsyms.uk              | 15 ++++++++
 lib/ukschedcoop/exportsyms.uk          |  1 +
 lib/ukswrand/export.syms               |  2 -
 lib/ukswrand/exportsyms.uk             |  2 +
 lib/uktimeconv/exportsyms.uk           |  3 ++
 lib/vfscore/export.syms                |  7 ----
 lib/vfscore/exportsyms.uk              |  7 ++++
 support/build/Makefile.rules           | 21 +++++++----
 26 files changed, 261 insertions(+), 110 deletions(-)
 create mode 100644 lib/fdt/exportsyms.uk
 delete mode 100644 lib/fdt/global.syms
 create mode 100644 lib/nolibc/exportsyms.uk
 create mode 100644 lib/ukalloc/exportsyms.uk
 create mode 100644 lib/ukallocbbuddy/exportsyms.uk
 create mode 100644 lib/ukargparse/exportsyms.uk
 create mode 100644 lib/ukboot/exportsyms.uk
 delete mode 100644 lib/ukbus/export.syms
 create mode 100644 lib/ukbus/exportsyms.uk
 create mode 100644 lib/ukdebug/exportsyms.uk
 delete mode 100644 lib/uklock/export.syms
 create mode 100644 lib/uklock/exportsyms.uk
 delete mode 100644 lib/ukmpi/export.syms
 create mode 100644 lib/ukmpi/exportsyms.uk
 create mode 100644 lib/uksched/exportsyms.uk
 create mode 100644 lib/ukschedcoop/exportsyms.uk
 delete mode 100644 lib/ukswrand/export.syms
 create mode 100644 lib/ukswrand/exportsyms.uk
 create mode 100644 lib/uktimeconv/exportsyms.uk
 delete mode 100644 lib/vfscore/export.syms
 create mode 100644 lib/vfscore/exportsyms.uk

-- 
2.7.4


_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/minios-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.