environment::set("DLL_START", "");
environment::set("DLL_END", ".dll");
#endif
+ // specify a target variable on the source side so that we can operate in there,
+ // even if the bundle doesn't specify one. otherwise we can't run source side commands
+ // properly if the paths are based on TARGET (like TMP often is).
+ environment::set("TARGET", environment::TMP());
int ret = 0;
if ( (ret = read_manifest()) ) FAIL_RETURN(ret, "reading manifest");
#include <basis/guards.h>
#include <basis/mutex.h>
#include <basis/utf_conversion.h>
+#include <filesystem/directory.h>
#include <filesystem/filename.h>
#include <mathematics/chaos.h>
#include <structures/static_memory_gremlin.h>
}
// now we make sure the directory exists.
+ filename testing(log_dir);
+ if (!testing.exists()) {
+ bool okay = directory::make_directory(log_dir);
+ if (!okay) {
+ LOG(astring("failed to create logging directory: ") + log_dir);
+ // return a directory almost guaranteed to exist; best we can do in this case.
+#ifdef __UNIX__
+ return "/tmp";
+#endif
+#ifdef __WIN32__
+ return "c:/";
+#endif
+ }
+ }
+
+#if 0
struct stat to_fill;
int stat_ret = stat(log_dir.observe(), &to_fill);
if (stat_ret || !(to_fill.st_mode & S_IFDIR) ) {
// if it's not anything yet or if it's not a directory, then we need
// to create it.
+
//if it's something besides a directory... should it be deleted?
#ifdef __UNIX__
int mk_ret = mkdir(log_dir.s(), 0777);
#ifdef __WIN32__
int mk_ret = mkdir(log_dir.s());
#endif
- if (mk_ret) return "";
+ if (mk_ret) {
+printf("creating logging directory failed with outcome %d.\n", mk_ret);
+ return "";
//can't have a log file if we can't make the directory successfully???
+ }
}
+#endif
return log_dir;
}
TYPE = hierarchy
FIRST_TARGETS = build_bundle
CLEANUPS = $(FEISTY_MEOW_DIR)/install/example_bundle$(EXE_END)
+# set the unix bin variable so the bundle finds the apps.
export UNIX_BIN = /bin
-#hmmm: is UNIX_BIN used anywhere?
include cpp/rules.def
FIRST_TARGETS = create_package
CLEANUPS = $(PRODUCTION_DIR)/install/whole_build*
TYPE = hierarchy
+export TARGET=$(TMP)
include cpp/rules.def
create_package:
ifeq "$(NO_BUILD_PACK)" ""
+ $(HIDE)mkdir $(TARGET)/waste
$(HIDESH)create_whole_build_pack.sh "$(major).$(minor).$(revision).$(build)"
endif