# # build tool script for generation of OpenGL units # # === file format description === # - any empty line is ignored # - aything preceeded with a #, *, ; and ' is a comment # - sections can be 'common' or be made of a target file name # - common sections define general strings, but only # the value of TARGET_DIR is really important for the build # - filename sections contain one key for the template name to be used # plus some key definitons that describe the rules of how to insert # generated data. # - a key is structured like this: # key_name, key_rule [,optional_parameters] # - the following key rules exist and will create somewhat like this: # IG = Ignore: # TX = InsertText: # IF = Interface: [line from option1] # PD = ProcDecls: [line from option1] [option2] [//comment in line] # PL = ProcLoaders: [function name from line in opt1] # := GetProc([option2], '[function name from opt1]'); # TX, IF, PD and PL use first optional parameter as the def file name. # the rule PD has second optional parameter that modifys the function. # the rule PL has second optional parameter for import lib/dll name string. # ==== Linux dynamic linking ==== [common] TOOL_NAME = c_gen_linuxd TARGET_TEXT = Linux TARGET_DIR = ../linux/ [gl.pp] TEMPLATE=gl_linux.tem KEY=GLDeclsIF10, IF, gl10.def KEY=GLProcsPD10, PD, gl10.def, cdecl; KEY=GLProcsPL10, PL, gl10.def, libgl KEY=GLDeclsIF10Ext, IF, gl10ext.def KEY=GLProcsPD10Ext, PD, gl10ext.def, cdecl; KEY=GLProcsPL10Ext, PL, gl10ext.def, libgl KEY=GLDeclsIF10SGI, IF, gl10sgi.def KEY=GLProcsPD10SGI, PD, gl10sgi.def, cdecl; KEY=GLProcsPL10SGI, PL, gl10sgi.def, libgl KEY=GLDeclsIF10Mesa, IF, gl10mesa.def KEY=GLProcsPD10Mesa, PD, gl10mesa.def, cdecl; KEY=GLProcsPL10Mesa, PL, gl10mesa.def, libgl KEY=GLDeclsIF11, IF, gl11.def KEY=GLProcsPD11, PD, gl11.def, cdecl; KEY=GLProcsPL11, PL, gl11.def, libgl KEY=GLDeclsIF12, IF, gl12.def KEY=GLProcsPD12, PD, gl12.def, cdecl; KEY=GLProcsPL12, PL, gl12.def, libgl [glu.pp] TEMPLATE=glu_linux.tem KEY=GLUDeclsIF, IF,glu.def KEY=GLUProcsPD, PD,glu.def, cdecl; KEY=GLUProcsPL, PL,glu.def, libglu [glx.pp] TEMPLATE=glx_linux.tem KEY=GLXDeclsIF, IF,glx.def KEY=GLXProcsPD, PD,glx.def, cdecl; KEY=GLXProcsPL, PL,glx.def, libglx [glut.pp] TEMPLATE=glut_linux.tem KEY=GLUTDeclsIF, IF,glut.def KEY=GLUTProcsPD, PD,glut.def, cdecl; KEY=GLUTProcsPL, PL,glut.def, libglut