#!/usr/bin/env python
rules = {
- 'sysless': [ 'sysless-setup', 'base', 'gcc', 'include', 'sysless', 'config_h', 'sources-list', 'localeval' ],
- 'sysless-keil51': [ 'sysless-setup', 'base', 'keil51', 'include', 'sysless', 'config_h', 'sources-list', 'localeval' ],
- 'sysless-keil16x': [ 'sysless-setup', 'base', 'keil16x', 'include', 'sysless', 'config_h', 'sources-list', 'localeval' ],
- 'linux': [ 'linux-setup', 'base', 'include', 'linux', 'config_h', 'qt', 'sources-list' ],
- 'rtems': [ 'rtems-setup', 'base', 'include', 'rtems', 'config_h', 'sources-list' ],
- 'sdcc': [ 'sdcc-setup', 'base', 'include', 'sdcc', 'config_h', 'sources-list', 'localeval' ],
- 'vxworks': [ 'vxworks-setup', 'base', 'include', 'vxworks', 'config_h', 'sources-list' ],
+ 'sysless': [ 'base', 'gcc', 'include', 'sysless', 'config_h', 'sources-list', 'localeval' ],
+ 'sysless-keil51': [ 'base', 'keil51', 'include', 'sysless', 'config_h', 'sources-list', 'localeval' ],
+ 'sysless-keil16x': [ 'base', 'keil16x', 'include', 'sysless', 'config_h', 'sources-list', 'localeval' ],
+ 'linux': [ 'base', 'include', 'linux', 'config_h', 'qt', 'sources-list' ],
+ 'rtems': [ 'base', 'include', 'rtems', 'config_h', 'sources-list' ],
+ 'sdcc': [ 'base', 'include', 'sdcc', 'config_h', 'sources-list', 'localeval' ],
+ 'vxworks': [ 'base', 'include', 'vxworks', 'config_h', 'sources-list' ],
}
#CONFIG_RTLINUX = y
#OCERA_DIR := $(shell ( cd -L $(MAKERULES_DIR)/../../.. ; pwd -L ) )
+-include $(MAKERULES_DIR)/OCERA_TOP_DIR
+
+-include $(MAKERULES_DIR)/config.target
+
+BUILD_DIR_NAME = _build
+COMPILED_DIR_NAME = _compiled
+ifndef GROUP_DIR_NAME
+GROUP_DIR_NAME = nogroup
+endif
+
+ifdef OCERA_DIR
+ifeq ($(wildcard $(OCERA_DIR)/ocera.mk),)
+$(warning "ocera.mk" file does not exist. Adapt Makefile.rules for standalone compilation)
+$(warning (comment out definition of OCERA_DIR line and optionally select RTL_DIR) )
+$(error or go to the ocera/ directory and do 'make' to generate the "ocera.mk" file first, please)
+endif
+include $(OCERA_DIR)/ocera.mk
+KERN_INCLUDE_DIR := $(OCERA_KERNEL_INCLUDES_DIR)
+KERN_LIB_DIR := $(OCERA_KERNEL_LIBRARIES_DIR)
+KERN_MODULES_DIR := $(OCERA_MODULES_DIR)
+KERN_BUILD_DIR := $(BUILD_DIR)/kern/$(GROUP_DIR_NAME)
+KERN_MODPOST_DIR := $(BUILD_DIR)/kern-modpost
+USER_INCLUDE_DIR := $(OCERA_USER_INCLUDES_DIR)
+USER_LIB_DIR := $(OCERA_USER_LIBRARIES_DIR)
+USER_UTILS_DIR := $(TARGET_DIR)/usr/bin
+USER_TESTS_DIR := $(TARGET_DIR)/usr/bin
+USER_BIN_DIR := $(TARGET_DIR)/usr/bin
+USER_BUILD_DIR := $(BUILD_DIR)/user/$(GROUP_DIR_NAME)
+#LINUX_DIR := $(OCERA_DIR)/kernel/linux
+#RTL_DIR := $(OCERA_DIR)/kernel/rtlinux
+#CONFIG_FILE := $(OCERA_DIR)/emdebsys/.config
+ifneq ($(wildcard $(CONFIG_FILE)),)
+CONFIG_FILE_OK = y
+endif
+else # OCERA_DIR
+KERN_INCLUDE_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/include-kern
+KERN_LIB_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/lib-kern
+KERN_MODULES_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/modules
+KERN_BUILD_DIR := $(MAKERULES_DIR)/$(BUILD_DIR_NAME)/kern
+KERN_MODPOST_DIR := $(MAKERULES_DIR)/$(BUILD_DIR_NAME)/kern-modpost
+USER_INCLUDE_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/include
+USER_LIB_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/lib
+USER_UTILS_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/bin-utils
+USER_TESTS_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/bin-tests
+USER_BIN_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/bin
+USER_BUILD_DIR := $(MAKERULES_DIR)/$(BUILD_DIR_NAME)/user
+
+ifndef LINUX_VERSION
+LINUX_VERSION=$(shell uname -r)
+endif
+ifndef LINUX_DIR
+LINUX_DIR=/lib/modules/$(LINUX_VERSION)/build
+endif
+endif # OCERA_DIR
+
+ifeq ($(BUILD_OS),)
+ # Check for target
+ ifeq ($(OS),Windows_NT)
+ BUILD_OS := win32
+ else
+ BUILD_OS := $(shell uname | tr '[A-Z]' '[a-z]' )
+ #$(warning BUILD_OS=$(BUILD_OS))
+ endif
+endif
+
+ifeq ($(TARGET_OS),)
+ TARGET_OS := $(BUILD_OS)
+endif
+
+LOCAL_BUILD_DIR = $(USER_OBJS_DIR)
+
# Assign default values to CFLAGS variable. If the variable is defined
# earlier (i.g. in config.omk), it is not overriden here.
CFLAGS ?= -O2 -Wall
+++ /dev/null
--include $(MAKERULES_DIR)/OCERA_TOP_DIR
-
--include $(MAKERULES_DIR)/config.target
-
-BUILD_DIR_NAME = _build
-COMPILED_DIR_NAME = _compiled
-ifndef GROUP_DIR_NAME
-GROUP_DIR_NAME = nogroup
-endif
-
-ifdef OCERA_DIR
-ifeq ($(wildcard $(OCERA_DIR)/ocera.mk),)
-$(warning "ocera.mk" file does not exist. Adapt Makefile.rules for standalone compilation)
-$(warning (comment out definition of OCERA_DIR line and optionally select RTL_DIR) )
-$(error or go to the ocera/ directory and do 'make' to generate the "ocera.mk" file first, please)
-endif
-include $(OCERA_DIR)/ocera.mk
-KERN_INCLUDE_DIR := $(OCERA_KERNEL_INCLUDES_DIR)
-KERN_LIB_DIR := $(OCERA_KERNEL_LIBRARIES_DIR)
-KERN_MODULES_DIR := $(OCERA_MODULES_DIR)
-KERN_BUILD_DIR := $(BUILD_DIR)/kern/$(GROUP_DIR_NAME)
-KERN_MODPOST_DIR := $(BUILD_DIR)/kern-modpost
-USER_INCLUDE_DIR := $(OCERA_USER_INCLUDES_DIR)
-USER_LIB_DIR := $(OCERA_USER_LIBRARIES_DIR)
-USER_UTILS_DIR := $(TARGET_DIR)/usr/bin
-USER_TESTS_DIR := $(TARGET_DIR)/usr/bin
-USER_BIN_DIR := $(TARGET_DIR)/usr/bin
-USER_BUILD_DIR := $(BUILD_DIR)/user/$(GROUP_DIR_NAME)
-#LINUX_DIR := $(OCERA_DIR)/kernel/linux
-#RTL_DIR := $(OCERA_DIR)/kernel/rtlinux
-#CONFIG_FILE := $(OCERA_DIR)/emdebsys/.config
-ifneq ($(wildcard $(CONFIG_FILE)),)
-CONFIG_FILE_OK = y
-endif
-else # OCERA_DIR
-KERN_INCLUDE_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/include-kern
-KERN_LIB_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/lib-kern
-KERN_MODULES_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/modules
-KERN_BUILD_DIR := $(MAKERULES_DIR)/$(BUILD_DIR_NAME)/kern
-KERN_MODPOST_DIR := $(MAKERULES_DIR)/$(BUILD_DIR_NAME)/kern-modpost
-USER_INCLUDE_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/include
-USER_LIB_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/lib
-USER_UTILS_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/bin-utils
-USER_TESTS_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/bin-tests
-USER_BIN_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/bin
-USER_BUILD_DIR := $(MAKERULES_DIR)/$(BUILD_DIR_NAME)/user
-
-ifndef LINUX_VERSION
-LINUX_VERSION=$(shell uname -r)
-endif
-ifndef LINUX_DIR
-LINUX_DIR=/lib/modules/$(LINUX_VERSION)/build
-endif
-endif # OCERA_DIR
-
-ifeq ($(BUILD_OS),)
- # Check for target
- ifeq ($(OS),Windows_NT)
- BUILD_OS := win32
- else
- BUILD_OS := $(shell uname | tr '[A-Z]' '[a-z]' )
- #$(warning BUILD_OS=$(BUILD_OS))
- endif
-endif
-
-ifeq ($(TARGET_OS),)
- TARGET_OS := $(BUILD_OS)
-endif
-
-LOCAL_BUILD_DIR = $(USER_OBJS_DIR)
-
-# Local Variables:
-# mode:makefile
-# End:
# INCLUDES .. additional include directories and defines for user-space
# tar_EMBEDFILES .. list of tars with embedded files
+# Include RTEMS target configuration defining RTEMS_MAKEFILE_PATH
+include $(MAKERULES_DIR)/config.target
+
+include $(RTEMS_MAKEFILE_PATH)/Makefile.inc
+include $(RTEMS_CUSTOM)
+include $(CONFIG.CC)
+
+BUILD_DIR_NAME = _build/$(RTEMS_BSP)
+COMPILED_DIR_NAME = _compiled/$(RTEMS_BSP)
+GROUP_DIR_NAME =
+
+
+USER_INCLUDE_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/include
+USER_LIB_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/lib
+USER_UTILS_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/bin-utils
+USER_TESTS_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/bin-tests
+USER_BIN_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/bin
+USER_BUILD_DIR := $(MAKERULES_DIR)/$(BUILD_DIR_NAME)/user
+
+LOCAL_BUILD_DIR = $(USER_OBJS_DIR)
+
DEFAULT_INCLUDES = -I $(PROJECT_INCLUDE)
+++ /dev/null
-
-# Include RTEMS target configuration defining RTEMS_MAKEFILE_PATH
-include $(MAKERULES_DIR)/config.target
-
-include $(RTEMS_MAKEFILE_PATH)/Makefile.inc
-include $(RTEMS_CUSTOM)
-include $(CONFIG.CC)
-
-BUILD_DIR_NAME = _build/$(RTEMS_BSP)
-COMPILED_DIR_NAME = _compiled/$(RTEMS_BSP)
-GROUP_DIR_NAME =
-
-
-USER_INCLUDE_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/include
-USER_LIB_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/lib
-USER_UTILS_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/bin-utils
-USER_TESTS_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/bin-tests
-USER_BIN_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/bin
-USER_BUILD_DIR := $(MAKERULES_DIR)/$(BUILD_DIR_NAME)/user
-
-LOCAL_BUILD_DIR = $(USER_OBJS_DIR)
# specified, then the value of DEFAULT_LD_SCRIPT_VARIANT from config.target is used.
# PREFIX_DIR .. Prefix to directories in _compiled and _build. Used in config.omk.
+CC = sdcc
+OBJ_EXT = .rel
+LIB_EXT = .lib
+LIB_PREF =
+AR = sdcclib
+AS = asx8051
+HC = packihx
+HEX2BIN = true
+OBJCOPY = objcopy
+TARGETLOADER = ul_sendhex
+ARFLAGS = -a
+A51TOASX = $(MAKERULES_DIR)/a51toasx.sh
+
+# Include possible target configuration
+-include $(MAKERULES_DIR)/config.target
+
+BUILD_DIR_NAME = _build
+COMPILED_DIR_NAME = _compiled
+GROUP_DIR_NAME =
+
+BUILD_DIR_NAME = _build$(addprefix /,$(PREFIX_DIR))
+COMPILED_DIR_NAME = _compiled$(addprefix /,$(PREFIX_DIR))
+
+LOCAL_BUILD_DIR=$(MAKERULES_DIR)/$(BUILD_DIR_NAME)/$(RELATIVE_DIR)
+#$(warning LOCAL_BUILD_DIR = $(LOCAL_BUILD_DIR))
+
+#=====================================================================
+# Common utility rules
+
+link_VARIANTS ?= $(DEFAULT_LD_SCRIPT_VARIANT)
+
+#=====================================================================
+# Include correct rules for just running pass
+
+USER_COMPILED_DIR_NAME=$(MAKERULES_DIR)/$(COMPILED_DIR_NAME)
+
+USER_INCLUDE_DIR = $(USER_COMPILED_DIR_NAME)/include
+USER_LIB_DIR = $(USER_COMPILED_DIR_NAME)/lib
+USER_UTILS_DIR = $(USER_COMPILED_DIR_NAME)/bin-utils
+USER_TESTS_DIR = $(USER_COMPILED_DIR_NAME)/bin-tests
+USER_BIN_DIR = $(USER_COMPILED_DIR_NAME)/bin
+USER_OBJS_DIR = $(LOCAL_BUILD_DIR)
.PHONY: check-dir
+++ /dev/null
-
-CC = sdcc
-OBJ_EXT = .rel
-LIB_EXT = .lib
-LIB_PREF =
-AR = sdcclib
-AS = asx8051
-HC = packihx
-HEX2BIN = true
-OBJCOPY = objcopy
-TARGETLOADER = ul_sendhex
-ARFLAGS = -a
-A51TOASX = $(MAKERULES_DIR)/a51toasx.sh
-
-# Include possible target configuration
--include $(MAKERULES_DIR)/config.target
-
-BUILD_DIR_NAME = _build
-COMPILED_DIR_NAME = _compiled
-GROUP_DIR_NAME =
-
-BUILD_DIR_NAME = _build$(addprefix /,$(PREFIX_DIR))
-COMPILED_DIR_NAME = _compiled$(addprefix /,$(PREFIX_DIR))
-
-LOCAL_BUILD_DIR=$(MAKERULES_DIR)/$(BUILD_DIR_NAME)/$(RELATIVE_DIR)
-#$(warning LOCAL_BUILD_DIR = $(LOCAL_BUILD_DIR))
-
-#=====================================================================
-# Common utility rules
-
-link_VARIANTS ?= $(DEFAULT_LD_SCRIPT_VARIANT)
-
-#=====================================================================
-# Include correct rules for just running pass
-
-USER_COMPILED_DIR_NAME=$(MAKERULES_DIR)/$(COMPILED_DIR_NAME)
-
-USER_INCLUDE_DIR = $(USER_COMPILED_DIR_NAME)/include
-USER_LIB_DIR = $(USER_COMPILED_DIR_NAME)/lib
-USER_UTILS_DIR = $(USER_COMPILED_DIR_NAME)/bin-utils
-USER_TESTS_DIR = $(USER_COMPILED_DIR_NAME)/bin-tests
-USER_BIN_DIR = $(USER_COMPILED_DIR_NAME)/bin
-USER_OBJS_DIR = $(LOCAL_BUILD_DIR)
-
-# Local Variables:
-# mode:makefile
-# End:
# specified, then the value of DEFAULT_LD_SCRIPT_VARIANT from config.target is used.
# PREFIX_DIR .. Prefix to directories in _compiled and _build. Used in config.omk.
+-include $(MAKERULES_DIR)/config.target
+
+BUILD_DIR_NAME = _build$(addprefix /,$(PREFIX_DIR))
+COMPILED_DIR_NAME = _compiled$(addprefix /,$(PREFIX_DIR))
+
+LOCAL_BUILD_DIR=$(MAKERULES_DIR)/$(BUILD_DIR_NAME)/$(RELATIVE_DIR)
+#$(warning LOCAL_BUILD_DIR = $(LOCAL_BUILD_DIR))
+
+#=====================================================================
+# Common utility rules
+
+link_VARIANTS ?= $(DEFAULT_LD_SCRIPT_VARIANT)
+
+
+#=====================================================================
+# Include correct rules for just running pass
+
+USER_COMPILED_DIR_NAME=$(MAKERULES_DIR)/$(COMPILED_DIR_NAME)
+
+USER_INCLUDE_DIR = $(USER_COMPILED_DIR_NAME)/include
+USER_LIB_DIR = $(USER_COMPILED_DIR_NAME)/lib
+USER_UTILS_DIR = $(USER_COMPILED_DIR_NAME)/bin-utils
+USER_TESTS_DIR = $(USER_COMPILED_DIR_NAME)/bin-tests
+USER_BIN_DIR = $(USER_COMPILED_DIR_NAME)/bin
+USER_OBJS_DIR = $(LOCAL_BUILD_DIR)
+
.PHONY: check-dir
# Some support to serialize some targets for parallel make
+++ /dev/null
-
--include $(MAKERULES_DIR)/config.target
-
-BUILD_DIR_NAME = _build$(addprefix /,$(PREFIX_DIR))
-COMPILED_DIR_NAME = _compiled$(addprefix /,$(PREFIX_DIR))
-
-LOCAL_BUILD_DIR=$(MAKERULES_DIR)/$(BUILD_DIR_NAME)/$(RELATIVE_DIR)
-#$(warning LOCAL_BUILD_DIR = $(LOCAL_BUILD_DIR))
-
-#=====================================================================
-# Common utility rules
-
-link_VARIANTS ?= $(DEFAULT_LD_SCRIPT_VARIANT)
-
-
-#=====================================================================
-# Include correct rules for just running pass
-
-USER_COMPILED_DIR_NAME=$(MAKERULES_DIR)/$(COMPILED_DIR_NAME)
-
-USER_INCLUDE_DIR = $(USER_COMPILED_DIR_NAME)/include
-USER_LIB_DIR = $(USER_COMPILED_DIR_NAME)/lib
-USER_UTILS_DIR = $(USER_COMPILED_DIR_NAME)/bin-utils
-USER_TESTS_DIR = $(USER_COMPILED_DIR_NAME)/bin-tests
-USER_BIN_DIR = $(USER_COMPILED_DIR_NAME)/bin
-USER_OBJS_DIR = $(LOCAL_BUILD_DIR)
-
-# Local Variables:
-# mode:makefile
-# End:
# xxx_SOURCES .. list of specific target sources
# INCLUDES .. additional include directories and defines for user-space
+# Include VxWorks target configuration containig definition of these
+# variables: WIND_BASE CPU TOOL
+include $(MAKERULES_DIR)/config.target
+ifndef WRENV
+$(error WRENV is not defined in config.target)
+endif
+ifndef WRPACKAGE
+$(error WRPACKAGE is not defined in config.target)
+endif
+ifndef CPU
+$(error CPU is not defined in config.target)
+endif
+ifndef TOOL
+$(error TOOL is not defined in config.target)
+endif
+
+BUILD_DIR_NAME = _build/$(CPU)$(TOOL)
+COMPILED_DIR_NAME = _compiled/$(CPU)$(TOOL)
+GROUP_DIR_NAME =
+
+
+USER_INCLUDE_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/include
+USER_LIB_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/lib
+USER_UTILS_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/bin-utils
+USER_TESTS_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/bin-tests
+USER_BIN_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/bin
+USER_BUILD_DIR := $(MAKERULES_DIR)/$(BUILD_DIR_NAME)/rtp
+
+# Note the use of "recursive" =. That's because RELATIVE_DIR is
+# sometimes defined later in 'base'.
+USER_OBJS_DIR = $(USER_BUILD_DIR)/$(RELATIVE_DIR)
+LOCAL_BUILD_DIR = $(USER_OBJS_DIR)
+
.PHONY: check-dir
# Some support to serialize some targets for parallel make
+++ /dev/null
-
-# Include VxWorks target configuration containig definition of these
-# variables: WIND_BASE CPU TOOL
-include $(MAKERULES_DIR)/config.target
-ifndef WRENV
-$(error WRENV is not defined in config.target)
-endif
-ifndef WRPACKAGE
-$(error WRPACKAGE is not defined in config.target)
-endif
-ifndef CPU
-$(error CPU is not defined in config.target)
-endif
-ifndef TOOL
-$(error TOOL is not defined in config.target)
-endif
-
-BUILD_DIR_NAME = _build/$(CPU)$(TOOL)
-COMPILED_DIR_NAME = _compiled/$(CPU)$(TOOL)
-GROUP_DIR_NAME =
-
-
-USER_INCLUDE_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/include
-USER_LIB_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/lib
-USER_UTILS_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/bin-utils
-USER_TESTS_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/bin-tests
-USER_BIN_DIR := $(MAKERULES_DIR)/$(COMPILED_DIR_NAME)/bin
-USER_BUILD_DIR := $(MAKERULES_DIR)/$(BUILD_DIR_NAME)/rtp
-
-# Note the use of "recursive" =. That's because RELATIVE_DIR is
-# sometimes defined later in 'base'.
-USER_OBJS_DIR = $(USER_BUILD_DIR)/$(RELATIVE_DIR)
-LOCAL_BUILD_DIR = $(USER_OBJS_DIR)
-
-# Local Variables:
-# mode:makefile
-# End: