summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 62a0a71)
raw | patch | inline | side by side (parent: 62a0a71)
author | ishmal <ishmal@users.sourceforge.net> | |
Fri, 20 Apr 2007 16:28:08 +0000 (16:28 +0000) | ||
committer | ishmal <ishmal@users.sourceforge.net> | |
Fri, 20 Apr 2007 16:28:08 +0000 (16:28 +0000) |
build.xml | patch | blob | history | |
buildtool.cpp | patch | blob | history |
diff --git a/build.xml b/build.xml
index 4f7afe4ed7da81027a8a59ac9237c0e324dbcfd2..a3fe9f31ca2fc48681792ac10d64faa7a45345f4 100644 (file)
--- a/build.xml
+++ b/build.xml
#define RENDER_WITH_PANGO_CAIRO 1
#define HAVE_GTK_WINDOW_FULLSCREEN 1
+
+ /* internal interpreter */
+ #define WITH_PYTHON 1
+
+ /* shared whiteboard */
+ #define WITH_INKBOARD 1
+ #define HAVE_SSL 1
#endif /* _CONFIG_H_ */
</makefile>
-DXP_WIN <!-- for JS -->
-D_INTL_REDIRECT_INLINE
-DRELAYTOOL_SSL="static const int libssl_is_present=1; static int __attribute__((unused)) libssl_symbol_is_present(char *s){ return 1; }" <!-- inkboard -->
- -DWITH_INKBOARD -DHAVE_SSL <!-- inkboard -->
</defines>
<includes>
-I${gtk}/include
<flags>
</flags>
<fileset dir="${build}">
- < include name="inkviewres.o"/ >
+ <include name="inkviewres.o"/>
<include name="obj/inkview.o"/>
<include name="libinkscape.a"/>
</fileset>
diff --git a/buildtool.cpp b/buildtool.cpp
index 3dc7ed07ee052cea7096b940483af1950e3e0ead..67687af354e2d06405f112b86c10f1676ec9b7ca 100644 (file)
--- a/buildtool.cpp
+++ b/buildtool.cpp
*
*/
-#define BUILDTOOL_VERSION "BuildTool v0.6.9, 2007 Bob Jamison"
+#define BUILDTOOL_VERSION "BuildTool v0.6.10, 2007 Bob Jamison"
#include <stdio.h>
#include <fcntl.h>
if (root->getChildren().size()==0 ||
root->getChildren()[0]->getName()!="dependencies")
{
- error("Main xml element should be <dependencies>");
+ error("loadDepFile: main xml element should be <dependencies>");
delete root;
return result;
}
{
Element *objectElem = objects[i];
String tagName = objectElem->getName();
- if (tagName == "object")
- {
- String objName = objectElem->getAttribute("name");
- //trace("object:%s", objName.c_str());
- DepRec depObject(objName);
- depObject.path = objectElem->getAttribute("path");
- depObject.suffix = objectElem->getAttribute("suffix");
- //########## DESCRIPTION
- std::vector<Element *> depElems = objectElem->getChildren();
- for (unsigned int i=0 ; i<depElems.size() ; i++)
+ if (tagName != "object")
+ {
+ error("loadDepFile: <dependencies> should have only <object> children");
+ return result;
+ }
+
+ String objName = objectElem->getAttribute("name");
+ //trace("object:%s", objName.c_str());
+ DepRec depObject(objName);
+ depObject.path = objectElem->getAttribute("path");
+ depObject.suffix = objectElem->getAttribute("suffix");
+ //########## DESCRIPTION
+ std::vector<Element *> depElems = objectElem->getChildren();
+ for (unsigned int i=0 ; i<depElems.size() ; i++)
+ {
+ Element *depElem = depElems[i];
+ tagName = depElem->getName();
+ if (tagName != "dep")
{
- Element *depElem = depElems[i];
- tagName = depElem->getName();
- if (tagName == "dep")
- {
- String depName = depElem->getAttribute("name");
- //trace(" dep:%s", depName.c_str());
- depObject.files.push_back(depName);
- }
+ error("loadDepFile: <object> should have only <dep> children");
+ return result;
}
- //Insert into the result list, in a sorted manner
- bool inserted = false;
- std::vector<DepRec>::iterator iter;
- for (iter = result.begin() ; iter != result.end() ; iter++)
+ String depName = depElem->getAttribute("name");
+ //trace(" dep:%s", depName.c_str());
+ depObject.files.push_back(depName);
+ }
+
+ //Insert into the result list, in a sorted manner
+ bool inserted = false;
+ std::vector<DepRec>::iterator iter;
+ for (iter = result.begin() ; iter != result.end() ; iter++)
+ {
+ String vpath = iter->path;
+ vpath.append("/");
+ vpath.append(iter->name);
+ String opath = depObject.path;
+ opath.append("/");
+ opath.append(depObject.name);
+ if (vpath > opath)
{
- String vpath = iter->path;
- vpath.append("/");
- vpath.append(iter->name);
- String opath = depObject.path;
- opath.append("/");
- opath.append(depObject.name);
- if (vpath > opath)
- {
- inserted = true;
- iter = result.insert(iter, depObject);
- break;
- }
+ inserted = true;
+ iter = result.insert(iter, depObject);
+ break;
}
- if (!inserted)
- result.push_back(depObject);
}
+ if (!inserted)
+ result.push_back(depObject);
}
delete root;
//## Select command
String sfx = dep.suffix;
String command = ccCommand;
- if (sfx == "cpp" || sfx == "c++" || sfx == "cc"
- || sfx == "CC")
+ if (sfx == "cpp" || sfx == "cxx" || sfx == "c++" ||
+ sfx == "cc" || sfx == "CC")
command = cxxCommand;
//## Make paths
srcName.append(dep.suffix);
String srcFullName = parent.resolve(srcName);
bool compileMe = false;
+ //# First we check if the source is newer than the .o
if (isNewerThan(srcFullName, destFullName))
{
status(" : compile of %s required by %s",
}
else
{
+ //# secondly, we check if any of the included dependencies
+ //# of the .c/.cpp is newer than the .o
for (unsigned int i=0 ; i<dep.files.size() ; i++)
{
String depName;
- if (srcPath.size()>0)
+ if (source.size()>0)
{
- depName.append(srcPath);
+ depName.append(source);
depName.append("/");
}
depName.append(dep.files[i]);
String depFullName = parent.resolve(depName);
- if (isNewerThan(depFullName, destFullName))
+ bool depRequires = isNewerThan(depFullName, destFullName);
+ //trace("%d %s %s\n", depRequires,
+ // destFullName.c_str(), depFullName.c_str());
+ if (depRequires)
{
status(" : compile of %s required by %s",
destFullName.c_str(), depFullName.c_str());