# # "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) # LIBNAME=lib3270@DLLEXT@ SOURCES = bounds.c ctlr.c util.c toggles.c screen.c selection.c kybd.c telnet.c \ iocalls.c connect.c \ host.c sf.c ansi.c resolver.c charset.c \ version.c session.c state.c html.c trace_ds.c see.c \ paste.c ssl.c actions.c \ ft.c ft_cut.c ft_dft.c glue.c resources.c \ rpq.c macros.c fallbacks.c log.c options.c #---[ 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)/src/lib3270 POTDIR=$(BASEDIR)/.pot/lib3270 OBJDIR=$(BASEDIR)/.obj/lib3270 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@ AMTAR=@AMTAR@ SHELL=@SHELL@ MKDIR=@MKDIR_P@ XGETTEXT=@XGETTEXT@ MSGCAT=@MSGCAT@ VALGRIND=@VALGRIND@ CC=@CC@ HOST_CC=@HOST_CC@ LD=@CC@ CFLAGS=@CFLAGS@ @LIB3270_CFLAGS@ @LIBSSL_CFLAGS@ LIBS=@LIBS@ @LIBSSL_LIBS@ @LIBICONV@ @INTL_LIBS@ LDFLAGS=@LDFLAGS@ #---[ Rules ]---------------------------------------------------------------------------- DEPENDS=$(BASEDIR)/src/include/*.h $(BASEDIR)/src/include/lib3270/*.h *.h Makefile $(OBJDBG)/%.o: \ %.c \ $(DEPENDS) @echo $< ... @$(MKDIR) `dirname $@` @$(CC) $(CFLAGS) \ @DBG_CFLAGS@ \ -DBUILD_DATE=`date +"0x%Y%m%d"`\ -o $@ -c $< $(OBJRLS)/%.o: \ %.c \ $(DEPENDS) @echo $< ... @$(MKDIR) `dirname $@` @$(CC) $(CFLAGS) \ @RLS_CFLAGS@ \ -DBUILD_DATE=`date +"0x%Y%m%d"` \ -o $@ -c $< $(POTDIR)/%.pot: %.c @echo $(notdir $@) ... @$(MKDIR) `dirname $@` @$(XGETTEXT) \ --default-domain=$(PACKAGE) \ --language=C \ --keyword=_ \ --keyword=N_ \ --keyword=MSG_:2 \ --output=$@ \ $< @touch $@ #---[ Release Targets ]------------------------------------------------------------------ all: \ $(BINRLS)/$(LIBNAME) Release: \ $(BINRLS)/$(LIBNAME) $(BASEDIR)/.pot/lib3270.pot: \ $(foreach SRC, $(basename $(SOURCES)), $(POTDIR)/$(SRC).pot) @rm -f $@ @mkdir -p `dirname $@` @$(MSGCAT) --sort-output $^ > $@ $(BINRLS)/$(LIBNAME): \ $(BINRLS)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@ @echo $(basename $@) ... @$(MKDIR) `dirname $@` @$(LN_S) -f $(LIBNAME).@PACKAGE_MAJOR_VERSION@ $@ $(BINRLS)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@: \ $(BINRLS)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@ @echo $(basename $@) ... @$(MKDIR) `dirname $@` @$(LN_S) -f $(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,$(@F) $(LDFLAGS) -o $@ $^ $(LIBS) install: \ $(BINRLS)/$(LIBNAME) @$(MKDIR) $(DESTDIR)$(libdir) @$(INSTALL_PROGRAM) \ $(BINRLS)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@ \ $(DESTDIR)$(libdir) @$(LN_S) -f \ $(LIBNAME).@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@ \ $(DESTDIR)$(libdir)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@ @$(LN_S) -f \ $(LIBNAME).@PACKAGE_MAJOR_VERSION@ \ $(DESTDIR)$(libdir)/$(LIBNAME) #---[ Debug Targets ]-------------------------------------------------------------------- Debug: \ $(BINDBG)/$(LIBNAME) $(BINDBG)/$(LIBNAME): \ $(BINDBG)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@ @echo $(basename $@) ... @$(MKDIR) `dirname $@` @$(LN_S) -f $(LIBNAME).@PACKAGE_MAJOR_VERSION@ $@ $(BINDBG)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@: \ $(BINDBG)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@ @echo $(basename $@) ... @$(MKDIR) `dirname $@` @$(LN_S) -f $(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,$(@F) $(LDFLAGS) -o $@ $^ $(LIBS) #---[ Misc Targets ]--------------------------------------------------------------------- fallbacks.c: \ X3270.xad \ mkfb.c @echo $(basename $@) ... @$(MKDIR) $(BINDIR) @$(HOST_CC) -g -o $(BINDIR)/mkfb@EXEEXT@ mkfb.c @$(BINDIR)/mkfb@EXEEXT@ -c X3270.xad $@ version.c: \ ./mkversion.sh @echo $(basename $@) ... @chmod +x ./mkversion.sh @./mkversion.sh $(BINDBG)/testprogram$(EXEEXT): \ $(OBJDBG)/testprogram.o \ $(foreach SRC, $(basename $(SOURCES)), $(OBJDBG)/$(SRC).o) @echo $(basename $@) ... @$(MKDIR) `dirname $@` @$(LD) -o $@ $^ $(LIBS) run: \ $(BINDBG)/testprogram$(EXEEXT) ifeq ($(VALGRIND),no) @cd "$(ROOTDIR)" ; .bin/Debug/testprogram$(EXEEXT) else @cd "$(ROOTDIR)" ; \$(VALGRIND) --leak-check=full --gen-suppressions=all $(BINDBG)/testprogram$(EXEEXT) endif $(SRCDIR): \ clean @$(MKDIR) $@ @$(INSTALL_DATA) *.c *.h *.in *.cbp *.xad $@ #---[ Clean Targets]--------------------------------------------------------------------- cleanDebug: @rm -fr $(OBJDBG) \ $(BINDBG)/$(LIBNAME) \ $(BINDBG)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@ \ $(BINDBG)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@ @rm -f \ fallbacks.c \ version.c cleanRelease: @rm -fr $(OBJRLS) \ $(BINRLS)/$(LIBNAME) \ $(BINRLS)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@ \ $(BINRLS)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@ \ $(POTDIR) @rm -f \ fallbacks.c \ version.c clean: \ cleanDebug \ cleanRelease