A small SDL project of a couple of days, in early 2013.
With usual compilation methods, it will fine on both Linux and Windows.
The code that survived time shows a rotating torus with shaded segments, but without hidden surfaces.
Later versions added Gouraud shading, advanced objects, multiple light sources, and floor shadows.
Later versions shows Borromean rings, with Gouraud shading and fake shadows.
Multiple, moving light sources, causing a constantly changing color pattern on the objects' surfaces.