view libgui/Makefile.am @ 18650:491b0adfec95

compatibility fixes for printf integer format specifiers Attempt to handle automatic conversion from integer floating point format in a way that is more compatible with Matlab behavior, including working properly for 64-bit integer values. * ov-base-diag.cc, ov-base-diag.h, ov-base-scalar.cc, ov-base-scalar.h, ov-base-sparse.cc, ov-base-sparse.h, ov-perm.cc, ov-perm.h, ov-range.cc, ov-range.h: Provide fast_elem_extract member function. * oct-stream.cc, oct-stream.h (printf_format_list::process_conversion): Ignore modifiers for integer formats. (printf_value_cache::curr_val): Store octave_value instead of NDArray. (printf_value_cache::data): Delete. (printf_value_cache::have_data): New member variable. (printf_value_cache::get_next_value): Rename from double_value, return individual value as an octave_value object instead of a double. (is_nan_or_inf, ok_for_signed_int_conv, ok_for_unsigned_int_conv, switch_to_g_format): New static functions. (DO_DOUBLE_CONV_1, DO_DOUBLE_CONV): Delete macros. (octave_base_stream::do_numeric_printf_conv): New function. (octave_base_stream::do_printf): Move code for handling numeric formats to do_numeric_printf_conv. * datestr.m: Round value for %d format.
author John W. Eaton <jwe@octave.org>
date Tue, 15 Apr 2014 14:12:56 -0400
parents f1b91e3137b9
children c23e9e29a499
line wrap: on
line source

# Makefile for Octave's libgui directory
#
# Copyright (C) 2012-2013 John W. Eaton
#
# This file is part of Octave.
#
# Octave is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the
# Free Software Foundation; either version 3 of the License, or (at
# your option) any later version.
#
# Octave is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
# for more details.
#
# You should have received a copy of the GNU General Public License
# along with Octave; see the file COPYING.  If not, see
# <http://www.gnu.org/licenses/>.

include $(top_srcdir)/build-aux/common.mk

MOC_CPPFLAGS =

octlib_LTLIBRARIES = liboctgui.la

TRANSLATIONS = \
  languages/be_BY.ts \
  languages/de_DE.ts \
  languages/en_US.ts \
  languages/es_ES.ts \
  languages/fr_FR.ts \
  languages/nl_NL.ts \
  languages/pt_BR.ts \
  languages/pt_PT.ts \
  languages/ru_RU.ts \
  languages/uk_UA.ts \
  languages/zh_CN.ts

LOCALES = $(patsubst languages/%.ts, languages/%.qm, $(TRANSLATIONS))

EXTRA_DIST = default-qt-settings.in $(TRANSLATIONS)
CLEANFILES =

BUILT_SOURCES =

noinst_HEADERS =

noinst_LTLIBRARIES =

include src/module.mk
include graphics/module.mk
include qterminal-module.mk

## liboctgui merely collects a bunch of compiled convenience libraries.
## It has no source code itself.
liboctgui_la_SOURCES = 

include link-deps.mk

# Dummy C++ source to force C++ linking.
nodist_EXTRA_liboctgui_la_SOURCES = dummy.cc

liboctgui_la_LIBADD = \
  qterminal/libqterminal.la \
  src/libgui-src.la \
  graphics/libgui-graphics.la \
  $(top_builddir)/libinterp/liboctinterp.la \
  $(top_builddir)/liboctave/liboctave.la \
  $(LIBOCTGUI_LINK_DEPS)

# Increment these as needed and according to the rules in the libtool manual:
liboctgui_current = 0
liboctgui_revision = 0
liboctgui_age = 0

liboctgui_version_info = $(liboctgui_current):$(liboctgui_revision):$(liboctgui_age)

liboctgui_la_LDFLAGS = \
  -version-info $(liboctgui_version_info) \
  $(NO_UNDEFINED_LDFLAG) \
  -bindir $(bindir) \
  $(LIBOCTGUI_LINK_OPTS)

octetc_DATA = default-qt-settings

octlocale_DATA = $(LOCALES)

default-qt-settings: default-qt-settings.in
	$(do_subst_qt_settings)

define moc-command
( echo '#ifdef HAVE_CONFIG_H'; \
  echo '#include <config.h>'; \
  echo '#endif'; \
  $(MOC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(MOC_CPPFLAGS) $(liboctgui_la_CPPFLAGS) $< ) > $@-t
mv $@-t $@
endef

define rcc-command
( echo '#ifdef HAVE_CONFIG_H'; \
  echo '#include <config.h>'; \
  echo '#endif'; \
  $(RCC) -name $(@D) $< ) > $@-t
mv $@-t $@
endef

moc-%.cc: %.h
	$(moc-command)

ui-%.h: %.ui
	$(UIC) -o $@ $<

qrc-%.cc: %.qrc
	$(rcc-command)

%.qm: %.ts
	$(MKDIR_P) languages
	$(LRELEASE) -qm $@ $<

DISTCLEANFILES = \
  default-qt-settings \
  $(LOCALES)