diff --git a/libshaderc/include/shaderc/shaderc.h b/libshaderc/include/shaderc/shaderc.h index c9f8f1863..c62dd3b07 100644 --- a/libshaderc/include/shaderc/shaderc.h +++ b/libshaderc/include/shaderc/shaderc.h @@ -23,8 +23,9 @@ extern "C" { #include #include -#include "libshaderc_util/common.h" -#include "libshaderc_util/visibility.h" +#include "shaderc/env.h" +#include "shaderc/status.h" +#include "shaderc/visibility.h" // Source language kind. typedef enum { diff --git a/libshaderc_spvc/include/shaderc/spvc.h b/libshaderc_spvc/include/shaderc/spvc.h index 96e13bb61..59e56fc9d 100644 --- a/libshaderc_spvc/include/shaderc/spvc.h +++ b/libshaderc_spvc/include/shaderc/spvc.h @@ -23,8 +23,9 @@ extern "C" { #include #include -#include "libshaderc_util/common.h" -#include "libshaderc_util/visibility.h" +#include "shaderc/env.h" +#include "shaderc/status.h" +#include "shaderc/visibility.h" // An opaque handle to an object that manages all compiler state. typedef struct shaderc_spvc_compiler* shaderc_spvc_compiler_t; diff --git a/libshaderc_util/CMakeLists.txt b/libshaderc_util/CMakeLists.txt index 873540ab7..4cd48d518 100644 --- a/libshaderc_util/CMakeLists.txt +++ b/libshaderc_util/CMakeLists.txt @@ -27,6 +27,14 @@ target_include_directories(shaderc_util PUBLIC include PRIVATE ${glslang_SOURCE_DIR}) if(SHADERC_ENABLE_INSTALL) + install( + FILES + include/shaderc/env.h + include/shaderc/status.h + include/shaderc/visibility.h + DESTINATION + ${CMAKE_INSTALL_INCLUDEDIR}/shaderc) + install(TARGETS shaderc_util LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}) diff --git a/libshaderc_util/include/libshaderc_util/common.h b/libshaderc_util/include/shaderc/env.h similarity index 76% rename from libshaderc_util/include/libshaderc_util/common.h rename to libshaderc_util/include/shaderc/env.h index 906f04bcf..a2d9e43d4 100644 --- a/libshaderc_util/include/libshaderc_util/common.h +++ b/libshaderc_util/include/shaderc/env.h @@ -12,8 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -#ifndef LIBSHADERC_UTIL_COMMON_H_ -#define LIBSHADERC_UTIL_COMMON_H_ +#ifndef SHADERC_ENV_H_ +#define SHADERC_ENV_H_ #ifdef __cplusplus extern "C" { @@ -42,19 +42,8 @@ typedef enum { shaderc_env_version_opengl_4_5 = 450, } shaderc_env_version; -// Indicate the status of a compilation. -typedef enum { - shaderc_compilation_status_success = 0, - shaderc_compilation_status_invalid_stage, // error stage deduction - shaderc_compilation_status_compilation_error, - shaderc_compilation_status_internal_error, // unexpected failure - shaderc_compilation_status_null_result_object, - shaderc_compilation_status_invalid_assembly, - shaderc_compilation_status_validation_error, -} shaderc_compilation_status; - #ifdef __cplusplus } #endif // __cplusplus -#endif // LIBSHADERC_UTIL_COMMON_H_ +#endif // SHADERC_ENV_H_ diff --git a/libshaderc_util/include/shaderc/status.h b/libshaderc_util/include/shaderc/status.h new file mode 100644 index 000000000..b7369fcff --- /dev/null +++ b/libshaderc_util/include/shaderc/status.h @@ -0,0 +1,37 @@ +// Copyright 2018 The Shaderc Authors. All rights reserved. +// +// 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. + +#ifndef SHADERC_STATUS_H_ +#define SHADERC_STATUS_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +// Indicate the status of a compilation. +typedef enum { + shaderc_compilation_status_success = 0, + shaderc_compilation_status_invalid_stage, // error stage deduction + shaderc_compilation_status_compilation_error, + shaderc_compilation_status_internal_error, // unexpected failure + shaderc_compilation_status_null_result_object, + shaderc_compilation_status_invalid_assembly, + shaderc_compilation_status_validation_error, +} shaderc_compilation_status; + +#ifdef __cplusplus +} +#endif // __cplusplus + +#endif // SHADERC_STATUS_H_ diff --git a/libshaderc_util/include/libshaderc_util/visibility.h b/libshaderc_util/include/shaderc/visibility.h similarity index 90% rename from libshaderc_util/include/libshaderc_util/visibility.h rename to libshaderc_util/include/shaderc/visibility.h index 93af71ff5..88ec151bf 100644 --- a/libshaderc_util/include/libshaderc_util/visibility.h +++ b/libshaderc_util/include/shaderc/visibility.h @@ -12,8 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -#ifndef LIBSHADERC_UTIL_VISIBILITY_H_ -#define LIBSHADERC_UTIL_VISIBILITY_H_ +#ifndef SHADERC_VISIBILITY_H_ +#define SHADERC_VISIBILITY_H_ // SHADERC_EXPORT tags symbol that will be exposed by the shared libraries. #if defined(SHADERC_SHAREDLIB) @@ -34,4 +34,4 @@ #define SHADERC_EXPORT #endif -#endif // LIBSHADERC_UTIL_VISIBILITY_H_ +#endif // SHADERC_VISIBILITY_H_