Makefile.in 4.68 KB
#
# "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> <Banco do Brasil S.A.>
#
# 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@

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@

CC=@CC@
LD=@CC@

CFLAGS=@CFLAGS@ @LIB3270_CFLAGS@ @LIBSSL_CFLAGS@
LIBS=@LIBS@ @LIBSSL_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 $<


#---[ Release Targets ]------------------------------------------------------------------

all: \
	$(BINRLS)/$(LIBNAME)

Release: \
	$(BINRLS)/$(LIBNAME)

$(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,$(LIBNAME) $(LDFLAGS) -o $@ $^ $(LIBS)

#---[ 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,$(LIBNAME) $(LDFLAGS) -o $@ $^ $(LIBS)

#---[ Clean Targets]---------------------------------------------------------------------

cleanDebug:

	@rm -fr	$(OBJDBG) \
			$(BINDBG)/$(LIBNAME) \
			$(BINDBG)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@ \
			$(BINDBG)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@

cleanRelease:

	@rm -fr	$(OBJRLS) \
			$(BINRLS)/$(LIBNAME) \
			$(BINRLS)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@ \
			$(BINRLS)/$(LIBNAME).@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@

clean: \
	cleanDebug \
	cleanRelease