12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- #!/bin/sh
- # This is the testsuite for GNU Midnight Commander.
- # Maintainer doing the release must ensure that this testsuite passes.
- set -e
- trap 'echo >&2 "ERROR: Test not completed, exit with code $?"; exit 1' exit
- distcheck() {
- id="$1"
- shift
- make distcheck "$MAKEFLAGS" "$@" >test-$id.out 2>test-$id.err
- }
- # Specify which warnings we want to see.
- # Don't add options that produce massive warnings.
- # Add -Wstrict-prototypes after main.h is fixed (always use cpanel).
- # Maybe add -W if a better way to initialize quick dialogs is found.
- export CFLAGS="-O2 -Wall -Wno-unused-parameter -Wno-sign-compare \
- -Wmissing-declarations -Wmissing-prototypes -Wbad-function-cast \
- -Wcast-align -Wpointer-arith -Wredundant-decls -Wundef -Wfloat-equal"
- # Suppress progress indicator
- MAKEFLAGS='MSGMERGE_FLAGS=--no-location --quiet'
- echo "Checking the documentation"
- maint/doctest
- echo "Bootstraping from CVS"
- ./autogen.sh >test-autogen.out 2>test-autogen.err
- echo "Checking configure"
- bash -n configure 2>test-configure.err
- echo "Making everything in the source directory"
- make all >test0.out 2>test0.err
- echo "Checking the default configuration"
- distcheck 1
- echo "Checking the configuration with maximal code coverage"
- distcheck 2 with_screen=mcslang enable_charset=yes with_samba=yes \
- with_mcfs=yes with_included_gettext=yes with_glib12=yes
- echo "Checking the configuration with minimal code coverage"
- distcheck 3 enable_largefile=no enable_nls=no with_vfs=no \
- with_gpm_mouse=no with_subshell=no with_edit=no with_ext2undel=no \
- with_screen=ncurses with_x=no enable_background=no
- echo "Checking the configuration with minimal code coverage + editor"
- distcheck 4 enable_largefile=no enable_nls=no with_vfs=no \
- with_gpm_mouse=no with_subshell=no with_ext2undel=no \
- with_screen=ncurses
- echo "Checking the configuration with experimental and rarely used options"
- distcheck 5 with_screen=mcslang with_termcap=yes \
- with_mmap=no with_subshell=optional enable_netcode=no
- RPMBUILD=/usr/bin/rpmbuild
- if test -x $RPMBUILD; then
- echo "Building RPM package"
- RPM_SRC_DIR="`pwd`/rpm"
- rm -rf $RPM_SRC_DIR
- mkdir "$RPM_SRC_DIR"
- mkdir "$RPM_SRC_DIR/BUILD"
- mkdir "$RPM_SRC_DIR/RPMS"
- mkdir "$RPM_SRC_DIR/RPMS/`$RPMBUILD --eval='%{_host_cpu}' 2>/dev/null`"
- mkdir "$RPM_SRC_DIR/SPECS"
- $RPMBUILD -tb --define="_topdir $RPM_SRC_DIR" mc-*.tar.gz >test-rpm.out 2>test-rpm.err
- else
- echo "rpmbuild not found"
- fi
- trap - exit
- echo "All done. No fatal errors. Please check test*.err files."
|