@@ -1,6 +1,6 @@ | |||||
# $Id$ | # $Id$ | ||||
SUBDIRS = kernel cucul caca src test tools doc | |||||
SUBDIRS = kernel cucul caca src test tools cpp doc | |||||
DIST_SUBDIRS = $(SUBDIRS) autotools debian msvc | DIST_SUBDIRS = $(SUBDIRS) autotools debian msvc | ||||
EXTRA_DIST = NOTES COPYING.GPL COPYING.LGPL bootstrap build-dos build-kernel build-win32 caca-config.in libcaca.spec | EXTRA_DIST = NOTES COPYING.GPL COPYING.LGPL bootstrap build-dos build-kernel build-win32 caca-config.in libcaca.spec | ||||
@@ -11,10 +11,13 @@ AM_CONFIG_HEADER(config.h) | |||||
AM_PROG_CC_C_O | AM_PROG_CC_C_O | ||||
AC_PROG_CPP | AC_PROG_CPP | ||||
AC_PROG_CXX | |||||
AM_PROG_AS | AM_PROG_AS | ||||
AC_LIBTOOL_WIN32_DLL | AC_LIBTOOL_WIN32_DLL | ||||
AM_PROG_LIBTOOL | AM_PROG_LIBTOOL | ||||
AC_LIBTOOL_CXX | |||||
AC_C_CONST | AC_C_CONST | ||||
AC_C_INLINE | AC_C_INLINE | ||||
@@ -23,9 +26,17 @@ AC_TYPE_SIGNAL | |||||
dnl AC_PROG_EGREP only exists in autoconf 2.54+, so we use AC_EGREP_CPP right | dnl AC_PROG_EGREP only exists in autoconf 2.54+, so we use AC_EGREP_CPP right | ||||
dnl now otherwise it might be set in an obscure if statement. Same thing for | dnl now otherwise it might be set in an obscure if statement. Same thing for | ||||
dnl PKG_PROG_PKG_CONFIG which needs to be called first. | dnl PKG_PROG_PKG_CONFIG which needs to be called first. | ||||
AC_EGREP_CPP(foo, foo) | |||||
AC_EGREP_CPP(yes, foo) | |||||
PKG_PROG_PKG_CONFIG() | PKG_PROG_PKG_CONFIG() | ||||
dnl Check the C++ compiler and preprocessor. | |||||
AC_PROG_CXX | |||||
AC_PROG_CXXCPP | |||||
dnl Set the test language as C++ | |||||
AC_LANG([C++]) | |||||
dnl output driver features | dnl output driver features | ||||
AC_ARG_ENABLE(slang, | AC_ARG_ENABLE(slang, | ||||
[ --enable-slang slang graphics support (autodetected)]) | [ --enable-slang slang graphics support (autodetected)]) | ||||
@@ -44,6 +55,9 @@ AC_ARG_ENABLE(network, | |||||
AC_ARG_ENABLE(vga, | AC_ARG_ENABLE(vga, | ||||
[ --enable-vga VGA support (default disabled)]) | [ --enable-vga VGA support (default disabled)]) | ||||
AC_ARG_ENABLE(cpp, | |||||
[ --enable-cpp C++ bindings (autodetected)]) | |||||
dnl example programs features | dnl example programs features | ||||
AC_ARG_ENABLE(imlib2, | AC_ARG_ENABLE(imlib2, | ||||
[ --enable-imlib2 Imlib2 graphics support (default enabled)]) | [ --enable-imlib2 Imlib2 graphics support (default enabled)]) | ||||
@@ -76,6 +90,13 @@ AC_TRY_COMPILE([],[asm("fldln2; fldln2; fxch; fyl2x");], | |||||
AC_CHECK_LIB(m, sin, MATH_LIBS="${MATH_LIBS} -lm") | AC_CHECK_LIB(m, sin, MATH_LIBS="${MATH_LIBS} -lm") | ||||
if test "${enable_cpp}" != "no"; then | |||||
ac_cv_my_have_cpp="yes" | |||||
AC_DEFINE(USE_CPP, 1, | |||||
Define to 1 to enable C++ bindigs) | |||||
fi | |||||
CACA_DRIVERS="" | CACA_DRIVERS="" | ||||
if test "${enable_conio}" != "no"; then | if test "${enable_conio}" != "no"; then | ||||
@@ -221,9 +242,14 @@ else | |||||
AC_MSG_RESULT([${CACA_DRIVERS}]) | AC_MSG_RESULT([${CACA_DRIVERS}]) | ||||
fi | fi | ||||
AC_SUBST(MATH_LIBS) | AC_SUBST(MATH_LIBS) | ||||
AC_SUBST(CACA_LIBS) | AC_SUBST(CACA_LIBS) | ||||
AC_SUBST(CUCUL_LIBS) | AC_SUBST(CUCUL_LIBS) | ||||
AC_SUBST(CUCUL++_LIBS) | |||||
# Optimizations | # Optimizations | ||||
CFLAGS="${CFLAGS} -g -O2 -fno-strength-reduce -fomit-frame-pointer" | CFLAGS="${CFLAGS} -g -O2 -fno-strength-reduce -fomit-frame-pointer" | ||||
@@ -301,6 +327,7 @@ AC_CONFIG_FILES([ | |||||
src/Makefile | src/Makefile | ||||
test/Makefile | test/Makefile | ||||
tools/Makefile | tools/Makefile | ||||
cpp/Makefile | |||||
doc/Makefile | doc/Makefile | ||||
autotools/Makefile | autotools/Makefile | ||||
debian/Makefile | debian/Makefile | ||||
@@ -0,0 +1,32 @@ | |||||
# $Id: Makefile.am 552 2006-04-13 16:10:16Z jylam $ | |||||
SUFFIXES = .cpp | |||||
AM_CXXFLAGS = | |||||
include_HEADERS = cucul++.h caca++.h | |||||
noinst_LIBRARIES = libcucul++.a libcaca++.a | |||||
libcucul___a_SOURCES = \ | |||||
cucul++.cpp \ | |||||
cucul++.h \ | |||||
$(NULL) | |||||
libcucul___la_LDFLAGS = -no-undefined | |||||
libcucul___la_LIBADD = | |||||
libcaca___a_SOURCES = \ | |||||
caca++.cpp \ | |||||
caca++.h \ | |||||
$(NULL) | |||||
libcaca___la_LDFLAGS = -no-undefined | |||||
libcaca___la_LIBADD = | |||||
noinst_PROGRAMS = cpptest | |||||
cpptest_SOURCES = cpptest.cpp | |||||
cpptest_LDADD = ../caca/libcaca.la ../cucul/libcucul.la libcucul++.a libcaca++.a @CACA_LIBS@ |
@@ -0,0 +1,541 @@ | |||||
# Makefile.in generated by automake 1.9.6 from Makefile.am. | |||||
# @configure_input@ | |||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, | |||||
# 2003, 2004, 2005 Free Software Foundation, Inc. | |||||
# This Makefile.in is free software; the Free Software Foundation | |||||
# gives unlimited permission to copy and/or distribute it, | |||||
# with or without modifications, as long as this notice is preserved. | |||||
# This program is distributed in the hope that it will be useful, | |||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without | |||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A | |||||
# PARTICULAR PURPOSE. | |||||
@SET_MAKE@ | |||||
# $Id: Makefile.am 552 2006-04-13 16:10:16Z jylam $ | |||||
srcdir = @srcdir@ | |||||
top_srcdir = @top_srcdir@ | |||||
VPATH = @srcdir@ | |||||
pkgdatadir = $(datadir)/@PACKAGE@ | |||||
pkglibdir = $(libdir)/@PACKAGE@ | |||||
pkgincludedir = $(includedir)/@PACKAGE@ | |||||
top_builddir = .. | |||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd | |||||
INSTALL = @INSTALL@ | |||||
install_sh_DATA = $(install_sh) -c -m 644 | |||||
install_sh_PROGRAM = $(install_sh) -c | |||||
install_sh_SCRIPT = $(install_sh) -c | |||||
INSTALL_HEADER = $(INSTALL_DATA) | |||||
transform = $(program_transform_name) | |||||
NORMAL_INSTALL = : | |||||
PRE_INSTALL = : | |||||
POST_INSTALL = : | |||||
NORMAL_UNINSTALL = : | |||||
PRE_UNINSTALL = : | |||||
POST_UNINSTALL = : | |||||
build_triplet = @build@ | |||||
host_triplet = @host@ | |||||
target_triplet = @target@ | |||||
noinst_PROGRAMS = cpptest$(EXEEXT) | |||||
subdir = cpp | |||||
DIST_COMMON = $(include_HEADERS) $(srcdir)/Makefile.am \ | |||||
$(srcdir)/Makefile.in | |||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 | |||||
am__aclocal_m4_deps = $(top_srcdir)/configure.ac | |||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ | |||||
$(ACLOCAL_M4) | |||||
mkinstalldirs = $(install_sh) -d | |||||
CONFIG_HEADER = $(top_builddir)/config.h | |||||
CONFIG_CLEAN_FILES = | |||||
LIBRARIES = $(noinst_LIBRARIES) | |||||
ARFLAGS = cru | |||||
libcaca___a_AR = $(AR) $(ARFLAGS) | |||||
libcaca___a_LIBADD = | |||||
am_libcaca___a_OBJECTS = caca++.$(OBJEXT) | |||||
libcaca___a_OBJECTS = $(am_libcaca___a_OBJECTS) | |||||
libcucul___a_AR = $(AR) $(ARFLAGS) | |||||
libcucul___a_LIBADD = | |||||
am_libcucul___a_OBJECTS = cucul++.$(OBJEXT) | |||||
libcucul___a_OBJECTS = $(am_libcucul___a_OBJECTS) | |||||
PROGRAMS = $(noinst_PROGRAMS) | |||||
am_cpptest_OBJECTS = cpptest.$(OBJEXT) | |||||
cpptest_OBJECTS = $(am_cpptest_OBJECTS) | |||||
cpptest_DEPENDENCIES = ../caca/libcaca.la ../cucul/libcucul.la \ | |||||
libcucul++.a libcaca++.a | |||||
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) | |||||
depcomp = $(SHELL) $(top_srcdir)/autotools/depcomp | |||||
am__depfiles_maybe = depfiles | |||||
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ | |||||
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) | |||||
LTCXXCOMPILE = $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) \ | |||||
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ | |||||
$(AM_CXXFLAGS) $(CXXFLAGS) | |||||
CXXLD = $(CXX) | |||||
CXXLINK = $(LIBTOOL) --tag=CXX --mode=link $(CXXLD) $(AM_CXXFLAGS) \ | |||||
$(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ | |||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ | |||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) | |||||
LTCOMPILE = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) \ | |||||
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ | |||||
$(AM_CFLAGS) $(CFLAGS) | |||||
CCLD = $(CC) | |||||
LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ | |||||
$(AM_LDFLAGS) $(LDFLAGS) -o $@ | |||||
SOURCES = $(libcaca___a_SOURCES) $(libcucul___a_SOURCES) \ | |||||
$(cpptest_SOURCES) | |||||
DIST_SOURCES = $(libcaca___a_SOURCES) $(libcucul___a_SOURCES) \ | |||||
$(cpptest_SOURCES) | |||||
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; | |||||
am__vpath_adj = case $$p in \ | |||||
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ | |||||
*) f=$$p;; \ | |||||
esac; | |||||
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; | |||||
am__installdirs = "$(DESTDIR)$(includedir)" | |||||
includeHEADERS_INSTALL = $(INSTALL_HEADER) | |||||
HEADERS = $(include_HEADERS) | |||||
ETAGS = etags | |||||
CTAGS = ctags | |||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) | |||||
ACLOCAL = @ACLOCAL@ | |||||
AMDEP_FALSE = @AMDEP_FALSE@ | |||||
AMDEP_TRUE = @AMDEP_TRUE@ | |||||
AMTAR = @AMTAR@ | |||||
AR = @AR@ | |||||
AS = @AS@ | |||||
AUTOCONF = @AUTOCONF@ | |||||
AUTOHEADER = @AUTOHEADER@ | |||||
AUTOMAKE = @AUTOMAKE@ | |||||
AWK = @AWK@ | |||||
BUILD_DOCUMENTATION_FALSE = @BUILD_DOCUMENTATION_FALSE@ | |||||
BUILD_DOCUMENTATION_TRUE = @BUILD_DOCUMENTATION_TRUE@ | |||||
CACA_LIBS = @CACA_LIBS@ | |||||
CC = @CC@ | |||||
CCAS = @CCAS@ | |||||
CCASFLAGS = @CCASFLAGS@ | |||||
CCDEPMODE = @CCDEPMODE@ | |||||
CFLAGS = @CFLAGS@ | |||||
CPP = @CPP@ | |||||
CPPFLAGS = @CPPFLAGS@ | |||||
CUCUL_LIBS = @CUCUL_LIBS@ | |||||
CXX = @CXX@ | |||||
CXXCPP = @CXXCPP@ | |||||
CXXDEPMODE = @CXXDEPMODE@ | |||||
CXXFLAGS = @CXXFLAGS@ | |||||
CYGPATH_W = @CYGPATH_W@ | |||||
DEFS = @DEFS@ | |||||
DEPDIR = @DEPDIR@ | |||||
DLLTOOL = @DLLTOOL@ | |||||
DOXYGEN = @DOXYGEN@ | |||||
DVIPS = @DVIPS@ | |||||
ECHO = @ECHO@ | |||||
ECHO_C = @ECHO_C@ | |||||
ECHO_N = @ECHO_N@ | |||||
ECHO_T = @ECHO_T@ | |||||
EGREP = @EGREP@ | |||||
EXEEXT = @EXEEXT@ | |||||
F77 = @F77@ | |||||
FFLAGS = @FFLAGS@ | |||||
IMLIB2_CONFIG = @IMLIB2_CONFIG@ | |||||
INSTALL_DATA = @INSTALL_DATA@ | |||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@ | |||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@ | |||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ | |||||
LATEX = @LATEX@ | |||||
LDFLAGS = @LDFLAGS@ | |||||
LIBOBJS = @LIBOBJS@ | |||||
LIBS = @LIBS@ | |||||
LIBTOOL = @LIBTOOL@ | |||||
LN_S = @LN_S@ | |||||
LTLIBOBJS = @LTLIBOBJS@ | |||||
MAKEINFO = @MAKEINFO@ | |||||
MATH_LIBS = @MATH_LIBS@ | |||||
NEED_PIC_FALSE = @NEED_PIC_FALSE@ | |||||
NEED_PIC_TRUE = @NEED_PIC_TRUE@ | |||||
OBJDUMP = @OBJDUMP@ | |||||
OBJEXT = @OBJEXT@ | |||||
PACKAGE = @PACKAGE@ | |||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ | |||||
PACKAGE_NAME = @PACKAGE_NAME@ | |||||
PACKAGE_STRING = @PACKAGE_STRING@ | |||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@ | |||||
PACKAGE_VERSION = @PACKAGE_VERSION@ | |||||
PATH_SEPARATOR = @PATH_SEPARATOR@ | |||||
PKG_CONFIG = @PKG_CONFIG@ | |||||
RANLIB = @RANLIB@ | |||||
SET_MAKE = @SET_MAKE@ | |||||
SHELL = @SHELL@ | |||||
STRIP = @STRIP@ | |||||
USE_IMLIB2_FALSE = @USE_IMLIB2_FALSE@ | |||||
USE_IMLIB2_TRUE = @USE_IMLIB2_TRUE@ | |||||
USE_KERNEL_FALSE = @USE_KERNEL_FALSE@ | |||||
USE_KERNEL_TRUE = @USE_KERNEL_TRUE@ | |||||
USE_LATEX_FALSE = @USE_LATEX_FALSE@ | |||||
USE_LATEX_TRUE = @USE_LATEX_TRUE@ | |||||
USE_PANGO_FALSE = @USE_PANGO_FALSE@ | |||||
USE_PANGO_TRUE = @USE_PANGO_TRUE@ | |||||
VERSION = @VERSION@ | |||||
ac_ct_AR = @ac_ct_AR@ | |||||
ac_ct_AS = @ac_ct_AS@ | |||||
ac_ct_CC = @ac_ct_CC@ | |||||
ac_ct_CXX = @ac_ct_CXX@ | |||||
ac_ct_DLLTOOL = @ac_ct_DLLTOOL@ | |||||
ac_ct_F77 = @ac_ct_F77@ | |||||
ac_ct_OBJDUMP = @ac_ct_OBJDUMP@ | |||||
ac_ct_RANLIB = @ac_ct_RANLIB@ | |||||
ac_ct_STRIP = @ac_ct_STRIP@ | |||||
ac_pt_PKG_CONFIG = @ac_pt_PKG_CONFIG@ | |||||
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ | |||||
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ | |||||
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ | |||||
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ | |||||
am__include = @am__include@ | |||||
am__leading_dot = @am__leading_dot@ | |||||
am__quote = @am__quote@ | |||||
am__tar = @am__tar@ | |||||
am__untar = @am__untar@ | |||||
bindir = @bindir@ | |||||
build = @build@ | |||||
build_alias = @build_alias@ | |||||
build_cpu = @build_cpu@ | |||||
build_os = @build_os@ | |||||
build_vendor = @build_vendor@ | |||||
datadir = @datadir@ | |||||
exec_prefix = @exec_prefix@ | |||||
host = @host@ | |||||
host_alias = @host_alias@ | |||||
host_cpu = @host_cpu@ | |||||
host_os = @host_os@ | |||||
host_vendor = @host_vendor@ | |||||
includedir = @includedir@ | |||||
infodir = @infodir@ | |||||
install_sh = @install_sh@ | |||||
libdir = @libdir@ | |||||
libexecdir = @libexecdir@ | |||||
localstatedir = @localstatedir@ | |||||
mandir = @mandir@ | |||||
mkdir_p = @mkdir_p@ | |||||
oldincludedir = @oldincludedir@ | |||||
pangoft2_CFLAGS = @pangoft2_CFLAGS@ | |||||
pangoft2_LIBS = @pangoft2_LIBS@ | |||||
prefix = @prefix@ | |||||
program_transform_name = @program_transform_name@ | |||||
sbindir = @sbindir@ | |||||
sharedstatedir = @sharedstatedir@ | |||||
sysconfdir = @sysconfdir@ | |||||
target = @target@ | |||||
target_alias = @target_alias@ | |||||
target_cpu = @target_cpu@ | |||||
target_os = @target_os@ | |||||
target_vendor = @target_vendor@ | |||||
SUFFIXES = .cpp | |||||
AM_CXXFLAGS = | |||||
include_HEADERS = cucul++.h caca++.h | |||||
noinst_LIBRARIES = libcucul++.a libcaca++.a | |||||
libcucul___a_SOURCES = \ | |||||
cucul++.cpp \ | |||||
cucul++.h \ | |||||
$(NULL) | |||||
libcucul___la_LDFLAGS = -no-undefined | |||||
libcucul___la_LIBADD = | |||||
libcaca___a_SOURCES = \ | |||||
caca++.cpp \ | |||||
caca++.h \ | |||||
$(NULL) | |||||
libcaca___la_LDFLAGS = -no-undefined | |||||
libcaca___la_LIBADD = | |||||
cpptest_SOURCES = cpptest.cpp | |||||
cpptest_LDADD = ../caca/libcaca.la ../cucul/libcucul.la libcucul++.a libcaca++.a @CACA_LIBS@ | |||||
all: all-am | |||||
.SUFFIXES: | |||||
.SUFFIXES: .cpp .lo .o .obj | |||||
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) | |||||
@for dep in $?; do \ | |||||
case '$(am__configure_deps)' in \ | |||||
*$$dep*) \ | |||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ | |||||
&& exit 0; \ | |||||
exit 1;; \ | |||||
esac; \ | |||||
done; \ | |||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign cpp/Makefile'; \ | |||||
cd $(top_srcdir) && \ | |||||
$(AUTOMAKE) --foreign cpp/Makefile | |||||
.PRECIOUS: Makefile | |||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status | |||||
@case '$?' in \ | |||||
*config.status*) \ | |||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ | |||||
*) \ | |||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ | |||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ | |||||
esac; | |||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) | |||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh | |||||
$(top_srcdir)/configure: $(am__configure_deps) | |||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh | |||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps) | |||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh | |||||
clean-noinstLIBRARIES: | |||||
-test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) | |||||
libcaca++.a: $(libcaca___a_OBJECTS) $(libcaca___a_DEPENDENCIES) | |||||
-rm -f libcaca++.a | |||||
$(libcaca___a_AR) libcaca++.a $(libcaca___a_OBJECTS) $(libcaca___a_LIBADD) | |||||
$(RANLIB) libcaca++.a | |||||
libcucul++.a: $(libcucul___a_OBJECTS) $(libcucul___a_DEPENDENCIES) | |||||
-rm -f libcucul++.a | |||||
$(libcucul___a_AR) libcucul++.a $(libcucul___a_OBJECTS) $(libcucul___a_LIBADD) | |||||
$(RANLIB) libcucul++.a | |||||
clean-noinstPROGRAMS: | |||||
@list='$(noinst_PROGRAMS)'; for p in $$list; do \ | |||||
f=`echo $$p|sed 's/$(EXEEXT)$$//'`; \ | |||||
echo " rm -f $$p $$f"; \ | |||||
rm -f $$p $$f ; \ | |||||
done | |||||
cpptest$(EXEEXT): $(cpptest_OBJECTS) $(cpptest_DEPENDENCIES) | |||||
@rm -f cpptest$(EXEEXT) | |||||
$(CXXLINK) $(cpptest_LDFLAGS) $(cpptest_OBJECTS) $(cpptest_LDADD) $(LIBS) | |||||
mostlyclean-compile: | |||||
-rm -f *.$(OBJEXT) | |||||
distclean-compile: | |||||
-rm -f *.tab.c | |||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/caca++.Po@am__quote@ | |||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cpptest.Po@am__quote@ | |||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cucul++.Po@am__quote@ | |||||
.cpp.o: | |||||
@am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \ | |||||
@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi | |||||
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ | |||||
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | |||||
@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $< | |||||
.cpp.obj: | |||||
@am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \ | |||||
@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi | |||||
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ | |||||
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | |||||
@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` | |||||
.cpp.lo: | |||||
@am__fastdepCXX_TRUE@ if $(LTCXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \ | |||||
@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi | |||||
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ | |||||
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | |||||
@am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $< | |||||
mostlyclean-libtool: | |||||
-rm -f *.lo | |||||
clean-libtool: | |||||
-rm -rf .libs _libs | |||||
distclean-libtool: | |||||
-rm -f libtool | |||||
uninstall-info-am: | |||||
install-includeHEADERS: $(include_HEADERS) | |||||
@$(NORMAL_INSTALL) | |||||
test -z "$(includedir)" || $(mkdir_p) "$(DESTDIR)$(includedir)" | |||||
@list='$(include_HEADERS)'; for p in $$list; do \ | |||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ | |||||
f=$(am__strip_dir) \ | |||||
echo " $(includeHEADERS_INSTALL) '$$d$$p' '$(DESTDIR)$(includedir)/$$f'"; \ | |||||
$(includeHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(includedir)/$$f"; \ | |||||
done | |||||
uninstall-includeHEADERS: | |||||
@$(NORMAL_UNINSTALL) | |||||
@list='$(include_HEADERS)'; for p in $$list; do \ | |||||
f=$(am__strip_dir) \ | |||||
echo " rm -f '$(DESTDIR)$(includedir)/$$f'"; \ | |||||
rm -f "$(DESTDIR)$(includedir)/$$f"; \ | |||||
done | |||||
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) | |||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ | |||||
unique=`for i in $$list; do \ | |||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ | |||||
done | \ | |||||
$(AWK) ' { files[$$0] = 1; } \ | |||||
END { for (i in files) print i; }'`; \ | |||||
mkid -fID $$unique | |||||
tags: TAGS | |||||
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ | |||||
$(TAGS_FILES) $(LISP) | |||||
tags=; \ | |||||
here=`pwd`; \ | |||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ | |||||
unique=`for i in $$list; do \ | |||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ | |||||
done | \ | |||||
$(AWK) ' { files[$$0] = 1; } \ | |||||
END { for (i in files) print i; }'`; \ | |||||
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ | |||||
test -n "$$unique" || unique=$$empty_fix; \ | |||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ | |||||
$$tags $$unique; \ | |||||
fi | |||||
ctags: CTAGS | |||||
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ | |||||
$(TAGS_FILES) $(LISP) | |||||
tags=; \ | |||||
here=`pwd`; \ | |||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ | |||||
unique=`for i in $$list; do \ | |||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ | |||||
done | \ | |||||
$(AWK) ' { files[$$0] = 1; } \ | |||||
END { for (i in files) print i; }'`; \ | |||||
test -z "$(CTAGS_ARGS)$$tags$$unique" \ | |||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ | |||||
$$tags $$unique | |||||
GTAGS: | |||||
here=`$(am__cd) $(top_builddir) && pwd` \ | |||||
&& cd $(top_srcdir) \ | |||||
&& gtags -i $(GTAGS_ARGS) $$here | |||||
distclean-tags: | |||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags | |||||
distdir: $(DISTFILES) | |||||
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ | |||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ | |||||
list='$(DISTFILES)'; for file in $$list; do \ | |||||
case $$file in \ | |||||
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ | |||||
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ | |||||
esac; \ | |||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ | |||||
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ | |||||
if test "$$dir" != "$$file" && test "$$dir" != "."; then \ | |||||
dir="/$$dir"; \ | |||||
$(mkdir_p) "$(distdir)$$dir"; \ | |||||
else \ | |||||
dir=''; \ | |||||
fi; \ | |||||
if test -d $$d/$$file; then \ | |||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ | |||||
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ | |||||
fi; \ | |||||
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ | |||||
else \ | |||||
test -f $(distdir)/$$file \ | |||||
|| cp -p $$d/$$file $(distdir)/$$file \ | |||||
|| exit 1; \ | |||||
fi; \ | |||||
done | |||||
check-am: all-am | |||||
check: check-am | |||||
all-am: Makefile $(LIBRARIES) $(PROGRAMS) $(HEADERS) | |||||
installdirs: | |||||
for dir in "$(DESTDIR)$(includedir)"; do \ | |||||
test -z "$$dir" || $(mkdir_p) "$$dir"; \ | |||||
done | |||||
install: install-am | |||||
install-exec: install-exec-am | |||||
install-data: install-data-am | |||||
uninstall: uninstall-am | |||||
install-am: all-am | |||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am | |||||
installcheck: installcheck-am | |||||
install-strip: | |||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ | |||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ | |||||
`test -z '$(STRIP)' || \ | |||||
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install | |||||
mostlyclean-generic: | |||||
clean-generic: | |||||
distclean-generic: | |||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) | |||||
maintainer-clean-generic: | |||||
@echo "This command is intended for maintainers to use" | |||||
@echo "it deletes files that may require special tools to rebuild." | |||||
clean: clean-am | |||||
clean-am: clean-generic clean-libtool clean-noinstLIBRARIES \ | |||||
clean-noinstPROGRAMS mostlyclean-am | |||||
distclean: distclean-am | |||||
-rm -rf ./$(DEPDIR) | |||||
-rm -f Makefile | |||||
distclean-am: clean-am distclean-compile distclean-generic \ | |||||
distclean-libtool distclean-tags | |||||
dvi: dvi-am | |||||
dvi-am: | |||||
html: html-am | |||||
info: info-am | |||||
info-am: | |||||
install-data-am: install-includeHEADERS | |||||
install-exec-am: | |||||
install-info: install-info-am | |||||
install-man: | |||||
installcheck-am: | |||||
maintainer-clean: maintainer-clean-am | |||||
-rm -rf ./$(DEPDIR) | |||||
-rm -f Makefile | |||||
maintainer-clean-am: distclean-am maintainer-clean-generic | |||||
mostlyclean: mostlyclean-am | |||||
mostlyclean-am: mostlyclean-compile mostlyclean-generic \ | |||||
mostlyclean-libtool | |||||
pdf: pdf-am | |||||
pdf-am: | |||||
ps: ps-am | |||||
ps-am: | |||||
uninstall-am: uninstall-includeHEADERS uninstall-info-am | |||||
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ | |||||
clean-libtool clean-noinstLIBRARIES clean-noinstPROGRAMS ctags \ | |||||
distclean distclean-compile distclean-generic \ | |||||
distclean-libtool distclean-tags distdir dvi dvi-am html \ | |||||
html-am info info-am install install-am install-data \ | |||||
install-data-am install-exec install-exec-am \ | |||||
install-includeHEADERS install-info install-info-am \ | |||||
install-man install-strip installcheck installcheck-am \ | |||||
installdirs maintainer-clean maintainer-clean-generic \ | |||||
mostlyclean mostlyclean-compile mostlyclean-generic \ | |||||
mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \ | |||||
uninstall-am uninstall-includeHEADERS uninstall-info-am | |||||
# Tell versions [3.59,3.63) of GNU make to not export all variables. | |||||
# Otherwise a system limit (for SysV at least) may be exceeded. | |||||
.NOEXPORT: |
@@ -0,0 +1,69 @@ | |||||
#include "caca++.h" | |||||
Caca::Caca(void) | |||||
{ | |||||
} | |||||
Caca::Caca(Cucul *qq) | |||||
{ | |||||
kk = caca_attach(qq->get_cucul_t()); | |||||
if(!kk) throw -1; | |||||
} | |||||
Caca::~Caca() | |||||
{ | |||||
caca_detach(kk); | |||||
} | |||||
void Caca::attach(Cucul *qq) | |||||
{ | |||||
kk = caca_attach(qq->get_cucul_t()); | |||||
if(!kk) throw -1; | |||||
} | |||||
void Caca::detach () | |||||
{ | |||||
caca_detach(kk); | |||||
} | |||||
void Caca::set_delay (unsigned int d) | |||||
{ | |||||
caca_set_delay(kk, d); | |||||
} | |||||
void Caca::display () | |||||
{ | |||||
caca_display(kk); | |||||
} | |||||
unsigned int Caca::get_rendertime () | |||||
{ | |||||
return caca_get_rendertime(kk); | |||||
} | |||||
unsigned int Caca::get_window_width () | |||||
{ | |||||
return caca_get_window_width(kk); | |||||
} | |||||
unsigned int Caca::get_window_height () | |||||
{ | |||||
return caca_get_window_height(kk); | |||||
} | |||||
int Caca::set_window_title (char const *s) | |||||
{ | |||||
return caca_set_window_title(kk, s); | |||||
} | |||||
int Caca::get_event (unsigned int g, Caca::Event *n, int aa) | |||||
{ | |||||
return caca_get_event(kk, g, n->e, aa); | |||||
} | |||||
unsigned int Caca::get_mouse_x () | |||||
{ | |||||
return caca_get_mouse_x(kk); | |||||
} | |||||
unsigned int Caca::get_mouse_y () | |||||
{ | |||||
return caca_get_mouse_x(kk); | |||||
} | |||||
void Caca::set_mouse (int v) | |||||
{ | |||||
caca_set_mouse(kk, v); | |||||
} |
@@ -0,0 +1,46 @@ | |||||
#ifndef _CACA_PP_H | |||||
#define _CACA_PP_H | |||||
#include "cucul.h" | |||||
#include "caca.h" | |||||
#include "cucul++.h" | |||||
class Caca { | |||||
public: | |||||
Caca(); | |||||
Caca(Cucul *qq); | |||||
~Caca(); | |||||
class Event { | |||||
friend class Caca; | |||||
protected: | |||||
caca_event *e; | |||||
}; | |||||
void attach (Cucul *qq); | |||||
void detach (); | |||||
void set_delay (unsigned int); | |||||
void display (); | |||||
unsigned int get_rendertime (); | |||||
unsigned int get_window_width (); | |||||
unsigned int get_window_height (); | |||||
int set_window_title (char const *); | |||||
int get_event (unsigned int, Caca::Event*, int); | |||||
unsigned int get_mouse_x (); | |||||
unsigned int get_mouse_y (); | |||||
void set_mouse (int); | |||||
private: | |||||
caca_t *kk; | |||||
}; | |||||
#endif /* _CACA_PP_H */ |
@@ -0,0 +1,12 @@ | |||||
prefix=/usr/local | |||||
exec_prefix=${prefix} | |||||
libdir=${exec_prefix}/lib | |||||
includedir=${prefix}/include | |||||
Name: caca++ | |||||
Description: Colour ASCII-Art library C++ bindings | |||||
Version: 0.10 | |||||
Requires: cucul++ = 0.10 | |||||
Conflicts: | |||||
Libs: -L${libdir} -lcaca -lcucul -lcucul++ | |||||
Cflags: -I${includedir} |
@@ -0,0 +1,12 @@ | |||||
prefix=@prefix@ | |||||
exec_prefix=@exec_prefix@ | |||||
libdir=@libdir@ | |||||
includedir=@includedir@ | |||||
Name: caca++ | |||||
Description: Colour ASCII-Art library C++ bindings | |||||
Version: @VERSION@ | |||||
Requires: cucul++ = @VERSION@ | |||||
Conflicts: | |||||
Libs: -L${libdir} -lcaca -lcucul -lcucul++ | |||||
Cflags: -I${includedir} |
@@ -0,0 +1,59 @@ | |||||
#include <iostream> | |||||
#include <cucul++.h> | |||||
#include <caca++.h> | |||||
using namespace std; | |||||
static char const *pig[]= { | |||||
" _ ", | |||||
" _._ _..._ .-', _.._(`)) ", | |||||
" '-. ` ' /-._.-' ',/ ", | |||||
" ) \ '. ", | |||||
" / _ _ | \\ ", | |||||
" | a a / | ", | |||||
" \ .-. ; " , | |||||
" '-('' ).-' ,' ; ", | |||||
" '-; | .' ", | |||||
" \\ \\ / ", | |||||
" | 7 .__ _.-\\ \\ ", | |||||
" | | | ``/ /` / ", | |||||
" jgs /,_| | /,_/ / ", | |||||
" /,_/ '`-' ", | |||||
NULL | |||||
}; | |||||
int main(int argc, char *argv[]) | |||||
{ | |||||
Cucul *qq; | |||||
Caca *kk; | |||||
Caca::Event ev; | |||||
try { | |||||
qq = new Cucul(); | |||||
} | |||||
catch (int e) { | |||||
cerr << "Error while initializing cucul (" << e << ")" << endl; | |||||
return -1; | |||||
} | |||||
kk = new Caca(qq); | |||||
qq->set_color(CUCUL_COLOR_LIGHTMAGENTA, CUCUL_COLOR_BLACK); | |||||
for(int i = 0; pig[i]; i++) | |||||
qq->putstr(0, i, (char*)pig[i]); | |||||
kk->display(); | |||||
kk->get_event(CACA_EVENT_KEY_PRESS, &ev, -1); | |||||
delete kk; | |||||
delete qq; | |||||
return 0; | |||||
} |
@@ -0,0 +1,333 @@ | |||||
#include "cucul++.h" | |||||
Cucul::Cucul() | |||||
{ | |||||
qq = cucul_create(0,0); | |||||
if(!qq) throw -1; | |||||
} | |||||
Cucul::Cucul(int width, int height) | |||||
{ | |||||
qq = cucul_create(width, height); | |||||
if(!qq) throw -1; | |||||
} | |||||
Cucul::~Cucul() | |||||
{ | |||||
if(qq) { | |||||
cucul_free(qq); | |||||
} | |||||
} | |||||
cucul_t *Cucul::get_cucul_t() | |||||
{ | |||||
return qq; | |||||
} | |||||
void Cucul::set_size(unsigned int width, unsigned int height) | |||||
{ | |||||
cucul_set_size (qq, width, height); | |||||
} | |||||
unsigned int Cucul::get_width(void) | |||||
{ | |||||
return cucul_get_width (qq); | |||||
} | |||||
unsigned int Cucul::get_height(void) | |||||
{ | |||||
return cucul_get_height (qq); | |||||
} | |||||
void Cucul::set_color(unsigned int f, unsigned int b) | |||||
{ | |||||
cucul_set_color (qq, f, b); | |||||
} | |||||
char const * Cucul::get_color_name (unsigned int color) | |||||
{ | |||||
return cucul_get_color_name (color); | |||||
} | |||||
void Cucul::putchar (int x, int y, char c) | |||||
{ | |||||
cucul_putchar (qq, x, y, c); | |||||
} | |||||
void Cucul::putstr (int x, int y, char *str) | |||||
{ | |||||
cucul_putstr(qq, x, y, str); | |||||
} | |||||
//void Cucul::printf ( int, int, char const *,...) | |||||
void Cucul::clear () | |||||
{ | |||||
cucul_clear(qq); | |||||
} | |||||
void Cucul::blit ( int x, int y, Cucul* c1, Cucul* c2) | |||||
{ | |||||
cucul_blit(qq, x, y, c1->get_cucul_t(), c2->get_cucul_t()); | |||||
} | |||||
void Cucul::invert () | |||||
{ | |||||
cucul_invert(qq); | |||||
} | |||||
void Cucul::flip () | |||||
{ | |||||
cucul_flip(qq); | |||||
} | |||||
void Cucul::flop () | |||||
{ | |||||
cucul_flop(qq); | |||||
} | |||||
void Cucul::rotate () | |||||
{ | |||||
cucul_rotate(qq); | |||||
} | |||||
void Cucul::draw_line (int x1 , int y1, int x2, int y2, char const *c) | |||||
{ | |||||
cucul_draw_line(qq, x1,y1,x2,y2, c); | |||||
} | |||||
void Cucul::draw_polyline (int const x[], int const y[], int f, char const *c) | |||||
{ | |||||
cucul_draw_polyline(qq, x, y, f, c); | |||||
} | |||||
void Cucul::draw_thin_line (int x1 , int y1, int x2, int y2) | |||||
{ | |||||
cucul_draw_thin_line(qq, x1, y1, x2, y2); | |||||
} | |||||
void Cucul::draw_thin_polyline ( int const x[], int const y[], int f) | |||||
{ | |||||
cucul_draw_thin_polyline(qq, x, y, f); | |||||
} | |||||
void Cucul::draw_circle ( int x, int y, int d, char const *c) | |||||
{ | |||||
cucul_draw_circle(qq, x, y, d, c); | |||||
} | |||||
void Cucul::draw_ellipse ( int x, int y, int d1, int d2, char const *c) | |||||
{ | |||||
cucul_draw_ellipse(qq, x, y, d1, d2, c); | |||||
} | |||||
void Cucul::draw_thin_ellipse ( int x, int y, int d1, int d2) | |||||
{ | |||||
cucul_draw_thin_ellipse(qq, x, y, d1, d2); | |||||
} | |||||
void Cucul::fill_ellipse ( int x, int y, int d1, int d2, char const *c) | |||||
{ | |||||
cucul_fill_ellipse(qq, x, y, d1, d2, c); | |||||
} | |||||
void Cucul::draw_box ( int x, int y, int w, int h, char const *c) | |||||
{ | |||||
cucul_draw_box(qq, x, y, w, h, c); | |||||
} | |||||
void Cucul::draw_thin_box ( int x, int y, int w, int h) | |||||
{ | |||||
cucul_draw_thin_box(qq, x, y, w, h); | |||||
} | |||||
void Cucul::fill_box ( int x, int y, int w, int h, char const *c) | |||||
{ | |||||
cucul_fill_box(qq, x, y, w, h, c); | |||||
} | |||||
void Cucul::draw_triangle ( int x1, int y1, int x2, int y2, int x3, int y3, char const *c) | |||||
{ | |||||
cucul_draw_triangle(qq, x1, y1, x2, y2, x3, y3, c); | |||||
} | |||||
void Cucul::draw_thin_triangle ( int x1, int y1, int x2, int y2, int x3, int y3) | |||||
{ | |||||
cucul_draw_thin_triangle(qq, x1, y1, x2, y2, x3, y3); | |||||
} | |||||
void Cucul::fill_triangle ( int x1, int y1, int x2, int y2, int x3, int y3, const char *c) | |||||
{ | |||||
cucul_fill_triangle(qq, x1, y1, x2, y2, x3, y3, c); | |||||
} | |||||
int Cucul::rand (int min, int max) | |||||
{ | |||||
return cucul_rand(min, max); | |||||
} | |||||
unsigned int Cucul::sqrt (unsigned int v) | |||||
{ | |||||
return cucul_sqrt(v); | |||||
} | |||||
Cucul::Sprite * Cucul::load_sprite (char const *f) | |||||
{ | |||||
Cucul::Sprite *s = new Cucul::Sprite(); | |||||
s->sprite = cucul_load_sprite(f); | |||||
return s; | |||||
} | |||||
int Cucul::get_sprite_frames (Cucul::Sprite const *s) | |||||
{ | |||||
return cucul_get_sprite_frames(s->sprite); | |||||
} | |||||
int Cucul::get_sprite_width (Cucul::Sprite const *s, int v) | |||||
{ | |||||
return cucul_get_sprite_width(s->sprite, v); | |||||
} | |||||
int Cucul::get_sprite_height (Cucul::Sprite const *s, int v) | |||||
{ | |||||
return cucul_get_sprite_height(s->sprite, v); | |||||
} | |||||
int Cucul::get_sprite_dx (Cucul::Sprite const *s, int v) | |||||
{ | |||||
return cucul_get_sprite_dx(s->sprite, v); | |||||
} | |||||
int Cucul::get_sprite_dy (Cucul::Sprite const *s, int v) | |||||
{ | |||||
return cucul_get_sprite_dy(s->sprite, v); | |||||
} | |||||
void Cucul::draw_sprite ( int x, int y, Cucul::Sprite const *s, int v) | |||||
{ | |||||
cucul_draw_sprite(qq, x, y, s->sprite, v); | |||||
} | |||||
void Cucul::free_sprite (Cucul::Sprite *s) | |||||
{ | |||||
cucul_free_sprite(s->sprite); | |||||
} | |||||
Cucul::Dither * Cucul::create_dither (unsigned int v1, unsigned int v2, unsigned int v3, unsigned int v4, unsigned int v5, unsigned int v6, unsigned int v7, unsigned int v8) | |||||
{ | |||||
Cucul::Dither *d = new Dither(); | |||||
d->dither = cucul_create_dither(v1,v2,v3,v4,v5,v6,v7,v8); | |||||
return d; | |||||
} | |||||
void Cucul::set_dither_palette (Cucul::Dither *d, unsigned int r[], unsigned int g[], unsigned int b[], unsigned int a[]) | |||||
{ | |||||
cucul_set_dither_palette(d->dither, r, g, b, a); | |||||
} | |||||
void Cucul::set_dither_brightness (Cucul::Dither *d, float f) | |||||
{ | |||||
cucul_set_dither_brightness(d->dither, f); | |||||
} | |||||
void Cucul::set_dither_gamma (Cucul::Dither *d, float f) | |||||
{ | |||||
cucul_set_dither_gamma(d->dither, f); | |||||
} | |||||
void Cucul::set_dither_contrast ( Cucul::Dither *d, float f) | |||||
{ | |||||
cucul_set_dither_contrast(d->dither, f); | |||||
} | |||||
void Cucul::set_dither_invert ( Cucul::Dither *d, int i) | |||||
{ | |||||
cucul_set_dither_invert(d->dither, i); | |||||
} | |||||
void Cucul::set_dither_antialias ( Cucul::Dither *d, char const *c) | |||||
{ | |||||
cucul_set_dither_antialias(d->dither, c); | |||||
} | |||||
char const *const * Cucul::get_dither_antialias_list ( Cucul::Dither const *d) | |||||
{ | |||||
return cucul_get_dither_antialias_list(d->dither); | |||||
} | |||||
void Cucul::set_dither_color ( Cucul::Dither *d, char const *c) | |||||
{ | |||||
cucul_set_dither_color(d->dither, c); | |||||
} | |||||
char const *const * Cucul::get_dither_color_list ( Cucul::Dither const *d) | |||||
{ | |||||
return cucul_get_dither_color_list(d->dither); | |||||
} | |||||
void Cucul::set_dither_charset ( Cucul::Dither *d, char const *c) | |||||
{ | |||||
cucul_set_dither_charset(d->dither, c); | |||||
} | |||||
char const *const * Cucul::get_dither_charset_list ( Cucul::Dither const *d) | |||||
{ | |||||
return cucul_get_dither_charset_list(d->dither); | |||||
} | |||||
void Cucul::set_dither_mode ( Cucul::Dither *d, char const *c) | |||||
{ | |||||
cucul_set_dither_mode(d->dither, c); | |||||
} | |||||
char const *const * Cucul::get_dither_mode_list ( Cucul::Dither const *d) | |||||
{ | |||||
return cucul_get_dither_mode_list(d->dither); | |||||
} | |||||
void Cucul::dither_bitmap ( int x, int y, int w, int h, Cucul::Dither const *d, void *v) | |||||
{ | |||||
cucul_dither_bitmap(qq, x, y, w, h, d->dither, v); | |||||
} | |||||
void Cucul::free_dither ( Cucul::Dither *d) | |||||
{ | |||||
cucul_free_dither(d->dither); | |||||
} | |||||
Cucul::Font * Cucul::load_font (void const *s, unsigned int v) | |||||
{ | |||||
Cucul::Font *f = new Cucul::Font(); | |||||
f->font = cucul_load_font(s, v); | |||||
return f; | |||||
} | |||||
char const *const * Cucul::get_font_list (void) | |||||
{ | |||||
return cucul_get_font_list(); | |||||
} | |||||
unsigned int Cucul::get_font_width ( Cucul::Font *f) | |||||
{ | |||||
return cucul_get_font_width(f->font); | |||||
} | |||||
unsigned int Cucul::get_font_height ( Cucul::Font *f) | |||||
{ | |||||
return cucul_get_font_height(f->font); | |||||
} | |||||
void Cucul::render_canvas (Cucul::Font *f, unsigned char *c, unsigned int x, unsigned int y, unsigned int w) | |||||
{ | |||||
cucul_render_canvas(qq, f->font, c, x,y,w); | |||||
} | |||||
void Cucul::free_font ( Cucul::Font *f) | |||||
{ | |||||
cucul_free_font(f->font); | |||||
} | |||||
Cucul::Buffer * Cucul::create_export (char const *c) | |||||
{ | |||||
Cucul::Buffer *b = new Cucul::Buffer(); | |||||
b->buffer = cucul_create_export(qq, c); | |||||
return b; | |||||
} | |||||
char const *const * Cucul::get_export_list (void) | |||||
{ | |||||
return cucul_get_export_list(); | |||||
} |
@@ -0,0 +1,112 @@ | |||||
#ifndef _CUCUL_PP_H | |||||
#define _CUCUL_PP_H | |||||
#include "cucul.h" | |||||
class Cucul { | |||||
friend class Caca; | |||||
public: | |||||
Cucul(); | |||||
Cucul(int width, int height); | |||||
~Cucul(); | |||||
/* Ugly, I know */ | |||||
class Font { | |||||
friend class Cucul; | |||||
protected: | |||||
cucul_font *font; | |||||
}; | |||||
class Sprite { | |||||
friend class Cucul; | |||||
protected: | |||||
cucul_sprite *sprite; | |||||
}; | |||||
class Dither { | |||||
friend class Cucul; | |||||
protected: | |||||
cucul_dither *dither; | |||||
}; | |||||
class Buffer { | |||||
friend class Cucul; | |||||
protected: | |||||
cucul_buffer *buffer; | |||||
}; | |||||
void set_size(unsigned int w, unsigned int h); | |||||
unsigned int get_width(void); | |||||
unsigned int get_height(void); | |||||
void set_color(unsigned int f, unsigned int b); | |||||
char const * get_color_name (unsigned int color); | |||||
void putchar (int x, int y, char c); | |||||
void putstr (int x, int y, char *str); | |||||
void clear (); | |||||
void blit ( int, int, Cucul* c1, Cucul* c2); | |||||
void invert (); | |||||
void flip (); | |||||
void flop (); | |||||
void rotate (); | |||||
void draw_line ( int, int, int, int, char const *); | |||||
void draw_polyline ( int const x[], int const y[], int, char const *); | |||||
void draw_thin_line ( int, int, int, int); | |||||
void draw_thin_polyline ( int const x[], int const y[], int); | |||||
void draw_circle ( int, int, int, char const *); | |||||
void draw_ellipse ( int, int, int, int, char const *); | |||||
void draw_thin_ellipse ( int, int, int, int); | |||||
void fill_ellipse ( int, int, int, int, char const *); | |||||
void draw_box ( int, int, int, int, char const *); | |||||
void draw_thin_box ( int, int, int, int); | |||||
void fill_box ( int, int, int, int, char const *); | |||||
void draw_triangle ( int, int, int, int, int, int, char const *); | |||||
void draw_thin_triangle ( int, int, int, int, int, int); | |||||
void fill_triangle ( int, int, int, int, int, int, char const *); | |||||
int rand (int, int); | |||||
unsigned int sqrt (unsigned int); | |||||
Sprite * load_sprite (char const *); | |||||
int get_sprite_frames (Cucul::Sprite const *); | |||||
int get_sprite_width (Cucul::Sprite const *, int); | |||||
int get_sprite_height (Cucul::Sprite const *, int); | |||||
int get_sprite_dx (Cucul::Sprite const *, int); | |||||
int get_sprite_dy (Cucul::Sprite const *, int); | |||||
void draw_sprite ( int, int, Cucul::Sprite const *, int); | |||||
void free_sprite (Cucul::Sprite*); | |||||
Dither * create_dither (unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int); | |||||
void set_dither_palette (Cucul::Dither *, unsigned int r[], unsigned int g[], unsigned int b[], unsigned int a[]); | |||||
void set_dither_brightness (Cucul::Dither *, float); | |||||
void set_dither_gamma (Cucul::Dither *, float); | |||||
void set_dither_contrast (Cucul::Dither *, float); | |||||
void set_dither_invert (Cucul::Dither *, int); | |||||
void set_dither_antialias (Cucul::Dither *, char const *); | |||||
char const *const * get_dither_antialias_list (Cucul::Dither const *); | |||||
void set_dither_color (Cucul::Dither *, char const *); | |||||
char const *const * get_dither_color_list (Cucul::Dither const *); | |||||
void set_dither_charset (Cucul::Dither *, char const *); | |||||
char const *const * get_dither_charset_list (Cucul::Dither const *); | |||||
void set_dither_mode (Cucul::Dither *, char const *); | |||||
char const *const * get_dither_mode_list (Cucul::Dither const *); | |||||
void dither_bitmap ( int, int, int, int, Cucul::Dither const *, void *); | |||||
void free_dither (Cucul::Dither *); | |||||
Font * load_font (void const *, unsigned int); | |||||
char const *const * get_font_list (void); | |||||
unsigned int get_font_width (Font *); | |||||
unsigned int get_font_height (Font *); | |||||
void render_canvas ( Font *, unsigned char *, unsigned int, unsigned int, unsigned int); | |||||
void free_font (Font *); | |||||
Buffer * create_export ( char const *); | |||||
char const *const * get_export_list (void); | |||||
protected: | |||||
cucul_t *get_cucul_t(); | |||||
private: | |||||
cucul_t *qq; | |||||
}; | |||||
#endif /* _CUCUL_PP_H */ |
@@ -0,0 +1,12 @@ | |||||
prefix=/usr/local | |||||
exec_prefix=${prefix} | |||||
libdir=${exec_prefix}/lib | |||||
includedir=${prefix}/include | |||||
Name: cucul++ | |||||
Description: Canvas for ultrafast compositing of Unicode letters C++ binding | |||||
Version: 0.10 | |||||
Requires: | |||||
Conflicts: | |||||
Libs: -L${libdir} -lcucul -lcaca | |||||
Cflags: -I${includedir} |
@@ -0,0 +1,12 @@ | |||||
prefix=@prefix@ | |||||
exec_prefix=@exec_prefix@ | |||||
libdir=@libdir@ | |||||
includedir=@includedir@ | |||||
Name: cucul++ | |||||
Description: Canvas for ultrafast compositing of Unicode letters C++ binding | |||||
Version: @VERSION@ | |||||
Requires: | |||||
Conflicts: | |||||
Libs: -L${libdir} -lcucul -lcaca | |||||
Cflags: -I${includedir} |