12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- ################################################################################
- #
- # Copyright (c) 2013 Minoca Corp. All Rights Reserved
- #
- # Module Name:
- #
- # Minoca OS Library
- #
- # Abstract:
- #
- # This module implements the native system call interface between user
- # mode applications and the kernel. It runs in user mode, and is utilized
- # by the C library (or by applications directly) as an interface to the
- # kernel. Applications are permitted to link against this library and
- # call functions exported by it, but are not allowed to make system calls
- # themselves (most of this library is simply a function call veneer over
- # the system calls anyway). Applications utilizing this native library
- # can get added functionality or performance, but at the cost of
- # portability.
- #
- # Author:
- #
- # Evan Green 25-Feb-2013
- #
- # Environment:
- #
- # User Mode
- #
- ################################################################################
- BINARY = libminocaos.so.1
- BINARYTYPE = so
- BINPLACE = bin
- ENTRY = OsDynamicLoaderMain
- OBJS = env.o \
- heap.o \
- osimag.o \
- osbase.o \
- rwlock.o \
- socket.o \
- spinlock.o \
- time.o \
- tls.o \
- ARMV7_OBJS = armv7/features.o \
- armv7/osbasea.o \
- armv7/syscall.o \
- ARMV6_OBJS = $(ARMV7_OBJS)
- X86_OBJS = x86/features.o \
- x86/osbasea.o \
- x86/syscall.o \
- X64_OBJS = x64/osbasea.o \
- x64/syscall.o \
- EXTRA_LDFLAGS += -Wl,-Bsymbolic
- EXTRA_LDFLAGS += -nodefaultlibs -nostartfiles -nostdlib -Wl,--whole-archive
- EXTRA_SRC_DIRS = x86 x64 armv7
- TARGETLIBS = $(OBJROOT)/os/lib/rtl/base/basertl.a \
- $(OBJROOT)/os/lib/rtl/base/wide/basertlw.a \
- $(OBJROOT)/os/lib/im/im.a \
- $(OBJROOT)/os/apps/osbase/urtl/urtl.a \
- $(OBJROOT)/os/lib/crypto/crypto.a \
- DIRS = urtl \
- include $(SRCROOT)/os/minoca.mk
- $(OBJROOT)/os/apps/osbase/urtl/urtl.a: urtl
- postbuild:
- @mkdir -p $(BINROOT)/skel/lib
- @if test -d $(BINROOT)/skel/lib && \
- test $(BINROOT)/$(BINARY) -nt $(BINROOT)/skel/lib/$(BINARY); then \
- cp $(BINROOT)/$(BINARY) $(BINROOT)/skel/lib/ ; \
- fi
|