Move repositories to 'repos/' subdirectory

This patch changes the top-level directory layout as a preparatory
step for improving the tools for managing 3rd-party source codes.
The rationale is described in the issue referenced below.

Issue #1082
This commit is contained in:
Norman Feske
2014-05-07 11:48:19 +02:00
parent 1f9890d635
commit ca971bbfd8
3943 changed files with 454 additions and 430 deletions

View File

@@ -0,0 +1 @@
INC_DIR += $(LIBGCC_INC_DIR) $(BUILD_BASE_DIR)/var/libcache/rump/include

View File

@@ -0,0 +1,4 @@
RUMP_OPT =
include $(REP_DIR)/lib/mk/rump_base.inc

View File

@@ -0,0 +1,23 @@
#
# \brief Basic definitions for all rump libraries
# \author Sebastian Sumpf
# \date 2013-12-12
#
CONTRIB_DIR = $(REP_DIR)/contrib
RUMP_BASE = $(BUILD_BASE_DIR)/var/libcache/rump
RUMP_LIB = $(RUMP_BASE)/lib
SHARED_LIB = yes
#
# ARCHIVE contains the absolute paths to rump-archive libraries, rump.ld is an
# additional linker script which is required during initialization
#
LD_OPT += --whole-archive --start-group $(ARCHIVE) --end-group \
--no-whole-archiv
LD_SCRIPT_SO = $(call select_from_repositories,src/platform/genode_rel.ld) \
-T$(REP_DIR)/src/platform/rump.ld
# vi:set ft=make :

View File

@@ -0,0 +1,97 @@
include $(REP_DIR)/lib/mk/rump.inc
include $(REP_DIR)/lib/import/import-rump.mk
RUMP_OBJ = $(RUMP_BASE)/obj
RUMP_SRC = $(CONTRIB_DIR)/src
RUMP_TOOLS = $(RUMP_BASE)/tools
RMAKE = $(RUMP_TOOLS)/rumpmake
#
# Can be up to 4 for most verbose output
#
VERBOSE_LEVEL ?= 0
#
# Sources
#
SRC_CC = dummies.cc hypercall.cc bootstrap.cc io.cc sync.cc
#
# TARGET to trigger rump build
#
SOURCE = $(addprefix $(REP_DIR)/src/lib/rump/,$(SRC_CC))
#
# Rump build script
#
BUILD_CMD = AR=$(AR) NM=$(NM) OBJCOPY=$(OBJCOPY) \
$(CONTRIB_DIR)/buildrump.sh -k -V'MAKEVERBOSE=$(VERBOSE_LEVEL)' \
$(RUMP_OPT) -s $(RUMP_SRC) -T $(RUMP_TOOLS) -o $(RUMP_OBJ) \
-d $(RUMP_BASE)
#
# Linkage
#
ARCHIVE = $(RUMP_LIB)/librump.a
CC_OPT = -DLIBRUMPUSER
INCSDIRS = adosfs altq arpa crypto dev evbarm filecorefs fs i386 isofs miscfs \
msdosfs net net80211 netatalk netbt netinet netinet6 netipsec \
netisdn netkey netmpls netnatm netsmb nfs ntfs ppath prop \
protocols rpc rpcsvc ssp sys ufs uvm x86
#
# Make sure include directory exists
#
$(shell mkdir -p $(RUMP_BASE)/include)
#
# Filter potential ccache call
#
RUMP_CC = $(filter-out ccache, $(CC))
#
# Build nbmake for host platform
#
$(RUMP_TOOLS):
CC=$(RUMP_CC) $(BUILD_CMD) -N -V RUMP_KERNEL_IS_LIBC=1 tools
echo 'CPPFLAGS+=-DMAXPHYS=32768' >> $(RUMP_TOOLS)/mk.conf
echo 'CPPFLAGS+= -fPIC' >> $(RUMP_TOOLS)/mk.conf
#
# Setup install directory
#
$(RUMP_OBJ)/dest: $(RUMP_TOOLS)
CC=$(RUMP_CC) $(BUILD_CMD) setupdest
#
# Build librump
#
$(ARCHIVE): $(RUMP_OBJ)/dest
@echo "Building rump library ..."
CC=$(RUMP_CC) $(BUILD_CMD) -k build install
#
# Install kernel, libc, and pthread headers
#
$(RUMP_BASE)/include/.prepared: $(ARCHIVE)
@for i in $(INCSDIRS); do \
mkdir -p $(RUMP_BASE)/include/$$i; done
@echo "Installing headers ... (this may take a while)"
@cd $(RUMP_SRC)/sys; $(RMAKE) -k obj >/dev/null 2>&1
@cd $(RUMP_SRC)/sys; $(RMAKE) -k includes >/dev/null 2>&1
@cd $(RUMP_SRC)/include; $(RMAKE) -k includes > /dev/null 2>&1
@cd $(CONTRIB_DIR)/nblibs/lib/libc; $(RMAKE) includes >/dev/null 2>&1
@cd $(CONTRIB_DIR)/nblibs/lib/libpthread; $(RMAKE) includes >/dev/null 2>&1
@touch $(RUMP_BASE)/include/.prepared
#
# Trigger rump build
#
$(SOURCE): $(RUMP_BASE)/include/.prepared
vpath %.cc $(REP_DIR)/src/lib/rump
# vi:set ft=make :

View File

@@ -0,0 +1,23 @@
include $(REP_DIR)/lib/mk/rump.inc
LIBS += rump
RUMP_LIBS = librumpdev.a \
librumpdev_disk.a \
librumpdev_netsmb.a \
librumpkern_crypto.a \
librumpnet.a \
librumpvfs.a \
librumpfs_cd9660.a \
librumpfs_ext2fs.a \
librumpfs_ffs.a \
librumpfs_msdos.a \
librumpfs_nfs.a \
librumpfs_ntfs.a \
librumpfs_smbfs.a \
librumpfs_udf.a
ARCHIVE += $(addprefix $(RUMP_LIB)/,$(RUMP_LIBS))

View File

@@ -0,0 +1,4 @@
RUMP_OPT = -32
include $(REP_DIR)/lib/mk/rump_base.inc

View File

@@ -0,0 +1,4 @@
RUMP_OPT =
include $(REP_DIR)/lib/mk/rump_base.inc