From 54467f16c0ec2657350a2877e22dd0491a42e725 Mon Sep 17 00:00:00 2001 From: Keith Marshall Date: Tue, 6 Oct 2020 22:01:06 +0100 Subject: [PATCH] Initial commit. * index.html header.html about.html: New files. * site.css site.js logo.png: Likewise. --- about.html | 180 ++++++++++++++++++++++++++++++++++++++++++++++++++ header.html | 55 ++++++++++++++++ index.html | 59 +++++++++++++++++ logo.png | Bin 0 -> 10134 bytes site.css | 216 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ site.js | 77 ++++++++++++++++++++++ 6 files changed, 587 insertions(+) create mode 100644 about.html create mode 100644 header.html create mode 100644 index.html create mode 100644 logo.png create mode 100644 site.css create mode 100644 site.js diff --git a/about.html b/about.html new file mode 100644 index 0000000..5978eb9 --- /dev/null +++ b/about.html @@ -0,0 +1,180 @@ + +

MinGW, +a contraction of “Minimalist GNU for Windows”, +is a minimalist development environment +for native Microsoft Windows applications. +

+

MinGW is a registered trademark of +Software in the Public Interest Inc., +registration +number 86017856; +it has been registered on behalf of MinGW.org, +and its use by any other project is unauthorized. +

+

MinGW +provides a complete Open Source programming tool set which is +suitable for the development of native MS-Windows applications, +and which do not depend on any 3rd‑party C‑Runtime DLLs. +(It does +depend on a number of DLLs provided by Microsoft +themselves, as components of the operating system; +most notable among these is MSVCRT.DLL, +the Microsoft C runtime library. +Additionally, threaded applications must +ship with a freely distributable thread support DLL, +provided as part of MinGW itself). +

+

MinGW +compilers provide access to the functionality of the +Microsoft C runtime and some language‑specific runtimes. +MinGW, being Minimalist, does not, and never will, attempt to +provide a full POSIX runtime environment for POSIX application deployment +on MS‑Windows. +If you want POSIX application deployment on this platform, +please consider +Cygwin instead. +

+

Primarily intended for use by developers working on the native +MS‑Windows platform, +but also available for cross‑hosted use, +(see note below), +MinGW includes:— +

+ +

MSYS, +a contraction of “Minimal SYStem”, +is a Bourne Shell command line interpreter system. +Offered as an alternative to Microsoft’s cmd.exe, +this provides a general purpose command line environment, +which is particularly suited to use with MinGW, +for porting of many Open Source applications to the +MS‑Windows platform; +a light‑weight fork of Cygwin‑1.3, +it includes a small selection of Unix tools, +chosen to facilitate that objective. +

+
+

Project Mailing Lists

+

The MinGW.org Project operates one active discussion +mailing list, +to which you are encouraged to subscribe, +and to participate in the discussion. +Please use this list, +if you wish to seek advice on using MinGW; +do not create wiki pages, or add comments to wiki pages, +to ask questions. +

+

In addition to the above discussion list, we also operate +a read‑only mailing list, +for posting of notifications about project activity; +while this may be of more interest to project contributors, +you are also welcome to subscribe to this list, +if you would like to receive such notifications. +

+

Archives of past postings, +to each of these mailing lists, are available +on OSDN. +There are also historical archives of older +— now defunct — +project mailing lists available +on SourceForge.net; +subscription to these older lists is no longer permitted. +

+
+

Using MinGW for Cross-Hosted Development

+

While MinGW provides tools +primarily intended for use by developers working on the +MS‑Windows platform, +many developers choose to run cross‑compiler +variants of the MinGW tools, +on platforms such as GNU/Linux, +to generate applications for deployment on MS‑Windows. +To facilitate this development model, +many Linux distributors provide the necessary cross-compiler tools, +derived from the MinGW tool chains; +such cross‑compiler tool chains are +not directly supported by MinGW.org, +although we may be able to help out with advice related to the specifics +of MS‑Windows applications development, +common to the use of our own native tool chains +and to such cross‑compilers. +

+ + diff --git a/header.html b/header.html new file mode 100644 index 0000000..03ef550 --- /dev/null +++ b/header.html @@ -0,0 +1,55 @@ + + +
+

Minimalist GNU for Windows

+ +
+ + diff --git a/index.html b/index.html new file mode 100644 index 0000000..5be6e18 --- /dev/null +++ b/index.html @@ -0,0 +1,59 @@ + + + + + Welcome to MinGW.org + + + + + + +
+
+

+

+

+
+
+ + + + diff --git a/logo.png b/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..549cb3d37c56ab9f8b0a473c7de23b88fa838b96 GIT binary patch literal 10134 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%0D<+1ak2L)HLK zsg&UI+u?KcAYcx3ld(-N0b}6BufOoZAA{l`r9dLGBVTc17(j2VeH%xmRh~7e&DZzP zGn5o)-i@M=ovhoW0Ej~;O!XL5Pu)zBrZFi{$s|zRx{BMMH~_EPz1VLVOm`Bh&DC%i zf-aENo)tFYAndxk)s_{?h_%}T_e88FU^N!jE#n#hz^LW+sh@5C;P(6O=6}RU(ZKpP z1;^KK#S(&aCWllijhRdHpp@7tp-(qLo&{7luAPF#ZB#AVbdh%>;^;yH%|> z83F@7XtmmxJ(}^2UF_4QQ+1rPwHmTs$Lc_=-Tija?Q-<dY9;b+Vo;ZQ~K7I-Z_f5V@ z74)-hJa^gyAR4vpYkr>xZ80gOU?9O_*Tds=!DIF8)?2%t8ng*ds%M5qMs{^lC|OvY zMmT*A_>H}-z?a9lx*&w)KVp3jiub5lWT^6|0a$5fWbk z3ksHH8+@?qeIZ9zwYQv6KYE zr_j@5!oG)&VDk7l#`X=bD0J)-Cwo4!*unoUdjMbugE~we?!$$P7g6N}5C&ifg^Cg3 zAMnHFaVGtG{|dSwO9w3ifYsWV=>x}tn0nU;u2`vUtwe&+s6p>g5A1GBdcbh>bFDmd z(p3U0|J@_3{r<(buOpW#fFT@w9v#$LH5f&kab$t|>;?3yRxxw^1|pkrNP+;1Hiw}D zhv0R3qF&9u=Q@mvl9>9-UR&~yT;c^>dw&7NYzYclfp64=Dy^PF%N5u@8;`M`IM%Mb zi_OIl_zDN3hJ(>E43%0X^U`M*k?qZ6?Zy?{ys?f-u>ymp3X{zPl}6RdbEk3Gpq;_t zF%HS~MQpBxAn-iw7QkTEL#1hpYr4|8&-2v9)#8QI!jbC7{r#RlT$@#6t{0Ij3_hEG3Ff3;CACEXkU+vQ$p6{4* z&lpRs;id-;D5vhazxUMAl~v@@weKg|9VYaT_d;V*&j<8}UdP_8%~^dG4etEV2tu(F zxIVRje5Q6k&F(TFI37T+tFLq1Zp3mJrRNWi>Ymb5XP{CtLa9{1<#obhGylzq;pE?R z5sVzNeds^@#=WiH14%~*BZP8 zP2=a@2tD`NJMQ#+eXw7l6{`YtMlFVh2J-=je-XDpEWc^wtFLc<-+$l317A!YG(!>z zOjZL%M~64;7F%>Lg|+AcL&oDX0A>JuX*&Ls@5IybyJE4#U~DIWL^y?9s(@0y3{j}v z>0%fL8l4(O>mVF%D_njD`~e>vPTO*i#dmhnde6UUrH^(e+7q$-+Wn!O^6U$m)6A&@ z#{wu9$^aM`EqZwTuFIlW{b870^#EPp5wJ@yAZz^{t89`mB{w1potsQHQ?4 zz*>ndJkiNRCtU^rdm;VWiBM*zPZUJ33CsZz1b zQc9pyDKYFAiB4KSbgr}C8=E08Z*=zSROH*S7xlcrKVB>q zK`Dh=qsE|pXl>H+p^F_d+^X;?(_AfGxNR%HF=%8=pAiJ)6}yz}|=@w@c|ap4!fAv10uiv|6o#R;#=GucOV07*qoM6N<$ Ef=cTyN&o-= literal 0 HcmV?d00001 diff --git a/site.css b/site.css new file mode 100644 index 0000000..350264c --- /dev/null +++ b/site.css @@ -0,0 +1,216 @@ +/* + * site.css + * + * Rules for application of consistent styling, for all regular pages, + * across the MinGW.org site. + * + * + * $Id$ + * + * Written by Keith Marshall + * Copyright (C) 2020, MinGW.org Project + * + * + * Redistribution and use in source and 'compiled' forms (SGML, HTML, + * PDF, PostScript, RTF, etc) with or without modification, are permitted + * provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer as + * the first lines of this file, unmodified. + * + * 2. Redistributions in compiled form (transformed to other DTDs, + * converted to PDF, PostScript, RTF and other formats) must + * reproduce the above copyright notice, this list of conditions + * and the following disclaimer in the documentation and/or other + * materials provided with the distribution. + * + * THIS DOCUMENTATION IS PROVIDED BY THE MINGW.ORG PROJECT "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE MINGW.ORG PROJECT, OR + * ITS CONTRIBUTORS, BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS DOCUMENTATION, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH + * DAMAGE. + * + */ + +/* General page layout and formatting + * ================================== + */ +body +{ /* Default style, applicable to all normal page content; favour + * Google's "Roboto" sans-serif web-font, at 14pt, with blue-black + * text colour, on a pale blue-grey background; centre text within + * the viewport, with no padding. + */ + margin: 0 auto; padding 0; + font-family: Roboto, verdana, sans-serif; font-size: 14pt; + color: #000066; background-color: #e9e9ff; +} +h3 +{ /* We reserve h1 and h2 heading levels for page title, and + * subtitle respectively; thus, h3 becomes the first level + * available for section headings. Preserve the browser's + * default h3 styling, but pull the following paragraph a + * bit closer. + */ + margin-bottom: -0.2em; +} +hr +{ /* Match the colour of horizontal page dividing rules to that + * of the text. + */ + color: #000066; +} +a +{ /* Links are distiguisable by use of a contrasting text colour; + * there is no need to underline them too! + */ + text-decoration: none; +} +a:visited +{ /* Visited links are further distinguishable, by use of an + * alternative contrasting text colour. + */ + color: #aa00cc; +} +p +{ /* Use the browser's default paragraph styling, but tighten the + * inter-paragraph spacing... + */ + margin-top: 0.6em; margin-bottom: 0; +} +p:first-child +{ /* ...while maintaining a deeper space before the first in any + * free-standing text division. + */ + margin-top: 1.3em; +} +hr+p, p+hr +{ /* Also maintain a deeper space between paragraph text and any + * intervening horizontal rule. + */ + margin-top: 1.3em; +} +p+ul +{ /* Keep any unordered list closer to preceding paragraph text + * than normal inter-paragraph spacing, but separated slightly + * more than single-line text spacing. + */ + margin-top: 0.3em; margin-bottom: 0; +} + + +/* Fixed position page header block formatting + * =========================================== + */ +#header +{ /* All pages share a common header block layout; it will be fixed + * at the top of the viewport, across its full width, and variable + * page content will scroll below it. + */ + position: fixed; z-index: 50; top: 0; width: 100%; height: 70px; + border-bottom: 5px solid #336699; background-color: #ccccff; opacity: 1; +} +#logo +{ /* Encapsulated within the header block, place a single copy of + * the graphical site logo to the left of the region. + */ + float: left; height: 100%; width: 15%; + background: url("logo.png") no-repeat center; +} +#header .text +{ /* Allocate the region of the header block, to the right of the + * logo, for display of centred mid-blue-grey text, in Google's + * "Alegreya Sans" small-caps web-font, at nominal 14pt size. + */ + float: both; width = 100%; text-align: center; + font-family: "Alegreya Sans SC", verdana, sans-serif; font-size: 14pt; + color: #336699; font-variant: small-caps; font-weight: bold; + white-space: nowrap; overflow: none; +} +#header .text h1 +{ /* The primary text, in the header block, is set as a level one + * heading, (and thus at double the nominal font size); also set + * it with expanded tracking. + */ + margin: 0; padding: 0; letter-spacing: 0.2em; word-spacing: 0.4em; +} +#navbar +{ /* The navigation tab-bar is also encapsulated within the header + * block; implemented as an unordered list, without bullet marks, + * it is placed centrally, with its top set at two logical pixel + * heights below the top level (h1) heading text. + */ + list-style: none; margin-top: 2px; +} +#navbar li +{ /* Each navigation tab is represented by a list item, arranged + * within an inline-block display, (hence laid out horizontally). + * Each tab is styled to give the appearance of a row of filing + * cabinet tabs, with the entire row occupying 99% of available + * display width, (after deduction of the 15% reserved for the + * logo); hence the width of each tab (currently there are 5) + * becomes (99 - 15) / 5 = 16.8%. + */ + display: inline-block; + min-width: 16.8%; margin-left: 1px; margin-right: 1px; + border-top: 1px solid; border-left: 1px solid; border-right: 2px solid; + border-top-left-radius: 7px; border-top-right-radius: 7px; + border-bottom-style: none; border-color: #336699; + color: #003366; background-color: #d9d9ff; +} +#navbar li:hover +{ /* Invert navigation tab colours, on mouse-over. + */ + color: #ffffff; background-color: #6699cc; +} +#navbar li a +{ /* Make link anchors, on navigation tabs, fill the entire area + * of their respective tabs, while preserving the text colour + * theme of the page header block. + */ + display: block; color: inherit; +} + + +/* General page content formatting + * =============================== + */ +.page-view +{ /* Set the page content to begin immediately below the reserved + * space for the fixed page header; (it may subsequently scroll, + * to be occluded behind the header). + */ + position: absolute; top: 70px; + text-align: justify; padding: 0 3% 1.5em; +} +.masthead +{ /* Nominally placed at the top of the page content region, we + * allow for a "masthead" region, offset from the main content + * by one vertical em-space, in which the page title, and any + * desired page subtitle, may be placed. + */ + margin-bottom: 1em; +} +.masthead h1 +{ /* Within the "masthead" region, the page title will be set as + * a level one heading, with no space below. + */ + margin-bottom: 0; +} +.masthead h2 +{ /* Similarly, if present, the page subtitle will be set as a + * level two heading, at default size for such headings, but + * with no emboldening. + */ + margin: 0; padding-top: 1px; font-weight: normal; +} + +/* $RCSfile$: end of file */ diff --git a/site.js b/site.js new file mode 100644 index 0000000..df255c7 --- /dev/null +++ b/site.js @@ -0,0 +1,77 @@ +/* + * site.js + * + * General purpose functions for manipulation of page content. + * + * + * $Id$ + * + * Written by Keith Marshall + * Copyright (C) 2020, MinGW.org Project + * + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice, this permission notice, and the following + * disclaimer shall be included in all copies or substantial portions of + * the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OF OR OTHER + * DEALINGS IN THE SOFTWARE. + * + */ +function set_content( item, value ) +{ /* Replace the existing content, if any, of the HTML element with + * id attribute named "item", (if such an element exists), with new + * content as specified by "value". + */ + var element = document.getElementById( item ); + if( element ) element.innerHTML = value; +} + +function load_content( container, src ) +{ /* Set the content of the specified HTML "container" element, by + * injection of the entire contents of an external file which is + * fetched by http server request; (either an http, or an https, + * server connection is required; does not work for local files). + */ + var request_handler = new XMLHttpRequest(); + request_handler.onreadystatechange = function() + { if( (this.readyState == this.DONE) && (this.status == 200) ) + set_content( container, this.responseText ); + } + request_handler.open( "GET", src, true ); + request_handler.send(); +} + +function load_page_content( src, subtitle ) +{ /* Propagate the HTML document title to the "masthead" display, + * update the displayed page subtitle, (which may be null), and + * load the page content from the specified "src" file. + */ + set_content( "page-title", document.title ); + set_content( "page-subtitle", subtitle ); + load_content( "page-content", src ); +} + +function new_page( src, subtitle ) +{ /* Create a new page display, starting from scratch; assign the + * displayed title from the HTML document title attribute, adding + * the specified subtitle, lay out the standard page header block, + * and load the page content from the "src" file. + */ + load_content( "header", "header.html" ); + load_page_content( src, subtitle ); +} + +/* $RCSfile$: end of file */ -- 2.11.0