blob: 0085a85aad4bc7966685f3cca30a47f86e514d8a (
plain) (
tree)
|
|
#
# %CopyrightBegin%
#
# Copyright Ericsson AB 2000-2009. All Rights Reserved.
#
# The contents of this file are subject to the Erlang Public License,
# Version 1.1, (the "License"); you may not use this file except in
# compliance with the License. You should have received a copy of the
# Erlang Public License along with this software. If not, it can be
# retrieved online at http://www.erlang.org/.
#
# Software distributed under the License is distributed on an "AS IS"
# basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
# the License for the specific language governing rights and limitations
# under the License.
#
# %CopyrightEnd%
#
#
# Point this at your version of OTP
OTPROOT=c:\Progra~1\erl5.0.1\
# Type actual IC Version
ICVSN=4.0.4
# Type actual Erl Interface Vesrion
EIVSN=3.2.2
# Type actual Erl Interface Vesrion
JIVSN=1.2
# IDL file(s)
IDLS=random.idl
# Own C-server files
CSRV=server.c callbacks.c
CSRVO=server.obj callbacks.obj
# Own C-client files
CCL=client.c
CCLO=client.obj
# Generated C-server files
GCSRVS=rmod_random__s.c
GCSRVSO=rmod_random__s.obj
# Generated C-client files
GCCLS=rmod_random.c
GCCLSO=rmod_random.obj
# Includes
IFLAGS=-I"$(OTPROOT)\lib\ic-$(ICVSN)\include" \
-I"$(OTPROOT)\lib\erl_interface-$(EIVSN)\include"
LDFLAGS=/LIBPATH:"$(OTPROOT)\lib\ic-$(ICVSN)\priv\lib" \
/LIBPATH:"$(OTPROOT)\lib\erl_interface-$(EIVSN)\lib"
LDLIBS=ic.lib erl_interface.lib ei.lib ws2_32.lib
# Erlang compiler
ERLC=$(OTPROOT)\bin\erlc
# Erlang compiler flags.
EFLAGS="+{scoped_op_calls,true}"
# C compiler
CC=cl
# C compiler flags
CFLAGS=-MT -D__WIN32__ $(IFLAGS)
# Java compiler
JAVAC=c:\Progra~1\jdk1.3\bin\javac
# Java
JAVA=c:\Progra~1\jdk1.3\bin\java
# Java compiler flags
CLASSPATH= ".;$(OTPROOT)\lib\ic-$(ICVSN)\priv\ic.jar;$(OTPROOT)\lib\jinterface-$(JIVSN)\priv\OtpErlang.jar"
JFLAGS=-classpath $(CLASSPATH) -O
all: server.exe client.exe client.beam client.class
server.exe:
$(ERLC) $(EFLAGS) "+{be,c_server}" $(IDLS)
$(CC) -c $(CFLAGS) $(CSRV) $(GCSRVS)
$(CC) -o server.exe $(CSRVO) $(GCSRVSO) -link $(LDFLAGS) $(LDLIBS)
client.exe:
$(ERLC) $(EFLAGS) "+{be,c_client}" $(IDLS)
$(CC) -c $(CFLAGS) $(CCL) $(GCCLS)
$(CC) -o client.exe $(CCLO) $(GCCLSO) -link $(LDFLAGS) $(LDLIBS)
client.beam:
$(ERLC) $(EFLAGS) "+{be,erl_genserv}" $(IDLS)
$(ERLC) *.erl
client.class:
$(ERLC) $(EFLAGS) "+{be,java}" $(IDLS)
$(JAVAC) $(JFLAGS) rmod/*.java
$(JAVAC) $(JFLAGS) *.java
jclient.run:
$(JAVA) -classpath $(CLASSPATH) client
jserver.run:
$(JAVA) -classpath $(CLASSPATH) server
clean:
-@del /f /q rmod
-@rmdir rmod
-@del *.jam
-@del *.beam
-@del oe*
-@del *.h
-@del *.hrl
-@del server.exe
-@del client.exe
-@del *.obj
-@del rmod_random*.c
-@del *~
-@del *class
-@del rmod.erl
-@del rmod_random.erl
|