forked from OpenNI/OpenNI
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fixed missing files from the Linux common directory.
- Loading branch information
Showing
8 changed files
with
396 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,58 @@ | ||
############################################################################# | ||
# Primesense template makefile. | ||
# This file should not be made, but only included from other makefiles. | ||
# By default, this makefile compiles in release. To compile a debug version: | ||
# make CFG=Debug | ||
# | ||
# Project makefile should define the following BEFORE including this file: | ||
# SRC_FILES - a list of all source files | ||
# Output name under one of the following: | ||
# NETLIB_NAME (.net module) or | ||
# NETEXE_NAME (.net executable) | ||
# BIN_DIR - Bin directory (output dir) | ||
# INC_DIRS - a list of additional include directories | ||
# USED_LIBS - a list of libraries to link with | ||
# CSFLAGS - [Optional] additional flags for mono compiler | ||
# NET_WIN_FORMS - [Optional] when 1, application uses WinForms | ||
############################################################################# | ||
|
||
# take this file's dir | ||
COMMON_CS_MAKE_FILE_DIR = $(dir $(lastword $(MAKEFILE_LIST))) | ||
|
||
include $(COMMON_CS_MAKE_FILE_DIR)CommonDefs.mak | ||
|
||
# create -r option to mcs | ||
USED_NETLIBS_OPTION = $(foreach lib,$(USED_LIBS),-r:$(lib).dll) | ||
|
||
ifeq "$(NET_WIN_FORMS)" "1" | ||
USED_NETLIBS_OPTION += -r:System.Windows.Forms.dll -r:System.Drawing.dll | ||
endif | ||
|
||
# add the output dir as a place to search for assemblies | ||
USED_NETLIBS_OPTION += -lib:$(OUT_DIR) | ||
|
||
ifeq "$(CFG)" "Release" | ||
CSFLAGS += -o+ | ||
endif | ||
|
||
# some lib / exe specifics | ||
ifneq "$(NETLIB_NAME)" "" | ||
OUTPUT_NAME = $(NETLIB_NAME).dll | ||
TARGET = library | ||
endif | ||
ifneq "$(NETEXE_NAME)" "" | ||
OUTPUT_NAME = $(NETEXE_NAME).exe | ||
TARGET = winexe | ||
endif | ||
|
||
OUTPUT_COMMAND = gmcs -out:$(OUTPUT_FILE) -target:$(TARGET) $(CSFLAGS) $(USED_NETLIBS_OPTION) $(SRC_FILES) | ||
|
||
############################################################################# | ||
# Targets | ||
############################################################################# | ||
include $(COMMON_CS_MAKE_FILE_DIR)CommonTargets.mak | ||
|
||
# Final output file | ||
$(OUTPUT_FILE): | ||
$(OUTPUT_COMMAND) | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,132 @@ | ||
############################################################################# | ||
# Primesense template makefile. | ||
# This file should not be made, but only included from other makefiles. | ||
# By default, this makefile compiles in release. To compile a debug version: | ||
# make CFG=Debug | ||
# | ||
# Project makefile should define the following BEFORE including this file: | ||
# SRC_FILES - a list of all source files | ||
# Output name under one of the following: | ||
# EXE_NAME (executable), | ||
# LIB_NAME (dynamic library) or | ||
# SLIB_NAME (static library) or | ||
# BIN_DIR - Bin directory (output dir) | ||
# INC_DIRS - a list of additional include directories | ||
# LIB_DIRS - a list of additional library directories | ||
# USED_LIBS - a list of libraries to link with | ||
# DEFINES - [Optional] additional preprocessor defines | ||
# CFLAGS - [Optional] additional flags for the compiler | ||
# LDFLAGS - [Optional] additional flags for the linker | ||
# SSE_GENERATION - [Optional] The SSE generation to use (default is 3) | ||
# TARGET_SYS_ROOT - [Optional] The path to the root of the target | ||
############################################################################# | ||
|
||
# take this file's dir | ||
COMMON_CPP_MAKE_FILE_DIR = $(dir $(lastword $(MAKEFILE_LIST))) | ||
|
||
include $(COMMON_CPP_MAKE_FILE_DIR)CommonDefs.mak | ||
|
||
# define a function to figure .o file for each source file (placed under intermediate directory) | ||
SRC_TO_OBJ = $(addprefix ./$(INT_DIR)/,$(addsuffix .o,$(notdir $(basename $1)))) | ||
|
||
# create a list of all object files | ||
OBJ_FILES = $(call SRC_TO_OBJ,$(SRC_FILES_LIST)) | ||
|
||
# define a function to translate any source file to its dependency file (note that the way we create | ||
# dep files, as a side affect of compilation, always puts the files in the INT_DIR with suffix .d) | ||
SRC_TO_DEP = $(addprefix ./$(INT_DIR)/,$(addsuffix .d,$(notdir $(basename $1)))) | ||
|
||
# create a list of all dependency files | ||
DEP_FILES = $(call SRC_TO_DEP,$(SRC_FILES_LIST)) | ||
|
||
# older version of gcc doesn't support the '=' symbol in include dirs, so we replace it ourselves with sysroot | ||
INC_DIRS_FROM_SYSROOT = $(patsubst =/%,$(TARGET_SYS_ROOT)/%,$(INC_DIRS)) | ||
|
||
# append the -I switch to each include directory | ||
INC_DIRS_OPTION = $(foreach dir,$(INC_DIRS_FROM_SYSROOT),-I$(dir)) | ||
|
||
# append the -L switch to each library directory | ||
LIB_DIRS_OPTION = $(foreach dir,$(LIB_DIRS),-L$(dir)) -L$(OUT_DIR) | ||
|
||
# append the -l switch to each library used | ||
USED_LIBS_OPTION = $(foreach lib,$(USED_LIBS),-l$(lib)) | ||
|
||
# append the -D switch to each define | ||
DEFINES_OPTION = $(foreach def,$(DEFINES),-D$(def)) | ||
|
||
# tell compiler to use the target system root | ||
ifdef TARGET_SYS_ROOT | ||
CFLAGS += --sysroot=$(TARGET_SYS_ROOT) | ||
LDFLAGS += --sysroot=$(TARGET_SYS_ROOT) | ||
endif | ||
|
||
# set Debug / Release flags | ||
ifeq "$(CFG)" "Debug" | ||
CFLAGS += -O0 -g | ||
endif | ||
ifeq "$(CFG)" "Release" | ||
CFLAGS += -O2 -DNDEBUG | ||
endif | ||
|
||
CFLAGS += $(INC_DIRS_OPTION) $(DEFINES_OPTION) | ||
LDFLAGS += $(LIB_DIRS_OPTION) $(USED_LIBS_OPTION) | ||
|
||
# some lib / exe specifics | ||
ifneq "$(LIB_NAME)" "" | ||
OUTPUT_NAME = lib$(LIB_NAME).so | ||
CFLAGS += -fPIC -fvisibility=hidden | ||
ifneq ("$(OSTYPE)","Darwin") | ||
LDFLAGS += -Wl,--no-undefined | ||
OUTPUT_NAME = lib$(LIB_NAME).so | ||
OUTPUT_COMMAND = $(CXX) -o $(OUTPUT_FILE) $(OBJ_FILES) $(LDFLAGS) -shared | ||
else | ||
LDFLAGS += -undefined error | ||
OUTPUT_NAME = lib$(LIB_NAME).dylib | ||
OUTPUT_COMMAND = $(CXX) -o $(OUTPUT_FILE) $(OBJ_FILES) $(LDFLAGS) -dynamiclib -headerpad_max_install_names | ||
endif | ||
endif | ||
ifneq "$(EXE_NAME)" "" | ||
OUTPUT_NAME = $(EXE_NAME) | ||
OUTPUT_COMMAND = $(CXX) -o $(OUTPUT_FILE) $(OBJ_FILES) $(LDFLAGS) | ||
endif | ||
ifneq "$(SLIB_NAME)" "" | ||
CFLAGS += -fPIC | ||
OUTPUT_NAME = lib$(SLIB_NAME).a | ||
OUTPUT_COMMAND = $(AR) -cq $(OUTPUT_FILE) $(OBJ_FILES) | ||
endif | ||
|
||
define CREATE_SRC_TARGETS | ||
# create a target for the object file (the CXX command creates both an .o file | ||
# and a .d file) | ||
ifneq ("$(OSTYPE)","Darwin") | ||
$(call SRC_TO_OBJ,$1) : $1 | $(INT_DIR) | ||
$(CXX) -MD -MP -MT "$(call SRC_TO_DEP,$1) $$@" -c $(CFLAGS) -o $$@ $$< | ||
else | ||
$(call SRC_TO_OBJ,$1) : $1 | $(INT_DIR) | ||
$(CXX) -c $(CFLAGS) -o $$@ $$< | ||
endif | ||
endef | ||
|
||
############################################################################# | ||
# Targets | ||
############################################################################# | ||
.PHONY: clean-objs clean-defs | ||
|
||
include $(COMMON_CPP_MAKE_FILE_DIR)CommonTargets.mak | ||
|
||
# create targets for each source file | ||
$(foreach src,$(SRC_FILES_LIST),$(eval $(call CREATE_SRC_TARGETS,$(src)))) | ||
|
||
# include all dependency files (we don't need them the first time, so we can use -include) | ||
-include $(DEP_FILES) | ||
|
||
$(OUTPUT_FILE): $(OBJ_FILES) | ||
$(OUTPUT_COMMAND) | ||
|
||
clean-objs: | ||
rm -rf $(OBJ_FILES) | ||
|
||
clean-defs: | ||
rm -rf $(DEP_FILES) | ||
|
||
clean: clean-objs clean-defs |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,62 @@ | ||
ifndef _COMMON_DEFS_MAKE_ | ||
_COMMON_DEFS_MAKE_=1 | ||
|
||
# some defaults | ||
ifndef CFG | ||
CFG = Release | ||
endif | ||
|
||
# find out the platform on which we're running | ||
MACHINE = $(shell uname -m) | ||
ifneq (,$(findstring x86_64,$(MACHINE))) | ||
HOST_PLATFORM = x64 | ||
else ifneq (,$(findstring x86,$(MACHINE))) | ||
HOST_PLATFORM = x86 | ||
else ifneq (,$(findstring i686,$(MACHINE))) | ||
HOST_PLATFORM = x86 | ||
else ifneq (,$(findstring i386,$(MACHINE))) | ||
HOST_PLATFORM = x86 | ||
else ifneq (,$(findstring arm,$(MACHINE))) | ||
HOST_PLATFORM = Arm | ||
else | ||
DUMMY:=$(error Can't determine host platform) | ||
endif | ||
|
||
# now check if this is a cross-compilation or not | ||
ifeq "$(PLATFORM)" "" | ||
PLATFORM = $(HOST_PLATFORM) | ||
else | ||
ifneq "$(PLATFORM)" "$(HOST_PLATFORM)" | ||
# cross compiling. Take CXX and STAGING_DIR from environment | ||
PLATFORM_UPPER = $(shell echo $(PLATFORM) | tr 'a-z' 'A-Z') | ||
DUMMY:=$(eval CXX = $($(PLATFORM_UPPER)_CXX)) | ||
DUMMY:=$(eval TARGET_SYS_ROOT = $($(PLATFORM_UPPER)_STAGING)) | ||
|
||
ifeq "$(and $(CXX), $(TARGET_SYS_ROOT))" "" | ||
DUMMY:=$(error Cross-Compilation error. Can't find $(PLATFORM_UPPER)_CXX and $(PLATFORM_UPPER)_STAGING) | ||
endif | ||
endif | ||
endif | ||
|
||
# expand file list | ||
SRC_FILES_LIST = $(wildcard $(SRC_FILES)) | ||
|
||
# define the intermediate directory | ||
INT_DIR = $(PLATFORM)-$(CFG) | ||
|
||
# define output directory | ||
OUT_DIR = $(BIN_DIR)/$(PLATFORM)-$(CFG) | ||
|
||
# full path to output file | ||
OUTPUT_FILE = $(OUT_DIR)/$(OUTPUT_NAME) | ||
|
||
# take this file's dir | ||
COMMON_MAK_DIR = $(dir $(lastword $(MAKEFILE_LIST))) | ||
|
||
# get the OS type | ||
OSTYPE := $(shell uname -s) | ||
|
||
# platform specific args | ||
include $(COMMON_MAK_DIR)Platform.$(PLATFORM) | ||
|
||
endif # _COMMON_DEFS_MAKE_ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,79 @@ | ||
############################################################################# | ||
# Primesense template makefile. | ||
# This file should not be made, but only included from other makefiles. | ||
# By default, this makefile compiles in release. To compile a debug version: | ||
# make CFG=Debug | ||
# | ||
# Project makefile should define the following BEFORE including this file: | ||
# SRC_FILES - a list of all source files | ||
# JAR_NAME - name of the package | ||
# BIN_DIR - Bin directory (output dir) | ||
# INC_DIRS - a list of additional include directories | ||
# LIB_DIRS - a list of additional library directories | ||
# USED_JARS - a list of libraries used | ||
# MAIN_CLASS - [Optional] for executable jar | ||
############################################################################# | ||
|
||
# take this file's dir | ||
COMMON_CS_MAKE_FILE_DIR = $(dir $(lastword $(MAKEFILE_LIST))) | ||
|
||
include $(COMMON_CS_MAKE_FILE_DIR)CommonDefs.mak | ||
|
||
nullstring := | ||
space := $(nullstring) # end of the line | ||
|
||
USED_JARS_OPTION = | ||
ifneq "$(USED_JARS)" "" | ||
USED_JARS_PATH = $(foreach jar, $(USED_JARS), $(OUT_DIR)/$(jar).jar /usr/share/java/$(jar).jar) | ||
USED_JARS_OPTION = -cp $(subst $(space),:,$(strip $(USED_JARS_PATH))) | ||
endif | ||
|
||
OUTPUT_NAME = $(JAR_NAME).jar | ||
|
||
# create manifest file if needed | ||
JAR_MANIFEST_CREATE_COMMAND := | ||
MANIFEST_FILE := | ||
JAR_OPTIONS = -cf | ||
|
||
ifneq (, $(if $(or $(MAIN_CLASS), $(USED_JARS)),1)) | ||
JAR_OPTIONS = -cfm | ||
MANIFEST_FILE = Manifest.txt | ||
JAR_MANIFEST_CREATE_COMMAND = ( | ||
ifneq (,$(MAIN_CLASS)) | ||
JAR_MANIFEST_CREATE_COMMAND += echo "Main-Class: $(MAIN_CLASS)"; | ||
endif | ||
ifneq (,$(USED_JARS)) | ||
JAR_MANIFEST_CREATE_COMMAND += echo "Class-Path: $(USED_JARS_PATH)"; | ||
endif | ||
JAR_MANIFEST_CREATE_COMMAND += ) > $(MANIFEST_FILE) | ||
endif | ||
|
||
CREATE_SHORTCUT = | ||
ifneq (, $(MAIN_CLASS)) | ||
SHORTCUT = $(OUT_DIR)/$(JAR_NAME) | ||
CREATE_SHORTCUT = echo java -jar $(OUTPUT_NAME) > $(SHORTCUT); chmod +x $(SHORTCUT) | ||
endif | ||
|
||
############################################################################# | ||
# Targets | ||
############################################################################# | ||
include $(COMMON_CS_MAKE_FILE_DIR)CommonTargets.mak | ||
|
||
.PHONY: clean-manifest clean-int | ||
|
||
# Final output file | ||
$(OUTPUT_FILE): | $(INT_DIR) | ||
javac $(USED_JARS_OPTION) -d $(INT_DIR) $(SRC_FILES) | ||
$(JAR_MANIFEST_CREATE_COMMAND) | ||
jar $(JAR_OPTIONS) $@ $(MANIFEST_FILE) -C $(INT_DIR) . | ||
$(CREATE_SHORTCUT) | ||
|
||
clean-manifest: | ||
rm -rf $(MANIFEST_FILE) | ||
|
||
clean-int: | ||
rm -rf $(INT_DIR) | ||
|
||
clean: clean-manifest clean-int | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
############################################################################# | ||
# Targets | ||
############################################################################# | ||
.PHONY: all clean clean-$(OUTPUT_FILE) | ||
|
||
# define the target 'all' (it is first, and so, default) | ||
all: $(OUTPUT_FILE) | ||
|
||
# Intermediate directory | ||
$(INT_DIR): | ||
mkdir -p $(INT_DIR) | ||
|
||
# Output directory | ||
$(OUT_DIR): | ||
mkdir -p $(OUT_DIR) | ||
|
||
# Final output file | ||
$(OUTPUT_FILE): $(SRC_FILES_LIST) | $(OUT_DIR) | ||
|
||
clean-$(OUTPUT_FILE): | ||
rm -rf $(OUTPUT_FILE) | ||
|
||
clean: clean-$(OUTPUT_FILE) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
ifeq "$(CFG)" "Release" | ||
|
||
# Hardware specifying flags | ||
CFLAGS += -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp #-mcpu=cortex-a8 | ||
|
||
# Optimization level, minus currently buggy optimizing methods (which break bit-exact) | ||
CFLAGS += -O3 -fno-tree-pre -fno-strict-aliasing | ||
|
||
# More optimization flags | ||
CFLAGS += -ftree-vectorize -ffast-math -funsafe-math-optimizations -fsingle-precision-constant | ||
|
||
endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
# take this file's dir | ||
COMMON_MAK_DIR = $(dir $(lastword $(MAKEFILE_LIST))) | ||
|
||
# everything is the same as in x86 | ||
include $(COMMON_MAK_DIR)Platform.x86 |
Oops, something went wrong.