diff --git a/index.html b/index.html
index 2742b379..8afde6fd 100644
--- a/index.html
+++ b/index.html
@@ -1937,6 +1937,10 @@ local-pkg-list: $(LOCAL_PKG_LIST)
openexr |
OpenEXR |
+
+ openmp-validation |
+ OpenMP Validation Suite |
+
openscenegraph |
OpenSceneGraph |
diff --git a/src/openmp-validation-1-fixes.patch b/src/openmp-validation-1-fixes.patch
new file mode 100644
index 00000000..9ab291c5
--- /dev/null
+++ b/src/openmp-validation-1-fixes.patch
@@ -0,0 +1,43 @@
+diff -u OpenMP3.1_Validation/Makefile OpenMP3.1_Validation.new/Makefile
+--- OpenMP3.1_Validation/Makefile 2013-07-18 00:19:20.000000000 +1000
++++ OpenMP3.1_Validation.new/Makefile 2014-02-22 16:23:37.000000000 +1100
+@@ -185,14 +185,21 @@
+ .c.o: omp_testsuite omp_my_sleep
+ $(CC) $(CFLAGS) -c $<
+
++# Overwrite built-in rules to allow .exe suffix
++%: %.c
++ $(LINK.c) $^ $(LOADLIBES) $(LDLIBS) -o $@$(EXE_SUFFIX)
++
++%: %.f
++ $(LINK.f) $^ $(LOADLIBES) $(LDLIBS) -o $@$(EXE_SUFFIX)
++
+ ctest: omp_my_sleep omp_testsuite
+- ./runtest.pl --lang=c testlist-c.txt
++ ./runtest.pl $(RUNTEST_OPTIONS) --lang=c testlist-c.txt
+
+ ftest:
+ mkdir -p bin/fortran
+ cp omp_testsuite.f bin/fortran
+ cp omp_my_sleep.f bin/fortran
+- ./runtest.pl --lang=fortran testlist-f.txt
++ ./runtest.pl $(RUNTEST_OPTIONS) --lang=fortran testlist-f.txt
+
+ print_compile_options:
+ @echo "-------------------"
+Only in OpenMP3.1_Validation.new: bin
+Common subdirectories: OpenMP3.1_Validation/c and OpenMP3.1_Validation.new/c
+Common subdirectories: OpenMP3.1_Validation/fortran and OpenMP3.1_Validation.new/fortran
+diff -u OpenMP3.1_Validation/omp_my_sleep.h OpenMP3.1_Validation.new/omp_my_sleep.h
+--- OpenMP3.1_Validation/omp_my_sleep.h 2013-07-18 00:19:04.000000000 +1000
++++ OpenMP3.1_Validation.new/omp_my_sleep.h 2014-02-22 15:07:33.000000000 +1100
+@@ -5,7 +5,6 @@
+ #include
+ #include
+
+-#include
+ #include
+ #include
+ #include
+Only in OpenMP3.1_Validation.new: ompts.log
+Only in OpenMP3.1_Validation.new: results.txt
diff --git a/src/openmp-validation-2-test-crlf.patch b/src/openmp-validation-2-test-crlf.patch
new file mode 100644
index 00000000..ac57baf0
--- /dev/null
+++ b/src/openmp-validation-2-test-crlf.patch
@@ -0,0 +1,44 @@
+diff -urN OpenMP3.1_Validation.orig/all-tests-openmp-validation.bat OpenMP3.1_Validation/all-tests-openmp-validation.bat
+--- OpenMP3.1_Validation.orig/all-tests-openmp-validation.bat 1970-01-01 10:00:00.000000000 +1000
++++ OpenMP3.1_Validation/all-tests-openmp-validation.bat 2014-02-23 04:35:51.000000000 +1100
+@@ -0,0 +1,40 @@
++setlocal enableextensions enabledelayedexpansion
++set /a TEST_COUNT=0
++set /a FAIL_COUNT=0
++set /a PASS_COUNT=0
++set LOG_FILE=%~n0.log
++set BLANK=
++for /l %%I in (1,1,79) do set SPACER=%BLANK% %BLANK%!SPACER!
++date /t > %LOG_FILE%
++time /t >> %LOG_FILE%
++echo. >> %LOG_FILE%
++echo L=Language (c=c, n=fortran) >> %LOG_FILE%
++echo Pass 0=Y >> %LOG_FILE%
++echo. >> %LOG_FILE%
++echo L Test Name %SPACER:~0,50% Pass Certainty%%>> %LOG_FILE%
++echo %SPACER: =-%>> %LOG_FILE%
++for /r %%F in (test*.exe) do (
++ set /a TEST_COUNT += 1
++ %%F
++ set ERR=!errorlevel!
++ if !ERR! neq 0 (set /a FAIL_COUNT += 1) else set /a PASS_COUNT += 1
++ set TEST_LANG=%%~pF
++ set TEST_NAME=%%~nF%SPACER%
++ set ERR_SPC=!ERR!%SPACER%
++ set /p "=!TEST_LANG:~-2,-1! !TEST_NAME:~0,60! !ERR_SPC:~0,5! " < nul >> %LOG_FILE%
++ %%~dpFc%%~nxF
++ echo !errorlevel!%% >> %LOG_FILE%
++ if exist %%~dpForph_%%~nxF (
++ set /a TEST_COUNT += 1
++ %%~dpForph_%%~nxF
++ set ERR=!errorlevel!
++ if !ERR! neq 0 (set /a FAIL_COUNT += 1) else set /a PASS_COUNT += 1
++ set TEST_NAME=orph_%%~nF%SPACER%
++ set ERR_SPC=!ERR!%SPACER%
++ set /p "=!TEST_LANG:~-2,-1! !TEST_NAME:~0,60! !ERR_SPC:~0,5! " < nul >> %LOG_FILE%
++ %%~dpForph_c%%~nxF
++ echo !errorlevel!%% >> %LOG_FILE%
++ )
++)
++echo. >> %LOG_FILE%
++echo Total tests: !TEST_COUNT! Total Failed: !FAIL_COUNT! Total Passed: !PASS_COUNT!>> %LOG_FILE%
diff --git a/src/openmp-validation.mk b/src/openmp-validation.mk
new file mode 100644
index 00000000..011f4ce0
--- /dev/null
+++ b/src/openmp-validation.mk
@@ -0,0 +1,34 @@
+# This file is part of MXE.
+# See index.html for further information.
+
+PKG := openmp-validation
+$(PKG)_IGNORE :=
+$(PKG)_VERSION := 3.1
+$(PKG)_CHECKSUM := 98e33b0d80a4e572c995cd40f50cce2c124d9465
+$(PKG)_SUBDIR := OpenMP$($(PKG)_VERSION)_Validation
+$(PKG)_FILE := $($(PKG)_SUBDIR).tar.gz
+$(PKG)_URL := http://web.cs.uh.edu/~openuh/download/packages/$($(PKG)_FILE)
+$(PKG)_URL_2 :=
+$(PKG)_DEPS := gcc libgomp
+
+define $(PKG)_UPDATE
+ echo 'TODO: Updates for package openmp-validation need to be written.' >&2;
+ echo $(openmp-validation_VERSION)
+endef
+
+define $(PKG)_BUILD
+ $(MAKE) -C '$(1)' -j '$(JOBS)' \
+ RUNTEST_OPTIONS='--norun' \
+ EXE_SUFFIX='.exe' \
+ CC='$(TARGET)-gcc' \
+ FC='$(TARGET)-gfortran' \
+ ctest ftest
+
+ # execute validation tests on host - perl testsuite doesn't
+ # work on windows (perl runtest.pl --nocompile --lang=c testlist-c.txt)
+ # so run $(PREFIX)/$(TARGET)/bin/$(PKG)-tests/all-tests-openmp-validation.bat
+
+ mkdir -p '$(PREFIX)/$(TARGET)/bin'
+ rm -rf '$(PREFIX)/$(TARGET)/bin/$(PKG)-tests'
+ cp -rv '$(1)' '$(PREFIX)/$(TARGET)/bin/$(PKG)-tests'
+endef