Hello community, here is the log from the commit of package yodl for openSUSE:Factory checked in at 2013-11-28 16:54:21 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/yodl (Old) and /work/SRC/openSUSE:Factory/.yodl.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yodl" Changes: -------- --- /work/SRC/openSUSE:Factory/yodl/yodl.changes 2013-04-20 20:01:45.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.yodl.new/yodl.changes 2013-11-28 16:54:22.000000000 +0100 @@ -1,0 +2,10 @@ +Wed Nov 27 07:33:27 UTC 2013 - pgaj...@suse.com + +- updated to 3.03: + * bugfixes + * see changelog for details +- fix-path.patch renamed to yodl-doc-packages.patch +- fix-tex-include.patch merged into yodl-doc-packages.patch as + changes in both patches relate + +------------------------------------------------------------------- Old: ---- fix-path.patch fix-tex-include.patch yodl_3.00.0.orig.tar.gz New: ---- yodl-doc-packages.patch yodl_3.03.0.orig.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ yodl.spec ++++++ --- /var/tmp/diff_new_pack.SxfRoj/_old 2013-11-28 16:54:23.000000000 +0100 +++ /var/tmp/diff_new_pack.SxfRoj/_new 2013-11-28 16:54:23.000000000 +0100 @@ -31,15 +31,15 @@ %else BuildRequires: texlive-bin %endif -Version: 3.00.0 +Version: 3.03.0 Release: 0 Summary: Yet One-other Document Language License: GPL-3.0 Group: Development/Tools/Doc Generators Url: http://yodl.sourceforge.net/ Source: http://sourceforge.net/projects/yodl/files/yodl/%{version}/%{name}_%{version}.orig.tar.gz -Patch: fix-path.patch -Patch1: fix-tex-include.patch +# suse specific +Patch0: %{name}-doc-packages.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -53,8 +53,7 @@ %prep %setup -q -%patch -p1 -%patch1 -p1 +%patch0 sed -i s,"#define COPT.*","#define COPT \"%{optflags}\"", ./build @@ -75,7 +74,7 @@ %files %defattr(-,root,root) -%doc AUTHORS.txt changelog LICENSE README.txt CHANGES README.%{version} +%doc AUTHORS.txt changelog LICENSE README.* CHANGES %{_bindir}/* %dir %{_datadir}/%{name} ++++++ yodl-doc-packages.patch ++++++ Index: INSTALL.im =================================================================== --- INSTALL.im.orig 2013-10-09 14:21:36.000000000 +0200 +++ INSTALL.im 2013-11-27 08:29:45.661265003 +0100 @@ -68,8 +68,8 @@ // absolute paths BIN = BASE + "/bin"; - DOC = BASE + "/share/doc/yodl"; - DOCDOC = BASE + "/share/doc/yodl-doc"; + DOC = BASE + "/share/doc/packages/yodl"; + DOCDOC = DOC; MAN = BASE + "/share/man"; STD_INCLUDE = BASE + "/share/yodl"; Index: contrib/build.pl =================================================================== --- contrib/build.pl.orig 2012-05-27 11:03:00.000000000 +0200 +++ contrib/build.pl 2013-11-27 08:29:45.662265015 +0100 @@ -13,7 +13,7 @@ CFLAGS => '-c -Wall -Werror -g', STD_INCLUDE => '/usr/share/yodl', MAN_DIR => '/usr/share/man', - DOC_DIR => '/usr/share/doc/yodl', + DOC_DIR => '/usr/share/doc/packages/yodl', YODL_BIN => '/usr/bin', STD_CONVERSIONS => 'html latex man txt xml', MANUAL_FORMATS => 'html txt pdf ps', Index: manual/yo/technical/installing.yo =================================================================== --- manual/yo/technical/installing.yo.orig 2012-05-27 11:03:01.000000000 +0200 +++ manual/yo/technical/installing.yo 2013-11-27 08:29:45.662265015 +0100 @@ -3,7 +3,7 @@ itemization( it() YODL's binaries in tt(/usr/bin); it() YODL's macros in tt(/usr/share/yodl) - it() YODL's documentation in tt(/usr/share/doc/yodl); + it() YODL's documentation in tt(/usr/share/doc/packages/yodl); it() YODL's manpages in tt(/usr/share/man/man{1,7}); ) Local installations, not using the Debian installation process, can be Index: manual/yo/manual.yo =================================================================== --- manual/yo/manual.yo.orig 2013-10-09 14:21:36.000000000 +0200 +++ manual/yo/manual.yo 2013-11-27 08:31:32.534545834 +0100 @@ -4,7 +4,7 @@ whenlatex(\ SETSYMBOL(XXusexlatin) - (NOTRANS(\input{../../../../../wip/macros/xlatin1.tex})) + (NOTRANS(\input{../../../../../../wip/macros/xlatin1.tex})) ) SUBST(YODL)(tt(Yodl)) ++++++ yodl_3.00.0.orig.tar.gz -> yodl_3.03.0.orig.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/INSTALL.im new/yodl-3.03.0/INSTALL.im --- old/yodl-3.00.0/INSTALL.im 2010-11-08 15:50:48.000000000 +0100 +++ new/yodl-3.03.0/INSTALL.im 2013-10-09 14:21:36.000000000 +0200 @@ -22,14 +22,18 @@ // For an operational non-Debian installation, you probably must be // `root', and BASE "/usr" or BASE "/usr/local" is suggested (see // below). `BASE' itself is not used outside of this file, so feel free to - // define BIN, SKEL, MAN and DOC (below) in any which way you like. + // define BIN, STD_INCLUDE, MAN, DOC, and DOCDOC (below) in any which way + // you like. + + // However, make sure that BIN, STD_INCLUDE, MAN, DOC and DOCDOC all are + // absolute paths string BIN; // the directory in which yodl will be stored -string SKEL; - // SKEL is the directory below BASE in which the skeleton files will be - // stored +string STD_INCLUDE; + // STD_INCLUDE is the directory in which the skeleton files + // will be stored string MAN; // MAN is the directory in which the manual page will be stored @@ -60,13 +64,15 @@ { BASE = "/usr"; - BIN = BASE + "/bin"; - SKEL = BASE + "/share/yodl"; - MAN = BASE + "/share/man"; - DOC = BASE + "/share/doc/yodl"; - DOCDOC = BASE + "/share/doc/yodl-doc"; + // make sure that BIN, STD_INCLUDE, MAN, DOC and DOCDOC all are + // absolute paths + + BIN = BASE + "/bin"; + DOC = BASE + "/share/doc/yodl"; + DOCDOC = BASE + "/share/doc/yodl-doc"; + MAN = BASE + "/share/man"; + STD_INCLUDE = BASE + "/share/yodl"; COMPILER = "gcc"; -// COMPILER = "gcc-4.5"; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/INSTALL.txt new/yodl-3.03.0/INSTALL.txt --- old/yodl-3.00.0/INSTALL.txt 2009-04-27 21:00:05.000000000 +0200 +++ new/yodl-3.03.0/INSTALL.txt 2013-03-02 09:47:57.000000000 +0100 @@ -15,14 +15,14 @@ To install Yodl using icmake proceed as follows: 1. Define the appropriate locations in setLocations() (at the bottom) of -INSTALL.im + INSTALL.im 2. then run: - ./build programs - ./build man - ./build manual - ./build macros + ./build programs + ./build man + ./build manual + ./build macros NOTE: ./build programs must be first, ./build macros must be last, the other two are optional @@ -35,16 +35,16 @@ system's root directory. All WHERE specifications must be identical). - ./install programs WHERE - e.g., ./install programs / - ./install man WHERE ./install man / - ./install manual WHERE ./install manual / - ./install macros WHERE ./install macros / - ./install docs WHERE ./install docs / - - For `./install' there are no ordering requirements but at the very least - do - ./install programs WHERE - e.g., ./install programs / - ./install macros WHERE ./install macros / + ./build install programs WHERE - e.g., ./build install programs / + ./build install man WHERE ./build install man / + ./build install manual WHERE ./build install manual / + ./build install macros WHERE ./build install macros / + ./build install docs WHERE ./build install docs / + + For `./build install ...' there are no ordering requirements but at the + very least do + ./build install programs WHERE - e.g., ./build install programs / + ./build install macros WHERE ./build install macros / diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/VERSION new/yodl-3.03.0/VERSION --- old/yodl-3.00.0/VERSION 2010-11-08 15:50:48.000000000 +0100 +++ new/yodl-3.03.0/VERSION 2013-10-09 14:21:36.000000000 +0200 @@ -1,2 +1,2 @@ -#define VERSION "3.00.0" -#define YEARS "1996-2010" +#define VERSION "3.03.0" +#define YEARS "1996-2013" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/build new/yodl-3.03.0/build --- old/yodl-3.00.0/build 2009-11-17 14:18:40.000000000 +0100 +++ new/yodl-3.03.0/build 2013-10-09 14:21:36.000000000 +0200 @@ -14,26 +14,43 @@ string g_lopt; string g_copt; string g_cwd; -string g_wip = "tmp/wip/"; -string g_install = "tmp/install/"; -string g_include; +string g_wip = "tmp/wip"; // no slash here +string g_install = "tmp/install"; // no slash here + int g_compiled; int g_nClasses; list g_classes; - #include "icmake/run" #include "icmake/md" #include "icmake/clean" +#include "icmake/stdcpp" #include "icmake/stdcompile" #include "icmake/compilerss" #include "icmake/builtins" #include "icmake/program" +#include "icmake/buildmacros" #include "icmake/manualmacrolist" #include "icmake/macros" #include "icmake/man" #include "icmake/manual" #include "icmake/install" +#include "icmake/sf" + +string setOpt(string install_im, string envvar) +{ + list optvar; + string ret; + + optvar = getenv(envvar); + + if (optvar[0] == "1") + ret = optvar[1]; + else + ret = install_im; + + return ret; +} void main(int argc, list argv) { @@ -42,13 +59,15 @@ echo(ECHO_REQUEST); g_cwd = chdir("."); - g_copt = COPT + " -g"; + g_copt = setOpt(COPT + " -g", "CFLAGS"); #ifdef PROFILING g_copt = COPT + " -pg"; g_lopt = "-pg"; #endif + g_lopt = setOpt(g_lopt, "LDFLAGS"); + #ifdef EXTENSIVE_OPTIONS g_copt = "-O0 -g3 -ansi -pedantic -fno-common -pipe -W -Wall -Wcast-align" " -Wcast-qual -Wconversion -Wformat=2 -Winline -Wnested-externs" @@ -58,27 +77,36 @@ setLocations(); + if ( + STD_INCLUDE[0] != "/" || BIN[0] != "/" || MAN[0] != "/" || + DOC[0] != "/" || DOCDOC[0] != "/" ) + { + printf("Check INSTALL.im: BIN, DOC, DOCDOC, MAN, STD_INCLUDE, " + "must be absolute paths\n"); + exit(1); + } + arg1 = argv[1]; - if (arg1 == "clean") + if (arg1 == "clean" || arg1 == "distclean") cleanupExit(); md(g_install + " " + g_wip); - g_include = " -I.:" + g_install + SKEL + ":" + g_wip; - +// g_include = " -I.:" + g_install + STD_INCLUDE + ":" + g_wip; echo(OFF); - run("rm -f " + g_wip + "release.yo " + g_wip + "config.h"); + run("rm -f " + g_wip + "/release.yo " + g_wip + "/config.h"); echo(ON); - fprintf(g_wip + "release.yo", "SUBST(_CurVers_)(", VERSION, ")\n", - "SUBST(_CurYrs_)(", YEARS, ")\n"); - fprintf(g_wip + "config.h", - "#define STD_INCLUDE \"", SKEL, "\"\n" - "#define VERSION \"" VERSION "\"\n" - "#define YEARS \"" YEARS "\"\n" - "#define YODL_BIN \"", BIN, "\"\n" + fprintf(g_wip + "/release.yo", "SUBST(_CurVers_)(", VERSION, ")\n", + "SUBST(_CurYrs_)(", YEARS, ")\n"); + + fprintf(g_wip + "/config.h", + "#define STD_INCLUDE \"", STD_INCLUDE, "\"\n" + "#define VERSION \"" VERSION "\"\n" + "#define YEARS \"" YEARS "\"\n" + "#define YODL_BIN \"", BIN, "\"\n" ); if (arg1 == "programs") @@ -103,9 +131,12 @@ if (arg1 == "install") installExit(argv[2], argv[3]); + if (arg1 == "sf") + sfExit(argv[2]); + printf("Usage: build action\n" "Where `action' is one of:\n" - " clean: clean up\n" + " (dist)clean: clean up\n" " programs [strip]: build the programs\n" " yodl [strip]: only build `yodl'\n" " yodlpost [strip]: only build `yodlpost'\n" @@ -115,6 +146,7 @@ " man [path]: build the man-pages, optionally specify: path\n" " manual [path]: build the manual, optionally specify: path\n" " macros: build the standard yodl macros\n" + " sf: internal use only: create the sourceforge files\n" " install programs WHERE: install the programs under WHERE\n" " install yodl WHERE: install yodl under WHERE\n" " install yodlpost WHERE: install yodlpost under WHERE\n" @@ -131,6 +163,6 @@ "`path': yodl is located in $PATH (otherwise just-built programs " "are used).\n" ); - exit(1); + exit(0); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/changelog new/yodl-3.03.0/changelog --- old/yodl-3.00.0/changelog 2010-11-10 09:54:33.000000000 +0100 +++ new/yodl-3.03.0/changelog 2013-10-09 14:21:36.000000000 +0200 @@ -1,3 +1,54 @@ +yodl (3.03.0) + + * Reorganized the macro-construction because of a persistent xlatin1.tex bug + (see 3.02.1's changelog entry). The macros for man- and manual-pages are + now constructed under tmp/wip, so they can't conflict anymore with the + distribution macros which are constructed under tmp/install. The + xlatin1.bug was observed intermittently, making its fix kind of + difficult. + + * Added the file icmake/README explaining the steps/elements of the macro + construction process. + + -- Frank B. Brokken <f.b.brok...@rug.nl> Wed, 09 Oct 2013 12:47:12 +0200 + +yodl (3.02.1) + + * Repaired recurrent bug, fixed since yodl 2.14.4, about missing local-path + location specification in scripts/createmacros causing xlatin1.tex to be + included as ./xlatin1.tex. + + * Modified Yodl's build script's 'build sf' mode + +yodl (3.02.0) + + * Repaired failing `return to parent directory' after INCLUDEFILE + bug, intermittently observed th txt-files. + + -- Frank B. Brokken <f.b.brok...@rug.nl> Tue, 21 May 2013 09:39:58 +0200 + +yodl (3.01.0) + + * Re-implemented l_chdir in src/lexer/lchdir.c and new_getcwd in + src/new/getcwd.c following compilation problems on GNU-hurd, as reported + by Svante Signell + + * Yodl's build script now honors CFLAGS en LDFLAGS environment variables. + + * Repaired some inconsistencies in the INSTALL.txt file + + * The yodl2whatever script sets the path to the yodl binaries as configured + unless the YODL_BIN environment variable has been set, in which case that + environment variable' value is used as the path prefix when calling yodl + programs. + + * Added 'build sf' to create the files to be uploaded to sourceforge. This + function is for Internal Use Only + + * Renamed the 'sourceforge' directory to 'sf' + + -- Frank B. Brokken <f.b.brok...@rug.nl> Sun, 10 Mar 2013 12:37:45 +0100 + yodl (3.00.0) * When including files the included file's directory path becomes the diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/icmake/README new/yodl-3.03.0/icmake/README --- old/yodl-3.00.0/icmake/README 1970-01-01 01:00:00.000000000 +0100 +++ new/yodl-3.03.0/icmake/README 2013-10-09 14:21:36.000000000 +0200 @@ -0,0 +1,76 @@ +Creating the macros +------------------- + +Macros for the man- and manual-pages are different from the macros that will +eventually be stored in, e.g., /usr/share/yodl. The former use the macros +defined in tmp/wip, the latter the macros in tmp/install/$STD_INCLUDE. The +macros under tmp/install are installed by 'build install macros'. + +STD_INCLUDE is determined from tmp/wip/config.h, which is created in 'build', +and becomes available after 'build programs'. + +------------------------------------------------------------------------------ + +The script 'scripts/configreplacements' replaces the #defined variables in +tmp/wip/config.h by their values in various .in files. The configreplacements +script requires three arguments: + + - the .in file to be processed + - the .yo file to create + - the path to the macro files. This is either STD_INCLUDE for the + distribution macros or tmp/wip/macros when constructing the manual or + man-pages + +------------------------------------------------------------------------------ + +The script 'scripts/stdmacros' creates the std.<format>.yo macro files. It +requires four arguments: + + - an intermediate filename (g_wip/scratch) + - the directory to write the std file into (either tmp/install/... or + tmp/wip/...) + - the <format> to use in std.<format>.yo (this is one of the standard + formats defined in 'build' at STD_CONVERSIONS + - the appropriate STD_INCLUDE to use. This is either STD_INCLUDE as + defined in INSTALL.im or it is "./", which is used for the man and + manual construction. + + +The macros for the man- and manual-pages are created under tmp/wip/macros, and +the list of macros is written to tmp/macrolist.yo + +------------------------------------------------------------------------------ + +'build man' creates the man pages. Once defined, the following stamp-files +prevent recreating them: + + tmp/man-macros-stamp - the macros for the man(ual) were built + tmp/macrolist-stamp - the documentation of the raw macros was written + to tmp/wip/macrolist.yo + tmp/man-stamp - the manual pages were successfully built + +The man-pages are stored under tmp/install/usr/share/man + +------------------------------------------------------------------------------ + +'build manual' creates the manual. Once defined, the following stamp-files +prevent recreating them: + + tmp/man-macros-stamp - the macros for the man(ual) were built + tmp/macrolist-stamp - the documentation of the raw macros was written + to tmp/wip/macrolist.yo + tmp/html-manual-stamp - the manual in html format was successfully built + tmp/latex-manual-stamp - the manual in LaTeX format was successfully + built + tmp/txt-manual-stamp - the manual in txt format was successfully built + +The manual in various formats in stored in tmp/install/usr/share/doc/yodl-doc + +------------------------------------------------------------------------------ + +'build macros' creates the macro files in tmp/install/usr/share/yodl. These +macro files are part of the distribution. Once defined, reconstructing them is +prevented by the stamp file: + + tmp/macros-stamp - macros for $STD_INCLUDE were built + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/icmake/buildmacros new/yodl-3.03.0/icmake/buildmacros --- old/yodl-3.00.0/icmake/buildmacros 1970-01-01 01:00:00.000000000 +0100 +++ new/yodl-3.03.0/icmake/buildmacros 2013-10-09 14:21:36.000000000 +0200 @@ -0,0 +1,67 @@ + // base is the base location of the macros to build. + // stamp is the stamp to check/create + // include path is the location where to find the macros + // this should be ./ (local use, for man, manual) or STD_INCLUDE + // + // void buildMacros(string base, string stamp, string includePath) + +void _configReplacements(string source, string base, string includePath) +{ + source = change_ext(source, ""); + + run("scripts/configreplacements " + + "macros/in/" + source + ".in " + + base + source + ".yo " + + includePath); +} + +void _stdMacros(string base, string includePath) +{ + list std; + int idx; + string conversion; + + std = strtok(STD_CONVERSIONS, " "); // the list of format-conversions + + // Create the std.<format>.yo files, providing scratch filename, + // destination directory, requested format, and STD_INCLUDE path + for (idx = sizeof(std); idx--; ) + run("scripts/stdmacros " + + g_wip + "/scratch " + + base + " " + + std[idx] + " " + + includePath); +} + + // base is the base location of the macros to build. + // stamp is the stamp to check/create + // include path is the location where to find the macros + // this should be ./ (local use, for man, manual) or STD_INCLUDE +void buildMacros(string base, string stamp, string includePath) +{ + list in; + int idx; + + if (exists(stamp)) + return; + + md(base); + + base += "/"; + + chdir("macros/in"); // location of the format-specific macro + in = makelist("*.in"); // files, like html.yo + chdir(g_cwd); + + for (idx = sizeof(in); idx--; ) // set the config.h info and create the + _configReplacements(in[idx], base, includePath); // format-specific + // files + + _stdMacros(base, includePath); // create the std.<format>.yo files, + // like std.man.yo + + run("cp -r macros/yodl/* " + base); // install chartables, xlatin1.tex + // and xml/ files + + run("touch " + stamp); +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/icmake/builtins new/yodl-3.03.0/icmake/builtins --- old/yodl-3.00.0/icmake/builtins 2009-03-27 10:17:56.000000000 +0100 +++ new/yodl-3.03.0/icmake/builtins 2013-10-09 14:21:36.000000000 +0200 @@ -1,4 +1,4 @@ -void remakebuiltins(list files, string builtinsDef) +void _remakebuiltins(list files, string builtinsDef) { string file; string dest; @@ -6,7 +6,7 @@ int idx; string gramH; - gramH = g_wip + "gram.h"; + gramH = g_wip + "/gram.h"; printf("rebuilding " + builtinsDef + " and " + gramH + "\n"); @@ -57,7 +57,7 @@ int idx; string builtinsDef; - builtinsDef = g_wip + "builtins.def"; + builtinsDef = g_wip + "/builtins.def"; chdir("src/yodl"); files = makelist("gram*.c"); @@ -68,7 +68,7 @@ file = files[idx]; if ("src/yodl/" + file younger builtinsDef) { - remakebuiltins(files, builtinsDef); + _remakebuiltins(files, builtinsDef); break; } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/icmake/clean new/yodl-3.03.0/icmake/clean --- old/yodl-3.00.0/icmake/clean 2009-03-27 08:47:48.000000000 +0100 +++ new/yodl-3.03.0/icmake/clean 2013-10-08 09:08:42.000000000 +0200 @@ -1,5 +1,5 @@ void cleanupExit() { - run("rm -rf tmp"); + run("rm -rf tmp ../sf/index.html"); exit(0); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/icmake/compilerss new/yodl-3.03.0/icmake/compilerss --- old/yodl-3.00.0/icmake/compilerss 2009-03-27 10:18:42.000000000 +0100 +++ new/yodl-3.03.0/icmake/compilerss 2013-10-09 14:21:36.000000000 +0200 @@ -7,6 +7,6 @@ g_classes = strtok(CLASSES, " "); // list of classes g_nClasses = sizeof(g_classes); - makeLibrary(g_wip + "rss", g_wip + "libyodl.a"); // in stdcompile + makeLibrary(g_wip + "/rss", g_wip + "/libyodl.a"); // in stdcompile } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/icmake/install new/yodl-3.03.0/icmake/install --- old/yodl-3.00.0/icmake/install 2009-04-15 21:46:40.000000000 +0200 +++ new/yodl-3.03.0/icmake/install 2013-10-09 14:21:36.000000000 +0200 @@ -1,4 +1,4 @@ -void installYodl2(string where) +void _installYodl2(string where) { list conversions; int idx; @@ -12,7 +12,7 @@ run("chmod +x " + where + BIN + "/yodl2*"); } -void installYodlConverters(string where) +void _installYodlConverters(string where) { list conversions; int idx; @@ -31,7 +31,7 @@ md(where + BIN); run("cp " + g_install + BIN + "/* " + where + BIN); run("chmod +x " + where + BIN + "/yodlstriproff"); - installYodl2(where); + _installYodl2(where); exit(0); } @@ -70,7 +70,7 @@ md(where + BIN); run("cp " + g_install + BIN + "/yodl2whatever " + where + BIN); - installYodl2(where); + _installYodl2(where); exit(0); } @@ -78,7 +78,7 @@ { md(where + MAN); run("cp -r " + g_install + MAN + "/* " + where + MAN); - installYodlConverters(where); + _installYodlConverters(where); exit(0); } @@ -92,8 +92,8 @@ if (what == "macros") { - md(where + SKEL); - run("cp -r " + g_install + SKEL + "/* " + where + SKEL); + md(where + STD_INCLUDE); + run("cp -r " + g_install + STD_INCLUDE + "/* " + where + STD_INCLUDE); exit(0); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/icmake/macros new/yodl-3.03.0/icmake/macros --- old/yodl-3.00.0/icmake/macros 2009-05-13 11:34:29.000000000 +0200 +++ new/yodl-3.03.0/icmake/macros 2013-10-09 14:21:36.000000000 +0200 @@ -1,67 +1,7 @@ -void configReplacements(string source, string local) -{ - string dst; - - source = change_ext(source, ""); - dst = g_install + SKEL + "/" + source + ".yo"; - - run("scripts/configreplacements " + "macros/in/" + source + ".in " + - dst + " " + local); -} - -void stdMacros(string local) -{ - list std; - int idx; - string conversion; - - std = strtok(STD_CONVERSIONS, " "); - - for (idx = sizeof(std); idx--; ) - run("scripts/createmacros " + g_wip + " " + - g_install + SKEL + " " + std[idx] + - " " + local); -} - -void buildMacros(string local) -{ - list in; - int idx; - - if - ( - local == "" && exists("tmp/macros-stamp") - || - local != "" && exists("tmp/man-macros-stamp") - ) - return; - - system("rm -f tmp/macros-stamp tmp/man-macros-stamp"); - - md(g_install + SKEL); - - chdir("macros/in"); - in = makelist("*.in"); - chdir(g_cwd); - - for (idx = sizeof(in); idx--; ) - configReplacements(in[idx], local); - - stdMacros(local); - - run("cp -r macros/yodl/* " + g_install + SKEL); - - - if (local == "") - run("touch tmp/macros-stamp"); - else - run("touch tmp/man-macros-stamp"); -} - - void macrosExit() { - buildMacros(""); + buildMacros(g_install + STD_INCLUDE + "/", "tmp/macros-stamp", + STD_INCLUDE); exit(0); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/icmake/man new/yodl-3.03.0/icmake/man --- old/yodl-3.00.0/icmake/man 2009-05-15 08:27:09.000000000 +0200 +++ new/yodl-3.03.0/icmake/man 2013-10-09 14:21:36.000000000 +0200 @@ -1,63 +1,70 @@ -void man(string source, string nr, int usePath) +void _man(string source, string nr, int usePath, string macroBase) { string manDst; string nrs; - string install; + string includes; nrs = (string)nr; - manDst = g_install + MAN + "/man" + nrs + "/" + source + "." + nrs; + includes = " -I.:" + g_wip + ":" + macroBase; run("scripts/configreplacements " + "man/" + source + ".in " + - g_wip + "manyo.yo"); + g_wip + "/manyo.yo " + + macroBase); - // manYo.yo is the file to convert to a man-page + // manyo.yo is the file to convert to a man-page - if (usePath) - run("yodl2man" + g_include + + if (usePath) // use yodl/yodlpost via yodl2man + { + putenv("YODL_BIN=" + g_cwd + g_install + BIN); + run("yodl2man" + includes + " -o" + manDst + " " "manyo"); + } else { - run(g_install + BIN + "/yodl" + g_include + - " -o" + g_wip + "out " - "man manyo"); + run(g_install + BIN + "/yodl" + includes + + " -o" + g_wip + "/out man manyo"); run(g_install + BIN + "/yodlpost " - + g_wip + "out.idx " + g_wip + "out " + - manDst); + + g_wip + "/out.idx " + g_wip + "/out " + manDst); } } void manExit(string path) { int usePath; + string macroBase; - if (exists("tmp/man-stamp")) + usePath = path == "path"; + macroBase = g_wip + "/macros"; + + if (exists("tmp/man-stamp")) // man-pages are available exit(0); - if (exists("tmp/macros-stamp")) - system("rm -f tmp/macros-stamp tmp/man-macros-stamp"); + // build the macros for the man(ual) + // "./": use the current dir for + // finding macros + buildMacros(macroBase, "tmp/man-macros-stamp", "./"); - buildMacros("./"); - manualMacroList(); + manualMacroList(); // create the documentation in + // tmp/wip/macrolist.yo + // where to install the man-pages md(g_install + MAN + "/man1 " + g_install + MAN + "/man7"); - usePath = path == "path"; - - man("yodl", "1", usePath); - man("yodlpost", "1", usePath); - man("yodlconverters", "1", usePath); - man("yodlverbinsert", "1", usePath); - man("yodlstriproff", "1", usePath); + _man("yodl", "1", usePath, macroBase); + _man("yodlpost", "1", usePath, macroBase); + _man("yodlconverters", "1", usePath, macroBase); + _man("yodlverbinsert", "1", usePath, macroBase); + _man("yodlstriproff", "1", usePath, macroBase); - man("yodlbuiltins", "7", usePath); - man("yodlmanpage", "7", usePath); - man("yodlletter", "7", usePath); - man("yodlmacros", "7", usePath); + _man("yodlbuiltins", "7", usePath, macroBase); + _man("yodlmanpage", "7", usePath, macroBase); + _man("yodlletter", "7", usePath, macroBase); + _man("yodlmacros", "7", usePath, macroBase); run("touch tmp/man-stamp"); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/icmake/manual new/yodl-3.03.0/icmake/manual --- old/yodl-3.00.0/icmake/manual 2010-11-08 15:50:47.000000000 +0100 +++ new/yodl-3.03.0/icmake/manual 2013-10-09 14:21:36.000000000 +0200 @@ -1,31 +1,36 @@ -void buildManual(string conversion, int usePath) +void _manual(string conversion, int usePath, string macroBase) { - string include; + string includes; string manualDestination; if (exists("tmp/" + conversion + "-manual-stamp")) return; - include = g_include + ":manual/yo"; + includes = " -I.:" + g_wip + ":" + macroBase + ":manual/yo"; - manualDestination = g_install + DOCDOC + "/yodl." + conversion ; + manualDestination = g_install + DOCDOC; if (usePath) - run("yodl2" + conversion + include + + { + putenv("YODL_BIN=" + g_cwd + g_install + BIN); + run("yodl2" + conversion + includes + " -o" + manualDestination + " manual"); + } else { - run(g_install + BIN + "/yodl" + include + - " -o" + g_wip + "out " + + run(g_install + BIN + "/yodl" + includes + + " -o" + g_wip + "/out " + conversion + " manual"); - if (conversion == "latex") - run("mv " + g_wip + "out " + g_install + DOCDOC + "/yodl.latex"); + run("mv " + g_wip + "/out " + g_install + DOCDOC + "/yodl.latex"); else + { run(g_install + BIN + "/yodlpost " - + g_wip + "out.idx " + g_wip + "out " + - manualDestination); + + g_wip + "/out.idx " + g_wip + "/out " + + "yodl." + conversion); + run("mv yodl*." + conversion + " " + manualDestination); + } } if (conversion == "latex") @@ -44,27 +49,44 @@ run("touch tmp/" + conversion + "-manual-stamp"); } -void manualExit(string path) +void manualMayExit(string path, int doExit) // doExit == 0, then only html { int idx; int usePath; + string macroBase; usePath = path == "path"; + macroBase = g_wip + "/macros"; - manualMacroList(); - - if (exists("tmp/macros-stamp")) - system("rm -f tmp/macros-stamp tmp/man-macros-stamp"); + // build the macros for the man(ual) + // "./": use the current dir for + // finding macros + buildMacros(macroBase, "tmp/man-macros-stamp", "./"); - buildMacros("./"); + manualMacroList(); md(g_install + DOCDOC); - buildManual("html", usePath); - system("scripts/hrefnotmpinstall"); + _manual("html", usePath, macroBase); - buildManual("txt", usePath); - buildManual("latex", usePath); + if (doExit) + { + _manual("txt", usePath, macroBase); + _manual("latex", usePath, macroBase); + exit(0); + } +} - exit(0); +void manualExit(string path) +{ + manualMayExit(path, 1); } + + + + + + + + + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/icmake/manualmacrolist new/yodl-3.03.0/icmake/manualmacrolist --- old/yodl-3.00.0/icmake/manualmacrolist 2009-03-27 10:26:54.000000000 +0100 +++ new/yodl-3.03.0/icmake/manualmacrolist 2013-10-09 14:21:36.000000000 +0200 @@ -1,3 +1,5 @@ + // manualMacroList creates the macros for the man- and manual-pages in + // the file tmp/wip/macrolist.yo void manualMacroList() { list raw; @@ -13,8 +15,10 @@ echo(OFF); for (idx = 0; idx < sizeof(raw); idx++) { + // pick the documentation from the raw macros (delimited by the + // <STARTDOC> and <> tags) and append it to macrolist.yo system("./startdoc.pl " + raw[idx] + " >> " - "../../" + g_wip + "macrolist.yo"); + "../../" + g_wip + "/macrolist.yo"); printf("."); } echo(ON); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/icmake/program new/yodl-3.03.0/icmake/program --- old/yodl-3.00.0/icmake/program 2009-04-15 21:18:10.000000000 +0200 +++ new/yodl-3.03.0/icmake/program 2013-10-09 14:21:36.000000000 +0200 @@ -1,21 +1,28 @@ -void buildProgram(string program) +void _link(string program) { - std_cpp(g_wip + program, 0, program, ""); - link(program); + exec(COMPILER, "-o", g_install + BIN + "/" + program, + g_wip + "/" + program + "/*.o", + "-L" + g_wip, "-lyodl", g_lopt); } -void programYodl() +void _buildProgram(string program) +{ + std_cpp(g_wip + "/" + program, 0, program, ""); + _link(program); +} + +void _programYodl() { buildBuiltins(); - buildProgram("yodl"); + _buildProgram("yodl"); } -void programYodlpost() +void _programYodlpost() { - buildProgram("yodlpost"); + _buildProgram("yodlpost"); } -void programYodlverbinsert() +void _programYodlverbinsert() { run(COMPILER + " -o " + g_install + BIN + "/yodlverbinsert " + g_copt + " src/verbinsert/verbinsert.c " + g_lopt); @@ -31,7 +38,8 @@ if (target == "programs" || target == "yodl2whatever") run("scripts/configreplacements " + "scripts/yodl2whatever.in " + - g_install + BIN + "/yodl2whatever"); + g_install + BIN + "/yodl2whatever " + + g_install); if (target == "yodlstriproff" || target == "yodl2whatever") return; @@ -39,18 +47,18 @@ compileRSS(); if (target == "programs" || target == "yodl") - programYodl(); + _programYodl(); if (target == "programs" || target == "yodlpost") - programYodlpost(); + _programYodlpost(); if (target == "programs" || target == "yodlverbinsert") - programYodlverbinsert(); + _programYodlverbinsert(); } -void programExit(string target, string strip) -{ +void programExit(string target, string strip) // build one program, +{ // called from main #ifndef PROFILING if (strip == "strip") g_lopt = "-s"; @@ -60,8 +68,8 @@ exit(0); } -void programsExit(string strip) -{ +void programsExit(string strip) // build all programs, +{ // called from main #ifndef PROFILING if (strip == "strip") g_lopt = "-s"; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/icmake/run new/yodl-3.03.0/icmake/run --- old/yodl-3.00.0/icmake/run 2009-03-27 12:19:31.000000000 +0100 +++ new/yodl-3.03.0/icmake/run 2013-10-09 14:21:36.000000000 +0200 @@ -1,6 +1,5 @@ int g_dryrun; // set to 1 if envvar DRYRUN was set in main() - void runP(int testValue, string cmd) { if (g_dryrun) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/icmake/sf new/yodl-3.03.0/icmake/sf --- old/yodl-3.00.0/icmake/sf 1970-01-01 01:00:00.000000000 +0100 +++ new/yodl-3.03.0/icmake/sf 2013-10-09 14:21:36.000000000 +0200 @@ -0,0 +1,11 @@ +void sfExit(string path) +{ + program("programs"); + manualMayExit(path, 0); // create the manual using the new progs + + putenv("YODL_BIN=" + g_cwd + g_install + BIN); + run("yodl2html -o ../sf/index.html -I.:tmp/install/usr/share/yodl " + "../sf/index.yo"); + exit(0); +} + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/icmake/stdcompile new/yodl-3.03.0/icmake/stdcompile --- old/yodl-3.00.0/icmake/stdcompile 2009-03-27 10:20:19.000000000 +0100 +++ new/yodl-3.03.0/icmake/stdcompile 2013-10-09 14:21:36.000000000 +0200 @@ -1,98 +1,4 @@ -void link(string program) -{ - exec(COMPILER, "-o", g_install + BIN + "/" + program, - g_wip + program + "/*.o", - "-L" + g_wip, "-lyodl", g_lopt); -} - -list inspect(string dstPrefix, list srcList, string library) -{ - int idx; - string ofile; - string file; - - for (idx = sizeof(srcList); idx--; ) - { - file = element(idx, srcList); - ofile = dstPrefix + change_ext(file, "o"); // make o-filename - - // A file s must be recompiled if it's newer than its object - // file o or newer than its target library l, or if neither o nor l - // exist. - // Since `a newer b' is true if a is newer than b, or if a exists and - // b doesn't exist s must be compiled if s newer o and s newer l. - // So, it doesn't have to be compiled if s older o or s older l. - // redo if file has changed - if (file older ofile || file older library) - srcList -= (list)file; - } - return srcList; -} - -list inspect2(string dstPrefix, list srcList) -{ - int idx; - string ofile; - string file; - - for (idx = sizeof(srcList); idx--; ) - { - file = element(idx, srcList); - ofile = dstPrefix + change_ext(file, "o"); // make o-filename - - // A file s must be recompiled if it's newer than its object - // file o - - if (file older ofile) - srcList -= (list)file; - } - return srcList; -} - -// c_compile: compile all sources in `{srcDir}/{cfiles}', storing the object -// files in {oDst}/filename.o -void c_compile(string oDst, list cfiles) -{ - int idx; - string compdest; - string file; - - compdest = COMPILER + " -c -o " + oDst; - - for (idx = sizeof(cfiles); idx--; ) - { - file = cfiles[idx]; - g_compiled = 1; - run(compdest + change_ext(file, "o") + " " + g_copt + " -c " + file); - } -} - -void std_cpp(string oDstDir, int prefix, string srcDir, string library) -{ - list files; - - chdir("src/" + srcDir); - oDstDir = "../../" + oDstDir; - md(oDstDir); - oDstDir += "/" + (string)prefix; - - // make list of all files - if (library == "") - files = inspect2(oDstDir, makelist("*.c")); - else - files = inspect(oDstDir, makelist("*.c"), g_cwd + library); - - if (sizeof(files)) - { - printf("Compiling sources in `src/" + srcDir + "'\n"); - c_compile(oDstDir, files); // compile files - } - - chdir(g_cwd); -} - - -void static_library(string ofiles, string library) +void _static_library(string ofiles, string library) { if (!exists(library) || g_compiled) { @@ -114,7 +20,7 @@ std_cpp(oDstDir, index, g_classes[index], library); // make the library - static_library(oDstDir + "/*.o", library); + _static_library(oDstDir + "/*.o", library); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/icmake/stdcpp new/yodl-3.03.0/icmake/stdcpp --- old/yodl-3.00.0/icmake/stdcpp 1970-01-01 01:00:00.000000000 +0100 +++ new/yodl-3.03.0/icmake/stdcpp 2013-10-09 14:21:36.000000000 +0200 @@ -0,0 +1,85 @@ +list _inspect(string dstPrefix, list srcList, string library) +{ + int idx; + string ofile; + string file; + + for (idx = sizeof(srcList); idx--; ) + { + file = element(idx, srcList); + ofile = dstPrefix + change_ext(file, "o"); // make o-filename + + // A file s must be recompiled if it's newer than its object + // file o or newer than its target library l, or if neither o nor l + // exist. + // Since `a newer b' is true if a is newer than b, or if a exists and + // b doesn't exist s must be compiled if s newer o and s newer l. + // So, it doesn't have to be compiled if s older o or s older l. + // redo if file has changed + if (file older ofile || file older library) + srcList -= (list)file; + } + return srcList; +} + +list _inspect2(string dstPrefix, list srcList) +{ + int idx; + string ofile; + string file; + + for (idx = sizeof(srcList); idx--; ) + { + file = element(idx, srcList); + ofile = dstPrefix + change_ext(file, "o"); // make o-filename + + // A file s must be recompiled if it's newer than its object + // file o + + if (file older ofile) + srcList -= (list)file; + } + return srcList; +} + +// c_compile: compile all sources in `{srcDir}/{cfiles}', storing the object +// files in {oDst}/filename.o +void _c_compile(string oDst, list cfiles) +{ + int idx; + string compdest; + string file; + + compdest = COMPILER + " -c -o " + oDst; + + for (idx = sizeof(cfiles); idx--; ) + { + file = cfiles[idx]; + g_compiled = 1; + run(compdest + change_ext(file, "o") + " " + g_copt + " -c " + file); + } +} + +void std_cpp(string oDstDir, int prefix, string srcDir, string library) +{ + list files; + + chdir("src/" + srcDir); + oDstDir = "../../" + oDstDir; + md(oDstDir); + oDstDir += "/" + (string)prefix; + + // make list of all files + if (library == "") + files = _inspect2(oDstDir, makelist("*.c")); + else + files = _inspect(oDstDir, makelist("*.c"), g_cwd + library); + + if (sizeof(files)) + { + printf("Compiling sources in `src/" + srcDir + "'\n"); + _c_compile(oDstDir, files); // compile files + } + + chdir(g_cwd); +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/macros/rawmacros/startdoc.pl new/yodl-3.03.0/macros/rawmacros/startdoc.pl --- old/yodl-3.00.0/macros/rawmacros/startdoc.pl 2007-02-16 10:59:13.000000000 +0100 +++ new/yodl-3.03.0/macros/rawmacros/startdoc.pl 2013-10-09 14:21:36.000000000 +0200 @@ -1,7 +1,10 @@ #!/usr/bin/perl -$target = "STARTDOC"; -$file = $ARGV[0]; + # The documentation of the macro in $file is extracted from $file and + # written to stdout. + +$target = "STARTDOC"; # A marker fo the documentation in $file +$file = $ARGV[0]; # file to process: a raw macro file $copy = 0; $printed = 0; @@ -11,16 +14,16 @@ { chomp $line; - if ($line =~ /^<$target>\s*$/c) + if ($line =~ /^<$target>\s*$/c) # start tag found { $copy = 1; } - elsif ($line =~ /^<>\s*$/c) + elsif ($line =~ /^<>\s*$/c) # end tag found { print "\n" if $printed; exit 0; } - elsif ($copy) + elsif ($copy) # copy a documentation line { print "$line\n"; $printed = 1; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/macros/yodl/xlatin1.tex new/yodl-3.03.0/macros/yodl/xlatin1.tex --- old/yodl-3.00.0/macros/yodl/xlatin1.tex 2007-02-16 10:59:11.000000000 +0100 +++ new/yodl-3.03.0/macros/yodl/xlatin1.tex 2012-05-27 11:03:00.000000000 +0200 @@ -5,7 +5,7 @@ % See below on copyright stuff etc. % Distributed with Yodl 1.32.00 % -%% xlatin1.tex derived from $Id: xlatin1.tex 2 2004-09-11 19:41:10Z frank $ +%% xlatin1.tex derived from $Id$ %% %% Interpret the full ISO Latin1 (8859-1) input character set for TeX. %% Copyright (c) 1991 Kristoffer H�gsbro Rose <k...@diku.dk> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/manual/yo/manual.yo new/yodl-3.03.0/manual/yo/manual.yo --- old/yodl-3.00.0/manual/yo/manual.yo 2009-04-28 09:44:08.000000000 +0200 +++ new/yodl-3.03.0/manual/yo/manual.yo 2013-10-09 14:21:36.000000000 +0200 @@ -1,7 +1,10 @@ +NOUSERMACRO(t xrealloc argument document conversion extension lex find) + latexpackage()(a4,epsf) whenlatex(\ - SETSYMBOL(XXusexlatin)(NOTRANS(\input{../../yodl/xlatin1.tex})) + SETSYMBOL(XXusexlatin) + (NOTRANS(\input{../../../../../wip/macros/xlatin1.tex})) ) SUBST(YODL)(tt(Yodl)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/scripts/configreplacements new/yodl-3.03.0/scripts/configreplacements --- old/yodl-3.00.0/scripts/configreplacements 2009-04-27 21:00:05.000000000 +0200 +++ new/yodl-3.03.0/scripts/configreplacements 2013-10-09 14:21:36.000000000 +0200 @@ -2,30 +2,27 @@ CONFIG="tmp/wip/config.h" -case $# in - (2) - STD_INCLUDE=`grep "#define[[:space:]]\+STD_INCLUDE" $CONFIG | \ - sed 's,.*STD_INCLUDE[[:space:]]\+\"\([^"]\+\)".*,\1,'` + # This script changes all definitions of elements in $CONFIG in the + # file passed as arg 1, generating arg 2. + # The default path to the macro files in $CONFIG can be overrules + # by a 3rd argument. - # keep as is - ;; - +case $# in (3) + YODL_BIN=`grep YODL_BIN $CONFIG | cut -d\" -f2` + VERSION=`grep VERSION $CONFIG | cut -d\" -f2` STD_INCLUDE=$3 ;; (*) - echo "Usage: $0 xxx.in xxx.yo [actual-path-to-macro-files]" + echo "Usage: $0 xxx.in xxx.yo path-to-macro-files" exit 1 ;; esac -YODL_BIN=`grep "#define[[:space:]]\+YODL_BIN" $CONFIG | \ - sed 's,.*YODL_BIN[[:space:]]\+\"\([^"]\+\)".*,\1,'` - -VERSION=`grep "#define[[:space:]]\+VERSION" $CONFIG | \ - sed 's,.*VERSION[[:space:]]\+\"\([^"]\+\)".*,\1,'` - + # Create the destination file, changing @... into the required + # values + # sed ' s,@STD_INCLUDE@,'$STD_INCLUDE',g s,@YODL_BIN@,'$YODL_BIN',g diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/scripts/createmacros new/yodl-3.03.0/scripts/createmacros --- old/yodl-3.00.0/scripts/createmacros 2009-05-13 11:27:08.000000000 +0200 +++ new/yodl-3.03.0/scripts/createmacros 1970-01-01 01:00:00.000000000 +0100 @@ -1,31 +0,0 @@ -#!/bin/bash - -if [ "$#" == "0" ] ; then - echo provide WIP path, destination path and requested format - exit 1 -fi - -WIP=$1/macros -DST=$2 -FMT=$3 -LOCAL=$4 - -echo " -INCWSLEVEL() - -DEFINESYMBOL($FMT)() -" > $WIP - -for x in macros/rawmacros/*.raw -do - scripts/macroseparator.pl $FMT $x >> $WIP -done - -echo "DECWSLEVEL()" >> $WIP - -scripts/configreplacements $WIP $DST/std.$FMT.yo $LOCAL - - - - - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/scripts/hrefnotmpinstall new/yodl-3.03.0/scripts/hrefnotmpinstall --- old/yodl-3.00.0/scripts/hrefnotmpinstall 2009-11-04 20:31:12.000000000 +0100 +++ new/yodl-3.03.0/scripts/hrefnotmpinstall 1970-01-01 01:00:00.000000000 +0100 @@ -1,9 +0,0 @@ -#!/bin/bash - -cd tmp/install/usr/share/doc/yodl-doc -for x in *html -do - sed 's,href="tmp/install//usr/share/doc/yodl-doc/,href=",g' $x > $x.tmp - mv $x.tmp $x -done - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/scripts/stdmacros new/yodl-3.03.0/scripts/stdmacros --- old/yodl-3.00.0/scripts/stdmacros 1970-01-01 01:00:00.000000000 +0100 +++ new/yodl-3.03.0/scripts/stdmacros 2013-10-09 14:21:36.000000000 +0200 @@ -0,0 +1,35 @@ +#!/bin/bash + +if [ "$#" == "0" ] ; then + echo provide scratch filename, destination directory, requested format + echo and STD_INCLUDE path to use + exit 1 +fi + +scratchFile=$1 +directory=$2 +format=$3 +std_include=$4 + + # the standard macro file $directory/std.${format}.yo is created + +echo " +INCWSLEVEL() + +DEFINESYMBOL($format)() +" > $scratchFile + +for x in macros/rawmacros/*.raw +do + scripts/macroseparator.pl $format $x >> $scratchFile +done + +echo "DECWSLEVEL()" >> $scratchFile + +scripts/configreplacements $scratchFile \ + $directory/std.${format}.yo $std_include + + + + + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/scripts/yodl2whatever.in new/yodl-3.03.0/scripts/yodl2whatever.in --- old/yodl-3.00.0/scripts/yodl2whatever.in 2010-11-08 15:50:47.000000000 +0100 +++ new/yodl-3.03.0/scripts/yodl2whatever.in 2013-10-08 09:08:42.000000000 +0200 @@ -10,7 +10,8 @@ verbose=no -YODL_BIN=@YODL_BIN@ +# Internal Use Only: redefine yodl's path by setting an environment variable +[ "$YODL_BIN" == "" ] && YODL_BIN=@YODL_BIN@ YODL=${YODL_BIN}/yodl YODLPOST=${YODL_BIN}/yodlpost Files old/yodl-3.00.0/src/handlexmltocentry.o and new/yodl-3.03.0/src/handlexmltocentry.o differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/src/lexer/lchdir.c new/yodl-3.03.0/src/lexer/lchdir.c --- old/yodl-3.00.0/src/lexer/lchdir.c 2010-11-08 17:09:36.000000000 +0100 +++ new/yodl-3.03.0/src/lexer/lchdir.c 2012-09-04 22:08:54.000000000 +0200 @@ -7,14 +7,14 @@ { // fprintf(stderr, "CHANGING WD\n"); - char resolved[PATH_MAX]; - bool cdOK = realpath(media_filename(lp->d_media_ptr), resolved) != NULL; - if (cdOK) - { - *(strrchr(resolved, '/') + 1) = 0; - cdOK = chdir(resolved) == 0; - } - if (!cdOK) + char *resolved = realpath(media_filename(lp->d_media_ptr), NULL); + + if (resolved == NULL) + out_of_memory(); + + *(strrchr(resolved, '/') + 1) = 0; + + if (chdir(resolved) != 0) { char const *prefix = NULL; if (message_show(MSG_CRIT)) @@ -26,10 +26,9 @@ message("%s%s (%u): Can't chdir to `%s'", prefix, message_filename(), message_lineno(), resolved); } -} - - + free(resolved); +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/src/lexer/lpop.c new/yodl-3.03.0/src/lexer/lpop.c --- old/yodl-3.00.0/src/lexer/lpop.c 2010-11-08 15:50:46.000000000 +0100 +++ new/yodl-3.03.0/src/lexer/lpop.c 2013-10-08 09:08:42.000000000 +0200 @@ -46,12 +46,25 @@ /* reset lp->d_media_ptr to tos */ lp->d_media_ptr = stack_tos(&lp->d_media_st)->u_voidp; - if ((oldFile || lastFailed) && media_isFile(lp->d_media_ptr)) - (*lp->d_chdirFun)(lp, media_filename(lp->d_media_ptr)); - - lastFailed = false; + if (media_isFile(lp->d_media_ptr)) + { + if (oldFile || lastFailed) + (*lp->d_chdirFun)(lp, media_filename(lp->d_media_ptr)); + lastFailed = false; + } + else + lastFailed = oldFile && !lastFailed; media_restore_state(lp->d_media_ptr); /* generates MSG_INFO */ return SUCCESS; } + + + + + + + + + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/src/new/newgetcwd.c new/yodl-3.03.0/src/new/newgetcwd.c --- old/yodl-3.00.0/src/new/newgetcwd.c 2010-11-08 15:50:47.000000000 +0100 +++ new/yodl-3.03.0/src/new/newgetcwd.c 2012-09-04 22:08:54.000000000 +0200 @@ -1,18 +1,28 @@ #include "new.ih" +#include <stdio.h> char *new_getcwd() { - char *cwd = n_malloc(PATH_MAX + 1); + char *cwd = getcwd(NULL, 0); - if (!getcwd(cwd, PATH_MAX) && message_show(MSG_ALERT)) + if (cwd == NULL) + { + if (message_show(MSG_ALERT)) message("Can't determine current working directory"); + out_of_memory(); + } - size_t length = strlen(cwd); - if (cwd[length - 1] != '/') - { - cwd[length] = '/'; - cwd[length + 1] = 0; + register size_t length = strlen(cwd); /* e.g. "x" -> 1 */ + + if (cwd[length - 1] != '/') /* true */ + { /* true length: length + 1 + due to ascii-Z */ + new_size(&cwd, length + 2, length + 1, 1); + + cwd[length] = '/'; /* replaces former ascii-Z */ + cwd[length + 1] = 0; /* writes final ascii-Z */ } + return cwd; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yodl-3.00.0/src/new/newsize.c new/yodl-3.03.0/src/new/newsize.c --- old/yodl-3.00.0/src/new/newsize.c 2007-02-16 10:59:15.000000000 +0100 +++ new/yodl-3.03.0/src/new/newsize.c 2012-09-04 22:08:54.000000000 +0200 @@ -1,6 +1,10 @@ #include "new.ih" -void *new_size(register void *memory, size_t new, size_t old, + /* + NOTE: `memory' must be the address of a pointer pointing to the + allocated memory. E.g., it is a char ** + */ +void *new_size(register void *memory, size_t new, size_t old, size_t sizeofElement) { register void *ret = @@ -12,6 +16,6 @@ /* available size */ ); - free (*(void **)memory); + free(*(void **)memory); return *(void **)memory = ret; } -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org