# +----------------------------------------------------------------------+ # $Id: otp.mk,v 1.4 2004/07/01 14:57:10 tfee Exp $ # +----------------------------------------------------------------------+ # otp.mk # - to be included in all OTP Makefiles # installed to /usr/local/include/erlang/otp.mk # gmake looks in /usr/local/include - that's hard-coded # users of this file will use # include erlang/top.mk # most interface files will be installed to $ERL_RUN_TOP/app-vsn/include/*.hrl # group owner for library/include directories ERLANGDEV_GROUP=erlangdev # ERL_TOP is root of Erlang source tree # ERL_RUN_TOP is root of Erlang target tree (some Ericsson Makefiles use $ROOT) # ERLANG_OTP is target root for Erlang code # - see sasl/systools reference manual page; grep "TEST" # OS_TYPE is FreeBSD, NetBSD, OpenBSD, Linux, SCO_SV, SunOS. OS_TYPE=${shell uname} # MHOST is the host where this Makefile runs. MHOST=${shell hostname -s} ERL_COMPILE_FLAGS+=-W0 # The location of the erlang runtime system. ifndef ERL_RUN_TOP ERL_RUN_TOP=/usr/local/lib/erlang endif # Edit to reflect local environment. # ifeq (${OS_TYPE},Linux) # ERL_RUN_TOP=/usr/local/lib/erlang # Note* ERL_RUN_TOP can be determined by starting an # erlang shell and typing code:root_dir(). # ERL_TOP=a symbolic link to the actual source top, which changes from version to version # Note* ERL_TOP is the directory where the erlang # source files reside. Make sure to run ./configure there. # TARGET=i686-pc-linux-gnu # Note* Target can be found in $ERL_TOP/erts # endif # See above for directions. ifeq (${OS_TYPE},Linux) ERL_TOP=/opt/OTP_SRC TARGET=i686-pc-linux-gnu endif ERLANG_OTP=/usr/local/erlang/otp VAR_OTP=/var/otp # Aliases for common binaries # Note - CFLAGS is modified in erlang.conf ################################ # SunOS ################################ ifeq (${OS_TYPE},SunOS) CC=gcc CXX=g++ AR=/usr/ccs/bin/ar ARFLAGS=-rv CXXFLAGS+=${CFLAGS} -I/usr/include/g++ LD=/usr/ccs/bin/ld RANLIB=/usr/ccs/bin/ranlib CFLAGS+=-Wall -pedantic -ansi -O CORE=*.core endif ################################ # FreeBSD ################################ ifeq (${OS_TYPE},FreeBSD) ifdef LINUXBIN COMPAT_LINUX=/compat/linux CC=${COMPAT_LINUX}/usr/bin/gcc CXX=${COMPAT_LINUX}/usr/bin/g++ AR=${COMPAT_LINUX}/usr/bin/ar ARFLAGS=-rv CXXFLAGS+=-fhandle-exceptions ${CFLAGS} -I${COMPAT_LINUX}/usr/include/g++ LD=${COMPAT_LINUX}/usr/bin/ld RANLIB=${COMPAT_LINUX}/usr/bin/ranlib BRANDELF=brandelf -t Linux else CC=gcc CXX=g++ AR=/usr/bin/ar ARFLAGS=-rv CXXFLAGS+=-fhandle-exceptions ${CFLAGS} -I/usr/include/g++ LD=/usr/bin/ld RANLIB=/usr/bin/ranlib BRANDELF=@true ifdef USES_PTHREADS CFLAGS+=-D_THREAD_SAFE LDFLAGS+=-lc_r # -pthread flag for 3.0+ ifneq (${shell uname -r | cut -d. -f1},2) CFLAGS+=-pthread endif endif endif CFLAGS+=-Wall -pedantic -ansi -O -DFREEBSD CORE=*.core endif ################################ # OpenBSD ################################ ifeq (${OS_TYPE},OpenBSD) CC=gcc CXX=g++ AR=/usr/bin/ar ARFLAGS=-rv CXXFLAGS+=${CFLAGS} -I/usr/include/g++ LD=/usr/bin/ld RANLIB=/usr/bin/ranlib ifdef USES_PTHREADS CFLAGS+=-D_THREAD_SAFE LDFLAGS+=-lc_r # -pthread flag for 3.0+ ifneq (${shell uname -r | cut -d. -f1},2) CFLAGS+=-pthread endif endif CFLAGS+=-Wall -pedantic -ansi -O -DOPENBSD CORE=*.core endif