mirror of
ssh://git.janware.com/srv/git/janware/proj/jw-pkg
synced 2026-01-15 12:03:31 +01:00
defs.mk: Some cleanup in target platform variables
Signed-off-by: Jan Lindemann <jan@janware.com>
This commit is contained in:
parent
51e1d2a246
commit
a0a6dec506
1 changed files with 80 additions and 35 deletions
115
make/defs.mk
115
make/defs.mk
|
|
@ -39,6 +39,7 @@ PWD := $(shell which pwd)
|
|||
CWD := $(shell $(PWD))
|
||||
BIN_INSTALL := /usr/bin/install
|
||||
SUDO ?= /usr/bin/sudo
|
||||
GET_OS_SH ?= $(SHELL) $(MOD_SCRIPT_DIR)/get-os.sh
|
||||
|
||||
# ----- standard variables
|
||||
ifneq ($(wildcard $(TOPDIR)/.git),)
|
||||
|
|
@ -53,25 +54,88 @@ ifeq ($(PROJECT),)
|
|||
PROJECT := $(shell echo $(patsubst $(FLAVOUR_PREFIX)%,%,$(notdir $(realpath $(TOPDIR)))) | $(SED) 's/-[0-9].*//')
|
||||
endif
|
||||
|
||||
GET_OS_SH ?= /bin/bash $(MOD_SCRIPT_DIR)/get-os.sh
|
||||
# ----- host and target variables
|
||||
|
||||
OS_TUPLE ?= $(shell $(GET_OS_SH) tuple)
|
||||
|
||||
ifneq ($(TARGET_TUPLE),)
|
||||
TARGET_ARCH ?= $(word 1,$(TARGET_TUPLE))
|
||||
TARGET_VENDOR ?= $(word 2,$(TARGET_TUPLE))
|
||||
TARGET_OS ?= $(word 3,$(TARGET_TUPLE))
|
||||
TARGET_ABI ?= $(word 4,$(TARGET_TUPLE))
|
||||
TARGET_TRIPLET ?= $(TARGET_ARCH)-$(TARGET_OS)-$(TARGET_ABI)
|
||||
else ifneq ($(TARGET_TRIPLET),)
|
||||
TARGET_ARCH ?= $(word 1,$(TARGET_TRIPLET))
|
||||
TARGET_VENDOR ?= unknown
|
||||
TARGET_OS ?= $(word 2,$(TARGET_TRIPLET))
|
||||
TARGET_ABI ?= $(word 3,$(TARGET_TRIPLET))
|
||||
TARGET_TUPLE ?= $(TARGET_ARCH)-$(TARGET_VENDOR)-$(TARGET_OS)-$(TARGET_ABI)
|
||||
else
|
||||
TARGET_TUPLE ?= $(OS_TUPLE)
|
||||
TARGET_VENDOR ?= $(word 2,$(TARGET_TUPLE))
|
||||
TARGET_OS ?= $(word 3,$(TARGET_TUPLE))
|
||||
TARGET_ABI ?= $(word 4,$(TARGET_TUPLE))
|
||||
TARGET_TRIPLET ?= $(TARGET_ARCH)-$(TARGET_OS)-$(TARGET_ABI)
|
||||
endif
|
||||
|
||||
ifeq ($(TARGET_TUPLE),)
|
||||
$(error TARGET_TUPLE is undefined)
|
||||
endif
|
||||
|
||||
# - support legacy jw-build target variables
|
||||
ifeq ($(TARGET_ABI),mingw32)
|
||||
TARGET ?= mingw
|
||||
else ifeq ($(TARGET_ABI),mingw64)
|
||||
TARGET ?= mingw
|
||||
else
|
||||
TARGET ?= $(TARGET_OS)
|
||||
endif
|
||||
|
||||
OS_NAME_VERSION ?= $(shell $(GET_OS_SH))
|
||||
OS_NAME ?= $(shell $(GET_OS_SH) name)
|
||||
OSTYPE ?= $(shell $(GET_OS_SH) type)
|
||||
ARCH ?= $(TARGET_ARCH)
|
||||
|
||||
CREATE_DEVEL ?= true
|
||||
#COMPILER_SUITE ?= clang
|
||||
COMPILER_SUITE ?= gcc
|
||||
ifndef ARCH
|
||||
# TODO unreached code, test and fix this
|
||||
ifeq ($(shell uname -m),armv7l)
|
||||
ARCH = armv7hl
|
||||
SYSTEM_LIBDIR_NAME = lib
|
||||
else ifeq ($(shell uname -m),armv6l)
|
||||
ARCH = armv6hl
|
||||
SYSTEM_LIBDIR_NAME = lib
|
||||
else ifeq ($(shell uname -m),aarch64)
|
||||
ARCH = aarch64
|
||||
SYSTEM_LIBDIR_NAME = lib
|
||||
else ifeq ($(shell uname -m),x86_64)
|
||||
ARCH = x86_64
|
||||
SYSTEM_LIBDIR_NAME = lib64
|
||||
else
|
||||
ARCH_32 = i586
|
||||
ARCH = $(ARCH_32)
|
||||
SYSTEM_LIBDIR_NAME = lib
|
||||
endif
|
||||
SYSTEM_LIBDIR = /usr/$(SYSTEM_LIBDIR_NAME)
|
||||
endif
|
||||
|
||||
ifeq ($(TARGET),mingw)
|
||||
FLAVOUR_PREFIX ?= win32-
|
||||
FLAVOUR_SUFFIX ?= -win32
|
||||
FLAVOUR_PATH_PREFIX ?= win32/
|
||||
FLAVOUR_PATH_SUFFIX ?= /win32
|
||||
ifneq ($(wildcard /usr/bin/i686-w64-mingw32-gcc),)
|
||||
MINGW_SYS_ROOT ?= /usr/i686-w64-mingw32/sys-root/mingw
|
||||
ifneq ($(TARGET_TUPLE),$(OS_TUPLE))
|
||||
ifeq ($(TARGET),mingw)
|
||||
FLAVOUR_PREFIX ?= win32-
|
||||
FLAVOUR_SUFFIX ?= -win32
|
||||
FLAVOUR_PATH_PREFIX ?= win32/
|
||||
FLAVOUR_PATH_SUFFIX ?= /win32
|
||||
ifneq ($(wildcard /usr/bin/i686-w64-mingw32-gcc),)
|
||||
MINGW_SYS_ROOT ?= /usr/i686-w64-mingw32/sys-root/mingw
|
||||
endif
|
||||
else
|
||||
FLAVOUR_PREFIX ?= $(TARGET_TRIPLET)-
|
||||
FLAVOUR_SUFFIX ?= -$(TARGET_TRIPLET)
|
||||
FLAVOUR_PATH_PREFIX ?= $(TARGET_TRIPLET)/
|
||||
FLAVOUR_PATH_SUFFIX ?= /$(TARGET_TRIPLET)
|
||||
endif
|
||||
endif
|
||||
|
||||
# ----- packaging variables
|
||||
|
||||
ifneq ($(filter debian%,$(OS_NAME_VERSION)),)
|
||||
PKG_FORMAT ?= debian
|
||||
else
|
||||
|
|
@ -143,28 +207,9 @@ PCKG_DEPS_DIR = $(MODDIR)/make/deps.d
|
|||
PCKG_DEFS_DIR = $(MODDIR)/make/defs.d
|
||||
|
||||
# ----- compilation options
|
||||
TARGET ?= Linux
|
||||
|
||||
ifndef ARCH
|
||||
ifeq ($(shell uname -m),armv7l)
|
||||
ARCH = armv7hl
|
||||
SYSTEM_LIBDIR_NAME = lib
|
||||
else ifeq ($(shell uname -m),armv6l)
|
||||
ARCH = armv6hl
|
||||
SYSTEM_LIBDIR_NAME = lib
|
||||
else ifeq ($(shell uname -m),aarch64)
|
||||
ARCH = aarch64
|
||||
SYSTEM_LIBDIR_NAME = lib
|
||||
else ifeq ($(shell uname -m),x86_64)
|
||||
ARCH = x86_64
|
||||
SYSTEM_LIBDIR_NAME = lib64
|
||||
else
|
||||
ARCH_32 = i586
|
||||
ARCH = $(ARCH_32)
|
||||
SYSTEM_LIBDIR_NAME = lib
|
||||
endif
|
||||
SYSTEM_LIBDIR = /usr/$(SYSTEM_LIBDIR_NAME)
|
||||
endif
|
||||
CREATE_DEVEL ?= true
|
||||
#COMPILER_SUITE ?= clang
|
||||
COMPILER_SUITE ?= gcc
|
||||
|
||||
ifeq ($(ARCH),$(ARCH_32))
|
||||
PROJECT_CFLAGS += -m32
|
||||
|
|
@ -193,7 +238,7 @@ PKG_VENDOR ?= janware GmbH
|
|||
FULL_NAME ?= $(shell id -nu | xargs getent passwd | cut -d: -f5)
|
||||
USE_PROJECT_LIB ?= true
|
||||
EXPORT_PROJECT_LIB ?= $(USE_PROJECT_LIB)
|
||||
USE_JW_BUILD ?= true
|
||||
USE_JW_BUILD ?= true
|
||||
USE_EXCEPTIONS_IN_C ?= true
|
||||
REENTRANT ?= true
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue