一.Makefile 判断 64位机器
ARCH:=$(shell uname -m)
BIT32:=i686BIT64:=x86_64
all clean:
ifeq ($(ARCH),$(BIT64))
@echo x86_64
make $(SubObject) TARGET=$@
else
@echo i686
endif
#需要注意的是,ARCH如果写成`uname -m`的话匹配会失败,原因不明。
第一步:
在Makefile中加入如下代码:
VERSION_SIGN = -D__VERSION_ID__="\"1.2.52.0\""
ifeq ($(MAC), 64)
ULLIB = ../../../lib2-64/ullib
DICT = ../../../lib2-64/dict
CCODE = ../../../lib2-64/ccode
BSL = ../../../lib2-64/bsl
JSONC = ../../../third-64/json-c
else
ULLIB = ../../../lib2/ullib
DICT = ../../../lib2/dict
CCODE = ../../../lib2/ccode
BSL = ../../../lib2/bsl
JSONC = ../../../third/json-c
endif
第二步:
加入以上代码完毕后,在/.bash_profile中的PATH环境变量中:在/usr/bin路径前,加入一个新的路径(完全自定义可以,比如:/home/work/bin)
第三步:
在/home/work/bin 目录下,新建一个make文件:
文件内加入:
#!/bin/bash
MAKE="/usr/bin/make MAC=64"
TMP=$MAKE
while [ "$#" -ne "0" ]
do
TMP2=`echo $1 |tr -d " "`
MAKE="$TMP $TMP2"
TMP=$MAKE
shift
done
echo $MAKE
$MAKE
完毕后,chmod +x make
第四步:
source ~/.bash_profile
第五步:
现在执行 which make,看看情况哈....