summaryrefslogtreecommitdiff
path: root/ACE/MPC/templates/makedll.mpt
diff options
context:
space:
mode:
Diffstat (limited to 'ACE/MPC/templates/makedll.mpt')
-rw-r--r--ACE/MPC/templates/makedll.mpt428
1 files changed, 428 insertions, 0 deletions
diff --git a/ACE/MPC/templates/makedll.mpt b/ACE/MPC/templates/makedll.mpt
new file mode 100644
index 00000000000..f79093fd858
--- /dev/null
+++ b/ACE/MPC/templates/makedll.mpt
@@ -0,0 +1,428 @@
+// -*- MPC -*-
+// $Id$
+
+// ***********************************************************************
+// The default compiler for the 'make' project type is gcc (provided by
+// the fill_value() method in MakeProjectCreator.pm). This can be
+// controlled by setting the compilers template variable. It may be
+// changed on the MPC command line via the -value_template option.
+// Additionally, each compiler has a default platform. The default
+// platform for gcc is linux. This too can be changed via the
+// -value_template option. Below are some examples.
+//
+// Use SunCC on the default platform (solaris):
+// mwc.pl -type make -value_template compilers=SunCC
+// Use the default compiler (gcc) on LynxOS:
+// mwc.pl -type make -value_template platforms=lynxos
+// Use HP-UX aCC on the default platform (HP-UX):
+// mwc.pl -type make -value_template compilers=aCC
+// ***********************************************************************
+
+conditional_include "common"
+conditional_include "unixcommon"
+
+configurations = Release
+obj_ext = .o
+res_ext = .res
+compile_flags =
+arflags =
+pchsupport = 1
+targetoutdir =
+libopt = -l
+build64bit = 1
+pchext = .gch
+versupport = 1
+supports_include = 1
+visibility =
+depgen_flags =
+cc = cc
+
+// ***********************************************************************
+// Configuration Section
+// ***********************************************************************
+
+Debug {
+ lib_modifier = d
+ genflags = -g
+}
+
+Release {
+ optimize = 1
+ genflags = -O
+}
+
+// ***********************************************************************
+// Compiler Section
+// ***********************************************************************
+
+java {
+ cc = javac
+ cxx = javac
+ ld = :
+ obj_ext = .class
+ output_option =
+ compile_option =
+ ar = jar
+ arflags = cvf
+ platforms = jvm
+}
+
+gcj {
+ cc = gcj
+ cxx = gcj
+ pic = -fPIC
+ shflags = -shared
+ platforms = linux
+ exe_linkflags = --main=<%main%>
+}
+
+cxx_tru64 {
+ cxx = cxx
+ clean = cxx_repository so_locations
+ tempincopt = "-ptr "
+ tempinc = cxx_repository
+ platforms = tru64
+ pchcreate = "-nopch_messages -create_pch "
+ pchuse = "-nopch_messages -use_pch "
+}
+
+cxx_vms {
+ cxx = cxx
+ arflags = r
+ compilerflags = -ieee -names_as_is_short
+ linkflags = -threads
+ shflags = -shared -auto_symvec
+ clean = cxx_repository
+ tempinc = cxx_repository
+ platforms = openvms
+}
+
+dmc {
+ cc = dmc
+ cxx = dmc
+ dmclink = 1
+ ar = lib
+ arflags = -c
+ obj_ext = .obj
+ platforms = dmc_win
+}
+
+gcc {
+ cc = gcc
+ cxx = g++
+ pic = -fPIC
+ shflags = -shared
+ platforms = linux
+ pchcreate = "-o "
+ pchnobj = 1
+ visopt = -fvisibility=hidden -fvisibility-inlines-hidden
+}
+
+arm_elf_gcc {
+ cc = arm-elf-gcc
+ cxx = arm-elf-g++
+ ar = arm-elf-ar
+ arflags = rcs
+ compilerflags = -isystem "$(SYSTEMDIR)/arm-elf/include"
+ shflags = -shared
+ platforms = nucleus
+ pchcreate = "-o "
+ pchnobj = 1
+ visopt = -fvisibility=hidden -fvisibility-inlines-hidden
+}
+
+Intel {
+ cxx = icpc
+ pic = -fPIC
+ shflags = -shared
+ platforms = linux
+ visopt = -fvisibility=hidden
+}
+
+SunCC {
+ cxx = CC
+ pic = -KPIC
+ shflags = -G
+ compilerflags64 = -xarch=v9
+ linkflags = -library=Cstd -library=Crun
+ clean = SunWS_cache ir.out
+ platforms = solaris
+ pchcreate = -xpch=collect:
+ pchuse = -xpch=use:
+ pchstop = -xpchstop=
+ pchext = .Cpch
+ visopt = -xldscope=hidden
+}
+
+aCC {
+ cxx = aCC
+ pic = +Z
+ shflags = -b
+ platforms = hpux
+ compilerflags = -AA -D_RWSTD_MULTI_THREAD +W336
+ compilerflags64 = +DA2.0W +DS2.0W
+ linkflags = -Wl,+s
+ linkflags64 = -Wl,-x -Wl,+h$(@F) -ldl
+ pchcreate = "+hdr_create "
+ pchuse = "+hdr_use "
+}
+
+xlC_r {
+ cc = xlc_r
+ cxx = xlC_r
+ arflags64 += -X64 -rv
+ compilerflags64 = -q64
+ platforms = aix
+ pchcreate = -qgenpcomp=
+ pchuse = -qusepcomp=
+}
+
+SGICC {
+ cxx = CC
+ pic = -KPIC
+ shflags = -shared
+ compilerflags64 = -64
+ linkflags = -Wl,-woff,84
+ clean = ii_files
+ platforms = irix
+ pchcreate = -LANG:create_pch=
+ pchuse = -diag_suppress 3056 -LANG:use_pch=
+}
+
+wrsppc {
+ cc = gcc$(CPUTYPE)
+ cxx = g++$(CPUTYPE)
+ cputype = ppc
+ cpu = PPC604
+ ar = ar$(CPUTYPE)
+ nm = nm$(CPUTYPE)
+ compilerflags = -mlongcall
+ platforms = vxworks
+}
+
+wrspentium {
+ cc = gcc$(CPUTYPE)
+ cxx = g++$(CPUTYPE)
+ cputype = pentium
+ cpu = PENTIUM
+ ar = ar$(CPUTYPE)
+ nm = nm$(CPUTYPE)
+ platforms = vxworks
+}
+
+NCC {
+ cxx = NCC
+ pic = -KPIC
+ platforms = tandem
+}
+
+ghsppc {
+ cc = cc$(CXXINT)$(CPUTYPE)
+ cxx = cx$(CXXINT)$(CPUTYPE)
+ ar = cx$(CXXINT)$(CPUTYPE)
+ cputype = ppc
+ arflags = --one_instantiation_per_object -archive -o
+ compilerflags = --new_style_casts --one_instantiation_per_object --exceptions --std --long_long
+ platforms = integrity
+}
+
+// ***********************************************************************
+// Platform Section
+// ***********************************************************************
+
+jvm {
+ versupport =
+ lib_prefix =
+ dll_ext =
+ lib_ext = .jar
+}
+
+tru64 {
+ shflags = -shared /usr/lib/libcxxstd.a
+ ldlibs = -ltli -lrt
+ extracppflags = -D__USE_STD_IOSTREAM -D_REENTRANT
+}
+
+openvms {
+ // If you want to create shareable images, you can
+ // set dll_ext to .exe using the -value_template option of MPC.
+ versupport =
+ lib_prefix =
+ dll_ext =
+ exe_ext = .exe
+ ldlibs = -lpthread
+ extracppflags = -D__USE_STD_IOSTREAM -D_REENTRANT
+}
+
+linux {
+ gnumake = 1
+ ldlibs = -ldl $(subst lib,-l,$(sort $(basename $(notdir $(wildcard /usr/lib/librt.so /lib/librt.so))))) -lpthread
+ extracppflags = -D_REENTRANT
+}
+
+nucleus {
+ gnumake = 1
+ extracppflags = -mcpu=arm7tdmi -msoft-float -mthumb-interwork
+}
+
+solaris {
+ shflags = -G
+ ldlibs = -lsocket -ldl -lnsl -lgen -lposix4 -lthread
+ extracppflags = -D_REENTRANT
+}
+
+hpux {
+ dll_ext = .sl
+ ldlibs = -lxti -lrt -lpthread -ldld
+ extracppflags = -D_REENTRANT
+}
+
+aix {
+ dll_ext =
+ ldlibs = -ldl -lpthread
+ extracppflags = -D_REENTRANT
+ supports_include =
+}
+
+irix {
+ ldlibs = -lsocket -lgen -lpthread
+}
+
+lynxos {
+ dll_ext =
+ extracppflags = -D__NO_INCLUDE_WARN__ -mthreads -mminimal-toc
+}
+
+macos {
+ dld = libtool
+ ranlib = 1
+ dll_ext = .dylib
+ shflags = -dynamic
+ ldlibs = -lcc_dynamic -lstdc++ -lSystem -ldl
+}
+
+unixware {
+ ldlibs = -lsocket -ldl -lnsl -lgen -lposix4 -lthread
+ extracppflags = -D_REENTRANT
+}
+
+qnx {
+ ldlibs = -lsocket
+ extracppflags = -D__GCC_BUILTIN
+}
+
+vxworks {
+ versupport =
+ dll_ext =
+ exe_ext = .out
+ specialscript = "for i in $$3; do for j in $$4; do i=`echo $$i | sed sa\^-laa`;[ -r \"$$j/lib$$i.a\" ] && libs=\"$$libs $$j/lib$$i.a\" && break;done;done;$$1 $$2 $$libs | munch | grep -v \\.cpp > $$6"
+ prelinktarget = __ctordtor.c
+ prelinktargetobj = __ctordtor$(OBJEXT)
+ clean = __ctordtor$(OBJEXT)
+ ldlibs = -L$(WIND_BASE)/target/lib/$(CPUTYPE)/$(CPU)/common$(CPU_SPECIFIC) -larch
+ extracppflags = -nostdlib -I$(WIND_BASE)/target/h
+ ld = ld$(CPUTYPE)
+ linkflags = -X -r
+}
+
+vxworks_rtp {
+ versupport =
+ dll_ext =
+ exe_ext = .vxe
+ extracppflags = -I$(WIND_BASE)/target/usr/h -I$(WIND_BASE)/target/usr/h/wrn/coreip -mrtp
+ ldlibs = -ldl
+ linkflags = -L$(WIND_BASE)/target/usr/lib/$(CPUTYPE)/$(CPU)/common
+}
+
+cygwin {
+ gnumake = 1
+ versupport =
+ dll_ext = .dll
+ exe_ext = .exe
+ rc = windres
+ res_ext = .o
+ depgen_flags = -t make
+}
+
+// MinGW compiler with the MSYS shell, make, etc.
+mingw_msys {
+ versupport =
+ lib_prefix =
+ dll_ext = .dll
+ lib_ext = .lib
+ exe_ext = .exe
+ ldlibs = -lwsock32 -lnetapi32
+ rc = rc
+ pic =
+ depgen_flags = -t make
+}
+
+// MinGW compiler with either:
+// a) a native Windows shell and make, or
+// b) MSYS's make passing --win32 (which will use cmd.exe as its subshell)
+mingw {
+ versupport =
+ lib_prefix =
+ dll_ext = .dll
+ lib_ext = .lib
+ exe_ext = .exe
+ ldlibs = -lwsock32 -lnetapi32
+ rc = rc
+ devnull = nul
+ delete = del /f/s/q
+ type = type
+ copy = copy /y
+ makedir = mkdir
+ move = move /y
+ testdirstart = if not exist
+ testdirend =
+ pic =
+ slash = \\
+ depgen_flags = -t make
+}
+
+dmc_win {
+ versupport =
+ lib_prefix =
+ dll_ext = .dll
+ lib_ext = .lib
+ exe_ext = .exe
+ ldlibs = wsock32+kernel32
+ rc = rc
+ devnull = nul
+ delete = del /f/s/q
+ type = type
+ copy = copy /y
+ makedir = mkdir
+ move = move /y
+ supports_include =
+ testdirstart = if not exist
+ testdirend =
+ depgen_flags = -t make
+}
+
+tandem {
+ shflags = -shared -all
+ ldlibs = -lsocket -ldl -lnsl -lgen -lthread
+ extracppflags = -D_REENTRANT
+}
+
+// For Integrity, the following should be set as environment variables, on
+// the make command line or within a verbatim section in your mpc file.
+//
+// OS_DIR The full path to your BSP installation.
+// BSP The BSP name (ex. sim800).
+//
+integrity {
+ cxxint = int
+ versupport =
+ dll_ext =
+ ldlibs = -lshm_client -lnet -lsocket -lposix
+ extraarflags = -bsp $(BSP) -os_dir $(OS_DIR) --one_instantiation_per_object
+ extracppflags = -integrate -dynamic -bsp $(BSP) -os_dir $(OS_DIR) --one_instantiation_per_object -non_shared -Uvector
+ specialscript = "echo Kernel > $$6; echo Filename DynamicDownload >> $$6;echo EndKernel >> $$6; echo AddressSpace >> $$6;echo Filename $$5 >> $$6;echo Language C++ >> $$6;echo Library libINTEGRITY.so >> $$6;echo Library libc.so >> $$6;echo Library libscxx_e.so >> $$6;echo Task Initial >> $$6;echo StackLength 0x8000 >> $$6;echo EndTask >> $$6;echo EndAddressSpace >> $$6"
+ prelinktarget = $(notdir $(BIN).int)
+ postlinkbinary = $(MV) $(BIN) $(BIN).tmp && intex -bsp $(BSP) -os_dir $(OS_DIR) -intfile $(notdir $(BIN).int) -o $(BIN) $(BIN).tmp
+}
+
+conditional_include "user_makedll"