Commit 3aa3f160ee2ce4a9355784c725874e80258bd2dc

Authored by Perry Werneck
1 parent b6cf9df2

Incorporando módulo python no projeto principal.

Makefile.in
... ... @@ -186,6 +186,13 @@ $(BINDIR)/Release/@DLLPREFIX@jni3270@DLLEXT@: src/java/*
186 186 @$(MKDIR) `dirname $@`
187 187 @$(MAKE) BINDIR="../../$(BINDIR)" LIB3270_LIBS="$(RLSLIB)" LIB3270_CFLAGS="-I../../src/include" -C src/java Release
188 188  
  189 +python: $(BINDIR)/Release/py3270@DLLEXT@
  190 +
  191 +$(BINDIR)/Release/py3270.so: src/python/*
  192 + @$(MAKE) -C src/python Release
  193 + @$(MKDIR) `dirname $@`
  194 + @cp src/python/.bin/Release/py3270.so $@
  195 +
189 196 rexx: $(BINDIR)/Debug/plugins/rx3270@DLLEXT@
190 197  
191 198 #---[ Debug targets ]----------------------------------------------------------
... ... @@ -382,6 +389,9 @@ install-oxt:
382 389 install-php:
383 390 @$(MAKE) -C src/php install
384 391  
  392 +install-python:
  393 + @$(MAKE) -C src/python install
  394 +
385 395 install-java:
386 396 @$(MAKE) BINDIR=../../.bin LIB3270_CFLAGS="-I../../src/include" -C src/java install
387 397  
... ... @@ -401,6 +411,7 @@ clean:
401 411 @make -C src/plugins/dbus3270 clean
402 412 @make -C src/loffice clean
403 413 @make -C src/php clean
  414 + @make -C src/python clean
404 415 @make -C src/java clean
405 416 @make -C src/classlib clean
406 417 @rm -f $(PACKAGE_NAME).png
... ...
configure.ac
... ... @@ -542,7 +542,7 @@ AC_SUBST(SOCKET_LIBS)
542 542  
543 543 AC_SEARCH_LIBS([dlopen], [dl], AC_DEFINE(HAVE_LIBDL), AC_MSG_NOTICE([libdl not present.]))
544 544  
545   -#--[ Optional ]---------------------------------------------------------------------------------------------------------------------------------------------
  545 +#--[ PHP ]--------------------------------------------------------------------------------------------------------------------------------------------------
546 546  
547 547 AC_ARG_WITH([php-config], [AS_HELP_STRING([--with-php-config], [Path to php-config tool])], [ PHPCONFIG="$withval" ],[ AC_PATH_TOOL(PHPCONFIG, php-config, , $PATH) ])
548 548  
... ... @@ -585,6 +585,25 @@ AC_SUBST(PHPCONFIG)
585 585 AC_SUBST(PHPMAJOR)
586 586 AC_SUBST(PHPCONFDIR)
587 587  
  588 +
  589 +#--[ Python ]-----------------------------------------------------------------------------------------------------------------------------------------------
  590 +
  591 +AC_ARG_WITH([python-config], [AS_HELP_STRING([--with-python-config], [Path to python-config tool])], [ PYCONFIG="$withval" ],[ AC_PATH_TOOL(PYCONFIG, python-config, , $PATH) ])
  592 +
  593 +if test -z "${PYCONFIG}"; then
  594 +
  595 + AC_MSG_NOTICE([Program python-config not found. Use --with-python-config=path to specify absolute path to the python-config tool.])
  596 +
  597 +else
  598 +
  599 + AC_DEFINE(HAVE_PYTHON)
  600 + EXTENSIONS="$EXTENSIONS python"
  601 + AC_CONFIG_FILES(src/python/Makefile)
  602 +
  603 +fi
  604 +
  605 +AC_SUBST(PYCONFIG)
  606 +
588 607 #--[ ooRexx ]-----------------------------------------------------------------------------------------------------------------------------------------------
589 608  
590 609 AC_PATH_TOOL([REXXC], [rexxc], [cp] )
... ...
src/python/Makefile.in 0 → 100644
... ... @@ -0,0 +1,119 @@
  1 +#
  2 +# "Software pw3270, desenvolvido com base nos códigos fontes do WC3270 e X3270
  3 +# (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a
  4 +# aplicativos mainframe. Registro no INPI sob o nome G3270.
  5 +#
  6 +# Copyright (C) <2008> <Banco do Brasil S.A.>
  7 +#
  8 +# Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob
  9 +# os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela
  10 +# Free Software Foundation.
  11 +#
  12 +# Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER
  13 +# GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO
  14 +# A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para
  15 +# obter mais detalhes.
  16 +#
  17 +# Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este
  18 +# programa; se não, escreva para a Free Software Foundation, Inc., 59 Temple
  19 +# Place, Suite 330, Boston, MA, 02111-1307, USA
  20 +#
  21 +# Contatos:
  22 +#
  23 +# perry.werneck@gmail.com (Alexandre Perry de Souza Werneck)
  24 +# erico.mendonca@gmail.com (Erico Mascarenhas de Mendonça)
  25 +#
  26 +
  27 +PACKAGE_NAME=@PACKAGE_NAME@
  28 +SOURCES=py3270.cc actions.cc get.cc init.cc misc.cc set.cc
  29 +
  30 +#---[ Paths ]------------------------------------------------------------------
  31 +
  32 +prefix=@prefix@
  33 +exec_prefix=@exec_prefix@
  34 +bindir=@bindir@
  35 +sbindir=@sbindir@
  36 +libdir=@libdir@
  37 +includedir=@includedir@
  38 +sysconfdir=@sysconfdir@
  39 +
  40 +#---[ Tools ]------------------------------------------------------------------
  41 +
  42 +CXX=@CXX@
  43 +MKDIR=@MKDIR_P@
  44 +INSTALL=@INSTALL@
  45 +INSTALL_DATA=@INSTALL_DATA@
  46 +INSTALL_PROGRAM=@INSTALL_PROGRAM@
  47 +PYCONFIG=@PYCONFIG@
  48 +
  49 +#---[ Paths ]------------------------------------------------------------------
  50 +
  51 +OBJDIR = .obj
  52 +BINDIR = .bin
  53 +
  54 +OBJDBG = $(OBJDIR)/Debug
  55 +BINDBG = $(BINDIR)/Debug
  56 +
  57 +OBJRLS = $(OBJDIR)/Release
  58 +BINRLS = $(BINDIR)/Release
  59 +
  60 +#---[ lib3270 common class ]---------------------------------------------------
  61 +
  62 +DEBUG_CFLAGS=-DDEBUG=1 -g -Wall
  63 +PW3270_CFLAGS=-I../include
  64 +CLASSLIBDIR=../classlib
  65 +include $(CLASSLIBDIR)/class.mak
  66 +
  67 +#---[ Build options ]----------------------------------------------------------
  68 +
  69 +CXXFLAGS=@CXXFLAGS@ @DLL_CFLAGS@ `$(PYCONFIG) --cflags` -I../include
  70 +
  71 +#---[ Rules ]------------------------------------------------------------------
  72 +
  73 +$(OBJRLS)/%.o: %.cc private.h Makefile
  74 + @echo " CC `basename $@`"
  75 + @mkdir -p `dirname $@`
  76 + @$(CXX) -DNDEBUG=1 $(CXXFLAGS) -o $@ -c $<
  77 +
  78 +$(OBJDBG)/%.o: %.cc private.h Makefile
  79 + @echo " CC `basename $@`"
  80 + @mkdir -p `dirname $@`
  81 + @$(CXX) -DDEBUG=1 $(CXXFLAGS) -o $@ -c $<
  82 +
  83 +#---[ Release targets ]--------------------------------------------------------
  84 +
  85 +all: $(BINRLS)/py3270@DLLEXT@
  86 +
  87 +Release: $(BINRLS)/py3270@DLLEXT@
  88 +
  89 +$(BINRLS)/py3270@DLLEXT@: $(foreach SRC, $(basename $(SOURCES)), $(OBJRLS)/$(SRC)@OBJEXT@) \
  90 + $(CLASS_RELEASE_OBJECTS)
  91 + @echo " LD `basename $@`"
  92 + @$(MKDIR) `dirname $@`
  93 + @$(CXX) @SYSDLL_FLAGS@ $(LDFLAGS) $(OO_LDFLAGS) -o $@ $^ $(CLASS_LIBS)
  94 +
  95 +
  96 +#---[ Debug targets ]----------------------------------------------------------
  97 +
  98 +Debug: $(BINDBG)/py3270@DLLEXT@
  99 +
  100 +$(BINDBG)/py3270@DLLEXT@: $(foreach SRC, $(basename $(SOURCES)), $(OBJDBG)/$(SRC)@OBJEXT@) \
  101 + $(CLASS_DEBUG_OBJECTS)
  102 + @echo " LD `basename $@`"
  103 + @$(MKDIR) `dirname $@`
  104 + @$(CXX) @SYSDLL_FLAGS@ $(LDFLAGS) $(OO_LDFLAGS) -o $@ $^ $(CLASS_LIBS)
  105 +
  106 +
  107 +run: $(BINDBG)/py3270@DLLEXT@
  108 +
  109 +#---[ Misc targets ]-----------------------------------------------------------
  110 +
  111 +install: $(BINRLS)/py3270@DLLEXT@
  112 +
  113 +
  114 +cleanDebug: clean
  115 +
  116 +clean:
  117 + @rm -fr $(OBJDIR)
  118 + @rm -fr $(BINDIR)
  119 +
... ...