Some code
- A main() - A Scene type - Some functions on Scenes
This commit is contained in:
commit
495d3802e2
5 changed files with 148 additions and 0 deletions
76
SConstruct
Normal file
76
SConstruct
Normal file
|
@ -0,0 +1,76 @@
|
|||
# SConstruct
|
||||
# vim: set ft=python:
|
||||
#
|
||||
# Toplevel Scons build script for the Charles project.
|
||||
#
|
||||
# Eryn Wells <eryn@erynwells.me>
|
||||
|
||||
|
||||
#
|
||||
# DEFAULT CONFIGURATION VALUES
|
||||
#
|
||||
|
||||
# Enabling debugging does the following things:
|
||||
# 1. Turns on debugging symbols
|
||||
# 2. Turns off all optimization
|
||||
# 3. Sets the DEBUG define
|
||||
DEBUG = True
|
||||
|
||||
# Show build commands ("cc [args] -o [out] [file], etc"). If this is False, show
|
||||
# some nice messages for each step of the build.
|
||||
BUILD_CMDS = False
|
||||
|
||||
# Library directories. Where should scons look for .a files during linking?
|
||||
lib_directories = Split("""
|
||||
""")
|
||||
|
||||
# Source directories. New directories should contain a SConscript file and be
|
||||
# added here.
|
||||
source_directories = lib_directories + Split("""
|
||||
#src
|
||||
""")
|
||||
|
||||
# Include directories. Where should scons look for headers during preprocessing
|
||||
# and compiling?
|
||||
include_directories = Split("""
|
||||
#src
|
||||
""")
|
||||
|
||||
|
||||
#
|
||||
# BUILD STUFF BELOW HERE
|
||||
#
|
||||
|
||||
import os.path
|
||||
|
||||
|
||||
env = Environment(CC='clang',
|
||||
CFLAGS='-Wall -fcolor-diagnostics',
|
||||
CPPPATH=include_directories,
|
||||
LINKFLAGS='',
|
||||
LIBPATH=lib_directories)
|
||||
|
||||
|
||||
# Handle command line variables
|
||||
DEBUG = bool(int(ARGUMENTS.get('DEBUG', DEBUG)))
|
||||
if DEBUG:
|
||||
env.Append(CXXFLAGS=' -g -O0')
|
||||
env.Append(CPPDEFINES=['DEBUG'])
|
||||
else:
|
||||
env.Append(CXXFLAGS=' -O2')
|
||||
|
||||
BUILD_CMDS = bool(int(ARGUMENTS.get('BUILD_CMDS', BUILD_CMDS)))
|
||||
if not BUILD_CMDS:
|
||||
def generate_comstr(action):
|
||||
return '%12s: $TARGET' % (action,)
|
||||
env['CCCOMSTR'] = generate_comstr('Building'),
|
||||
env['LINKCOMSTR'] = generate_comstr('Linking'),
|
||||
env['ARCOMSTR'] = generate_comstr('Archiving'),
|
||||
env['RANLIBCOMSTR'] = generate_comstr('Indexing')
|
||||
|
||||
|
||||
# Build source subdirectories
|
||||
env.SConscript([os.path.join(dir, 'SConscript') for dir in source_directories],
|
||||
exports='env')
|
||||
|
||||
Default('charles')
|
8
src/SConscript
Normal file
8
src/SConscript
Normal file
|
@ -0,0 +1,8 @@
|
|||
Import('env')
|
||||
|
||||
files = Split("""
|
||||
charles.c
|
||||
""")
|
||||
|
||||
prog = env.Program('charles', files)
|
||||
env.Alias('charles', prog)
|
14
src/charles.c
Normal file
14
src/charles.c
Normal file
|
@ -0,0 +1,14 @@
|
|||
/* charles.c
|
||||
*
|
||||
* Entry point for Charles, including main().
|
||||
*
|
||||
* Eryn Wells <eryn@erynwells.me>
|
||||
*/
|
||||
|
||||
|
||||
int
|
||||
main(int argc,
|
||||
const char *argv[])
|
||||
{
|
||||
return 0;
|
||||
}
|
28
src/scene.c
Normal file
28
src/scene.c
Normal file
|
@ -0,0 +1,28 @@
|
|||
/* scene.c
|
||||
*
|
||||
* Definition of Scene-related functions.
|
||||
*
|
||||
* Eryn Wells <eryn@erynwells.me>
|
||||
*/
|
||||
|
||||
|
||||
#include "scene.h"
|
||||
|
||||
|
||||
/*
|
||||
* scene_init --
|
||||
*/
|
||||
void
|
||||
scene_init(Scene *scene)
|
||||
{
|
||||
scene->height = 0;
|
||||
scene->width = 0;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* scene_destroy --
|
||||
*/
|
||||
void
|
||||
scene_destroy(Scene *scene)
|
||||
{ }
|
22
src/scene.h
Normal file
22
src/scene.h
Normal file
|
@ -0,0 +1,22 @@
|
|||
/* scene.h
|
||||
*
|
||||
* Definition of Scene type and related functions.
|
||||
*
|
||||
* Eryn Wells <eryn@erynwells.me>
|
||||
*/
|
||||
|
||||
#ifndef __SCENE_H__
|
||||
#define __SCENE_H__
|
||||
|
||||
|
||||
typedef struct _Scene
|
||||
{
|
||||
int height, width; /* Pixel dimensions. */
|
||||
} Scene;
|
||||
|
||||
|
||||
void scene_init(Scene *scene);
|
||||
void scene_destroy(Scene *scene);
|
||||
|
||||
|
||||
#endif
|
Loading…
Add table
Add a link
Reference in a new issue