Commit Graph
17 Commits
Author SHA1 Message Date
Isaku Yamahata 53c7b845f0 [Makefile.rules,Pal/Linux-SGX] Pythonize dependency calculation for SGX manifests 2019-09-26 15:54:45 -07:00
Dmitrii Kuvaiskii c10c67840d [LibOS] Makefile.rules: Specify path to pal-symbols via simple assignment
Previously, Makefile.rules specified the absolute path to pal-symbols
file via recursive assignment ("="). However, because Makefile.rules
is included from other Makefiles, this led to incorrect path
("graphene/Pal/src/host/Linux/Pal/src/pal-symbols"). This commit
replaces recursive assignment "=" with simple only-once ":=".
2019-09-24 23:31:46 -07:00
Isaku Yamahata 6e3c45c8e3 [Pal/Linux-SGX] pal-sgx-get-token, pal-sgx-sign: move to Python3 and cleanup
This commit rewrites pal-sgx-get-token and pal-sgx-sign in Python3 and
performs a comprehensive cleanup of the code:
- Outputs are sent to separate files (otherwise they were intermixed
  during parallel build)
- aesm_pb2.py is re-generated to Python3
- Numeric constants are replaced with symbolic ones
- Using argparse instead of home-grown argument parsing
- Replacing home-grown helper funcs int_to_bytes(), bytes_to_int(), etc.
  with standard functions
2019-09-24 00:24:26 -07:00
Chia-Che Tsai 99ec09b2be [Pal/Skeleton] Fix the build of Skeleton PAL 2019-09-10 14:55:25 -07:00
Isaku Yamahata 2e04f618a3 [Makefile] Add rules to generate SGX-related files (.sgx, .sig, .token) 2019-08-21 14:37:13 +02:00
Isaku Yamahata 26fb253b58 Makefile.rules: Add new rule to build executable from single .c/.cpp 2019-08-15 14:30:57 +02:00
Simon Gaiser 2c340b75d5 [Makefile] Check vdso.so only when it has been built 2019-08-14 00:50:29 +02:00
Simon Gaiser 64e46adcc0 [Makefile] Use generated header dependencies
Fixes #189.
2019-08-14 00:44:17 +02:00
Simon Gaiser 6eec7d7c48 [Makefile] Don't depend on locale settings when parsing readelf 2019-08-07 19:38:04 -07:00
Isaku Yamahata 1ce3d545aa [LibOS/vDSO] Add new rule to Makefile to verify vDSO has no relocations 2019-08-02 12:41:57 -07:00
Isaku Yamahata 0809e5a5e1 [LibOS] Add support for vDSO
This commit adds vDSO support: creates vDSO memory region which contains
necessary symbols __vdso_{gettimeofday, clock_getime, time, getcpu} with
wrappers to call function pointers with actual LibOS implementation.
On startup, function pointers are setup to point to actual functions.

With this commit, the Glibc modification to not use vDSO can be removed.
2019-07-18 17:19:21 -07:00
Isaku Yamahata 124a418fc3 [Makefile.rules] Add comment on how to use rules 2019-07-11 07:04:33 +02:00
Isaku Yamahata abe0fff384 [Makefile.rules] Add more rules for .o, .s, .i, .so 2019-07-10 17:01:35 +02:00
Isaku Yamahata 91cb93f95d [Makefile.rules] Add function "cc-option" to check available GCC options
The "cc-option" must be used to conditionally add compiler options only
in those environments which support these options (e.g., older verions
of gcc may not support some options, thus they must be declared via
"cc-option").
2019-05-30 19:03:43 -07:00
Simon Gaiser 402fce72ba Autogenerate offsets for Python
This makes the offset generator more generic to generate a python module
in addition to a header for assembly.
2019-04-29 21:30:09 +02:00
Isaku Yamahata 10994e1b69 [Makefile] Use symlinks instead of cp to populate Runtime dir
Currently cp to Runtime dir is used. Sometimes it is confusing when
binaries are re-built under Pal or LibOS. Symlink is better, so use
it instead.
  - It's easy to understand where a file under Runtime dir comes from
  - It's easy to understand in which directory to run `make`
  - If cp is used, it's quite easy to test old binary under Runtime.

This patch create ln_sf rule and use it instead of cp and applies to
other recipe with cp.
In this context, creating symlink of glibc libraries is mess. This
patch also cleans it up to use Makefile instead of embedding the logic
into python script.

Signed-off-by: Isaku Yamahata <isaku.yamahata@gmail.com>
2019-04-26 02:47:38 +02:00
Isaku Yamahata 4b190baef7 [LibOS] asm offset constants generation
Auto generate offset constants for assembly. replace magic number with
symbolic constants in LibOS/shim/src/syscallas.S.

This patch also introduces Makefile.rules to accommodate common make rules
so that V=1 (like Linux style make) is accepted.

Signed-off-by: Isaku Yamahata <isaku.yamahata@gmail.com>
2019-03-25 14:54:51 +01:00