File:  [local] / rpl / modules / motif / definitions.sh
Revision 1.6: download - view: text, annotated - select for diffs - revision graph
Tue Oct 10 20:25:32 2017 UTC (6 years, 6 months ago) by bertrand
Branches: MAIN
CVS tags: rpl-4_1_35, rpl-4_1_34, rpl-4_1_33, rpl-4_1_32, rpl-4_1_31, rpl-4_1_30, rpl-4_1_29, rpl-4_1_28, HEAD
Utilisation des fichiers sources et non des fichiers systèmes.

    1: #!/bin/sh
    2: #1 -> $(builddir)
    3: #2 -> $(top_builddir)
    4: #3 -> $(motif_srcdir)
    5: 
    6: echo "#define XmN_constants(value, arg) \\" > $1/variables.h
    7: echo "do { if (0) { } else \\" >> $1/variables.h
    8: $2/rplawk/rplawk 'BEGIN { c = 0; } \
    9:         /\/\*/ { c = 1; }
   10:         /\*\// { c = 0; }
   11:         /^#define XmN/ \
   12:         { if (c == 0) { printf("if (strcmp(\"%s\", value) == 0) \\\
   13:         { arg = %s; } else \\\n", $2, $2); } } \
   14:         END { printf("{ executionError(\"Unknown directive\"); } } \\\
   15:         while(0)\n"); }' \
   16:         $3/Xm/XmStrDefs.h >> $1/variables.h
   17: 
   18: echo "#define Xm_widgets_classes(value, arg) \\" >> $1/variables.h
   19: cpp -E /usr/include/X11/Shell.h | sed 's/;/ /g' | \
   20:         $2/rplawk/rplawk 'BEGIN { printf("{ "); } \
   21:         /^[\t ]*WidgetClass.*WidgetClass[\t ]*$/ \
   22:         { printf("if (strcmp(\"%s\", value) == 0) \\\
   23:         { arg = %s; } else \\\n", $2, $2); } ' >> $1/variables.h
   24: cpp -E $3/Xm/XmAll.h -I $3 | sed 's/;/ /g' | \
   25:         $2/rplawk/rplawk '/^[\t ]*WidgetClass xm.*[\t ]*$/ \
   26:         { printf("if (strcmp(\"%s\", value) == 0) \\\
   27:         { arg = %s; } else \\\n", $2, $2); } \
   28:         /^[\t ]*extern WidgetClass xm.*[\t ]*$/ \
   29:         { printf("if (strcmp(\"%s\", value) == 0) \\\
   30:         { arg = %s; } else \\\n", $3, $3); } \
   31:         END { printf("{ executionError(\"Class not found\"); } } \\\
   32:         while(0)\n"); }' >> $1/variables.h
   33: 
   34: exit 0

CVSweb interface <joel.bertrand@systella.fr>