summaryrefslogtreecommitdiff
path: root/tests/guiopencsgtest.cc
blob: 75e6abd9b488c2835f2377aff919a1ebb9cf94c9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
// Wrapper around openscad gui binary, so it can act like a 'test'

#include <unistd.h>
#include <stdio.h>
#ifndef BINPATH
#error please define BINPATH=/some/path/openscad when compiling
#endif
#define PREQUOTE(x) #x
#define QUOTE(x) PREQUOTE(x)
int main( int argc, char * argv[] )
{
	fprintf(stderr,"%s: wrapper for OpenSCAD at %s\n", argv[0], QUOTE( BINPATH ) );
	if ( argc != 3 ) {
		fprintf(stderr,"%s: bad number of arguments: %i\n", argv[0], argc);
		return 1;
	}
	char *newargs[6];
	char *scadfilename = argv[1];
	char *pngfilename = argv[2];
	newargs[0] = const_cast<char *>(QUOTE( BINPATH ));
	newargs[1] = scadfilename;
	newargs[2] = const_cast<char *>("-o");
	newargs[3] = pngfilename;
	newargs[4] = NULL;
	return execv( newargs[0], newargs );
}

contact: Jan Huwald // Impressum