📄 global
字号:
## $Id: //poco/1.2/build/rules/global#1 $## global## Global build configuration## Environment variables:# POCO_BASE: Path to POCO source tree. Must be defined.# POCO_BUILD: Path to directory where build files are put.# Defaults to $(POCO_BASE)# POCO_CONFIG: Build configuration to use.# Defaults to `uname`.# POCO_TARGET_OSNAME: Target system operating system name (for cross builds)# POCO_TARGET_OSARCH: Target system architecture (forr cross builds)### Check for POCO_BASE#ifndef POCO_BASE$(error POCO_BASE is not defined.)endif## Check for POCO_BUILD#ifndef POCO_BUILDPOCO_BUILD = $(POCO_BASE)endif## Determine OS#POCO_HOST_OSNAME = $(shell uname)ifeq ($(findstring CYGWIN,$(POCO_HOST_OSNAME)),CYGWIN)POCO_HOST_OSNAME = CYGWINendif## If POCO_CONFIG is not set, use the OS name as configuration name#ifndef POCO_CONFIGPOCO_CONFIG = $(POCO_HOST_OSNAME)endif## Check if a 64bit build is requested#ifndef OSARCH_64BITSOSARCH_64BITS = 0endififeq ($(OSARCH_64BITS),1)OSARCH_POSTFIX = 64elseOSARCH_POSTFIX =endif## Include System Specific Settings#include $(POCO_BASE)/build/config/$(POCO_CONFIG)## Determine operating system#ifndef POCO_TARGET_OSNAMEOSNAME := $(POCO_HOST_OSNAME)elseOSNAME := $(POCO_TARGET_OSNAME)endififndef POCO_TARGET_OSARCHOSARCH := $(subst /,-,$(shell uname -m | tr ' ' _))elseOSARCH := $(POCO_TARGET_OSARCH)endifHOSTNAME := $(shell hostname)## Find out current component#COMPONENT := $(shell $(POCO_BASE)/build/script/projname)## Define standard directories#SRCDIR = srcINCDIR = includeLIBDIR = lib/$(OSNAME)/$(OSARCH)BINDIR = bin/$(OSNAME)/$(OSARCH)OBJDIR = obj/$(OSNAME)/$(OSARCH)DEPDIR = .dep/$(OSNAME)/$(OSARCH)LIBPATH = $(POCO_BUILD)/$(LIBDIR)BINPATH = $(POCO_BUILD)/$(COMPONENT)/$(BINDIR)OBJPATH = $(POCO_BUILD)/$(COMPONENT)/$(OBJDIR)DEPPATH = $(POCO_BUILD)/$(COMPONENT)/$(DEPDIR)ifndef LIBPREFIXLIBPREFIX = libendif## Build component list#COMPONENTS := $(shell cat $(POCO_BASE)/components)## Read global library version number#LIBVERSION := $(shell cat $(POCO_BASE)/libversion)## Determine link mode#ifndef LINKMODELINKMODE = BOTHendififeq ($(LINKMODE),SHARED)DEFAULT_TARGET = all_sharedendififeq ($(LINKMODE),STATIC)DEFAULT_TARGET = all_staticendififeq ($(LINKMODE),BOTH)DEFAULT_TARGET = all_static all_sharedendif## Compose compiler flags#COMMONFLAGS = -DPOCO_BUILD_HOST=$(HOSTNAME)CFLAGS += $(COMMONFLAGS) $(SYSFLAGS)CXXFLAGS += $(COMMONFLAGS) $(SYSFLAGS)LINKFLAGS += $(COMMONFLAGS) $(SYSFLAGS)ifeq ($(OSARCH_64BITS),1)CFLAGS += $(CFLAGS64)CXXFLAGS += $(CXXFLAGS64)LINKFLAGS += $(LINKFLAGS64)elseCFLAGS += $(CFLAGS32)CXXFLAGS += $(CXXFLAGS32)LINKFLAGS += $(LINKFLAGS32)endif## Compose object file path#OBJPATH_RELEASE_STATIC = $(OBJPATH)/release_static$(OSARCH_POSTFIX)OBJPATH_DEBUG_STATIC = $(OBJPATH)/debug_static$(OSARCH_POSTFIX)OBJPATH_RELEASE_SHARED = $(OBJPATH)/release_shared$(OSARCH_POSTFIX)OBJPATH_DEBUG_SHARED = $(OBJPATH)/debug_shared$(OSARCH_POSTFIX)## Build Include directory List#INCLUDE = -Iinclude $(foreach p,$(COMPONENTS),-I$(POCO_BASE)/$(p)/$(INCDIR))## Build Library Directory List#LIBRARY = -L$(LIBPATH)## Make CC and CXX environment vars#export CCexport CXX
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -