diff --git a/configure.ac b/configure.ac index ed084a7..8459e54 100644 --- a/configure.ac +++ b/configure.ac @@ -170,11 +170,21 @@ dnl --------------------------------------------------------------------------- dnl Check for ooRexx dnl --------------------------------------------------------------------------- +PKG_CHECK_MODULES( [GTK], [gtk+-3.0], AC_DEFINE(HAVE_GTK)) + +AC_SUBST(GTK_LIBS) +AC_SUBST(GTK_CFLAGS) +AC_SUBST(GTK_VERSION,`$PKG_CONFIG --modversion gtk+-3.0`) + +dnl --------------------------------------------------------------------------- +dnl Check for GTK +dnl --------------------------------------------------------------------------- + PKG_CHECK_MODULES( [REXX], [ooRexx], AC_DEFINE(HAVE_OOREXX)) AC_SUBST(REXX_LIBS) AC_SUBST(REXX_CFLAGS) -AC_SUBST(REXX_VERSION,`$PKG_CONFIG --modversion ooRexx`) + dnl --------------------------------------------------------------------------- dnl Check for integer types & library functions @@ -336,8 +346,8 @@ dnl Configure which files to generate. dnl --------------------------------------------------------------------------- dnl AC_CONFIG_FILES(Makefile) -dnl AC_CONFIG_FILES(src/extension/Makefile) -dnl AC_CONFIG_FILES(src/plugin/Makefile) +AC_CONFIG_FILES(src/extension/Makefile) +AC_CONFIG_FILES(src/plugin/Makefile) dnl --------------------------------------------------------------------------- dnl Output the generated config.status script. diff --git a/src/extension/Makefile.in b/src/extension/Makefile.in new file mode 100644 index 0000000..53aa670 --- /dev/null +++ b/src/extension/Makefile.in @@ -0,0 +1,164 @@ +# +# "Software pw3270, desenvolvido com base nos códigos fontes do WC3270 e X3270 +# (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a +# aplicativos mainframe. Registro no INPI sob o nome G3270. +# +# Copyright (C) <2008> +# +# Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob +# os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela +# Free Software Foundation. +# +# Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER +# GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO +# A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para +# obter mais detalhes. +# +# Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este +# programa; se não, escreva para a Free Software Foundation, Inc., 59 Temple +# Place, Suite 330, Boston, MA, 02111-1307, USA +# +# Contatos: +# +# perry.werneck@gmail.com (Alexandre Perry de Souza Werneck) +# erico.mendonca@gmail.com (Erico Mascarenhas de Mendonça) +# + +SOURCES=rexx_methods.cc rx3270.cc typed_routines.cc +LIBNAME=librx3270@DLLEXT@ + +#---[ Configuration values ]------------------------------------------------------------- + +PACKAGE_NAME=@PACKAGE_NAME@ +PACKAGE_VERSION=@PACKAGE_VERSION@ +PACKAGE_TARNAME=@PACKAGE_TARNAME@ + +prefix=@prefix@ +exec_prefix=@exec_prefix@ +bindir=@bindir@ +sbindir=@sbindir@ +libdir=@libdir@ + +BASEDIR=@BASEDIR@ +SRCDIR=$(BASEDIR)/.src/$(PACKAGE_TARNAME)-$(PACKAGE_VERSION) + +OBJDIR=$(BASEDIR)/.obj +OBJDBG=$(OBJDIR)/Debug +OBJRLS=$(OBJDIR)/Release + +BINDIR=$(BASEDIR)/.bin +BINDBG=$(BINDIR)/Debug +BINRLS=$(BINDIR)/Release + +INSTALL=@INSTALL@ +INSTALL_DATA=@INSTALL_DATA@ +INSTALL_PROGRAM=@INSTALL_PROGRAM@ + +LN_S=@LN_S@ + +VALGRIND=@VALGRIND@ +AMTAR=@AMTAR@ +SHELL=@SHELL@ +STRIP=@STRIP@ +MKDIR=@MKDIR_P@ + +CXX=@CXX@ +CC=@CC@ +LD=@CXX@ + +LIBS=-lpw3270cpp @LIBS@ @REXX_LIBS@ +CFLAGS=-I$(BASEDIR)/src/include @CFLAGS@ @REXX_CFLAGS@ +LDFLAGS=@LDFLAGS@ + +#---[ Rules ]---------------------------------------------------------------------------- + +DEPENDS=../include/*.h Makefile + +$(OBJDBG)/%.o: \ + %.cc \ + $(DEPENDS) + + @echo $< ... + @$(MKDIR) `dirname $@` + @$(CXX) $(CFLAGS) -fstack-check -DDEBUG=1 \ + -DBUILD_DATE=`date +"0x%Y%m%d"`\ + -g -o $@ -c $< + +$(OBJRLS)/%.o: \ + %.cc \ + $(DEPENDS) + + @echo $< ... + @$(MKDIR) `dirname $@` + @$(CXX) $(CFLAGS) -DNDEBUG=1 \ + -DBUILD_DATE=`date +"0x%Y%m%d"` \ + -o $@ -c $< + +#---[ Release Targets ]------------------------------------------------------------------ + +all: \ + $(BINRLS)/$(LIBNAME) + +Release: \ + $(BINRLS)/$(LIBNAME) + +install: \ + $(BINRLS)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@ + + @$(MKDIR) $(DESTDIR)/$(libdir) + @$(INSTALL_PROGRAM) $(BINRLS)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@ $(DESTDIR)/$(libdir) + + @rm -f $(DESTDIR)/$(libdir)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@ + @rm -f $(DESTDIR)/$(libdir)/$(LIBNAME) + + @$(LN_S) $(LIBNAME).@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@ $(DESTDIR)/$(libdir)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@ + @$(LN_S) $(LIBNAME).@PACKAGE_MAJOR_VERSION@ $(DESTDIR)/$(libdir)/$(LIBNAME) + +$(BINRLS)/$(LIBNAME): \ + $(BINRLS)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@ + + @rm -f $@ + @$(LN_S) $(LIBNAME).@PACKAGE_MAJOR_VERSION@ $@ + + +$(BINRLS)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@: \ + $(BINRLS)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@ + + @rm -f $@ + @$(LN_S) $(LIBNAME).@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@ $@ + + +$(BINRLS)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@: \ + $(foreach SRC, $(basename $(SOURCES)), $(OBJRLS)/$(SRC).o) + + @echo $(basename $@) ... + @$(MKDIR) `dirname $@` + @$(LD) -shared -Wl,-soname,$(LIBNAME) $(LDFLAGS) -o $@ $^ $(LIBS) + +#---[ Debug Targets ]-------------------------------------------------------------------- + +Debug: \ + $(BINDBG)/$(LIBNAME) + +$(BINDBG)/$(LIBNAME): \ + $(BINDBG)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@ + + @rm -f $@ + @$(LN_S) $(LIBNAME).@PACKAGE_MAJOR_VERSION@ $@ + + +$(BINDBG)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@: \ + $(BINDBG)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@ + + @rm -f $@ + @$(LN_S) $(LIBNAME).@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@ $@ + + +$(BINDBG)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@: \ + $(foreach SRC, $(basename $(SOURCES)), $(OBJDBG)/$(SRC).o) + + @echo $(basename $@) ... + @$(MKDIR) `dirname $@` + @$(LD) -shared -Wl,-soname,$(LIBNAME) $(LDFLAGS) -o $@ $^ $(LIBS) + + diff --git a/src/include/rx3270.h b/src/include/rx3270.h index 8ee1843..c836580 100644 --- a/src/include/rx3270.h +++ b/src/include/rx3270.h @@ -31,13 +31,6 @@ #define RX3270_H_INCLUDED 1 - #define ENABLE_NLS - #define GETTEXT_PACKAGE "pw3270" - - #include - #include - #include - #include #include #include diff --git a/src/plugin/Makefile.in b/src/plugin/Makefile.in new file mode 100644 index 0000000..7ede7ff --- /dev/null +++ b/src/plugin/Makefile.in @@ -0,0 +1,127 @@ +# +# "Software pw3270, desenvolvido com base nos códigos fontes do WC3270 e X3270 +# (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a +# aplicativos mainframe. Registro no INPI sob o nome G3270. +# +# Copyright (C) <2008> +# +# Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob +# os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela +# Free Software Foundation. +# +# Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER +# GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO +# A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para +# obter mais detalhes. +# +# Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este +# programa; se não, escreva para a Free Software Foundation, Inc., 59 Temple +# Place, Suite 330, Boston, MA, 02111-1307, USA +# +# Contatos: +# +# perry.werneck@gmail.com (Alexandre Perry de Souza Werneck) +# erico.mendonca@gmail.com (Erico Mascarenhas de Mendonça) +# + +SOURCES=plugin.cc +LIBNAME=prx3270@DLLEXT@ + +#---[ Configuration values ]------------------------------------------------------------- + +PACKAGE_NAME=@PACKAGE_NAME@ +PACKAGE_VERSION=@PACKAGE_VERSION@ +PACKAGE_TARNAME=@PACKAGE_TARNAME@ + +prefix=@prefix@ +exec_prefix=@exec_prefix@ +bindir=@bindir@ +sbindir=@sbindir@ +libdir=@libdir@ + +BASEDIR=@BASEDIR@ +SRCDIR=$(BASEDIR)/.src/$(PACKAGE_TARNAME)-$(PACKAGE_VERSION) + +OBJDIR=$(BASEDIR)/.obj +OBJDBG=$(OBJDIR)/Debug +OBJRLS=$(OBJDIR)/Release + +BINDIR=$(BASEDIR)/.bin +BINDBG=$(BINDIR)/Debug +BINRLS=$(BINDIR)/Release + +INSTALL=@INSTALL@ +INSTALL_DATA=@INSTALL_DATA@ +INSTALL_PROGRAM=@INSTALL_PROGRAM@ + +LN_S=@LN_S@ + +VALGRIND=@VALGRIND@ +AMTAR=@AMTAR@ +SHELL=@SHELL@ +STRIP=@STRIP@ +MKDIR=@MKDIR_P@ + +CXX=@CXX@ +CC=@CC@ +LD=@CXX@ + +LIBS=-lpw3270cpp @LIBS@ @GTK_LIBS@ @REXX_LIBS@ +CFLAGS=-I$(BASEDIR)/src/include @CFLAGS@ @GTK_CFLAGS@ @REXX_CFLAGS@ +LDFLAGS=@LDFLAGS@ + +#---[ Rules ]---------------------------------------------------------------------------- + +DEPENDS=../include/*.h Makefile + +$(OBJDBG)/%.o: \ + %.cc \ + $(DEPENDS) + + @echo $< ... + @$(MKDIR) `dirname $@` + @$(CXX) $(CFLAGS) -fstack-check -DDEBUG=1 \ + -DBUILD_DATE=`date +"0x%Y%m%d"`\ + -g -o $@ -c $< + +$(OBJRLS)/%.o: \ + %.cc \ + $(DEPENDS) + + @echo $< ... + @$(MKDIR) `dirname $@` + @$(CXX) $(CFLAGS) -DNDEBUG=1 \ + -DBUILD_DATE=`date +"0x%Y%m%d"` \ + -o $@ -c $< + +#---[ Release Targets ]------------------------------------------------------------------ + +all: \ + $(BINRLS)/$(LIBNAME) + +Release: \ + $(BINRLS)/$(LIBNAME) + +install: \ + $(BINRLS)/$(LIBNAME) + +$(BINRLS)/$(LIBNAME): \ + $(foreach SRC, $(basename $(SOURCES)), $(OBJRLS)/$(SRC).o) + + @echo $(basename $@) ... + @$(MKDIR) `dirname $@` + @$(LD) -shared -Wl,-soname,$(LIBNAME) $(LDFLAGS) -o $@ $^ $(LIBS) + +#---[ Debug Targets ]-------------------------------------------------------------------- + +Debug: \ + $(BINDBG)/$(LIBNAME) + +$(BINDBG)/$(LIBNAME): \ + $(foreach SRC, $(basename $(SOURCES)), $(OBJDBG)/$(SRC).o) + + @echo $(basename $@) ... + @$(MKDIR) `dirname $@` + @$(LD) -shared -Wl,-soname,$(LIBNAME) -L$(BINDBG) $(LDFLAGS) -o $@ $^ -lrx3270 $(LIBS) + + diff --git a/src/plugin/plugin.cc b/src/plugin/plugin.cc index 8305171..13d2f07 100644 --- a/src/plugin/plugin.cc +++ b/src/plugin/plugin.cc @@ -32,11 +32,23 @@ * */ - #include "private.h" + #define ENABLE_NLS + #define GETTEXT_PACKAGE "pw3270" + + #include + #include + #include + + #include + #include + #include #include #include + #include #include + #pragma GCC diagnostic ignored "-Wdeprecated-declarations" + /*--[ Globals ]--------------------------------------------------------------------------------------*/ #if GTK_CHECK_VERSION(2,32,0) -- libgit2 0.21.2