diff options
author | Kurt Miller <kurt@cvs.openbsd.org> | 2013-04-05 12:58:05 +0000 |
---|---|---|
committer | Kurt Miller <kurt@cvs.openbsd.org> | 2013-04-05 12:58:05 +0000 |
commit | 1892e71c11ce0b9f666c92574ed7161d16dc08f8 (patch) | |
tree | 755a6b60e7d08a717e59ceed6909b1d2aeefdeeb /libexec/ld.so/hppa | |
parent | 84c7c115879a734ff013eca4de8f5ac17c120b9c (diff) |
- Add ORIGIN, OSNAME, OSREL and PLATFORM substitution support for rpaths.
Improvements and okay matthew@, millert@, guenther@
Diffstat (limited to 'libexec/ld.so/hppa')
-rw-r--r-- | libexec/ld.so/hppa/ldasm.S | 20 | ||||
-rw-r--r-- | libexec/ld.so/hppa/syscall.h | 5 |
2 files changed, 23 insertions, 2 deletions
diff --git a/libexec/ld.so/hppa/ldasm.S b/libexec/ld.so/hppa/ldasm.S index be3604d3fec..644b0ddfa60 100644 --- a/libexec/ld.so/hppa/ldasm.S +++ b/libexec/ld.so/hppa/ldasm.S @@ -1,4 +1,4 @@ -/* $OpenBSD: ldasm.S,v 1.8 2012/10/27 08:30:35 kettenis Exp $ */ +/* $OpenBSD: ldasm.S,v 1.9 2013/04/05 12:58:03 kurt Exp $ */ /* * Copyright (c) 2004 Michael Shalayeff @@ -263,6 +263,24 @@ ENTRY(_dl_gettimeofday,0) nop EXIT(_dl_gettimeofday) +ENTRY(_dl_readlink,0) + SYSCALL(readlink) + bv r0(rp) + nop +EXIT(_dl_readlink) + +ENTRY(_dl_lstat,0) + SYSCALL(lstat) + bv r0(rp) + nop +EXIT(_dl_lstat) + +ENTRY(_dl_getcwd,0) + SYSCALL(__getcwd) + bv r0(rp) + nop +EXIT(_dl_getcwd) + ENTRY(_dl_sigprocmask,0) stw arg2, HPPA_FRAME_ARG(2)(sp) diff --git a/libexec/ld.so/hppa/syscall.h b/libexec/ld.so/hppa/syscall.h index b96dc87f530..9cf7dc62c14 100644 --- a/libexec/ld.so/hppa/syscall.h +++ b/libexec/ld.so/hppa/syscall.h @@ -1,4 +1,4 @@ -/* $OpenBSD: syscall.h,v 1.6 2012/10/24 03:26:56 guenther Exp $ */ +/* $OpenBSD: syscall.h,v 1.7 2013/04/05 12:58:03 kurt Exp $ */ /* * Copyright (c) 2001 Niklas Hallqvist @@ -53,6 +53,9 @@ int _dl_getdirentries(int, char*, int, off_t *); int _dl_sigprocmask(int, const sigset_t *, sigset_t *); int _dl_sysctl(int *, u_int, void *, size_t *, void *, size_t); int _dl_gettimeofday(struct timeval *tp, struct timezone *tzp); +int _dl_readlink(const char *path, char *buf, size_t bufsiz); +int _dl_lstat(const char *path, struct stat *sb); +int _dl_getcwd(char *buf, size_t size); static inline off_t _dl_lseek(int fildes, off_t offset, int whence) |