# # "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) # licinio@bb.com.br (Licínio Luis Branco) # kraucer@bb.com.br (Kraucer Fernandes Mazuco) # #---[ Configuration values ]--------------------------------------------------- PACKAGE_NAME=@PACKAGE_NAME@ PACKAGE_VERSION=@PACKAGE_VERSION@ PACKAGE_TARNAME=@PACKAGE_TARNAME@ #---[ Paths ]------------------------------------------------------------------ prefix=@prefix@ exec_prefix=@exec_prefix@ bindir=@bindir@ sbindir=@sbindir@ libdir=@libdir@ includedir=@includedir@ datarootdir=@datarootdir@ localedir=@localedir@ docdir=@docdir@ sysconfdir=@sysconfdir@ BINDIR=.bin EXEEXT=@EXEEXT@ DBGLIB=-L../../$(BINDIR)/Debug/lib -l3270 RLSLIB=-L../../$(BINDIR)/Release/lib -l3270 TMPDIR=.tmp GLOBAL_DEPS=$(PWD)/include/*.h $(PWD)/include/lib3270/*.h LANG_FILES=$(wildcard po/*.po) #---[ Tools ]------------------------------------------------------------------ VALGRIND=@VALGRIND@ MKDIR=@MKDIR_P@ INSTALL=@INSTALL@ INSTALL_PROGRAM=@INSTALL_PROGRAM@ INSTALL_DATA=@INSTALL_DATA@ RPMBUILD=@RPMBUILD@ CONVERT=@CONVERT@ MSGCAT=@MSGCAT@ MSGINIT=@MSGINIT@ MSGMERGE=@MSGMERGE@ MSGFMT=@MSGFMT@ XML2POT=src/tools/xml2pot@EXEEXT@ SHELL=@SHELL@ #---[ Rules ]------------------------------------------------------------------ src/pw3270/%.png: src/pw3270/pixmaps/%.svg ifneq ($(CONVERT),no) @echo " GEN `basename $@`" @$(MKDIR) `dirname $@` @$(CONVERT) $< --format=png > $@ endif debian/%.install: src/%/Makefile @$(MAKE) DEBDIR=../../debian -C $(dir $^) ../../$@ $(BINDIR)/pot/%.pot: src/%/Makefile @$(MAKE) BINDIR=../../$(BINDIR) -C $(dir $^) ../../$@ po/%.po: $(PACKAGE_NAME).po @echo " GEN `basename $@`" @$(MKDIR) `dirname $@` @$(MKDIR) $(TMPDIR)/po @cp $@ $(TMPDIR)/$@ 2> $(TMPDIR)/cp.err > $(TMPDIR)/cp.out || true @touch $(TMPDIR)/$@ @$(MSGMERGE) $(TMPDIR)/$@ $(PACKAGE_NAME).po --output-file=$@ $(BINDIR)/Release/$(localedir)/%/LC_MESSAGES/$(PACKAGE_NAME).mo: po/%.po @echo " FMT `basename $@`" @$(MKDIR) `dirname $@` @$(MSGFMT) -c -v -o $@ $^ src/tools/%@EXEEXT@: src/tools/%.c @make -C src/tools $(notdir $@) #---[ Release targets ]-------------------------------------------------------- all: $(BINDIR)/Release/$(PACKAGE_TARNAME)$(EXEEXT) locale filelist Release: $(BINDIR)/Release/$(PACKAGE_TARNAME)$(EXEEXT) $(BINDIR)/Release/$(PACKAGE_TARNAME)$(EXEEXT): src/pw3270/* $(BINDIR)/Release/lib/@DLLPREFIX@3270@DLLEXT@ $(DEPENDS) @$(MAKE) BINDIR="../../$(BINDIR)" LIB3270_LIBS="$(RLSLIB)" LIB3270_CFLAGS="-I../../src/include" -C src/pw3270 ../../$(BINDIR)/Release/$(PACKAGE_TARNAME)$(EXEEXT) $(BINDIR)/Release/lib/@DLLPREFIX@3270@DLLEXT@: src/lib3270/* src/include/lib3270/* src/include/* Makefile @$(MAKE) BINRLS=../../.bin/Release/lib -C src/lib3270 ../../.bin/Release/lib/@DLLPREFIX@3270@DLLEXT@ #---[ File lists ]------------------------------------------------------------- filelist: debian/lib3270.install debian/lib3270-dev.install debian/pw3270.install debian/lib3270-dev.install: Makefile @echo " GEN `basename $@`" @$(MKDIR) `dirname $@` @echo "$(includedir)/lib3270.h" > $@ @echo "$(includedir)/lib3270" >> $@ @echo "$(datarootdir)/@PACKAGE_NAME@/ui/99debug.xml" >> $@ @echo "$(libdir)/pkgconfig/*.pc" >: $@ #---[ Debug targets ]---------------------------------------------------------- Debug: $(BINDIR)/Debug/$(PACKAGE_TARNAME)$(EXEEXT) $(BINDIR)/Debug/$(PACKAGE_TARNAME)$(EXEEXT): src/pw3270/* $(BINDIR)/Debug/lib/@DLLPREFIX@3270@DLLEXT@ $(DEPENDS) @$(MAKE) BINDIR="../../$(BINDIR)" LIB3270_LIBS="$(DBGLIB)" LIB3270_CFLAGS="-I../../src/include" -C src/pw3270 ../../$(BINDIR)/Debug/$(PACKAGE_TARNAME)$(EXEEXT) $(BINDIR)/Debug/lib/@DLLPREFIX@3270@DLLEXT@: src/lib3270/* src/include/lib3270/* src/include/* Makefile @$(MAKE) BINDBG=../../.bin/Debug/lib -C src/lib3270 ../../.bin/Debug/lib/@DLLPREFIX@3270@DLLEXT@ run: $(BINDIR)/Debug/$(PACKAGE_TARNAME)$(EXEEXT) @PATH="$(BINDIR)/Debug/lib:$(PATH)" "$(BINDIR)/Debug/$(PACKAGE_TARNAME)$(EXEEXT)" memchk: $(BINDIR)/Debug/$(PACKAGE_TARNAME)$(EXEEXT) ifeq ($(VALGRIND),no) @PATH="$(BINDIR)/Debug/lib:$(PATH)" "$(BINDIR)/Debug/$(PACKAGE_TARNAME)$(EXEEXT)" else @PATH="$(BINDIR)/Debug/lib:$(PATH)" G_DEBUG=gc-friendly G_SLICE=always-malloc \$(VALGRIND) --leak-check=full --suppressions=src/pw3270/valgrind.suppression --gen-suppressions=all $(BINDIR)/Debug/$(PACKAGE_TARNAME)$(EXEEXT) endif #---[ Targets ]---------------------------------------------------------------- tgz: $(PACKAGE_TARNAME)-$(PACKAGE_VERSION).tar.gz rpm: $(PACKAGE_TARNAME)-$(PACKAGE_VERSION).tar.gz ifneq ($(RPMBUILD),no) @$(MKDIR) $(PWD)/$(TMPDIR)/rpmbuild @TMPDIR=$(PWD)/$(TMPDIR)/rpmbuild rpmbuild -ta --clean $(PACKAGE_TARNAME)-$(PACKAGE_VERSION).tar.gz @rm -fr $(PWD)/$(TMPDIR)/rpmbuild endif srpm: $(PACKAGE_TARNAME)-$(PACKAGE_VERSION).tar.gz ifneq ($(RPMBUILD),no) @rpmbuild -ts $(PACKAGE_TARNAME)-$(PACKAGE_VERSION).tar.gz endif $(PACKAGE_NAME).po: $(TMPDIR)/$(PACKAGE_NAME).pot @echo " INIT `basename $@`" @$(MSGINIT) --no-translator -o $@ --locale=en_US -i $^ $(BINDIR)/pot/ui.pot: $(XML2POT) $(wildcard ui/*.xml) @echo " TEXT `basename $@`" @$(MKDIR) `dirname $@` @$(XML2POT) $(wildcard ui/*.xml) > $@ $(TMPDIR)/$(PACKAGE_NAME).pot: $(BINDIR)/pot/pw3270.pot $(BINDIR)/pot/lib3270.pot $(BINDIR)/pot/ui.pot @echo " TEXT `basename $@`" @$(MKDIR) `dirname $@` @$(MSGCAT) --sort-output $^ | sed "s&VERSION&$(PACKAGE_VERSION)&;s&CHARSET&UTF-8&;s&PACKAGE&$(PACKAGE_NAME)&g" > $@ $(PACKAGE_TARNAME)-$(PACKAGE_VERSION).tar.gz: clean src/pw3270/$(PACKAGE_NAME).png src/pw3270/$(PACKAGE_NAME)-logo.png @rm -fr $(TMPDIR)/$(PACKAGE_TARNAME)-$(PACKAGE_VERSION) @$(MKDIR) $(TMPDIR)/$(PACKAGE_TARNAME)-$(PACKAGE_VERSION) @cp *.m4 $(TMPDIR)/$(PACKAGE_TARNAME)-$(PACKAGE_VERSION) @NOCONFIGURE=1 ./autogen.sh $(TMPDIR)/$(PACKAGE_TARNAME)-$(PACKAGE_VERSION) @cp configure.ac $(TMPDIR)/$(PACKAGE_TARNAME)-$(PACKAGE_VERSION) @cp configure $(TMPDIR)/$(PACKAGE_TARNAME)-$(PACKAGE_VERSION) @cp *.in $(TMPDIR)/$(PACKAGE_TARNAME)-$(PACKAGE_VERSION) @cp AUTHORS LICENSE $(TMPDIR)/$(PACKAGE_TARNAME)-$(PACKAGE_VERSION) @cp -r src $(TMPDIR)/$(PACKAGE_TARNAME)-$(PACKAGE_VERSION) @cp -r scripts $(TMPDIR)/$(PACKAGE_TARNAME)-$(PACKAGE_VERSION) @cp $(PACKAGE_TARNAME).spec $(TMPDIR)/$(PACKAGE_TARNAME)-$(PACKAGE_VERSION) @$(MKDIR) $(TMPDIR)/$(PACKAGE_TARNAME)-$(PACKAGE_VERSION)/ui @cp ui/* $(TMPDIR)/$(PACKAGE_TARNAME)-$(PACKAGE_VERSION)/ui @$(MKDIR) $(TMPDIR)/$(PACKAGE_TARNAME)-$(PACKAGE_VERSION)/po @cp po/*.po $(TMPDIR)/$(PACKAGE_TARNAME)-$(PACKAGE_VERSION)/po @tar --create --gzip --directory $(TMPDIR) --exclude-vcs --file=$@ $(PACKAGE_TARNAME)-$(PACKAGE_VERSION) @rm -fr $(TMPDIR)/$(PACKAGE_TARNAME)-$(PACKAGE_VERSION) @echo $@ install: install-sdk install-lib install-app install-app: install-locale @$(MAKE) BINDIR="../../$(BINDIR)" LIB3270_LIBS="$(RLSLIB)" LIB3270_CFLAGS="-I../../src/include" -C src/pw3270 install @$(MKDIR) $(DESTDIR)$(datarootdir)/$(PACKAGE_NAME)/ui @$(INSTALL_DATA) ui/*.xml $(DESTDIR)$(datarootdir)/$(PACKAGE_NAME)/ui install-lib: @$(MAKE) BINRLS="../../.bin/Release/lib" -C src/lib3270 install locale: $(foreach SRC, $(basename $(LANG_FILES)), $(SRC).po) install-locale: $(foreach MO, $(basename $(LANG_FILES)), $(BINDIR)/Release/$(localedir)/$(notdir $(MO))/LC_MESSAGES/$(PACKAGE_NAME).mo) @echo -e $(foreach MO, $(notdir $(basename $(LANG_FILES))), mkdir -p $(DESTDIR)/$(localedir)/$(MO)/LC_MESSAGES\\n$(INSTALL_DATA) $(BINDIR)/Release/$(localedir)/$(MO)/LC_MESSAGES/$(PACKAGE_NAME).mo $(DESTDIR)/$(localedir)/$(MO)/LC_MESSAGES/$(PACKAGE_NAME).mo \\n ) | $(SHELL) install-sdk: @$(MKDIR) $(DESTDIR)$(includedir)/lib3270 @$(INSTALL_DATA) src/include/lib3270.h $(DESTDIR)/$(includedir) @$(INSTALL_DATA) src/include/lib3270/config.h $(DESTDIR)/$(includedir)/lib3270 @$(INSTALL_DATA) src/include/lib3270/selection.h $(DESTDIR)/$(includedir)/lib3270 @$(INSTALL_DATA) src/include/lib3270/popup.h $(DESTDIR)/$(includedir)/lib3270 @$(MKDIR) $(DESTDIR)/$(libdir)/pkgconfig @$(INSTALL_DATA) lib3270.pc $(DESTDIR)/$(libdir)/pkgconfig clean: @rm -fr .obj @rm -fr .bin @rm -fr .tmp @rm -f $(PACKAGE_NAME).po @rm -f debian/*.install @make -C src/lib3270 clean @make -C src/pw3270 clean @make -C src/tools clean @rm -f *.log distclean: clean @rm -f src/pw3270/Makefile @rm -f config.status @rm -f src/lib3270/mkversion.sh @rm -f src/lib3270/Makefile @rm -f src/include/lib3270/config.h @rm -f src/pw3270/uiparser/Makefile @rm -fr autom4te.cache @rm -f *.pc @rm -f Makefile