summaryrefslogtreecommitdiff
path: root/include/compat.h
diff options
context:
space:
mode:
authorDavid Oberhollenzer <david.oberhollenzer@sigma-star.at>2021-11-26 13:53:43 +0100
committerDavid Oberhollenzer <david.oberhollenzer@sigma-star.at>2021-12-05 10:29:32 +0100
commit4a4dbe027a082e546512b5ccb2999753651a9a28 (patch)
treecbc2a9557fc9f7f2c40fe1d4dfe06672526bdad4 /include/compat.h
parent1901937e66baf95145b71e878220bf1a129d32fb (diff)
Add a wrapper for the main function on Windows
A macro and forward declaration are added to compat.h that rename the main() function programs using compat.h into sqfs_tools_main. An actual main() function is added to libcompat.a, that uses the shell API to get the UTF-16 command line arguments, convert them to UTF-8 and call sqfs_tools_main. Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
Diffstat (limited to 'include/compat.h')
-rw-r--r--include/compat.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/compat.h b/include/compat.h
index e82f2ad..59133c9 100644
--- a/include/compat.h
+++ b/include/compat.h
@@ -227,4 +227,10 @@ WCHAR *path_to_windows(const char *input);
int fnmatch(const char *, const char *, int);
#endif
+#if defined(_WIN32) || defined(__WINDOWS__)
+#define main sqfs_tools_main
+
+extern int sqfs_tools_main(int argc, char **argv);
+#endif
+
#endif /* COMPAT_H */