|
|
- # ----
- # The original author is Eugene Melekhov <eugene_melekhov@mail.ru>
- # Object Tools http://www.object-tools.com
- # Contributed to rxtx Wed Sep 8 2004
- # Reportedly builds rxtxSerial.dll but rxtxParallel.dll is untested.
- # Accepted as is by taj@www.linux.org.uk
- # ---
- # This is the first quick and durty attempt to compile rxtx for Windows
- # using Microsoft Visual C compiler. I've done this mostly to debug rxtx
- # with Microsoft debugger
- #
- # This makefile was made for MSVC 6.0. I'm afraid that debug info command
- # line switches like /Z7 -debugtype:CV -pdb:NONE won't work with
- # MSVC 7.0 or above.
- #
- # The serial port library seems to be working, execept the hangup while
- # writing to unpluged serial port. BTW the mingw32 library behavior
- # is the same.
- #
- # Parallel port library compiles, but I have not used it
- #
- # To build rxtx library execute commands like the following
- # mkdir build
- # copy Makefile.msc build\Makefile
- # cd build
- # nmake
- #
- # To build only serial/parallel library use
- # nmake serial
- # or
- # nmake parallel
- #
- # If you wish to make the version with debug info then do something
- # like this
- # nmake serial DEBUG_INFO=1
- #
- # 'nmake clean' will remove all object dll and other working files
- #
- # Please make sure that variable JAVA_HOME points to the place where
- # your Java SDK is located
- #
-
- JAVA_HOME = D:\j2sdk1.4.2_04
- JAVAC = $(JAVA_HOME)\bin\javac
- JAR = $(JAVA_HOME)\bin\jar
- JAVAH = $(JAVA_HOME)\bin\javah
-
-
- SRC=..\src
- CFLAGS= -nologo -I$(JAVA_HOME)\include -I$(JAVA_HOME)\include\win32 -I$(SRC) -I. -DWIN32
- LINK_FLAGS = -nologo -map -incremental:no
-
- !IFDEF DEBUG_INFO
- CFLAGS = -Z7 -Oi -Oy- $(CFLAGS)
- CFLAGS_DLL = $(CFLAGS_DLL) -GZ
- LINK_FLAGS = $(LINK_FLAGS) -debug -debugtype:CV -pdb:NONE
- DEBUG_INFO_FLAG = DEBUG_INFO^=1
- !ELSE
- CFLAGS = $(CFLAGS) -Ox
- !ENDIF
-
- OBJS=init.obj SerialImp.obj termios.obj fuserImp.obj
- PARALLEL_OBJS= ParallelImp.obj termios.obj init.obj
-
-
- all: serial parallel
-
- serial: RXTXcomm.jar rxtxSerial.dll
-
- parallel: RXTXcomm.jar rxtxParallel.dll
-
- init.obj: config.h
- $(CC) $(CFLAGS) /TP -c $(SRC)\init.cc
-
- fixup.obj: config.h
- $(CC) $(CFLAGS) -c $(SRC)\fixup.c
-
- fuserImp.obj: config.h gnu_io_CommPortIdentifier.h
- $(CC) $(CFLAGS) -c $(SRC)/fuserImp.c
-
- termios.obj:
- $(CC) $(CFLAGS) -c $(SRC)/termios.c
- SerialImp.obj: config.h gnu_io_RXTXPort.h
- $(CC) $(CFLAGS) -c $(SRC)\SerialImp.c
-
- ParallelImp.obj: config.h gnu_io_LPRPort.h
- $(CC) $(CFLAGS) -c $(SRC)\ParallelImp.c
-
- rxtxSerial.dll: $(OBJS)
- link -dll -out:$@ $** $(LINK_FLAGS)
-
- rxtxParallel.dll: $(PARALLEL_OBJS)
- link -dll -out:$@ $** $(LINK_FLAGS)
-
-
- gnu_io_RXTXPort.h gnu_io_CommPortIdentifier.h gnu_io_LPRPort.h: RXTXcomm.jar
- $(JAVAH) -jni gnu.io.RXTXPort gnu.io.CommPortIdentifier gnu.io.LPRPort
-
- RXTXcomm.jar:
- $(JAVAC) -d . ..\src\*.java
- $(JAR) -cf RXTXcomm.jar gnu
-
- config.h: Makefile
- echo #define HAVE_FCNTL_H >> config.h
- echo #define HAVE_SIGNAL_H >> config.h
- echo #undef HAVE_SYS_FCNTL_H >> config.h
- echo #undef HAVE_SYS_FILE_H >> config.h
- echo #undef HAVE_SYS_SIGNAL_H >> config.h
- echo #undef HAVE_TERMIOS_H >> config.h
- echo #undef HAVE_SYS_TIME_H >> config.h
-
- clean:
- -rmdir /s /q gnu
- -del *.obj *.h RXTXcomm.jar rxtxSerial.* rxtxParallel.*
|