blob: ba9db3a363b8c41f146d543176ee388dc465edb7 [file] [log] [blame]
// Copyright 2015 The Vanadium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// This file was auto-generated by the vanadium vdl tool.
// Source: profile.vdl
// Package profile defines types for the implementation of Vanadium profiles.
package profile
import (
// VDL system imports
"v.io/v23/vdl"
// VDL user imports
"v.io/v23/services/build"
)
// Library describes a shared library that applications may use.
type Library struct {
// Name is the name of the library.
Name string
// MajorVersion is the major version of the library.
MajorVersion string
// MinorVersion is the minor version of the library.
MinorVersion string
}
func (Library) __VDLReflect(struct {
Name string `vdl:"v.io/x/ref/services/profile.Library"`
}) {
}
// Specification is how we represent a profile internally. It should
// provide enough information to allow matching of binaries to devices.
type Specification struct {
// Label is a human-friendly concise label for the profile,
// e.g. "linux-media".
Label string
// Description is a human-friendly description of the profile.
Description string
// Arch is the target hardware architecture of the profile.
Arch build.Architecture
// Os is the target operating system of the profile.
Os build.OperatingSystem
// Format is the file format supported by the profile.
Format build.Format
// Libraries is a set of libraries the profile requires.
Libraries map[Library]struct{}
}
func (Specification) __VDLReflect(struct {
Name string `vdl:"v.io/x/ref/services/profile.Specification"`
}) {
}
func init() {
vdl.Register((*Library)(nil))
vdl.Register((*Specification)(nil))
}