blob: a8e480fd1f2ed285722b4bfb932b8a2a17779a8e (
plain) (
tree)
|
|
#
# %CopyrightBegin%
#
# Copyright Ericsson AB 2000-2016. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions 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
|