"Fossies" - the Fresh Open Source Software Archive

Member "automake-1.16.3/t/vala-per-target-flags.sh" (19 Nov 2020, 1932 Bytes) of package /linux/misc/automake-1.16.3.tar.xz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) Bash source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file. See also the latest Fossies "Diffs" side-by-side code changes report for "vala-per-target-flags.sh": 1.16.2_vs_1.16.3.

    1 #! /bin/sh
    2 # Copyright (C) 1996-2020 Free Software Foundation, Inc.
    3 #
    4 # This program is free software; you can redistribute it and/or modify
    5 # it under the terms of the GNU General Public License as published by
    6 # the Free Software Foundation; either version 2, or (at your option)
    7 # any later version.
    8 #
    9 # This program is distributed in the hope that it will be useful,
   10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
   11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   12 # GNU General Public License for more details.
   13 #
   14 # You should have received a copy of the GNU General Public License
   15 # along with this program.  If not, see <https://www.gnu.org/licenses/>.
   16 
   17 # Test per-target flags in vala support.
   18 
   19 required="pkg-config valac gcc GNUmake"
   20 . test-init.sh
   21 
   22 mkdir src
   23 
   24 cat >> configure.ac <<'END'
   25 AC_PROG_CC
   26 AM_PROG_VALAC([0.7.0])
   27 PKG_CHECK_MODULES([GOBJECT], [gobject-2.0 >= 2.4])
   28 AC_CONFIG_FILES([src/Makefile])
   29 AC_OUTPUT
   30 END
   31 
   32 cat > Makefile.am <<'END'
   33 SUBDIRS = src
   34 END
   35 
   36 cat > src/Makefile.am <<'END'
   37 bin_PROGRAMS = foo bar
   38 foo_CFLAGS = $(GOBJECT_CFLAGS)
   39 foo_LDADD = $(GOBJECT_LIBS)
   40 foo_SOURCES = xfoo.vala
   41 bar_SOURCES = xbar.vala
   42 bar_VALAFLAGS = -D BAR
   43 bar_CFLAGS = $(GOBJECT_CFLAGS)
   44 bar_LDADD = $(GOBJECT_LIBS)
   45 END
   46 
   47 cat > src/xfoo.vala <<'END'
   48 int main ()
   49 {
   50   stdout.printf ("foo\n");
   51   return 0;
   52 }
   53 END
   54 
   55 cat > src/xbar.vala <<'END'
   56 void main ()
   57 {
   58 #if BAR
   59   stdout.printf ("bar\n");
   60 #else
   61   stdout.oops_an_invalid_method ();
   62 #endif
   63 }
   64 END
   65 
   66 $ACLOCAL
   67 $AUTOCONF
   68 $AUTOMAKE -a
   69 
   70 ./configure
   71 $MAKE
   72 
   73 if ! cross_compiling; then
   74   ./src/foo
   75   ./src/bar
   76   test "$(./src/foo)" = foo
   77   test "$(./src/bar)" = bar
   78 fi
   79 
   80 # Test clean rules.
   81 
   82 cp config.status config.sav
   83 
   84 $MAKE clean
   85 test -f src/xfoo.c
   86 test -f src/xbar.c
   87 
   88 $MAKE distclean
   89 test ! -e src/xfoo.c
   90 test ! -e src/xbar.c
   91 
   92 # Re-create Makefile.
   93 mv config.sav config.status
   94 ./config.status
   95 
   96 $MAKE maintainer-clean
   97 test ! -e src/xfoo.c
   98 test ! -e src/xbar.c
   99 
  100 :