Reorganize OS X configuration files.

First steps towards Universal binaries.
This commit is contained in:
W. Eric Norum
2006-01-25 21:17:15 +00:00
parent 17c437048f
commit d6ae543a1e
7 changed files with 165 additions and 46 deletions

View File

@@ -0,0 +1,22 @@
# CONFIG.Common.darwin-fat
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for darwin-fat target builds
# Sites may override these definitions in CONFIG_SITE.Common.darwin-fat
#-------------------------------------------------------
#
# Set architecture-specific information
#
ARCH_CLASS = fat
#
# Universal binary support
#
OP_SYS_CFLAGS += -isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch i386 -arch ppc
OP_SYS_LDFLAGS += -Wl,-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk -arch i386 -arch ppc
# Include definitions common to all Darwin targets
include $(CONFIG)/os/CONFIG.darwinCommon.darwinCommon

View File

@@ -7,52 +7,10 @@
# Sites may override these definitions in CONFIG_SITE.Common.darwin-ppc
#-------------------------------------------------------
# Include definitions common to all Unix targets
include $(CONFIG)/os/CONFIG.Common.UnixCommon
#
# Set OS-specific information
# Architecture-specific information
#
OS_CLASS = Darwin
ARCH_CLASS = ppc
#
# Special flags for Darwin
# No common blocks (as required when using shared libraries)
#
OP_SYS_CFLAGS += -fno-common
#
# Don't try to use precompiled headers when converting sequencer files
#
CPPSNCFLAGS += -no-cpp-precomp
#
# Darwin os definition
#
OP_SYS_CPPFLAGS += -Ddarwin
#
# The following two definitions enable the use of DarwinPorts packages.
#
OP_SYS_INCLUDES += -I/opt/local/include
# dir/firstword/wildcard used to avoid warning -L: directory name (...) does not exist
OP_SYS_LDFLAGS += $(addprefix -L,$(dir $(firstword $(wildcard /opt/local/lib/*))))
#
# The following two definitions enable the use of Fink packages.
#
OP_SYS_INCLUDES += -I/sw/include
# dir/firstword/wildcard used to avoid warning -L: directory name (...) does not exist
OP_SYS_LDFLAGS += $(addprefix -L,$(dir $(firstword $(wildcard /sw/lib/*))))
#
# Libraries for command-line editing.
#
LDLIBS_READLINE = -lreadline
#
# Command-line input support
#
COMMANDLINE_LIBRARY=READLINE
# Include definitions common to all Darwin targets
include $(CONFIG)/os/CONFIG.darwinCommon.darwinCommon

View File

@@ -0,0 +1,16 @@
# CONFIG.Common.darwin-x86
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for darwin-x86 target builds
# Sites may override these definitions in CONFIG_SITE.Common.darwin-x86
#-------------------------------------------------------
#
# Architecture-specific information
#
ARCH_CLASS = x86
# Include definitions common to all Darwin targets
include $(CONFIG)/os/CONFIG.darwinCommon.darwinCommon

View File

@@ -0,0 +1,11 @@
# CONFIG.darwin-fat.Common
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for darwin-fat host builds
# Sites may override these definitions in CONFIG_SITE.darwin-fat.Common
#-------------------------------------------------------
#Include definitions common to unix hosts
include $(CONFIG)/os/CONFIG.UnixCommon.Common

View File

@@ -0,0 +1,11 @@
# CONFIG.darwin-x86.Common
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for darwin-x86 host builds
# Sites may override these definitions in CONFIG_SITE.darwin-x86.Common
#-------------------------------------------------------
#Include definitions common to unix hosts
include $(CONFIG)/os/CONFIG.UnixCommon.Common

View File

@@ -0,0 +1,101 @@
# CONFIG.Common.darwinCommon
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for darwin target builds
# Sites may override these definitions in CONFIG_SITE.Common.darwin-<arch>
#-------------------------------------------------------
# Include definitions common to all Unix targets
include $(CONFIG)/os/CONFIG.Common.UnixCommon
#
# Set OS-specific information
#
OS_CLASS = Darwin
#
# Special flags for Darwin
# No common blocks (as required when using shared libraries)
#
OP_SYS_CFLAGS += -fno-common
#
# Don't try to use precompiled headers when converting sequencer files
#
CPPSNCFLAGS += -no-cpp-precomp
#
# Darwin os definition
#
OP_SYS_CPPFLAGS += -Ddarwin
#
# Always compile in debugging symbol table information
#
OPT_CFLAGS_YES += -g
OPT_CXXFLAGS_YES += -g
#
# The following two definitions enable the use of DarwinPorts packages.
#
OP_SYS_INCLUDES += -I/opt/local/include
# dir/firstword/wildcard used to avoid warning -L: directory name (...) does not exist
OP_SYS_LDFLAGS += $(addprefix -L,$(dir $(firstword $(wildcard /opt/local/lib/*))))
#
# The following two definitions enable the use of Fink packages.
#
OP_SYS_INCLUDES += -I/sw/include
# dir/firstword/wildcard used to avoid warning -L: directory name (...) does not exist
OP_SYS_LDFLAGS += $(addprefix -L,$(dir $(firstword $(wildcard /sw/lib/*))))
#
# Libraries for command-line editing.
#
LDLIBS_READLINE = -lreadline
#
# Command-line input support
#
COMMANDLINE_LIBRARY=READLINE
# Include common gnu compiler definitions
include $(CONFIG)/CONFIG.gnuCommon
GNU_DIR = /usr
CC = $(GNU_BIN)/cc
CCC = $(GNU_BIN)/c++
#
# Darwin shared libraries
#
SHRLIB_VERSION = $(EPICS_VERSION).$(EPICS_REVISION).$(EPICS_MODIFICATION)
SHRLIB_LDFLAGS = -dynamiclib -flat_namespace -undefined suppress \
-install_name $(firstword $(SHRLIB_SEARCH_FULLPATHDIRS))/$@ \
-compatibility_version $(EPICS_VERSION).$(EPICS_REVISION) \
-current_version $(SHRLIB_VERSION)
SHRLIB_SUFFIX = .$(SHRLIB_VERSION).dylib
LOADABLE_SHRLIB_LDFLAGS = -bundle -flat_namespace -undefined suppress
#
# Position-independent code is the default on Darwin.
#
CODE_CFLAGS =
CODE_CXXFLAGS =
#
# Add support for Objective-C source
#
vpath %.m $(USR_VPATH) $(ALL_SRC_DIRS)
%.o: %.m
$(COMPILE.c) -c $<
#
# Pedantic produces way too many unnecessary messages
#
CONFORM_CFLAGS_STRICT=-ansi
CONFORM_CXXFLAGS_STRICT=-ansi

View File

@@ -6,4 +6,4 @@
# Site override definitions for darwin-ppc host builds
#-------------------------------------------------------
# CROSS_COMPILER_TARGET_ARCHS = RTEMS-uC5282
CROSS_COMPILER_TARGET_ARCHS = RTEMS-uC5282 RTEMS-mvme5500 RTEMS-mvme2100