Synchronise with Khronos-private Gitlab branch

The maintenance of the conformance tests is moving to Github.

This commit contains all the changes that have been done in
Gitlab since the first public release of the conformance tests.

Signed-off-by: Kevin Petit <kevin.petit@arm.com>
This commit is contained in:
Kevin Petit
2019-02-20 16:36:05 +00:00
committed by Kévin Petit
parent 95196e7fb4
commit d8733efc0f
576 changed files with 212486 additions and 191776 deletions

View File

@@ -1,38 +1,38 @@
ifdef BUILD_WITH_ATF
ATF = -framework ATF
USE_ATF = -DUSE_ATF
endif
EXECUTABLES = test_headers \
test_cl_h \
test_cl_platform_h \
test_cl_gl_h \
test_opencl_h \
test_cl_h_c99 \
test_cl_platform_h_c99 \
test_cl_gl_h_c99 \
test_opencl_h_c99
INCLUDE =
HCFLAGS = ${RC_CFLAGS} ${USE_ATF} $(DEFINES:%=-D%) $(INCLUDE)
CFLAGS = -Wall -pedantic ${RC_CFLAGS} ${USE_ATF} $(DEFINES:%=-D%) $(INCLUDE)
LIBRARIES = ${ATF}
all : debug
release : debug
debug:
cc $(HCFLAGS) test_headers.c $(LIBRARIES) -o test_headers
cc $(CFLAGS) test_cl.h.c $(LIBRARIES) -o test_cl_h
cc $(CFLAGS) test_cl_platform.h.c $(LIBRARIES) -o test_cl_platform_h
cc $(CFLAGS) test_cl_gl.h.c $(LIBRARIES) -o test_cl_gl_h
cc $(CFLAGS) test_opencl.h.c $(LIBRARIES) -o test_opencl_h
cc $(CFLAGS) -std=c99 test_cl.h.c $(LIBRARIES) -o test_cl_h_c99
cc $(CFLAGS) -std=c99 test_cl_platform.h.c $(LIBRARIES) -o test_cl_platform_h_c99
cc $(CFLAGS) -std=c99 test_cl_gl.h.c $(LIBRARIES) -o test_cl_gl_h_c99
cc $(CFLAGS) -std=c99 test_opencl.h.c $(LIBRARIES) -o test_opencl_h_c99
install:
clean:
rm -f $(EXECUTABLES)
ifdef BUILD_WITH_ATF
ATF = -framework ATF
USE_ATF = -DUSE_ATF
endif
EXECUTABLES = test_headers \
test_cl_h \
test_cl_platform_h \
test_cl_gl_h \
test_opencl_h \
test_cl_h_c99 \
test_cl_platform_h_c99 \
test_cl_gl_h_c99 \
test_opencl_h_c99
INCLUDE =
HCFLAGS = ${RC_CFLAGS} ${USE_ATF} $(DEFINES:%=-D%) $(INCLUDE)
CFLAGS = -Wall -pedantic ${RC_CFLAGS} ${USE_ATF} $(DEFINES:%=-D%) $(INCLUDE)
LIBRARIES = ${ATF}
all : debug
release : debug
debug:
cc $(HCFLAGS) test_headers.c $(LIBRARIES) -o test_headers
cc $(CFLAGS) test_cl.h.c $(LIBRARIES) -o test_cl_h
cc $(CFLAGS) test_cl_platform.h.c $(LIBRARIES) -o test_cl_platform_h
cc $(CFLAGS) test_cl_gl.h.c $(LIBRARIES) -o test_cl_gl_h
cc $(CFLAGS) test_opencl.h.c $(LIBRARIES) -o test_opencl_h
cc $(CFLAGS) -std=c99 test_cl.h.c $(LIBRARIES) -o test_cl_h_c99
cc $(CFLAGS) -std=c99 test_cl_platform.h.c $(LIBRARIES) -o test_cl_platform_h_c99
cc $(CFLAGS) -std=c99 test_cl_gl.h.c $(LIBRARIES) -o test_cl_gl_h_c99
cc $(CFLAGS) -std=c99 test_opencl.h.c $(LIBRARIES) -o test_opencl_h_c99
install:
clean:
rm -f $(EXECUTABLES)

View File

@@ -1,26 +1,26 @@
test_conformance/headers README
===============================
The test_headers.c test is designed to make sure that the various
cl_typen types work and conform to expectation for recent versions
of cl_platform.h. Conforming to these expectations make use of
these types practical for developers writing portable code.
The various tests ending in .h.c are there to verify that the various
OpenCL headers can compile stand alone. That is to ensure that they
may be used a la carte. This provides developers a lifeline in the case
that some unneeded part of OpenCL (e.g. cl/gl sharing) brings in a pile
of symbols (e.g. all of OpenGL) that collides with other headers needed
by the application. It is also poor form to require headers to be
included in a particular order, especially if multiple systems require
they be included in mutually incompatible order. So, here we require
that each header can be used standalone so that the order is irrelevant.
In the .h.c tests, we also check to make sure that the headers don't
cause spurious warnings. These tests are intended to be compiled using
the most stringent compiler flags available for the platform, within
reason. All warnings should be errors and extra warnings that it is
expected developers are likely to use should be turned on. The current
Makefile includes such flags for a GCC compiler. Implementors are
expected to modify these flags and make system as necessary to conform
to the local build environment.
test_conformance/headers README
===============================
The test_headers.c test is designed to make sure that the various
cl_typen types work and conform to expectation for recent versions
of cl_platform.h. Conforming to these expectations make use of
these types practical for developers writing portable code.
The various tests ending in .h.c are there to verify that the various
OpenCL headers can compile stand alone. That is to ensure that they
may be used a la carte. This provides developers a lifeline in the case
that some unneeded part of OpenCL (e.g. cl/gl sharing) brings in a pile
of symbols (e.g. all of OpenGL) that collides with other headers needed
by the application. It is also poor form to require headers to be
included in a particular order, especially if multiple systems require
they be included in mutually incompatible order. So, here we require
that each header can be used standalone so that the order is irrelevant.
In the .h.c tests, we also check to make sure that the headers don't
cause spurious warnings. These tests are intended to be compiled using
the most stringent compiler flags available for the platform, within
reason. All warnings should be errors and extra warnings that it is
expected developers are likely to use should be turned on. The current
Makefile includes such flags for a GCC compiler. Implementors are
expected to modify these flags and make system as necessary to conform
to the local build environment.

View File

@@ -1,27 +1,27 @@
//
// Copyright (c) 2017 The Khronos Group Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
#if defined( __APPLE__ )
#include <OpenCL/cl.h>
#else
#include <CL/cl.h>
#endif
#include <stdio.h>
int main( void )
{
printf("cl.h standalone test PASSED.\n");
return 0;
}
//
// Copyright (c) 2017 The Khronos Group Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
#if defined( __APPLE__ )
#include <OpenCL/cl.h>
#else
#include <CL/cl.h>
#endif
#include <stdio.h>
int main( void )
{
printf("cl.h standalone test PASSED.\n");
return 0;
}

View File

@@ -1,27 +1,27 @@
//
// Copyright (c) 2017 The Khronos Group Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
#if defined( __APPLE__ )
#include <OpenCL/cl_gl.h>
#else
#include <CL/cl_gl.h>
#endif
#include <stdio.h>
int main( void )
{
printf("cl_gl.h standalone test PASSED.\n");
return 0;
}
//
// Copyright (c) 2017 The Khronos Group Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
#if defined( __APPLE__ )
#include <OpenCL/cl_gl.h>
#else
#include <CL/cl_gl.h>
#endif
#include <stdio.h>
int main( void )
{
printf("cl_gl.h standalone test PASSED.\n");
return 0;
}

View File

@@ -1,27 +1,27 @@
//
// Copyright (c) 2017 The Khronos Group Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
#if defined( __APPLE__ )
#include <OpenCL/cl_platform.h>
#else
#include <CL/cl_platform.h>
#endif
#include <stdio.h>
int main( void )
{
printf("cl_platform.h standalone test PASSED.\n");
return 0;
}
//
// Copyright (c) 2017 The Khronos Group Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
#if defined( __APPLE__ )
#include <OpenCL/cl_platform.h>
#else
#include <CL/cl_platform.h>
#endif
#include <stdio.h>
int main( void )
{
printf("cl_platform.h standalone test PASSED.\n");
return 0;
}

File diff suppressed because it is too large Load Diff

View File

@@ -1,27 +1,27 @@
//
// Copyright (c) 2017 The Khronos Group Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
#if defined( __APPLE__ )
#include <OpenCL/opencl.h>
#else
#include <CL/opencl.h>
#endif
#include <stdio.h>
int main( void )
{
printf("opencl.h standalone test PASSED.\n");
return 0;
}
//
// Copyright (c) 2017 The Khronos Group Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
#if defined( __APPLE__ )
#include <OpenCL/opencl.h>
#else
#include <CL/opencl.h>
#endif
#include <stdio.h>
int main( void )
{
printf("opencl.h standalone test PASSED.\n");
return 0;
}