tame/tamer/src/bin/tameld.rs

44 lines
1.8 KiB
Rust
Raw Normal View History

2019-11-18 15:12:34 -05:00
// TAME linker
//
// Copyright (C) 2014-2019 Ryan Specialty Group, LLC.
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
//! This is the TAME linker, so named after the traditional `ld` Unix
//! utility. Its job is to take each of the compiled object files and
//! produce a final executable.
//!
//! # Backwards-Compatibility (XSLT System)
//! This linker is part of the TAMER (TAME in Rust) project, which aims to
//! incrementally rewrite TAME in Rust. Consequently, it must be able to
//! serve as a drop-in replacement for the existing (XSLT) linker, which
//! takes as input `xmlo` files and produces as output an `xmle` file. This
//! is not efficient, and future versions will begin to migrate away from
//! this strategy.
//!
//! The output `xmle` file is then fed to a `standalone` command which
//! extracts the JavaScript fragment and places it into its own file. Even
//! when that is replaced (when this just outputs a final JS file directly),
//! the `xmle` file is still needed for other purposes, such as `summary`
//! and `dote` generation.
extern crate tamer;
use std::error::Error;
use tamer::ld::poc;
2019-11-18 15:12:34 -05:00
pub fn main() -> Result<(), Box<dyn Error>> {
poc::main()
2019-11-18 15:12:34 -05:00
}