HOME
*





Ninja (build System)
Ninja is a small build system developed by Evan Martin, a Google employee. Ninja has a focus on speed and it differs from other build systems in two major respects: it is designed to have its input files generated by a higher-level build system, and it is designed to run builds as fast as possible. Build system In essence, Ninja is meant to replace Make, which is slow when performing incremental (or no-op) builds. This can considerably slow down developers working on large projects, such as Google Chrome which compiles 40,000 input files into a single executable. In fact, Google Chrome is a main user and motivation for Ninja. It's also used to build Android (via Makefile translation by ''Kati''), and is used by most developers working on LLVM. In contrast to Make, Ninja lacks features such as string manipulation, as Ninja build files are not meant to be written by hand. Instead, a "build generator" should be used to generate Ninja build files. Gyp, CMake, Meson In particle ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

VideoLAN
VideoLAN is a non-profit organization which develops software for playing video and other media formats. It originally developed two programs for media streaming, VideoLAN Client (VLC) and VideoLAN Server (VLS), but most of the features of VLS have been incorporated into VLC, with the result renamed VLC media player. The VideoLAN project began as a student endeavor at École Centrale Paris (France), but after releasing the software under the free software/open source GNU General Public License, the project is now multinational with a development team spanning 40 nations. The project has been completely separated from École Centrale Paris since 2009 when it was constituted as a non-profit organization. The current President of the VideoLAN non-profit organization is Jean-Baptiste Kempf, who is also one of the project's developers. Projects VLC VLC (standing for VideoLAN Client) is a portable multimedia player, encoder, and streamer supporting many audio and video codecs a ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Google
Google LLC () is an American multinational technology company focusing on search engine technology, online advertising, cloud computing, computer software, quantum computing, e-commerce, artificial intelligence, and consumer electronics. It has been referred to as "the most powerful company in the world" and one of the world's most valuable brands due to its market dominance, data collection, and technological advantages in the area of artificial intelligence. Its parent company Alphabet is considered one of the Big Five American information technology companies, alongside Amazon, Apple, Meta, and Microsoft. Google was founded on September 4, 1998, by Larry Page and Sergey Brin while they were PhD students at Stanford University in California. Together they own about 14% of its publicly listed shares and control 56% of its stockholder voting power through super-voting stock. The company went public via an initial public offering (IPO) in 2004. In 2015, Google was reor ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Meson (software)
Meson () is a software tool for automating the building (compiling) of software. The overall goal for Meson is to promote programmer productivity. Meson is free and open-source software written in Python, under the Apache License 2.0. Interoperability Being written in Python, Meson runs on Unix-like operating systems, including macOS, as well as Microsoft Windows and on other operating systems. Meson supports the C, C++, CUDA, D, Objective-C, Fortran, Java, C#, Rust, and Vala languages, and has a mechanism for handling dependencies called Wrap. Meson supports GNU Compiler Collection, Clang, Microsoft Visual C++ and other compilers, including non-traditional compilers such as Emscripten and Cython. The project uses ninja as the primary backend buildsystem, but can also use Microsoft Visual Studio or Xcode backends. Language The syntax of Meson's build description files (the Meson language) borrows from Python, but is not Python: It is designed such that it can be reimp ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


CMake
In software development, CMake is cross-platform free and open-source software for build automation, testing, packaging and installation of software by using a compiler-independent method. CMake is not a build system itself; it generates another system's build files. It supports directory hierarchies and applications that depend on multiple libraries. It is used in conjunction with native build environments such as Make, Qt Creator, Ninja, Android Studio, Apple's Xcode, and Microsoft Visual Studio. It has minimal dependencies, requiring only a C++ compiler on its own build system. CMake is distributed as open-source software under a permissive BSD-3-Clause license. History CMake development began in 1999 in response to the need for a cross-platform build environment for the Insight Segmentation and Registration Toolkit. The project is funded by the United States National Library of Medicine as part of the Visible Human Project. It was partially inspired by pcmaker, which was m ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


GYP (software)
GYP (''generate your projects'') is an obsolete build automation tool created in 2011 by Google. Its purpose was to generate native IDE project files (such as Visual Studio and Xcode) for building the Chromium web browser and is licensed as open source software using the BSD software license. The functionality of GYP is similar to the CMake build tool. GYP processes a file that contains a JSON dictionary in order to generate one or more target project make files. The single source .GYP file is generic while the target files are specific to each targeted build tool. In 2016, the Chromium project replaced GYP with GN, a tool that generates ninja builds. The switch to GN resulted in a 20x speedup for their use case. Other projects that migrated from GYP to GN include the V8 Javascript engine, WebRTC and Dart. Software projects that are still built using GYP include Node.js and Telegram Telegraphy is the long-distance transmission of messages where the sender uses sym ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

LLVM
LLVM is a set of compiler and toolchain technologies that can be used to develop a front end for any programming language and a back end for any instruction set architecture. LLVM is designed around a language-independent intermediate representation (IR) that serves as a portable, high-level assembly language that can be optimized with a variety of transformations over multiple passes. LLVM is written in C++ and is designed for compile-time, link-time, run-time, and "idle-time" optimization. Originally implemented for C and C++, the language-agnostic design of LLVM has since spawned a wide variety of front ends: languages with compilers that use LLVM (or which do not directly use LLVM but can generate compiled programs as LLVM IR) include ActionScript, Ada, C#, Common Lisp, PicoLisp, Crystal, CUDA, D, Delphi, Dylan, Forth, Fortran, Free Basic, Free Pascal, Graphical G, Halide, Haskell, Java bytecode, Julia, Kotlin, Lua, Objective-C, OpenCL, PostgreSQL's SQL and PLpg ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Google Chrome
Google Chrome is a cross-platform web browser developed by Google. It was first released in 2008 for Microsoft Windows, built with free software components from Apple WebKit and Mozilla Firefox. Versions were later released for Linux, macOS, iOS, and also for Android, where it is the default browser. The browser is also the main component of ChromeOS, where it serves as the platform for web applications. Most of Chrome's source code comes from Google's free and open-source software project ''Chromium'', but Chrome is licensed as proprietary freeware. WebKit was the original rendering engine, but Google eventually forked it to create the Blink engine; all Chrome variants except iOS now use Blink. , StatCounter estimates that Chrome has a 67% worldwide browser market share (after peaking at 72.38% in November 2018) on personal computers (PC), is most used on tablets (having surpassed Safari), and is also dominant on smartphones and at 65% across all platforms combined. ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Make (software)
In software development, Make is a build automation tool that automatically builds executable programs and libraries from source code by reading files called ''Makefiles'' which specify how to derive the target program. Though integrated development environments and language-specific compiler features can also be used to manage a build process, Make remains widely used, especially in Unix and Unix-like operating systems. Besides building programs, Make can be used to manage any project where some files must be updated automatically from others whenever the others change. Origin There are now a number of dependency-tracking build utilities, but Make is one of the most widespread, primarily due to its inclusion in Unix, starting with the PWB/UNIX 1.0, which featured a variety of tools targeting software development tasks. It was originally created by Stuart Feldman in April 1976 at Bell Labs. Feldman received the 2003 ACM Software System Award for the authoring of this widesprea ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Meson (software)
Meson () is a software tool for automating the building (compiling) of software. The overall goal for Meson is to promote programmer productivity. Meson is free and open-source software written in Python, under the Apache License 2.0. Interoperability Being written in Python, Meson runs on Unix-like operating systems, including macOS, as well as Microsoft Windows and on other operating systems. Meson supports the C, C++, CUDA, D, Objective-C, Fortran, Java, C#, Rust, and Vala languages, and has a mechanism for handling dependencies called Wrap. Meson supports GNU Compiler Collection, Clang, Microsoft Visual C++ and other compilers, including non-traditional compilers such as Emscripten and Cython. The project uses ninja as the primary backend buildsystem, but can also use Microsoft Visual Studio or Xcode backends. Language The syntax of Meson's build description files (the Meson language) borrows from Python, but is not Python: It is designed such that it can be reimp ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Apache License 2
The Apache () are a group of culturally related Native Americans in the United States, Native American tribe (Native American), tribes in the Southwestern United States, which include the Chiricahua, Jicarilla Apache, Jicarilla, Lipan Apache people, Lipan, Mescalero, Mimbreño, Ndendahe (Bedonkohe or Mogollon culture, Mogollon and Nednhi or Carrizaleño and Janero), Salinero Apaches, Salinero, Plains Apache, Plains (Kataka or Semat or "Plains Apache, Kiowa-Apache") and Western Apache (San Carlos Apache Indian Reservation, Aravaipa, Pinaleño Mountains, Pinaleño, Fort Apache Indian Reservation, Coyotero, Tonto Apache, Tonto). Distant cousins of the Apache are the Navajo, with whom they share the Southern Athabaskan languages. There are Apache communities in Oklahoma and Texas, and Indian reservation, reservations in Arizona and New Mexico. Apache people have moved throughout the United States and elsewhere, including urban centers. The Apache Nations are politically autonomous, ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Software Development Tools
A programming tool or software development tool is a computer program that software developers use to create, debug, maintain, or otherwise support other programs and applications. The term usually refers to relatively simple programs, that can be combined to accomplish a task, much as one might use multiple hands to fix a physical object. The most basic tools are a source code editor and a compiler or interpreter, which are used ubiquitously and continuously. Other tools are used more or less depending on the language, development methodology, and individual engineer, often used for a discrete task, like a debugger or profiler. Tools may be discrete programs, executed separately – often from the command line – or may be parts of a single large program, called an integrated development environment (IDE). In many cases, particularly for simpler use, simple ad hoc techniques are used instead of a tool, such as print debugging instead of using a debugger, manual timing (of overal ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]