Changeset 557


Ignore:
Timestamp:
Sep 28, 2006, 5:56:25 PM (19 years ago)
Author:
bird
Message:

Initial Mac OS X / Darwin bootstrapping.

Location:
trunk
Files:
19 added
11 edited

Legend:

Unmodified
Added
Removed
  • trunk/ChangeLog

    r553 r557  
    11/* $Id$ */
     2
     32006-09-28:
     4    - kBuild/header.kmk, kBuild/env.sh, kBuild/tools/GCC4MACH.kmk, kBuild/bin/x86.darwin/, src/gmake, Config.kmk:
     5        o Initial Mac OS X / Darwin bootstrapping.
    26
    372006-09-23:
  • trunk/Config.kmk

    r552 r557  
    44# Build Configuration.
    55#
    6 # Copyright (c) 2005 knut st. osmundsen <bird@anduin.net>
     6# Copyright (c) 2005-2006 knut st. osmundsen <bird@anduin.net>
    77#
    88#
     
    4141TEMPLATE_BIN_LDFLAGS            = -Zhigh-mem -Zstack=1024
    4242TEMPLATE_BIN_INST               = kBuild/bin/x86.os2/
     43endif
     44
     45ifeq ($(BUILD_TARGET),darwin)
     46TEMPLATE_BIN_TOOL               = GCC4MACH
     47TEMPLATE_BIN_CFLAGS.profile     =
     48TEMPLATE_BIN_CFLAGS.release     = -O3
     49TEMPLATE_BIN_LDFLAGS            =
     50TEMPLATE_BIN_INST               = kBuild/bin/$(BUILD_TARGET_ARCH).$(BUILD_TARGET)/
    4351endif
    4452
     
    93101#
    94102TEMPLATE_LIB = Library for Commandline binary
     103TEMPLATE_LIB_EXTENDS = BIN
     104TEMPLATE_LIB_INST    = lib/
     105# for LIB_KDEP
     106TEMPLATE_LIB_TOOL    = $(TEMPLATE_BIN_TOOL)
    95107
    96 TEMPLATE_LIB_TOOL                   = $(TEMPLATE_BIN_TOOL)
    97 TEMPLATE_LIB_INST                   = lib/
    98 TEMPLATE_LIB_INCS                   = $(TEMPLATE_BIN_INCS)
    99 TEMPLATE_LIB_INCS.$(BUILD_TYPE)     = $(TEMPLATE_BIN_INCS.$(BUILD_TYPE))
    100 TEMPLATE_LIB_DEFS                   = $(TEMPLATE_BIN_DEFS)
    101 TEMPLATE_LIB_DEFS.$(BUILD_TYPE)     = $(TEMPLATE_BIN_DEFS.$(BUILD_TYPE))
    102 TEMPLATE_LIB_CFLAGS                 = $(TEMPLATE_BIN_CFLAGS)
    103 TEMPLATE_LIB_CFLAGS.$(BUILD_TYPE)   = $(TEMPLATE_BIN_CFLAGS.$(BUILD_TYPE))
    104 TEMPLATE_LIB_CXXFLAGS               = $(TEMPLATE_BIN_CXXFLAGS)
    105 TEMPLATE_LIB_CXXFLAGS.$(BUILD_TYPE) = $(TEMPLATE_BIN_CXXFLAGS.$(BUILD_TYPE))
    106108
    107109LIB_KDEP = $(PATH_OUT)/$(TEMPLATE_LIB_INST)$(TOOL_$(TEMPLATE_LIB_TOOL)_ARLIBPREF)kDep$$(TOOL_$(TEMPLATE_LIB_TOOL)_ARLIBSUFF)
  • trunk/kBuild/env.sh

    r551 r557  
    2929# kBuild path.
    3030if [ -z "$PATH_KBUILD" ]; then
    31     if which realpath > /dev/null 2>&1; then
    32         PATH_KBUILD=`realpath $0`
    33     else
    34         PATH_KBUILD=`readlink -f $0`
    35     fi
    36     PATH_KBUILD=`dirname "$PATH_KBUILD"`
     31    PATH_KBUILD=`dirname "$0"`
     32    PATH_KBUILD=`cd "$PATH_KBUILD" ; /bin/pwd`
    3733fi
    3834if [ ! -f "$PATH_KBUILD/footer.kmk" -o ! -f "$PATH_KBUILD/header.kmk" -o ! -f "$PATH_KBUILD/rules.kmk" ]; then
     
    104100        netbsd|NetBSD|NETBSD)
    105101            BUILD_PLATFORM=netbsd
     102            ;;
     103
     104        Darwin|darwin)
     105            BUILD_PLATFORM=darwin
    106106            ;;
    107107
  • trunk/kBuild/header.kmk

    r552 r557  
    104104else
    105105 BUILD_PLATFORM     := $(strip $(BUILD_PLATFORM))
    106  ifneq ($(words $(BUILD_PLATFORM))$(filter-out freebsd l4 linux nt os2 win win32 win64,$(BUILD_PLATFORM)),1)
     106 ifneq ($(words $(BUILD_PLATFORM))$(filter-out darwin freebsd l4 linux nt os2 win win32 win64,$(BUILD_PLATFORM)),1)
    107107  # OS/2 (have uppercase legacy)
    108108  ifeq ($(BUILD_PLATFORM),OS2)
     
    138138else
    139139 BUILD_TARGET       := $(strip $(BUILD_TARGET))
    140  ifneq ($(words $(BUILD_TARGET))$(filter-out freebsd l4 linux nt os2 win win32 win64,$(BUILD_TARGET)),1)
     140 ifneq ($(words $(BUILD_TARGET))$(filter-out darwin freebsd l4 linux nt os2 win win32 win64,$(BUILD_TARGET)),1)
    141141  # OS/2 (have uppercase legacy)
    142142  ifeq ($(BUILD_TARGET),OS2)
     
    248248HOSTSUFF_EXE        :=
    249249endif
     250
     251# Darwin / Mac OS X
     252ifeq ($(BUILD_PLATFORM),darwin)
     253EXEC_X86_WIN32      := false
     254HOSTSUFF_EXE        :=
     255endif
     256
    250257
    251258PATH_TOOLS          := $(PATH_KBUILD)/bin/$(BUILD_PLATFORM_ARCH).$(BUILD_PLATFORM)
     
    285292SUFF_RES            :=
    286293endif
     294ifeq ($(BUILD_TARGET),darwin)
     295SUFF_OBJ            := .o
     296SUFF_LIB            := .a
     297SUFF_DLL            := .dylib
     298SUFF_EXE            :=
     299SUFF_SYS            := .a
     300SUFF_RES            :=
     301endif
    287302ifndef SUFF_OBJ
    288303SUFF_OBJ            := .o
  • trunk/kBuild/tools/GCC3.kmk

    r474 r557  
    7474ifeq ($(BUILD_TARGET),os2)
    7575TOOL_GCC3_LD_MAP              = -Zmap=$(1)
     76TOOL_GCC3_LD_SYSMOD_MAP       = -Zmap=$(1)
    7677else
    7778TOOL_GCC3_LD_MAP              = -Wl,-Map -Wl,$(1) -Wl,--cref
    78 endif
    79 ifeq ($(BUILD_TARGET),os2)
    80 TOOL_GCC3_LD_SYSMOD_MAP       = -Zmap=$(1)
    81 else
    8279TOOL_GCC3_LD_SYSMOD_MAP       = -Map $(1) --cref
    8380endif
  • trunk/src/gmake/Makefile.kmk

    r554 r557  
    1010kmk_DEPS = $(PATH_TARGET)/config.h
    1111kmk_INCS = $(PATH_TARGET) .
     12kmk_INCS.darwin = glob
     13kmk_INCS.freebsd = glob
    1214#ifeq ($(filter-out win32 win64 win nt,$(BUILD_TARGET)),)
    1315#kmk_INCS += kmkbuiltin/w32
     
    7678        glob/fnmatch.c
    7779
     80kmk_SOURCES.darwin = \
     81        glob/glob.c \
     82        glob/fnmatch.c
     83
    7884#
    7985# kmkbuiltin commands
     
    102108endif
    103109
     110kmk_SOURCES.darwin += \
     111        kmkbuiltin/darwin.c
     112
     113
    104114#
    105115# Standalone kmkbuiltin commands.
     
    131141        getopt1.c
    132142endif
     143kmk_cp_SOURCES.darwin = \
     144        kmkbuiltin/darwin.c
    133145
    134146kmk_echo_TEMPLATE = BIN
     
    203215
    204216
     217
    205218#
    206219# kmk_gmake - almost plain GNU Make.
     
    210223kmk_gmake_DEPS = $(PATH_TARGET)/config.h
    211224kmk_gmake_INCS = $(PATH_TARGET) .
     225kmk_gmake_INCS.darwin = glob
     226kmk_gmake_INCS.freebsd = glob
     227
    212228
    213229kmk_gmake_DEFS = \
     
    258274        glob/fnmatch.c
    259275
     276kmk_gmake_SOURCES.darwin = \
     277        glob/glob.c \
     278        glob/fnmatch.c
     279
    260280
    261281
  • trunk/src/gmake/kmkbuiltin/cp.c

    r375 r557  
    142142        optarg = NULL;
    143143        optopt = 0;
    144 #if defined(__FreeBSD__) || defined(__EMX__)
     144#if defined(__FreeBSD__) || defined(__EMX__) || defined(__APPLE__)
    145145        optreset = 1;
    146146        optind = 1;
  • trunk/src/gmake/kmkbuiltin/install.c

    r375 r557  
    153153        optarg = NULL;
    154154        optopt = 0;
    155 #if defined(__FreeBSD__) || defined(__EMX__)
     155#if defined(__FreeBSD__) || defined(__EMX__) || defined(__APPLE__)
    156156        optreset = 1;
    157157        optind = 1;
  • trunk/src/gmake/kmkbuiltin/ln.c

    r375 r557  
    8989        optarg = NULL;
    9090        optopt = 0;
    91 #if defined(__FreeBSD__) || defined(__EMX__)
     91#if defined(__FreeBSD__) || defined(__EMX__) || defined(__APPLE__)
    9292        optreset = 1;
    9393        optind = 1;
  • trunk/src/gmake/kmkbuiltin/mkdir.c

    r375 r557  
    8686        optarg = NULL;
    8787        optopt = 0;
    88 #if defined(__FreeBSD__) || defined(__EMX__)
     88#if defined(__FreeBSD__) || defined(__EMX__) || defined(__APPLE__)
    8989        optreset = 1;
    9090        optind = 1;
  • trunk/src/gmake/kmkbuiltin/rm.c

    r426 r557  
    8181#endif
    8282
    83 #ifndef __FreeBSD__
     83#if !defined(__FreeBSD__) && !defined(__APPLE__)
    8484extern void strmode(mode_t mode, char *p);
    8585#endif
     
    122122        optarg = NULL;
    123123        optopt = 0;
    124 #if defined(__FreeBSD__) || defined(__EMX__)
     124#if defined(__FreeBSD__) || defined(__EMX__) || defined(__APPLE__)
    125125        optreset = 1;
    126126        optind = 1;
Note: See TracChangeset for help on using the changeset viewer.