]> git.donarmstrong.com Git - lilypond.git/commitdiff
* stepmake/aclocal.m4: Check for libkpathsea.so.
authorJan Nieuwenhuizen <janneke@gnu.org>
Sun, 6 Mar 2005 20:52:49 +0000 (20:52 +0000)
committerJan Nieuwenhuizen <janneke@gnu.org>
Sun, 6 Mar 2005 20:52:49 +0000 (20:52 +0000)
* kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
dl_kpse_find_file.

ChangeLog
GNUmakefile.in
config.hh.in
config.make.in
configure.in
kpath-guile/GNUmakefile
kpath-guile/kpath.c
stepmake/aclocal.m4
ttftool/GNUmakefile

index e56e84a8a46ecc74031e19d2a620b2ebbff2f3b6..b0023811448d246e3f36b5c6b7f1680f0fb20725 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+       * stepmake/aclocal.m4: Check for libkpathsea.so.
+
+       * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
+       dl_kpse_find_file.
+
 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
 
        * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
@@ -5,6 +12,10 @@
 
 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
 
+       * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
+
+       * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
+
        Drop run-time dependency on teTeX.
 
        * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
index c603ed52eb6129b56e92a8a62f276f69d14b71da..de3907857fc636f1d907cddb15c7c7bc65815bf4 100644 (file)
@@ -83,33 +83,34 @@ local-WWW-post:
        cd $(builddir) && ls *.html >> $(outdir)/weblist
        cat $(outdir)/weblist | (cd $(builddir); GZIP=-9v tar -czf $(outdir)/web.tar.gz  -T -)
 
+tree-prefix = $(builddir)/share/lilypond/$(TOPLEVEL_VERSION)
 
 src-ext = c cc yy ll hh icc py scm tex ps texi itexi tely itely sh
 
 web-clean:
        $(MAKE) out=www clean
-       $(MAKE) $(builddir)/share/lilypond-force
+       $(MAKE) $(tree-prefix)/lilypond-force
 
 default: $(config_h) builddir-setup 
 
-builddir-setup: $(builddir)/share/lilypond-force
+builddir-setup: $(tree-prefix)/lilypond-force
 
 PO_FILES = $(wildcard $(srcdir)/po/*.po)
 HELP_CATALOGS = $(PO_FILES:$(srcdir)/po/%.po=%)
 CATALOGS = $(HELP_CATALOGS:lilypond=) 
 
-$(builddir)/share/lilypond-force:
+$(tree-prefix)/lilypond-force:
 # Preparing LilyPond tree for builddir exec
        cd $(builddir) && rm -rf lib share
        mkdir -p $(builddir)/lib/$(package)
-       mkdir -p $(builddir)/share/$(package)
-       mkdir -p $(builddir)/share/$(package)/dvips
-       mkdir -p $(builddir)/share/$(package)/elisp
-       mkdir -p $(builddir)/share/$(package)/fonts
-       mkdir -p $(builddir)/share/$(package)/tex
-       cd $(builddir)/lib/$(package) && \
+       mkdir -p $(tree-prefix)
+       mkdir -p $(tree-prefix)/dvips
+       mkdir -p $(tree-prefix)/elisp
+       mkdir -p $(tree-prefix)/fonts
+       mkdir -p $(tree-prefix)/tex
+       cd $(builddir)/lib && \
                ln -s  ../../python/$(outconfbase) python
-       cd $(builddir)/share/$(package) && \
+       cd $(tree-prefix) && \
                ln -s $(abs-srcdir)/ly ly && \
                ln -s ../../mf/$(outconfbase) otf && \
                ln -s ../../mf/$(outconfbase) svg && \
@@ -118,14 +119,14 @@ $(builddir)/share/lilypond-force:
                ln -s $(abs-srcdir)/ps && \
                ln -s ../../python/$(outconfbase) python && \
                ln -s $(abs-srcdir)/scm
-       cd $(builddir)/share/$(package)/dvips && \
+       cd $(tree-prefix)/dvips && \
                ln -s ./../mf/$(outconfbase) mf-out && \
                ln -s $(abs-srcdir)/ps
-       cd $(builddir)/share/$(package)/tex && \
+       cd $(tree-prefix)/tex && \
                ln -s $(abs-srcdir)/tex source && \
                ln -s ../../../tex/$(outconfbase) tex-out && \
                ln -s ../../../mf/$(outconfbase) mf-out
-       cd $(builddir)/share/$(package)/fonts && \
+       cd $(tree-prefix)/fonts && \
                ln -s $(abs-srcdir)/mf source && \
                ln -s ../../../tex/$(outconfbase) enc && \
                ln -s ../../../mf/$(outconfbase) map && \
@@ -133,12 +134,12 @@ $(builddir)/share/lilypond-force:
                ln -s ../../../mf/$(outconfbase) tfm && \
                ln -s ../../../mf/$(outconfbase) svg && \
                ln -s ../../../mf/$(outconfbase) type1
-       cd $(builddir)/share/$(package)/elisp && \
+       cd $(tree-prefix)/elisp && \
                ln -sf ../../../elisp/$(outconfbase)/lilypond-words.el . && \
                ln -s $(abs-srcdir)/elisp/*.el .
        $(foreach i,$(CATALOGS), \
-               mkdir -p $(builddir)/share/locale/$i/LC_MESSAGES && \
-               cd $(builddir)/share/locale/$i/LC_MESSAGES && \
+               mkdir -p $(tree-prefix)/locale/$i/LC_MESSAGES && \
+               cd $(tree-prefix)/locale/$i/LC_MESSAGES && \
                ln -fs ../../../../po/$(outconfbase)/$i.mo lilypond.mo &&) true
        touch $@
 
index 9e482eab0b4f4c3703065e6fec9597fc1406cc5c..01c1c18ffa6509d7d2b021a60aaf8cdc180fcdd8 100644 (file)
@@ -87,3 +87,6 @@
 
 /* define if you have pango_fc_font_map_add_decoder_find_func */
 #define HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC 0
+
+/* define if you have libkpathsea.so */
+#define HAVE_LIBKPATHSEA_SO 0
index 4508b2a92ea0aa33a7b1566a516c5c571565c9d8..357f05d0764b568435c01ff9096f59b57ccb5c37 100644 (file)
@@ -7,9 +7,6 @@ MISSING_REQUIRED = @REQUIRED@
 
 package-depth = @package_depth@
 
-#Alternative for dlopen
-#KPATHSEA_LIBS = @KPATHSEA_LIBS@
-
 USER_CFLAGS = @CPPFLAGS@ @CFLAGS@ @GUILE_CFLAGS@ @PANGO_FT2_CFLAGS@ @FREETYPE2_CFLAGS@
 USER_CXXFLAGS = @CPPFLAGS@ @CXXFLAGS@ @GUILE_CFLAGS@ @PANGO_FT2_CFLAGS@ @FREETYPE2_CFLAGS@
 USER_LDFLAGS = @LDFLAGS@ @GUILE_LDFLAGS@
@@ -66,48 +63,49 @@ lilypond_omfdir = $(package_omfdir)
 local_lilypond_datadir = $(local_package_datadir)
 local_lilypond_libdir = $(local_package_libdir)
 
+BASH = @BASH@
+BISON = @BISON@
 CC = @CC@
-GCC = @GCC@
+CONFIGSUFFIX = @CONFIGSUFFIX@
 CROSS = @cross_compiling@
 CXX = @CXX@
-GXX = @GXX@
-LD = @LD@
-CONFIGSUFFIX = @CONFIGSUFFIX@
-MAKEINFO_PROGRAM = @MAKEINFO@
-SPLITTING_MAKEINFO = @SPLITTING_MAKEINFO@
-MAKEINFO_VERSION = @MAKEINFO_VERSION@
-ICFLAGS = @ICFLAGS@
-ILDFLAGS = @ILDFLAGS@
-TFM_PATH = @TFM_PATH@
-RANLIB = @RANLIB@
-DEFS = @DEFS@
 DEFINES = @DEFS@ @DEFINES@
+DEFS = @DEFS@
 DOTEXE = @DOTEXE@
-INSTALL = @INSTALL@
-BASH = @BASH@
-BISON = @BISON@
 FIND = @FIND@
 FLEX = @FLEX@
 FONTFORGE = @FONTFORGE@
+GCC = @GCC@
 GROFF = @GROFF@
 GUILE = @GUILE@
-GUILE_CONFIG = @GUILE_CONFIG@
 GUILE_CFLAGS = @GUILE_CFLAGS@
+GUILE_CONFIG = @GUILE_CONFIG@
 GUILE_LDFLAGS = @GUILE_LDFLAGS@
+GXX = @GXX@
+ICFLAGS = @ICFLAGS@
+ILDFLAGS = @ILDFLAGS@
 INIMETAFONT = @INIMETAFONT@
+INSTALL = @INSTALL@
+KPATHSEA_LIBS = @KPATHSEA_LIBS@
+LD = @LD@
 LN = @LN@
 LN_S = @LN_S@
+MAKEINFO_PROGRAM = @MAKEINFO@
+MAKEINFO_VERSION = @MAKEINFO_VERSION@
 METAFONT = @METAFONT@ -progname=mf
 MFMODE = @MFMODE@
+MFTRACE = @MFTRACE@
 MSGFMT = @MSGFMT@
-ROOTSEP = @ROOTSEP@
+PAPERSIZE=a4
 PATHSEP = @PATHSEP@
 PERL = @PERL@
-MFTRACE = @MFTRACE@
 PYTHON = @PYTHON@
+RANLIB = @RANLIB@
+ROOTSEP = @ROOTSEP@
 SHELL = @SHELL@
+SPLITTING_MAKEINFO = @SPLITTING_MAKEINFO@
 TAR = @TAR@
+TFM_PATH = @TFM_PATH@
+TTFTOOL_ENDIAN = @TTFTOOL_ENDIAN@
 YACC = @YACC@
 ZIP = @ZIP@
-
-PAPERSIZE=a4
index 9e207fed523d74ebcb5d7c2986238855a38b5469..b4fce2da9b4ec76d51e8f47e17c5579a020029ad 100644 (file)
@@ -19,12 +19,6 @@ AC_CONFIG_SRCDIR([lily/main.cc])
 # Move to aclocal.m4?
 AC_CONFIG_HEADER([$CONFIGFILE.hh:config.hh.in])
 
-AC_C_BIGENDIAN(CFLAGS="$CFLAGS -DBIGENDIAN",
-               CFLAGS="$CFLAGS -DSMALLENDIAN")
-              
-              
-
-
 # Uncomment the configuration options your package needs.
 
 
@@ -64,7 +58,7 @@ STEPMAKE_PATH_PROG(FONTFORGE, fontforge, REQUIRED, 20041208)
 
 AC_CHECK_HEADERS([assert.h libio.h sys/stat.h])
 AC_LANG_PUSH(C++)
-1AC_CHECK_HEADERS([sstream])
+AC_CHECK_HEADERS([sstream])
 AC_LANG_POP(C++)
 AC_HEADER_STAT
 AC_FUNC_MEMCMP
@@ -79,6 +73,11 @@ fi
 STEPMAKE_FREETYPE2
 STEPMAKE_PANGO_FT2
 
+## TTFTOOL stuff
+AC_C_BIGENDIAN(TTFTOOL_ENDIAN="-DBIGENDIAN",
+               TTFTOOL_ENDIAN="-DSMALLENDIAN")
+AC_SUBST(TTFTOOL_ENDIAN)
+
 ## Optional tools for building documentation, website, extra fonts.
 
 # guile executable for some scripts
index 7d6296be50ee826b7c38ad4d0bb70a070c28c2c4..eec5e650c36d50b0878d1c3b7eac743718ba5d58 100644 (file)
@@ -1,21 +1,16 @@
-# title           top level makefile for FlowerLib
-# file    flower/Makefile
-
-# should reinstate versioning if shared libs are enabled.
-
 depth = ..
 
 NAME = kpath-guile
 MODULE_NAME = kpath-guile
 
 SCRIPTS = 
-STEPMAKE_TEMPLATES=library c po
-
+STEPMAKE_TEMPLATES = library c po
 
+MODULE_CFLAGS = -std=c99
+#MODULE_LDFLAGS = $(KPATHSEA_LIBS)
 
 include $(depth)/make/stepmake.make 
 
-CFLAGS += -std=c99
 $(outdir)/kpath.o: $(config_hh)
 
 
index 0e1616bd26fe78e4d993ce6b34235212e485ca83..1f323477d307a688859a0665d690e1d9c1a2993a 100644 (file)
 #include <stdio.h>
 #include <string.h>
 
-/*
-
-The problem, as far as I can tell, is that MacOS X has its getopt
-prototype in <unistd.h>, while I think other operating systems have it
-in other places. <unistd.h> is included by kpathsea.h, so you end up
-renaming both conflicting prototypes to YAKLUDGE.
+/* The (?) problem, as far as I (?) can tell, is that MacOS X has its
+   getopt prototype in <unistd.h>, while I think other operating
+   systems have it in other places. <unistd.h> is included by
+   kpathsea.h, so you end up renaming both conflicting prototypes to
+   KPATHSEA_HAS_GETOPT_PROTOTYPE_PROBLEM.
 
-I found a somewhat more elegant patch for this: Just #include
-<unistd.h> before defining YAKLUDGE.
-
-*/
+   I (?) found a somewhat more elegant patch for this: Just #include
+   <unistd.h> before defining KPATHSEA_HAS_GETOPT_PROTOTYPE_PROBLEM.  */
 
 #include <unistd.h>    
 
-#if !HAVE_DYNAMIC_LIBKPATHSEA
-
-#define popen REALLYUGLYKLUDGE
-#define pclose ANOTHERREALLYUGLYKLUDGE
-#define getopt YAKLUDGE
+#define popen KPATHSEA_HAS_POPEN_PROTOTYPE_PROBLEM
+#define pclose KPATHSEA_HAS_PCLOSE_PROTOTYPE_PROBLEM
+#define getopt KPATHSEA_HAS_GETOPT_PROTOTYPE_PROBLEM
 
+#if HAVE_KPATHSEA_KPATHSEA_H
 #include <kpathsea/kpathsea.h>
 #include <kpathsea/tex-file.h>
 #endif
 
-static  void *kpathsea_handle = 0;
-static  char *(*dl_kpse_find_file) (char const*, kpse_file_format_type, boolean) = 0;
-static  void (*dl_kpse_maketex_option) (char const*, boolean) = 0;
-static  void (*dl_kpse_set_program_name) (char const*, char const*) = 0;
-static  char const *(*dl_kpse_init_format) (kpse_file_format_type) = 0;
-static  char *(*dl_kpse_var_expand) (char const*) = 0;
-static  kpse_format_info_type (*dl_kpse_format_info)[kpse_last_format] = 0;
+static void *kpathsea_handle = 0;
+static char *(*dl_kpse_find_file) (char const*, kpse_file_format_type, boolean) = 0;
+static void (*dl_kpse_maketex_option) (char const*, boolean) = 0;
+static void (*dl_kpse_set_program_name) (char const*, char const*) = 0;
+static char const *(*dl_kpse_init_format) (kpse_file_format_type) = 0;
+static char *(*dl_kpse_var_expand) (char const*) = 0;
+static kpse_format_info_type (*dl_kpse_format_info)[kpse_last_format] = 0;
 
 kpse_file_format_type
 kpathsea_find_format (const char* name)
@@ -78,26 +74,25 @@ kpathsea_find_format (const char* name)
 //        "Return the absolute file name of @var{name}, "
 //        "or @code{#f} if not found.")
 SCM
-ly_kpathsea_find_file(SCM name)
+ly_kpathsea_find_file (SCM name)
 {
   SCM_ASSERT_TYPE (scm_is_string (name), name, SCM_ARG1, __FUNCTION__, "string");
 
-  char const * nm = scm_i_string_chars (name);
-  char *p = (*dl_kpse_find_file) (nm, kpathsea_find_format (nm),
-                                 true);
+  char const *nm = scm_i_string_chars (name);
+  char *p = (*dl_kpse_find_file) (nm, kpathsea_find_format (nm), true);
   if (p)
     return scm_makfrom0str (p);
   return SCM_BOOL_F;
 }
 
 //   "Return the expanded version  @var{var}.")
-SCM ly_kpathsea_expand_variable(SCM var)
+SCM ly_kpathsea_expand_variable (SCM var)
 {
   SCM_ASSERT_TYPE (scm_is_string (var), var, SCM_ARG1, __FUNCTION__, "string");
 
-  char const * nm = scm_i_string_chars (var);
-  char *result =  kpse_var_expand (nm);
-  SCM ret =  scm_makfrom0str (result);
+  char const *nm = scm_i_string_chars (var);
+  char *result = (*dl_kpse_var_expand) (nm);
+  SCM ret = scm_makfrom0str (result);
   free (result);
 
   return ret;
@@ -109,7 +104,7 @@ static char const* LIBKPATHSEA = "libkpathsea.so";
 int
 open_library ()
 {
-#if HAVE_DYNAMIC_LIBKPATHSEA
+#if HAVE_LIBKPATHSEA_SO
   struct
   {
     void **func_pointer;
index 2373646886a10467f906d5920bc20d3cd2a0c723..0ad2655aafee44618128247c25f6a193e7678b78 100644 (file)
@@ -790,6 +790,20 @@ AC_DEFUN(STEPMAKE_KPATHSEA, [
            STEPMAKE_ADD_ENTRY(REQUIRED, $warn)
        fi
     fi
+
+    save_CFLAGS="$CFLAGS"
+    CFLAGS="-shared $CFLAGS"
+    AC_MSG_CHECKING([for shared libkpathsea])
+    AC_TRY_LINK([#include <kpathsea/kpathsea.h>],
+                 [kpse_var_expand ("\$TEXMF");],
+                 [have_libkpathsea_so=yes],
+                 [have_libkpathsea_so=no])
+    AC_MSG_RESULT($have_libkpathsea_so)
+    if test "$have_libkpathsea_so" = "yes"; then
+       AC_DEFINE(HAVE_LIBKPATHSEA_SO)
+    fi
+    CFLAGS="$save_CFLAGS"
+
     KPATHSEA_LIBS="$LIBS"
     LIBS="$save_LIBS"
     AC_MSG_CHECKING(whether to use kpathsea)
index a96b2d287c18cee1d42c026d397f4fd8d884afd2..21777db50ccec32d4a258783754ad91687c2c25f 100644 (file)
@@ -11,8 +11,10 @@ SUBDIRS = include
 
 SCRIPTS = 
 README_FILES = README
-EXTRA_DIST_FILES=  $(README_FILES) $(SCRIPTS)
-STEPMAKE_TEMPLATES=library c po
+EXTRA_DIST_FILES = $(README_FILES) $(SCRIPTS)
+STEPMAKE_TEMPLATES = library c po
+
+MODULE_CFLAGS = $(TTFTOOL_ENDIAN)
 
 include $(depth)/make/stepmake.make