From d03d6e606b40157d910ddf99ab018156abeb8ef0 Mon Sep 17 00:00:00 2001 From: "berkeviktor@aol.com" Date: Mon, 28 Feb 2011 18:59:32 +0100 Subject: add wdk changes to named branch --- plugins/lua/lua.c | 1882 ++++++++++++++++++++++++++++++++++++++++++++++ plugins/lua/makefile.mak | 20 + 2 files changed, 1902 insertions(+) create mode 100644 plugins/lua/lua.c create mode 100644 plugins/lua/makefile.mak (limited to 'plugins/lua') diff --git a/plugins/lua/lua.c b/plugins/lua/lua.c new file mode 100644 index 00000000..9574fd4d --- /dev/null +++ b/plugins/lua/lua.c @@ -0,0 +1,1882 @@ +/* + * X-Chat 2.0 LUA Plugin + * + * Copyright (c) 2007 Hanno Hecker + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + */ +/* + * $Id: lua.c 91 2007-06-09 18:44:03Z vetinari $ + * $Revision: 91 $ + * $Date: 2007-06-09 20:44:03 +0200 (Szo, 09 jún. 2007) $ + */ +/* + * TODO: + * * compile (was OK)/run on IRIX + * ? localize error msgs? ... maybe later + * ? make xchat.print() like print() which does an tostring() on + * everything it gets? + * ? add /LUA -s ? ... add a new script from cmdline... this state + * is not removed after the pcall(), but prints a name, which may + * be used to unload this virtual script. ... no xchat_register(), + * xchat_init() should be needed + * ... don't disable xchat.hook_* for this + * ? timer name per state/script and not per plugin? + */ +#define LXC_NAME "Lua" +#define LXC_DESC "Lua scripting interface" +#define LXC_VERSION "0.7 (r91)" + +#include +#include +#include +#include +#include +#include +#include "../../src/common/dirent.h" +#include +#include + +#ifdef _WIN32 +#include /* for getcwd */ +#endif + +#if !( defined(_WIN32) || defined(LXC_XCHAT_GETTEXT) ) +# include +#endif + +#ifndef PATH_MAX /* hurd */ +# define PATH_MAX 1024 +#endif + +#include +#include +#include + +#define lua_pop(L,n) lua_settop(L, -(n)-1) + +#include "xchat-plugin.h" + +static xchat_plugin *ph; /* plugin handle */ + +#define LXC_STRIP_COLOR 1 +#define LXC_STRIP_ATTR 2 +#define LXC_STRIP_ALL (LXC_STRIP_COLOR|LXC_STRIP_ATTR) + +/* registered hooks */ +struct lxc_hooks { + const char *name; + xchat_hook *hook; + struct lxc_hooks *next; +}; + +/* single linked list of all lua states^Wscripts ;-) */ +struct lxc_States { + lua_State *state; /* the lua state of the script */ + char file[PATH_MAX+1]; /* the file name of the script */ + struct lxc_hooks *hooks; /* all hooks this script registered */ + void *gui; /* the gui entry in windows->plugins and scripts... */ + struct lxc_States *next; +}; + +static struct lxc_States *lxc_states = NULL; + +/* user/script supplied data for a callback */ +struct lxc_userdata { + int idx; /* table index */ + int type; /* lua type: */ + const char *string; /* only strings, ... */ + double num; /* numbers and booleans are supported */ + struct lxc_userdata *next; +}; + +/* callback data */ +struct lxc_cbdata { + lua_State *state; + const char *func; + xchat_hook *hook; /* timer ... */ + struct lxc_userdata *data; +}; + +static char lxc_event_name[1024] = "\0"; + +static int lxc_run_hook(char *word[], char *word_eol[], void *data); +static int lxc_run_print(char *word[], void *data); +static int lxc_run_timer(void *data); + +static int lxc_hook_command(lua_State *L); +static int lxc_hook_server(lua_State *L); +static int lxc_hook_print(lua_State *L); +static int lxc_event(lua_State *L); +static int lxc_hook_timer(lua_State *L); +static int lxc_unhook(lua_State *L); + +static int lxc_command(lua_State *L); +static int lxc_print(lua_State *L); +static int lxc_emit_print(lua_State *L); +static int lxc_send_modes(lua_State *L); +static int lxc_find_context(lua_State *L); +static int lxc_get_context(lua_State *L); +static int lxc_get_info(lua_State *L); +static int lxc_get_prefs(lua_State *L); +static int lxc_set_context(lua_State *L); +static int lxc_nickcmp(lua_State *L); + +static int lxc_list_get(lua_State *L); +static int lxc_list_fields(lua_State *L); +static int lxc_gettext(lua_State *L); + +static int lxc_bits(lua_State *L); + +static luaL_reg lxc_functions[] = { + {"hook_command", lxc_hook_command }, +/* TODO: + {"hook_fd", lxc_hook_fd }, +*/ + {"hook_print", lxc_hook_print }, + {"hook_server", lxc_hook_server }, + {"hook_timer", lxc_hook_timer }, + {"unhook", lxc_unhook }, + + {"event", lxc_event }, + + {"command", lxc_command }, + {"print", lxc_print }, + {"emit_print", lxc_emit_print }, + {"send_modes", lxc_send_modes }, + {"find_context", lxc_find_context }, + {"get_context", lxc_get_context }, + {"get_info", lxc_get_info }, + {"get_prefs", lxc_get_prefs }, + {"set_context", lxc_set_context }, + + {"nickcmp", lxc_nickcmp }, + + {"list_get", lxc_list_get }, + {"list_fields", lxc_list_fields }, + + {"gettext", lxc_gettext}, +/* helper function for bit flags */ + {"bits", lxc_bits }, + {NULL, NULL} +}; + +static struct { + const char *name; + long value; +} lxc_consts[] = { + {"EAT_NONE", XCHAT_EAT_NONE}, + {"EAT_XCHAT", XCHAT_EAT_XCHAT}, + {"EAT_PLUGIN", XCHAT_EAT_PLUGIN}, + {"EAT_ALL", XCHAT_EAT_ALL}, + +/* unused until hook_fd is done + {"FD_READ", XCHAT_FD_READ}, + {"FD_WRITE", XCHAT_FD_WRITE}, + {"FD_EXCEPTION", XCHAT_FD_EXCEPTION}, + {"FD_NOTSOCKET", XCHAT_FD_NOTSOCKET}, + */ + + {"PRI_HIGHEST", XCHAT_PRI_HIGHEST}, + {"PRI_HIGH", XCHAT_PRI_HIGH}, + {"PRI_NORM", XCHAT_PRI_NORM}, + {"PRI_LOW", XCHAT_PRI_LOW}, + {"PRI_LOWEST", XCHAT_PRI_LOWEST}, + + /* for: clean = xchat.strip(dirty, xchat.STRIP_ALL) */ + {"STRIP_COLOR", LXC_STRIP_COLOR}, + {"STRIP_ATTR", LXC_STRIP_ATTR}, + {"STRIP_ALL", LXC_STRIP_ALL}, + + /* for xchat.commandf("GUI COLOR %d", xchat.TAB_HILIGHT) */ + {"TAB_DEFAULT", 0}, + {"TAB_NEWDATA", 1}, + {"TAB_NEWMSG", 2}, + {"TAB_HILIGHT", 3}, + + {NULL, 0} +}; + + +#ifdef DEBUG +static void stackDump (lua_State *L, const char *msg) { + int i, t; + int top = lua_gettop(L); + + fprintf(stderr, "%s\n", msg); + for (i = 1; i <= top; i++) { /* repeat for each level */ + t = lua_type(L, i); + switch (t) { + + case LUA_TSTRING: /* strings */ + fprintf(stderr, "`%s'", lua_tostring(L, i)); + break; + + case LUA_TBOOLEAN: /* booleans */ + fprintf(stderr, lua_toboolean(L, i) ? "true" : "false"); + break; + + case LUA_TNUMBER: /* numbers */ + fprintf(stderr, "%g", lua_tonumber(L, i)); + break; + + default: /* other values */ + fprintf(stderr, "%s", lua_typename(L, t)); + break; + + } + fprintf(stderr, " "); /* put a separator */ + } + fprintf(stderr, "\n"); /* end the listing */ +} +#endif /* DEBUG */ + +static int lxc__newindex(lua_State *L) +{ + int i; + const char *name = lua_tostring(L, 2); + + luaL_getmetatable(L, "xchat"); /* 4 */ + + lua_pushnil(L); /* 5 */ + while (lua_next(L, 4) != 0) { + if ((lua_type(L, -2) == LUA_TSTRING) + && strcmp("__index", lua_tostring(L, -2)) == 0) + break; /* now __index is 5, table 6 */ + lua_pop(L, 1); + } + + lua_pushnil(L); + while (lua_next(L, 6) != 0) { + if ((lua_type(L, -2) == LUA_TSTRING) + && strcmp(name, lua_tostring(L, -2)) == 0) { + for (i=0; lxc_consts[i].name; i++) { + if (strcmp(name, lxc_consts[i].name) == 0) { + luaL_error(L, + "`xchat.%s' is a readonly constant", lua_tostring(L, 2)); + return 0; + } + } + } + lua_pop(L, 1); + } + + lua_pushvalue(L, 2); + lua_pushvalue(L, 3); + lua_rawset(L, 6); + + lua_settop(L, 1); + return 0; +} + +static int luaopen_xchat(lua_State *L) +{ + int i; +/* + * wrappers for xchat.printf() and xchat.commandf() + * ... xchat.strip + */ +#define LXC_WRAPPERS "function xchat.printf(...)\n" \ + " xchat.print(string.format(unpack(arg)))\n" \ + "end\n" \ + "function xchat.commandf(...)\n" \ + " xchat.command(string.format(unpack(arg)))\n" \ + "end\n" \ + "function xchat.strip(str, flags)\n" \ + " if flags == nil then\n" \ + " flags = xchat.STRIP_ALL\n" \ + " end\n" \ + " local bits = xchat.bits(flags)\n" \ + " if bits[1] then\n" \ + " str = string.gsub(\n" \ + " string.gsub(str, \"\\3%d%d?,%d%d?\", \"\"),\n" \ + " \"\\3%d%d?\", \"\")\n" \ + " end\n" \ + " if bits[2] then\n" \ + " -- bold, beep, reset, reverse, underline\n" \ + " str = string.gsub(str,\n" \ + " \"[\\2\\7\\15\\22\\31]\", \"\")\n" \ + " end\n" \ + " return str\n" \ + "end\n" + +#if defined(LUA_VERSION_NUM) && (LUA_VERSION_NUM >= 501) + luaL_register(L, "xchat", lxc_functions); + (void)luaL_dostring(L, LXC_WRAPPERS); +#else + luaL_openlib(L, "xchat", lxc_functions, 0); + lua_dostring(L, LXC_WRAPPERS); +#endif + + luaL_newmetatable(L, "xchat"); + + lua_pushliteral(L, "__index"); + lua_newtable(L); + + lua_pushstring(L, "ARCH"); +#ifdef _WIN32 + lua_pushstring(L, "Windows"); +#else + lua_pushstring(L, "Unix"); +#endif + lua_settable(L, -3); /* add to table __index */ + + for (i=0; lxc_consts[i].name; i++) { + lua_pushstring(L, lxc_consts[i].name); + lua_pushnumber(L, lxc_consts[i].value); + lua_settable(L, -3); /* add to table __index */ + } + lua_settable(L, -3); /* add to metatable */ + + lua_pushliteral(L, "__newindex"); + lua_pushcfunction(L, lxc__newindex); + lua_settable(L, -3); +/* + lua_pushliteral(L, "__metatable"); + lua_pushstring(L, "nothing to see here, move along"); + lua_settable(L, -3); +*/ + lua_setmetatable(L, -2); + lua_pop(L, 1); + return 1; +} + +lua_State *lxc_new_state() +{ +#if defined(LUA_VERSION_NUM) && (LUA_VERSION_NUM >= 501) + lua_State *L = luaL_newstate(); /* opens Lua */ + luaL_openlibs(L); +#else + lua_State *L = lua_open(); /* opens Lua */ + luaopen_base(L); /* opens the basic library */ + luaopen_table(L); /* opens the table library */ + luaopen_io(L); /* opens the I/O library */ + luaopen_string(L); /* opens the string lib. */ + luaopen_math(L); /* opens the math lib. */ +#endif + + luaopen_xchat(L); + return L; +} + +static int +lxc_load_file(const char *script) +{ + lua_State *L; + struct lxc_States *state; /* pointer to lua states list */ + struct lxc_States *st; /* pointer to lua states list */ + + L = lxc_new_state(); + state = malloc(sizeof(struct lxc_States)); + if (state == NULL) { + xchat_printf(ph, "malloc() failed: %s\n", strerror(errno)); + lua_close(L); + return 0; + } + + state->state = L; + snprintf(state->file, PATH_MAX, script); + state->next = NULL; + state->hooks = NULL; + state->gui = NULL; + + if (luaL_loadfile(L, script) || lua_pcall(L, 0, 0, 0)) { + xchat_printf(ph, "Lua plugin: error loading script %s", + lua_tostring(L, -1)); + lua_close(L); + free(state); + return 0; + } + + if (!lxc_states) + lxc_states = state; + else { + st = lxc_states; + while (st->next) + st = st->next; + st->next = state; + } + + return 1; +} + +static void +lxc_autoload_from_path(const char *path) +{ + DIR *dir; + struct dirent *ent; + char *file; + int len; + /* xchat_printf(ph, "loading from %s\n", path); */ + dir = opendir(path); + if (dir) { + while ((ent = readdir(dir))) { + len = strlen(ent->d_name); + if (len > 4 && strcasecmp(".lua", ent->d_name + len - 4) == 0) { + file = malloc(len + strlen(path) + 2); + if (file == NULL) { + xchat_printf(ph, "lxc_autoload_from_path(): malloc failed: %s", + strerror(errno)); + break; + } + sprintf(file, "%s/%s", path, ent->d_name); + (void)lxc_load_file((const char *)file); + free(file); + } + } + closedir(dir); + } +} + +void lxc_unload_script(struct lxc_States *state) +{ + struct lxc_hooks *hooks, *h; + struct lxc_cbdata *cb; + struct lxc_userdata *ud, *u; + lua_State *L = state->state; + + lua_pushstring(L, "xchat_unload"); + lua_gettable(L, LUA_GLOBALSINDEX); + if (lua_type(L, -1) == LUA_TFUNCTION) { + if (lua_pcall(L, 0, 0, 0)) { + xchat_printf(ph, "Lua plugin: error while unloading script %s", + lua_tostring(L, -1)); + lua_pop(L, 1); + } + } + + if (state->gui) + xchat_plugingui_remove(ph, state->gui); + state->gui = NULL; + + hooks = state->hooks; + while (hooks) { + h = hooks; + hooks = hooks->next; + + cb = xchat_unhook(ph, h->hook); + if (cb) { + ud = cb->data; + while (ud) { + u = ud; + ud = ud->next; + free(u); + } + free(cb); + } + + free(h); + } + lua_close(state->state); +} + + +static int lxc_cb_load(char *word[], char *word_eol[], void *userdata) +{ + int len; + struct lxc_States *state; + lua_State *L; + const char *name, *desc, *vers; + const char *xdir = ""; + char *buf; + char file[PATH_MAX+1]; + struct stat *st; + + if (word_eol[2][0] == 0) + return XCHAT_EAT_NONE; + + buf = malloc(PATH_MAX + 1); + if (!buf) { + xchat_printf(ph, "malloc() failed: %s\n", strerror(errno)); + return XCHAT_EAT_NONE; + } + + st = malloc(sizeof(struct stat)); + if (!st) { + xchat_printf(ph, "malloc() failed: %s\n", strerror(errno)); + free(buf); + return XCHAT_EAT_NONE; + } + + len = strlen(word[2]); + if (len > 4 && strcasecmp (".lua", word[2] + len - 4) == 0) { +#ifdef WIN32 + if (strrchr(word[2], '\\') != NULL) +#else + if (strrchr(word[2], '/') != NULL) +#endif + strncpy(file, word[2], PATH_MAX); + else { + if (stat(word[2], st) == 0) + xdir = getcwd(buf, PATH_MAX); + else { + xdir = xchat_get_info(ph, "xchatdirfs"); + if (!xdir) /* xchatdirfs is new for 2.0.9, will fail on older */ + xdir = xchat_get_info (ph, "xchatdir"); + } + snprintf(file, PATH_MAX, "%s/%s", xdir, word[2]); + } + + if (lxc_load_file((const char *)file) == 0) { + free(st); + free(buf); + return XCHAT_EAT_ALL; + } + + state = lxc_states; + while (state) { + if (state->next == NULL) { + L = state->state; + + lua_pushstring(L, "xchat_register"); + lua_gettable(L, LUA_GLOBALSINDEX); + if (lua_pcall(L, 0, 3, 0)) { + xchat_printf(ph, "Lua plugin: error registering script %s", + lua_tostring(L, -1)); + lua_pop(L, 1); + free(st); + free(buf); + return XCHAT_EAT_ALL; + } + + name = lua_tostring(L, -3); + desc = lua_tostring(L, -2); + vers = lua_tostring(L, -1); + lua_pop(L, 4); /* func + 3 ret value */ + state->gui = xchat_plugingui_add(ph, state->file, + name, desc, vers, NULL + ); + + lua_pushstring(L, "xchat_init"); + lua_gettable(L, LUA_GLOBALSINDEX); + if (lua_type(L, -1) != LUA_TFUNCTION) + lua_pop(L, 1); + else { + if (lua_pcall(L, 0, 0, 0)) { + xchat_printf(ph, + "Lua plugin: error calling xchat_init() %s", + lua_tostring(L, -1)); + lua_pop(L, 1); + } + } + free(st); + free(buf); + return XCHAT_EAT_ALL; + } + state = state->next; + } + } + free(st); + free(buf); + return XCHAT_EAT_NONE; +} + +static int lxc_cb_unload(char *word[], char *word_eol[], void *userdata) +{ + int len; + struct lxc_States *state; + struct lxc_States *prev = NULL; + char *file; + + if (word_eol[2][0] == 0) + return XCHAT_EAT_NONE; + + len = strlen(word[2]); + if (len > 4 && strcasecmp(".lua", word[2] + len - 4) == 0) { + state = lxc_states; + while (state) { + /* + * state->file is the full or relative path, always with a '/' inside, + * even if loaded via '/LOAD script.lua'. So strrchr() will never + * be NULL. + * ... we just inspect the script name w/o path to see if it's the + * right one to unload + */ + file = strrchr(state->file, '/') + 1; + if ((strcmp(state->file, word[2]) == 0) + || (strcasecmp(file, word[2]) == 0)) { + lxc_unload_script(state); + if (prev) + prev->next = state->next; + else + lxc_states = state->next; + xchat_printf(ph, "Lua script %s unloaded", file); + free(state); + return XCHAT_EAT_ALL; + } + prev = state; + state = state->next; + } + } + return XCHAT_EAT_NONE; +} + +static int lxc_cb_lua(char *word[], char *word_eol[], void *userdata) +{ + lua_State *L = lxc_new_state(); + if (word[2][0] == '\0') { + xchat_printf(ph, "LUA: Usage: /LUA LUA_CODE... execute LUA_CODE"); + return XCHAT_EAT_ALL; + } + if (luaL_loadbuffer(L, word_eol[2], strlen(word_eol[2]), "/LUA")) { + xchat_printf(ph, "LUA: error loading line %s", lua_tostring(L, -1)); + lua_pop(L, 1); + } + +#define LXC_HOOK_DISABLE "xchat.hook_command = nil\n" \ + "xchat.hook_server = nil\n" \ + "xchat.hook_print = nil\n" \ + "xchat.hook_timer = nil\n" + +#if defined(LUA_VERSION_NUM) && (LUA_VERSION_NUM >= 501) + (void)luaL_dostring(L, LXC_HOOK_DISABLE); +#else + lua_dostring(L, LXC_HOOK_DISABLE); +#endif + + if (lua_pcall(L, 0, 0, 0)) { + xchat_printf(ph, "LUA: error executing line %s", lua_tostring(L, -1)); + lua_pop(L, 1); + } + + lua_close(L); + return XCHAT_EAT_ALL; +} + +int xchat_plugin_init(xchat_plugin *plugin_handle, + char **plugin_name, + char **plugin_desc, + char **plugin_version, + char *arg) +{ + struct lxc_States *state; + lua_State *L; + const char *xdir; + const char *name, *desc, *vers; + /* we need to save this for use with any xchat_* functions */ + ph = plugin_handle; + + /* tell xchat our info */ + *plugin_name = LXC_NAME; + *plugin_desc = LXC_DESC; + *plugin_version = LXC_VERSION; + + xchat_hook_command(ph, "LOAD", XCHAT_PRI_NORM, lxc_cb_load, NULL, NULL); + xchat_hook_command(ph, "UNLOAD", XCHAT_PRI_NORM, lxc_cb_unload, NULL, NULL); + xchat_hook_command(ph, "LUA", XCHAT_PRI_NORM, lxc_cb_lua, "Usage: LUA , executes in a new lua state", NULL); + + xdir = xchat_get_info(ph, "xchatdirfs"); + if (!xdir) /* xchatdirfs is new for 2.0.9, will fail on older */ + xdir = xchat_get_info (ph, "xchatdir"); + + lxc_autoload_from_path(xdir); + + if (!lxc_states) /* no scripts loaded */ + return 1; + + state = lxc_states; + while (state) { + L = state->state; + lua_pushstring(L, "xchat_register"); + lua_gettable(L, LUA_GLOBALSINDEX); + if (lua_pcall(L, 0, 3, 0)) { + xchat_printf(ph, "Lua plugin: error registering script %s", + lua_tostring(L, -1)); + lua_pop(L, 1); + state = state->next; + continue; + } + + name = lua_tostring(L, -3); + desc = lua_tostring(L, -2); + vers = lua_tostring(L, -1); + lua_pop(L, 4); /* func + 3 ret value */ + state->gui = xchat_plugingui_add(ph, state->file, name, desc, vers, NULL); + + lua_pushstring(L, "xchat_init"); + lua_gettable(L, LUA_GLOBALSINDEX); + if (lua_type(L, -1) != LUA_TFUNCTION) + lua_pop(L, 1); + else { + if (lua_pcall(L, 0, 0, 0)) { + xchat_printf(ph, "Lua plugin: error calling xchat_init() %s", + lua_tostring(L, -1)); + lua_pop(L, 1); + } + } + state = state->next; + } + xchat_printf(ph, "Lua interface (v%s) loaded", LXC_VERSION); + return 1; +} + +int xchat_plugin_deinit(xchat_plugin *plug_handle) +{ + struct lxc_States *state, *st; + + state = lxc_states; + while (state) { + lxc_unload_script(state); + xchat_printf(ph, "Lua script %s unloaded", state->file); + st = state; + state = state->next; + free(st); + } + xchat_printf(plug_handle, "Lua plugin v%s removed", LXC_VERSION); + return 1; +} + +/* + * lua: func_name(word, word_eol, data) + * desc: your previously hooked callback function for hook_command() and + * hook_server(), you must return one of the xchat.EAT_* constants + * ret: none + * args: + * * word (table): the incoming line split into words (max 32) + * * word_eol (table): + * for both see + * http://xchat.org/docs/plugin20.html#word + * * data (table): the data table you passed to the hook_command() / + * hook_server() as 5th arg + */ +static int lxc_run_hook(char *word[], char *word_eol[], void *data) +{ + struct lxc_cbdata *cb = data; + lua_State *L = cb->state; + struct lxc_userdata *ud = cb->data; + struct lxc_userdata *u; + int i; + lua_pushstring(L, cb->func); + lua_gettable(L, LUA_GLOBALSINDEX); + + strcpy(lxc_event_name, word[0]); + lua_newtable(L); + for (i=1; i<=31 && word[i][0]; i++) { + lua_pushnumber(L, i); + lua_pushstring(L, word[i]); + lua_settable(L, -3); + } + + lua_newtable(L); + for (i=1; i<=31 && word_eol[i][0]; i++) { + lua_pushnumber(L, i); + lua_pushstring(L, word_eol[i]); + lua_settable(L, -3); + } + + lua_newtable(L); + u = ud; + while (u) { + lua_pushnumber(L, u->idx); + switch (u->type) { + case LUA_TSTRING: + lua_pushstring(L, u->string); + break; + case LUA_TNUMBER: + lua_pushnumber(L, u->num); + break; + case LUA_TBOOLEAN: + lua_pushboolean(L, (((int)u->num == 0) ? 0 : 1)); + break; + default: /* LUA_TNIL or others */ + lua_pushnil(L); + break; + } + lua_settable(L, -3); + u = u->next; + } + + if (lua_pcall(L, 3, 1, 0)) { + xchat_printf(ph, "failed to call callback for '%s': %s", + word[1], lua_tostring(L, -1) + ); + lua_pop(L, 1); + return XCHAT_EAT_NONE; + } + + if (lua_type(L, -1) != LUA_TNUMBER) { + xchat_printf(ph, "callback for '%s' did not return number...", word[1]); + return XCHAT_EAT_NONE; + } + + i = (int)lua_tonumber(L, -1); + lua_pop(L, 1); + return i; +} + +static int lxc_get_userdata(int pos, struct lxc_cbdata *cb) +{ + struct lxc_userdata *ud, *u; + lua_State *L = cb->state; + int i, t; + + t = lua_type(L, pos); + if (t == LUA_TNIL) + return 1; + if (t != LUA_TTABLE) + return 0; + + i = 1; + while (1) { + lua_pushnumber(L, i); + lua_gettable(L, -2); + + t = lua_type(L, -1); + if (t == LUA_TNIL) { + lua_pop(L, 1); + break; + } + + ud = malloc(sizeof(struct lxc_userdata)); + if (!ud) { + xchat_printf(ph, "lxc_get_userdata(): failed to malloc: %s", + strerror(errno)); + if (cb->data != NULL) { + ud = cb->data; + while (ud) { + u = ud; + ud = ud->next; + free(u); + } + } + /* free(cb); NO! */ + lua_pushnil(L); + return 0; + } + ud->idx = i; + ud->next = NULL; + switch (t) { + case LUA_TSTRING: + ud->string = lua_tostring(L, -1); + ud->type = LUA_TSTRING; + break; + case LUA_TNUMBER: + ud->num = lua_tonumber(L, -1); + ud->type = LUA_TNUMBER; + break; + case LUA_TBOOLEAN: + ud->num = (double)lua_toboolean(L, -1); + ud->type = LUA_TBOOLEAN; + break; + default: + ud->type = LUA_TNIL; + break; + } + lua_pop(L, 1); + + if (cb->data == NULL) + cb->data = ud; + else { + u = cb->data; + while (u->next) + u = u->next; + u->next = ud; + } + i++; + } /* END while (1) */ + return 1; +} + +/* + * lua: xchat.hook_command(name, func_name, prio, help_str, data) + * desc: Adds a new /command. This allows your program to handle commands + * entered at the input box. To capture text without a "/" at the start + * (non-commands), you may hook a special name of "". i.e + * xchat.hook_command( "", ...) + * Starting from version 2.6.8, commands hooked that begin with a + * period ('.') will be hidden in /HELP and /HELP -l. + * ret: true... or false if something went wrong while registering hook + * args: + * * name (string): the name of the new command + * * func_name (string): the lua function to be called when command is + * entered + * * prio (number): use one of the xchat.PRIO_* + * * help_str (string): help for the new command... use nil for no help + * * data (table): table with strings, numbers and booleans, which will + * be passed to func_name as last argument. + */ +static int lxc_hook_command(lua_State *L) +{ + xchat_hook *hook; + const char *help, *command, *func; + double prio; + struct lxc_hooks *hooks, *h; + struct lxc_States *st; + struct lxc_cbdata *cb; + + + if (lua_gettop(L) < 5) /* expand to five args if necessary */ + lua_settop(L, 5); + + cb = malloc(sizeof(struct lxc_cbdata)); + if (!cb) { + xchat_printf(ph, "lxc_hook_command(): failed to malloc: %s", + strerror(errno)); + lua_pushboolean(L, 0); + return 1; + } + + cb->state = L; + cb->data = NULL; + + command = luaL_checkstring(L, 1); + func = luaL_checkstring(L, 2); + cb->func = func; + cb->hook = NULL; + + if (lua_type(L, 3) == LUA_TNIL) + prio = XCHAT_PRI_NORM; + else + prio = luaL_checknumber(L, 3); + + if (lua_type(L, 4) == LUA_TSTRING) { + help = luaL_checkstring(L, 4); + if (strlen(help) == 0) + help = NULL; + } + else + help = NULL; + + if (lxc_get_userdata(5, cb) == 0) + lua_pushboolean(L, 0); + else { + h = malloc(sizeof(struct lxc_hooks)); + if (!h) { + xchat_printf(ph, "lxc_hook_command(): failed to malloc: %s", + strerror(errno)); + lua_pushboolean(L, 0); + return 1; + } + hook = xchat_hook_command(ph, command, prio, lxc_run_hook, help, cb); + h->hook = hook; + h->name = command; + h->next = NULL; + st = lxc_states; + while (st) { + if (st->state == L) { + if (!st->hooks) + st->hooks = h; + else { + hooks = st->hooks; + while (hooks->next) + hooks = hooks->next; + hooks->next = h; + } + break; + } + st = st->next; + } + lua_pushboolean(L, 1); + } + return 1; +} + +/* + * lua: func_name(word, data) + * desc: your previously hooked callback function for hook_print(), + * you must return one of the xchat.EAT_* constants + * ret: none + * args: + * * word (table): the incoming line split into words (max 32) + * (see http://xchat.org/docs/plugin20.html#word) + * * data (table): the data table you passed to the hook_print() / + * as 4th arg + */ +static int lxc_run_print(char *word[], void *data) +{ + struct lxc_cbdata *cb = data; + lua_State *L = cb->state; + int i; + + lua_pushstring(L, cb->func); + lua_gettable(L, LUA_GLOBALSINDEX); + + strcpy(lxc_event_name, word[0]); + lua_newtable(L); + for (i=1; i<=31 && word[i][0]; i++) { + lua_pushnumber(L, i); + lua_pushstring(L, word[i]); + lua_settable(L, -3); + } + + if (lua_pcall(L, 1, 1, 0)) { + xchat_printf(ph, "failed to call callback for '%s': %s", + word[1], lua_tostring(L, -1)); + lua_pop(L, 1); + return 0; + } + + if (lua_type(L, -1) != LUA_TNUMBER) { + xchat_printf(ph, "callback for '%s' didn't return number...", word[1]); + return XCHAT_EAT_NONE; + } + i = (int)lua_tonumber(L, -1); + lua_pop(L, 1); + return i; +} + +/* + * lua: xchat.hook_print(name, func_name, prio, data) + * desc: Registers a function to trap any print events. The event names may + * be any available in the "Advanced > Text Events" window. There are + * also some extra "special" events you may hook using this function, + * see: http://xchat.org/docs/plugin20.html#xchat_hook_print + * ret: true... or false if something went wrong while registering hook + * args: + * * name (string): the name of the new command + * * prio (number): use one of the xchat.PRIO_* + * * func_name (string): the lua function to be called when command is + * entered + * * data (table): table with strings, numbers and booleans, which will + * be passed to func_name as last argument. + */ +static int lxc_hook_print(lua_State *L) +{ + xchat_hook *hook; + struct lxc_hooks *hooks, *h; + struct lxc_States *st; + struct lxc_cbdata *cb = malloc(sizeof(struct lxc_cbdata)); + const char *name, *func; + double prio; + + if (!cb) { + luaL_error(L, "lxc_hook_print(): failed to malloc: %s", strerror(errno)); + return 0; + } + + if (lua_gettop(L) < 4) /* expand to 4 args if necessary */ + lua_settop(L, 4); + + name = luaL_checkstring(L, 1); + func = luaL_checkstring(L, 2); + if (lua_type(L, 3) == LUA_TNIL) + prio = XCHAT_PRI_NORM; + else + prio = luaL_checknumber(L, 3); + + cb->state = L; + cb->func = func; + cb->data = NULL; + cb->hook = NULL; + + if (lxc_get_userdata(4, cb) == 0) + lua_pushboolean(L, 0); + else { + h = malloc(sizeof(struct lxc_hooks)); + if (!h) { + xchat_printf(ph, "lxc_hook_print(): failed to malloc: %s", + strerror(errno)); + lua_pushboolean(L, 0); + return 1; + } + hook = xchat_hook_print(ph, name, prio, lxc_run_print, cb); + h->hook = hook; + h->name = name; + h->next = NULL; + st = lxc_states; + while (st) { + if (st->state == L) { + if (!st->hooks) + st->hooks = h; + else { + hooks = st->hooks; + while (hooks->next) + hooks = hooks->next; + hooks->next = h; + } + break; + } + st = st->next; + } + lua_pushboolean(L, 1); + } + return 1; +} + +/* + * lua: xchat.hook_server(name, func_name, prio, data) + * desc: Registers a function to be called when a certain server event + * occurs. You can use this to trap PRIVMSG, NOTICE, PART, a server + * numeric etc... If you want to hook every line that comes from the + * IRC server, you may use the special name of "RAW LINE". + * ret: true... or false if something went wrong while registering + * args: + * * name (string): the event name / numeric (yes, also as a string) + * * prio (number): one of the xchat.PRIO_* constants + * * func_name (string): the function to be called, when the event + * happens + * * data (table)... see xchat.hook_command() + */ +static int lxc_hook_server(lua_State *L) +{ + xchat_hook *hook; + struct lxc_hooks *hooks, *h; + struct lxc_States *st; + const char *name, *func; + double prio; + + struct lxc_cbdata *cb = malloc(sizeof(struct lxc_cbdata)); + if (!cb) { + xchat_printf(ph, "lxc_hook_server(): failed to malloc: %s", + strerror(errno)); + lua_pushnil(L); + return 1; + } + + if (lua_gettop(L) < 4) /* expand to 4 args if necessary */ + lua_settop(L, 4); + + name = luaL_checkstring(L, 1); + func = luaL_checkstring(L, 2); + if (lua_type(L, 3) == LUA_TNIL) + prio = XCHAT_PRI_NORM; + else + prio = luaL_checknumber(L, 3); + + cb->state = L; + cb->func = func; + cb->data = NULL; + cb->hook = NULL; + + if (lxc_get_userdata(4, cb) == 0) + lua_pushboolean(L, 0); + else { + h = malloc(sizeof(struct lxc_hooks)); + if (!h) { + xchat_printf(ph, "lxc_hook_server(): failed to malloc: %s", + strerror(errno)); + lua_pushboolean(L, 0); + return 1; + } + hook = xchat_hook_server(ph, name, prio, lxc_run_hook, cb); + h->hook = hook; + h->name = name; + h->next = NULL; + st = lxc_states; + while (st) { + if (st->state == L) { + if (!st->hooks) + st->hooks = h; + else { + hooks = st->hooks; + while (hooks->next) + hooks = hooks->next; + hooks->next = h; + } + break; + } + st = st->next; + } + lua_pushboolean(L, 1); + } + return 1; +} + +/* + * lua: xchat.hook_timer(timeout, func_name, data) + * desc: Registers a function to be called every "timeout" milliseconds. + * ret: true (or false on error while registering) + * args: + * * timeout (number): Timeout in milliseconds (1000 is 1 second). + * * func_name (string): Callback function. This will be called + * every "timeout" milliseconds. + * * data (table): see xchat.hook_command() + */ + +static unsigned long long lxc_timer_count = 0; + +static int lxc_hook_timer(lua_State *L) +{ + xchat_hook *hook; + struct lxc_hooks *hooks, *h; + struct lxc_States *st; + double timeout; + const char *func; + char name[32]; + + struct lxc_cbdata *cb = malloc(sizeof(struct lxc_cbdata)); + if (!cb) { + luaL_error(L, "lxc_hook_timer(): failed to malloc: %s", strerror(errno)); + lua_pushnil(L); + return 1; + } + + if (lua_gettop(L) < 3) /* expand to 3 args if necessary */ + lua_settop(L, 3); + + timeout = luaL_checknumber(L, 1); + func = luaL_checkstring(L, 2); + + cb->state = L; + cb->func = func; + cb->data = NULL; + + if (lxc_get_userdata(3, cb) == 0) + lua_pushnil(L); + else { + h = malloc(sizeof(struct lxc_hooks)); + if (!h) { + luaL_error(L, "lxc_hook_timer(): failed to malloc: %s", + strerror(errno)); + return 0; + } + hook = xchat_hook_timer(ph, timeout, lxc_run_timer, cb); + cb->hook = hook; + h->hook = hook; + h->next = NULL; + snprintf(name, 31, "timer%llu", lxc_timer_count++); + h->name = name; + lua_pushstring(L, name); + + st = lxc_states; + while (st) { + if (st->state == L) { + if (!st->hooks) + st->hooks = h; + else { + hooks = st->hooks; + while (hooks->next) + hooks = hooks->next; + hooks->next = h; + } + break; + } + st = st->next; + } + } + return 1; +} + +static void lxc_unhook_timer(lua_State *L, xchat_hook *hook) +{ + struct lxc_States *state; + struct lxc_hooks *hooks, *h, *prev_hook; + struct lxc_cbdata *cb; + struct lxc_userdata *ud, *u; + + prev_hook = NULL; + state = lxc_states; + while (state) { + if (state->state == L) { + hooks = state->hooks; + while (hooks) { + if (hooks->hook == hook) { + h = hooks; + if (prev_hook) + prev_hook->next = hooks->next; + else + state->hooks = hooks->next; + + cb = xchat_unhook(ph, h->hook); + if (cb) { + ud = cb->data; + while (ud) { + u = ud; + ud = ud->next; + free(u); + } + free(cb); + } + + free(h); + return; + } + prev_hook = hooks; + hooks = hooks->next; + } + break; + } + state = state->next; + } +} + +/* + * lua: func_name(data) + * desc: the callback function for the registered timer hook, return + * true to keep this timer going, false to stop it + * ret: none + * args: + * * data (table): the table you gave the hook_timer() as last + * argument + */ + static int lxc_run_timer(void *data) +{ + int ret; + struct lxc_cbdata *cb = data; + xchat_hook *hook = cb->hook; + lua_State *L = cb->state; + + lua_pushstring(L, cb->func); + lua_gettable(L, LUA_GLOBALSINDEX); + + if (lua_pcall(L, 0, 1, 0)) { + xchat_printf(ph, "failed to call timer callback for '%s': %s", + cb->func, lua_tostring(L, -1)); + lua_pop(L, 1); + lxc_unhook_timer(L, hook); + return 0; + } + + if (lua_type(L, -1) != LUA_TBOOLEAN) { + xchat_printf(ph, + "timer callback for '%s' didn't return a boolean", cb->func); + lua_pop(L, 1); + lxc_unhook_timer(L, hook); + return 0; + } + + ret = (lua_toboolean(L, -1) == 0) ? 0 : 1; + lua_pop(L, 1); + + if (ret == 0) + lxc_unhook_timer(L, hook); + + return ret; +} + +/* + * lua: xchat.unhook(name) + * desc: unhooks a previously hooked hook + * ret: true if the hook existed, else false.. + * args: + * * name (string): name of a registered hook (e.g. with + * xchat.hook_command("whois", ... ) you would unhook "whois" + * ... see timer warnings... there's currently just one "timer" + * to unhook + */ +static int lxc_unhook(lua_State *L) +{ + struct lxc_States *state; + struct lxc_hooks *hooks, *h, *prev_hook; + struct lxc_cbdata *cb; + struct lxc_userdata *ud, *u; + int done = 0; + const char *name = luaL_checkstring(L, 1); + + prev_hook = NULL; + state = lxc_states; + while (state) { + if (state->state == L) { + hooks = state->hooks; + while (hooks) { + if (strcasecmp(hooks->name, name) == 0) { + h = hooks; + if (prev_hook) + prev_hook->next = hooks->next; + else + state->hooks = hooks->next; + + cb = xchat_unhook(ph, h->hook); + if (cb) { + ud = cb->data; + while (ud) { + u = ud; + ud = ud->next; + free(u); + } + free(cb); + } + + free(h); + done = 1; + break; + } + prev_hook = hooks; + hooks = hooks->next; + } + break; + } + state = state->next; + } + lua_pushboolean(L, done); + return 1; +} + +static int lxc_event(lua_State *L) +{ + lua_pushstring(L, lxc_event_name); + return 1; +} + +/* + * lua: xchat.command(command) + * desc: executes a command as if it were typed in xchat's input box. + * ret: none + * args: + * * command (string): command to execute, without the forward slash "/". + */ +static int lxc_command(lua_State *L) +{ + const char *command = luaL_checkstring(L, 1); + xchat_command(ph, command); + return 0; +} + +/* + * lua: xchat.print(text) + * desc: Prints some text to the current tab/window. + * ret: none + * args: + * * text (string): the text to print + */ +static int lxc_print(lua_State *L) +{ + const char *txt = luaL_checkstring(L, 1); + // FIXME? const char *txt = lua_tostring(L, 1); + xchat_print(ph, txt); + return 0; +} + +/* + * lua: xchat.emit_print(event, text, [text2, ...]) + * desc: Generates a print event. This can be any event found in the + * Preferences > Advanced > Text Events window. The vararg parameter + * list MUST be no longer than four (4) parameters. + * Special care should be taken when calling this function inside a + * print callback (from xchat.hook_print()), as not to cause endless + * recursion. + * ret: true on success, false on error + * args: + * * event (string): the event name from the references > Advanced > + * Text Events window + * * text (string) + * text2 (string) + * ... (string(s)): + * parameters for the given event + */ +static int lxc_emit_print(lua_State *L) +{ + + int n = lua_gettop(L); + const char *text[5]; + const char *event; + int i = 2; + + if (n > 6) + luaL_error(L, "too many arguments to xchat.emit_print()"); + + event = luaL_checkstring(L, 1); + while (i <= n) { + text[i-2] = luaL_checkstring(L, i); + i++; + } + switch (n-1) { + case 0: + i = xchat_emit_print(ph, event, NULL); + break; + case 1: + i = xchat_emit_print(ph, event, text[0], NULL); + break; + case 2: + i = xchat_emit_print(ph, event, text[0], text[1], NULL); + break; + case 3: + i = xchat_emit_print(ph, event, text[0], text[1], text[2], NULL); + break; + case 4: + i = xchat_emit_print(ph, event, text[0], text[1], text[2], text[3], NULL); + break; + } + lua_pushboolean(L, (i == 0) ? 0 : 1); + return 1; +} + +/* + * lua: xchat.send_modes(targets, sign, mode [, modes_per_line]) + * desc: Sends a number of channel mode changes to the current channel. + * For example, you can Op a whole group of people in one go. It may + * send multiple MODE lines if the request doesn't fit on one. Pass 0 + * for modes_per_line to use the current server's maximum possible. + * This function should only be called while in a channel context. + * ret: none + * args: + * * targets (table): list of names + * * sign (string): mode sign, i.e. "+" or "-", only the first char of + * this is used (currently unchecked if it's really "+" or "-") + * * mode (string): mode char, i.e. "o" for opping, only the first + * char of this is used (currently unchecked, what char) + * * modes_per_line (number): [optional] number of modes per line + */ +static int lxc_send_modes(lua_State *L) +{ + int i = 1; + const char *name, *mode, *sign; + const char *targets[4096]; + int num = 0; /* modes per line */ + + if (!lua_istable(L, 1)) { + luaL_error(L, + "xchat.send_modes(): first argument is not a table: %s", + lua_typename(L, lua_type(L, 1))); + return 0; + } + + while (1) { + lua_pushnumber(L, i); /* push index on stack */ + lua_gettable(L, 1); /* and get the element @ index */ + if (lua_isnil(L, -1)) { /* end of table */ + lua_pop(L, 1); + break; + } + + if (lua_type(L, -1) != LUA_TSTRING) { /* oops, something wrong */ + luaL_error(L, + "lua: xchat.send_modes(): table element #%d not a string: %s", + i, lua_typename(L, lua_type(L, -1))); + lua_pop(L, 1); + return 0; + } + + name = lua_tostring(L, -1); + if (name == NULL) { /* this should not happen, but... */ + lua_pop(L, 1); + break; + } + + targets[i-1] = name; + lua_pop(L, 1); /* take index from stack */ + ++i; + } + + sign = luaL_checkstring(L, 2); + if (sign[0] == '\0' || sign[1] != '\0') { + luaL_error(L, "argument #2 (mode sign) does not have length 1"); + return 0; + } + if ((sign[0] != '+') && (sign[0] != '-')) { + luaL_error(L, "argument #2 (mode sign) is not '+' or '-'"); + return 0; + } + + mode = luaL_checkstring(L, 3); + if (mode[0] == '\0' || mode[1] != '\0') { + luaL_error(L, "argument #3 (mode char) does not have length 1"); + return 0; + } + if (!isalpha((int)mode[0]) || !isascii((int)mode[0])) { + luaL_error(L, "argument #3 is not a valid mode character"); + return 0; + } + + if (lua_gettop(L) == 4) + num = luaL_checknumber(L, 4); + + xchat_send_modes(ph, targets, i-1, num, sign[0], mode[0]); + return 0; +} + +/* + * lua: xchat.find_context(srv, chan) + * desc: Finds a context based on a channel and servername. If servname is nil, + * it finds any channel (or query) by the given name. If channel is nil, + * it finds the front-most tab/window of the given servname. If nil is + * given for both arguments, the currently focused tab/window will be + * returned. + * Changed in 2.6.1. If servname is nil, it finds the channel (or query) + * by the given name in the same server group as the current context. + * If that doesn't exists then find any by the given name. + * ret: context number (DON'T modify) + * args: + * * srv (string or nil): server name + * * chan (string or nil): channel / query name + */ +static int lxc_find_context(lua_State *L) +{ + const char *srv, *chan; + long ctx; + xchat_context *ptr; + + if (lua_type(L, 1) == LUA_TSTRING) { + srv = lua_tostring(L, 1); + if (srv[0] == '\0') + srv = NULL; + } + else + srv = NULL; + + if (lua_type(L, 2) == LUA_TSTRING) { + chan = lua_tostring(L, 2); + if (chan[0] == '\0') + chan = NULL; + } + else + chan = NULL; + + ptr = xchat_find_context(ph, srv, chan); + ctx = (long)ptr; +#ifdef DEBUG + fprintf(stderr, "find_context(): %#lx\n", (long)ptr); +#endif + lua_pushnumber(L, (double)ctx); + return 1; +} + +/* + * lua: xchat.get_context() + * desc: Returns the current context for your plugin. You can use this later + * with xchat_set_context. + * ret: context number ... DON'T modifiy + * args: none + */ +static int lxc_get_context(lua_State *L) +{ + long ptr; + xchat_context *ctx = xchat_get_context(ph); + ptr = (long)ctx; +#ifdef DEBUG + fprintf(stderr, "get_context(): %#lx\n", ptr); +#endif + lua_pushnumber(L, (double)ptr); + return 1; +} + +/* + * lua: xchat.get_info(id) + * desc: Returns information based on your current context. + * ret: the requested string or nil on error + * args: + * * id (string): the wanted information + */ +static int lxc_get_info(lua_State *L) +{ + const char *id = luaL_checkstring(L, 1); + const char *value = xchat_get_info(ph, id); + if (value == NULL) + lua_pushnil(L); + else + lua_pushstring(L, value); + return 1; +} + +/* + * lua: xchat.get_prefs(name) + * desc: Provides xchat's setting information (that which is available + * through the /set command). A few extra bits of information are + * available that don't appear in the /set list, currently they are: + * * state_cursor: Current input-box cursor position (characters, + * not bytes). Since 2.4.2. + * *id: Unique server id. Since 2.6.1. + * ret: returns the string/number/boolean for the given config var + * or nil on error + * args: + * * name (string): the wanted setting's name + */ +static int lxc_get_prefs(lua_State *L) +{ + int i; + const char *str; + const char *name = luaL_checkstring(L, 1); + /* + * luckily we can store anything in a lua var... this makes the + * xchat lua api more user friendly ;-) + */ + switch (xchat_get_prefs(ph, name, &str, &i)) { + case 0: /* request failed */ + lua_pushnil(L); + break; + case 1: + lua_pushstring(L, str); + break; + case 2: + lua_pushnumber(L, (double)i); + break; + case 3: + lua_pushboolean(L, i); + break; + default: /* doesn't happen if xchat's C-API doesn't change ;-) */ + lua_pushnil(L); + break; + } + return 1; +} + +/* + * lua: xchat.set_context(ctx) + * desc: Changes your current context to the one given. + * ret: true or false + * args: + * * ctx (number): the context (e.g. from xchat.get_context()) + */ +static int lxc_set_context(lua_State *L) +{ + double ctx = luaL_checknumber(L, 1); +#ifdef DEBUG + fprintf(stderr, "set_context(): %#lx\n", (long)ctx); +#endif + xchat_context *xc = (void *)(long)ctx; + lua_pushboolean(L, xchat_set_context(ph, xc)); + return 1; +} + +/* + * lua: xchat.nickcmp(name1, name2) + * desc: Performs a nick name comparision, based on the current server + * connection. This might be a RFC1459 compliant string compare, or + * plain ascii (in the case of DALNet). Use this to compare channels + * and nicknames. The function works the same way as strcasecmp. + * ret: number ess than, equal to, or greater than zero if name1 is found, + * respectively, to be less than, to match, or be greater than name2. + * args: + * * name1 (string): nick or channel name + * * name2 (string): nick or channel name + */ +static int lxc_nickcmp(lua_State *L) +{ + const char *n1 = luaL_checkstring(L, 1); + const char *n2 = luaL_checkstring(L, 2); + lua_pushnumber(L, (double)xchat_nickcmp(ph, n1, n2)); + return 1; +} + +/* + * lua: xchat.list_get(name) + * desc: http://xchat.org/docs/plugin20.html#lists :) + * time_t values are stored as number => e.g. + * os.date("%Y-%m-%d, %H:%M:%S", time_t_value) + * pointers (channel -> context) as number... untested if this works + * ret: table with tables with all keys=Name, value=(Type)... or nil on error + * args: + * * name (string): the wanted list + */ +static int lxc_list_get(lua_State *L) +{ + const char *name = luaL_checkstring(L, 1); + int i; /* item index */ + int l; /* list index */ + const char *str; + double num; + time_t date; + long ptr; + const char *const *fields = xchat_list_fields(ph, name); + xchat_list *list = xchat_list_get(ph, name); + + if (!list) { + lua_pushnil(L); + return 1; + } + lua_newtable(L); + /* this is like the perl plugin does it ;-) */ + l = 1; + while (xchat_list_next(ph, list)) { + i = 0; + lua_pushnumber(L, l); + lua_newtable(L); + while (fields[i] != NULL) { + switch (fields[i][0]) { + case 's': + str = xchat_list_str(ph, list, fields [i] + 1); + lua_pushstring(L, fields[i]+1); + if (str != NULL) + lua_pushstring(L, str); + else + lua_pushnil(L); + lua_settable(L, -3); + break; + case 'p': + ptr = (long)xchat_list_str(ph, list, fields [i] + 1); + num = (double)ptr; + lua_pushstring(L, fields[i]+1); + lua_pushnumber(L, num); + lua_settable(L, -3); + break; + case 'i': + num = (double)xchat_list_int(ph, list, fields[i] + 1); + lua_pushstring(L, fields[i]+1); + lua_pushnumber(L, num); + lua_settable(L, -3); + break; + case 't': + date = xchat_list_time(ph, list, fields[i] + 1); + lua_pushstring(L, fields[i]+1); + lua_pushnumber(L, (double)date); + lua_settable(L, -3); + break; + } + i++; + } + lua_settable(L, -3); + l++; + } + xchat_list_free(ph, list); + return 1; +} + +/* + * lua: xchat.list_fields(name) + * desc: returns the possible keys for name as table + * ret: table ;-> + * args: + * * name (string): name of the wanted list ("channels", "dcc", + * "ignore", "notify", "users") + */ +static int lxc_list_fields(lua_State *L) +{ + const char *name = luaL_checkstring(L, 1); + const char *const *fields = xchat_list_fields(ph, name); + int i; + + lua_newtable(L); + i = 0; + while (fields[i] != NULL) { + lua_pushnumber(L, i); + /* first char is the type ... */ + lua_pushstring(L, fields[i]+1); + lua_settable(L, -3); + } + return 1; +} + +/* + * lua: xchat.gettext(str) + * desc: + */ +static int lxc_gettext(lua_State *L) +{ +#if defined(_WIN32) || defined(LXC_XCHAT_GETTEXT) + lua_pushstring(L, xchat_gettext(ph, luaL_checkstring(L, 1))); +#else + const char *dom; + const char *msgid = luaL_checkstring(L, 1); + if (lua_type(L,2) == LUA_TSTRING) + dom = lua_tostring(L, 2); + else + dom = "xchat"; + lua_pushstring(L, dgettext(dom, msgid)); +#endif + return 1; +} + +/* + * lua: xchat.bits(flags) + * desc: returns a table of booleans if the bit at index (err... index-1) is + * set + * ret: table of booleans + * args: + * * flags (number) + */ +static int lxc_bits(lua_State *L) +{ + int flags = luaL_checknumber(L, 1); + int i; + lua_pop(L, 1); + lua_newtable(L); + for (i=0; i<16; i++) { /* at time of writing, the highest index was 9 ... */ + lua_pushnumber(L, i+1); + lua_pushboolean(L, ((1< lua.def + echo xchat_plugin_init >> lua.def + echo xchat_plugin_deinit >> lua.def + +lua.obj: lua.c makefile.mak + cl $(CFLAGS) /I.. /Dsnprintf=g_snprintf lua.c + +clean: + del *.obj + del *.dll + del *.exp + del *.lib -- cgit 1.4.1 From 13ee029364b37eca95c43641420e75c872b32653 Mon Sep 17 00:00:00 2001 From: Berke Viktor Date: Sun, 11 Dec 2011 18:04:35 +0100 Subject: some more multiplatform support --- plugins/lua/lua.c | 2 +- plugins/lua/makefile.mak | 2 +- plugins/perl/makefile-512.mak | 2 +- plugins/perl/makefile-514.mak | 2 +- plugins/perl/perl.c | 2 +- plugins/python/makefile.mak | 2 +- plugins/python/python.c | 2 +- src/common/dirent-win32.c | 199 ++++++++++++++++++++++++++++++++++++++++++ src/common/dirent-win32.h | 28 ++++++ src/common/dirent.c | 199 ------------------------------------------ src/common/dirent.h | 28 ------ src/common/makefile.mak | 10 +-- src/common/plugin.c | 4 + src/common/util.c | 2 +- src/fe-gtk/about.c | 2 +- src/fe-gtk/fe-gtk.h | 7 -- src/fe-gtk/setup.c | 2 + 17 files changed, 247 insertions(+), 248 deletions(-) create mode 100644 src/common/dirent-win32.c create mode 100644 src/common/dirent-win32.h delete mode 100644 src/common/dirent.c delete mode 100644 src/common/dirent.h (limited to 'plugins/lua') diff --git a/plugins/lua/lua.c b/plugins/lua/lua.c index 9574fd4d..9f29bf08 100644 --- a/plugins/lua/lua.c +++ b/plugins/lua/lua.c @@ -43,12 +43,12 @@ #include #include #include -#include "../../src/common/dirent.h" #include #include #ifdef _WIN32 #include /* for getcwd */ +#include "../../src/common/dirent-win32.h" #endif #if !( defined(_WIN32) || defined(LXC_XCHAT_GETTEXT) ) diff --git a/plugins/lua/makefile.mak b/plugins/lua/makefile.mak index fbc94072..97a7e10b 100644 --- a/plugins/lua/makefile.mak +++ b/plugins/lua/makefile.mak @@ -1,6 +1,6 @@ include "..\..\src\makeinc.mak" -DIRENTLIB = ..\..\src\common\dirent.lib +DIRENTLIB = ..\..\src\common\dirent-win32.lib all: lua.obj lua.def link $(LDFLAGS) $(LIBS) /dll /out:xclua.dll $(LUALIB).lib $(DIRENTLIB) /def:lua.def lua.obj diff --git a/plugins/perl/makefile-512.mak b/plugins/perl/makefile-512.mak index 677c9073..7f2fbe04 100644 --- a/plugins/perl/makefile-512.mak +++ b/plugins/perl/makefile-512.mak @@ -1,6 +1,6 @@ include "..\..\src\makeinc.mak" -DIRENTLIB = ..\..\src\common\dirent.lib +DIRENTLIB = ..\..\src\common\dirent-win32.lib TARGET = $(PERL512OUTPUT) all: $(TARGET) diff --git a/plugins/perl/makefile-514.mak b/plugins/perl/makefile-514.mak index c31a7ec4..4c8d0ebd 100644 --- a/plugins/perl/makefile-514.mak +++ b/plugins/perl/makefile-514.mak @@ -1,6 +1,6 @@ include "..\..\src\makeinc.mak" -DIRENTLIB = ..\..\src\common\dirent.lib +DIRENTLIB = ..\..\src\common\dirent-win32.lib TARGET = $(PERL514OUTPUT) all: $(TARGET) diff --git a/plugins/perl/perl.c b/plugins/perl/perl.c index a2763771..719ef292 100644 --- a/plugins/perl/perl.c +++ b/plugins/perl/perl.c @@ -28,7 +28,7 @@ #ifdef WIN32 #include #define _INC_DIRENT /* disable inclusion of perl's dirent.h, we use an own version for win32 */ -#include "../../src/common/dirent.h" +#include "../../src/common/dirent-win32.h" #else #include #endif diff --git a/plugins/python/makefile.mak b/plugins/python/makefile.mak index 8cbba3f5..bc004577 100644 --- a/plugins/python/makefile.mak +++ b/plugins/python/makefile.mak @@ -1,6 +1,6 @@ include "..\..\src\makeinc.mak" -DIRENTLIB = ..\..\src\common\dirent.lib +DIRENTLIB = ..\..\src\common\dirent-win32.lib TARGET = $(PYTHONOUTPUT) all: $(TARGET) diff --git a/plugins/python/python.c b/plugins/python/python.c index 3c535057..dcf4fc8f 100644 --- a/plugins/python/python.c +++ b/plugins/python/python.c @@ -57,7 +57,7 @@ #include #ifdef WIN32 -#include "../../src/common/dirent.h" +#include "../../src/common/dirent-win32.h" #include "../../config.h" #else #include diff --git a/src/common/dirent-win32.c b/src/common/dirent-win32.c new file mode 100644 index 00000000..273c6732 --- /dev/null +++ b/src/common/dirent-win32.c @@ -0,0 +1,199 @@ +/***************************************************************************** + * dirent.h - dirent API for Microsoft Visual Studio + * + * Copyright (C) 2006 Toni Ronkko + * + * Permission is hereby granted, free of charge, to any person obtaining + * a copy of this software and associated documentation files (the + * ``Software''), to deal in the Software without restriction, including + * without limitation the rights to use, copy, modify, merge, publish, + * distribute, sublicense, and/or sell copies of the Software, and to + * permit persons to whom the Software is furnished to do so, subject to + * the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + * IN NO EVENT SHALL TONI RONKKO BE LIABLE FOR ANY CLAIM, DAMAGES OR + * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. + * + * Dec 15, 2009, John Cunningham + * Added rewinddir member function + * + * Jan 18, 2008, Toni Ronkko + * Using FindFirstFileA and WIN32_FIND_DATAA to avoid converting string + * between multi-byte and unicode representations. This makes the + * code simpler and also allows the code to be compiled under MingW. Thanks + * to Azriel Fasten for the suggestion. + * + * Mar 4, 2007, Toni Ronkko + * Bug fix: due to the strncpy_s() function this file only compiled in + * Visual Studio 2005. Using the new string functions only when the + * compiler version allows. + * + * Nov 2, 2006, Toni Ronkko + * Major update: removed support for Watcom C, MS-DOS and Turbo C to + * simplify the file, updated the code to compile cleanly on Visual + * Studio 2005 with both unicode and multi-byte character strings, + * removed rewinddir() as it had a bug. + * + * Aug 20, 2006, Toni Ronkko + * Removed all remarks about MSVC 1.0, which is antiqued now. Simplified + * comments by removing SGML tags. + * + * May 14 2002, Toni Ronkko + * Embedded the function definitions directly to the header so that no + * source modules need to be included in the Visual Studio project. Removed + * all the dependencies to other projects so that this very header can be + * used independently. + * + * May 28 1998, Toni Ronkko + * First version. + *****************************************************************************/ + +#include "dirent-win32.h" + +/* Use the new safe string functions introduced in Visual Studio 2005 */ +#if defined(_MSC_VER) && _MSC_VER >= 1400 +# define STRNCPY(dest,src,size) strncpy_s((dest),(size),(src),_TRUNCATE) +#else +# define STRNCPY(dest,src,size) strncpy((dest),(src),(size)) +#endif + + +/***************************************************************************** + * Open directory stream DIRNAME for read and return a pointer to the + * internal working area that is used to retrieve individual directory + * entries. + */ +DIR *opendir(const char *dirname) +{ + DIR *dirp; + assert (dirname != NULL); + assert (strlen (dirname) < MAX_PATH); + + /* construct new DIR structure */ + dirp = (DIR*) malloc (sizeof (struct DIR)); + if (dirp != NULL) { + char *p; + + /* take directory name... */ + STRNCPY (dirp->patt, dirname, sizeof(dirp->patt)); + dirp->patt[MAX_PATH] = '\0'; + + /* ... and append search pattern to it */ + p = strchr (dirp->patt, '\0'); + if (dirp->patt < p && *(p-1) != '\\' && *(p-1) != ':') { + *p++ = '\\'; + } + *p++ = '*'; + *p = '\0'; + + /* open stream and retrieve first file */ + dirp->search_handle = FindFirstFileA (dirp->patt, &dirp->current.data); + if (dirp->search_handle == INVALID_HANDLE_VALUE) { + /* invalid search pattern? */ + free (dirp); + return NULL; + } + + /* there is an un-processed directory entry in memory now */ + dirp->cached = 1; + } + + return dirp; +} + + +/***************************************************************************** + * Read a directory entry, and return a pointer to a dirent structure + * containing the name of the entry in d_name field. Individual directory + * entries returned by this very function include regular files, + * sub-directories, pseudo-directories "." and "..", but also volume labels, + * hidden files and system files may be returned. + */ +struct dirent *readdir(DIR *dirp) +{ + assert (dirp != NULL); + + if (dirp->search_handle == INVALID_HANDLE_VALUE) { + /* directory stream was opened/rewound incorrectly or ended normally */ + return NULL; + } + + /* get next directory entry */ + if (dirp->cached != 0) { + /* a valid directory entry already in memory */ + dirp->cached = 0; + } else { + /* read next directory entry from disk */ + if (FindNextFileA (dirp->search_handle, &dirp->current.data) == FALSE) { + /* the very last file has been processed or an error occured */ + FindClose (dirp->search_handle); + dirp->search_handle = INVALID_HANDLE_VALUE; + return NULL; + } + } + + /* copy as a multibyte character string */ + STRNCPY ( dirp->current.d_name, + dirp->current.data.cFileName, + sizeof(dirp->current.d_name) ); + dirp->current.d_name[MAX_PATH] = '\0'; + + return &dirp->current; +} + + +/***************************************************************************** + * Close directory stream opened by opendir() function. Close of the + * directory stream invalidates the DIR structure as well as any previously + * read directory entry. + */ +int closedir(DIR *dirp) +{ + assert (dirp != NULL); + + /* release search handle */ + if (dirp->search_handle != INVALID_HANDLE_VALUE) { + FindClose (dirp->search_handle); + dirp->search_handle = INVALID_HANDLE_VALUE; + } + + /* release directory handle */ + free (dirp); + return 0; +} + + +/***************************************************************************** + * Resets the position of the directory stream to which dirp refers to the + * beginning of the directory. It also causes the directory stream to refer + * to the current state of the corresponding directory, as a call to opendir() + * would have done. If dirp does not refer to a directory stream, the effect + * is undefined. + */ +void rewinddir(DIR* dirp) +{ + /* release search handle */ + if (dirp->search_handle != INVALID_HANDLE_VALUE) { + FindClose (dirp->search_handle); + dirp->search_handle = INVALID_HANDLE_VALUE; + } + + /* open new search handle and retrieve first file */ + dirp->search_handle = FindFirstFileA (dirp->patt, &dirp->current.data); + if (dirp->search_handle == INVALID_HANDLE_VALUE) { + /* invalid search pattern? */ + free (dirp); + return; + } + + /* there is an un-processed directory entry in memory now */ + dirp->cached = 1; +} diff --git a/src/common/dirent-win32.h b/src/common/dirent-win32.h new file mode 100644 index 00000000..cbb753e6 --- /dev/null +++ b/src/common/dirent-win32.h @@ -0,0 +1,28 @@ +#ifndef DIRENT_H +#define DIRENT_H + +#include +#include +#include + +typedef struct dirent +{ + char d_name[MAX_PATH + 1]; /* current dir entry (multi-byte char string) */ + WIN32_FIND_DATAA data; /* file attributes */ +} dirent; + +typedef struct DIR +{ + dirent current; /* Current directory entry */ + int cached; /* Indicates un-processed entry in memory */ + HANDLE search_handle; /* File search handle */ + char patt[MAX_PATH + 3]; /* search pattern (3 = pattern + "\\*\0") */ +} DIR; + +/* Forward declarations */ +DIR *opendir (const char *dirname); +struct dirent *readdir (DIR *dirp); +int closedir (DIR *dirp); +void rewinddir(DIR* dirp); + +#endif /*DIRENT_H*/ diff --git a/src/common/dirent.c b/src/common/dirent.c deleted file mode 100644 index a84f1b65..00000000 --- a/src/common/dirent.c +++ /dev/null @@ -1,199 +0,0 @@ -/***************************************************************************** - * dirent.h - dirent API for Microsoft Visual Studio - * - * Copyright (C) 2006 Toni Ronkko - * - * Permission is hereby granted, free of charge, to any person obtaining - * a copy of this software and associated documentation files (the - * ``Software''), to deal in the Software without restriction, including - * without limitation the rights to use, copy, modify, merge, publish, - * distribute, sublicense, and/or sell copies of the Software, and to - * permit persons to whom the Software is furnished to do so, subject to - * the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. - * IN NO EVENT SHALL TONI RONKKO BE LIABLE FOR ANY CLAIM, DAMAGES OR - * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, - * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR - * OTHER DEALINGS IN THE SOFTWARE. - * - * Dec 15, 2009, John Cunningham - * Added rewinddir member function - * - * Jan 18, 2008, Toni Ronkko - * Using FindFirstFileA and WIN32_FIND_DATAA to avoid converting string - * between multi-byte and unicode representations. This makes the - * code simpler and also allows the code to be compiled under MingW. Thanks - * to Azriel Fasten for the suggestion. - * - * Mar 4, 2007, Toni Ronkko - * Bug fix: due to the strncpy_s() function this file only compiled in - * Visual Studio 2005. Using the new string functions only when the - * compiler version allows. - * - * Nov 2, 2006, Toni Ronkko - * Major update: removed support for Watcom C, MS-DOS and Turbo C to - * simplify the file, updated the code to compile cleanly on Visual - * Studio 2005 with both unicode and multi-byte character strings, - * removed rewinddir() as it had a bug. - * - * Aug 20, 2006, Toni Ronkko - * Removed all remarks about MSVC 1.0, which is antiqued now. Simplified - * comments by removing SGML tags. - * - * May 14 2002, Toni Ronkko - * Embedded the function definitions directly to the header so that no - * source modules need to be included in the Visual Studio project. Removed - * all the dependencies to other projects so that this very header can be - * used independently. - * - * May 28 1998, Toni Ronkko - * First version. - *****************************************************************************/ - -#include "dirent.h" - -/* Use the new safe string functions introduced in Visual Studio 2005 */ -#if defined(_MSC_VER) && _MSC_VER >= 1400 -# define STRNCPY(dest,src,size) strncpy_s((dest),(size),(src),_TRUNCATE) -#else -# define STRNCPY(dest,src,size) strncpy((dest),(src),(size)) -#endif - - -/***************************************************************************** - * Open directory stream DIRNAME for read and return a pointer to the - * internal working area that is used to retrieve individual directory - * entries. - */ -DIR *opendir(const char *dirname) -{ - DIR *dirp; - assert (dirname != NULL); - assert (strlen (dirname) < MAX_PATH); - - /* construct new DIR structure */ - dirp = (DIR*) malloc (sizeof (struct DIR)); - if (dirp != NULL) { - char *p; - - /* take directory name... */ - STRNCPY (dirp->patt, dirname, sizeof(dirp->patt)); - dirp->patt[MAX_PATH] = '\0'; - - /* ... and append search pattern to it */ - p = strchr (dirp->patt, '\0'); - if (dirp->patt < p && *(p-1) != '\\' && *(p-1) != ':') { - *p++ = '\\'; - } - *p++ = '*'; - *p = '\0'; - - /* open stream and retrieve first file */ - dirp->search_handle = FindFirstFileA (dirp->patt, &dirp->current.data); - if (dirp->search_handle == INVALID_HANDLE_VALUE) { - /* invalid search pattern? */ - free (dirp); - return NULL; - } - - /* there is an un-processed directory entry in memory now */ - dirp->cached = 1; - } - - return dirp; -} - - -/***************************************************************************** - * Read a directory entry, and return a pointer to a dirent structure - * containing the name of the entry in d_name field. Individual directory - * entries returned by this very function include regular files, - * sub-directories, pseudo-directories "." and "..", but also volume labels, - * hidden files and system files may be returned. - */ -struct dirent *readdir(DIR *dirp) -{ - assert (dirp != NULL); - - if (dirp->search_handle == INVALID_HANDLE_VALUE) { - /* directory stream was opened/rewound incorrectly or ended normally */ - return NULL; - } - - /* get next directory entry */ - if (dirp->cached != 0) { - /* a valid directory entry already in memory */ - dirp->cached = 0; - } else { - /* read next directory entry from disk */ - if (FindNextFileA (dirp->search_handle, &dirp->current.data) == FALSE) { - /* the very last file has been processed or an error occured */ - FindClose (dirp->search_handle); - dirp->search_handle = INVALID_HANDLE_VALUE; - return NULL; - } - } - - /* copy as a multibyte character string */ - STRNCPY ( dirp->current.d_name, - dirp->current.data.cFileName, - sizeof(dirp->current.d_name) ); - dirp->current.d_name[MAX_PATH] = '\0'; - - return &dirp->current; -} - - -/***************************************************************************** - * Close directory stream opened by opendir() function. Close of the - * directory stream invalidates the DIR structure as well as any previously - * read directory entry. - */ -int closedir(DIR *dirp) -{ - assert (dirp != NULL); - - /* release search handle */ - if (dirp->search_handle != INVALID_HANDLE_VALUE) { - FindClose (dirp->search_handle); - dirp->search_handle = INVALID_HANDLE_VALUE; - } - - /* release directory handle */ - free (dirp); - return 0; -} - - -/***************************************************************************** - * Resets the position of the directory stream to which dirp refers to the - * beginning of the directory. It also causes the directory stream to refer - * to the current state of the corresponding directory, as a call to opendir() - * would have done. If dirp does not refer to a directory stream, the effect - * is undefined. - */ -void rewinddir(DIR* dirp) -{ - /* release search handle */ - if (dirp->search_handle != INVALID_HANDLE_VALUE) { - FindClose (dirp->search_handle); - dirp->search_handle = INVALID_HANDLE_VALUE; - } - - /* open new search handle and retrieve first file */ - dirp->search_handle = FindFirstFileA (dirp->patt, &dirp->current.data); - if (dirp->search_handle == INVALID_HANDLE_VALUE) { - /* invalid search pattern? */ - free (dirp); - return; - } - - /* there is an un-processed directory entry in memory now */ - dirp->cached = 1; -} diff --git a/src/common/dirent.h b/src/common/dirent.h deleted file mode 100644 index cbb753e6..00000000 --- a/src/common/dirent.h +++ /dev/null @@ -1,28 +0,0 @@ -#ifndef DIRENT_H -#define DIRENT_H - -#include -#include -#include - -typedef struct dirent -{ - char d_name[MAX_PATH + 1]; /* current dir entry (multi-byte char string) */ - WIN32_FIND_DATAA data; /* file attributes */ -} dirent; - -typedef struct DIR -{ - dirent current; /* Current directory entry */ - int cached; /* Indicates un-processed entry in memory */ - HANDLE search_handle; /* File search handle */ - char patt[MAX_PATH + 3]; /* search pattern (3 = pattern + "\\*\0") */ -} DIR; - -/* Forward declarations */ -DIR *opendir (const char *dirname); -struct dirent *readdir (DIR *dirp); -int closedir (DIR *dirp); -void rewinddir(DIR* dirp); - -#endif /*DIRENT_H*/ diff --git a/src/common/makefile.mak b/src/common/makefile.mak index 8b350efc..f78a6d8d 100644 --- a/src/common/makefile.mak +++ b/src/common/makefile.mak @@ -5,7 +5,7 @@ cfgfiles.obj \ chanopt.obj \ ctcp.obj \ dcc.obj \ -dirent.obj \ +dirent-win32.obj \ history.obj \ ignore.obj \ inbound.obj \ @@ -27,13 +27,13 @@ userlist.obj \ util.obj \ xchat.obj -all: $(COMMON_OBJECTS) xchatcommon.lib dirent.lib +all: $(COMMON_OBJECTS) xchatcommon.lib dirent-win32.lib xchatcommon.lib: $(COMMON_OBJECTS) lib /nologo /out:xchatcommon.lib $(COMMON_OBJECTS) -dirent.lib: dirent.obj - lib /nologo /out:dirent.lib dirent.obj +dirent-win32.lib: dirent-win32.obj + lib /nologo /out:dirent-win32.lib dirent-win32.obj .c.obj:: $(CC) $(CFLAGS) $(GLIB) $< @@ -41,4 +41,4 @@ dirent.lib: dirent.obj clean: @del *.obj @del xchatcommon.lib - @del dirent.lib + @del dirent-win32.lib diff --git a/src/common/plugin.c b/src/common/plugin.c index ccb64e93..5ed20b87 100644 --- a/src/common/plugin.c +++ b/src/common/plugin.c @@ -1008,7 +1008,11 @@ xchat_get_info (xchat_plugin *ph, const char *id) return XCHATLIBDIR; case 0x14f51cd8: /* version */ +#ifdef WIN32 return XCHAT_RELEASE; +#else + return PACKAGE_VERSION; +#endif case 0xdd9b1abd: /* xchatdir */ return get_xdir_utf8 (); diff --git a/src/common/util.c b/src/common/util.c index ccc48657..51222e40 100644 --- a/src/common/util.c +++ b/src/common/util.c @@ -32,7 +32,7 @@ #include #include #include -#include "dirent.h" +#include "dirent-win32.h" #else #include #include diff --git a/src/fe-gtk/about.c b/src/fe-gtk/about.c index 41f3c09b..dc1cbf08 100644 --- a/src/fe-gtk/about.c +++ b/src/fe-gtk/about.c @@ -139,7 +139,7 @@ menu_about (GtkWidget * wid, gpointer sess) (portable_mode () ? "Yes" : "No"), get_cpu_arch () #else - "%s\n\n" + "\n%s\n\n" "%s\n" "Charset: %s " "Renderer: %s\n" diff --git a/src/fe-gtk/fe-gtk.h b/src/fe-gtk/fe-gtk.h index 4183f559..8fffb3cc 100644 --- a/src/fe-gtk/fe-gtk.h +++ b/src/fe-gtk/fe-gtk.h @@ -1,13 +1,6 @@ #include "../../config.h" -#ifdef WIN32 -/* If you're compiling this for Windows, your release is un-official - * and not condoned. Please don't use the XChat name. Make up your - * own name! */ #define DISPLAY_NAME "XChat-WDK" -#else -#define DISPLAY_NAME "XChat" -#endif #ifndef WIN32 #include diff --git a/src/fe-gtk/setup.c b/src/fe-gtk/setup.c index 1f1be0b4..cce85d30 100644 --- a/src/fe-gtk/setup.c +++ b/src/fe-gtk/setup.c @@ -1383,7 +1383,9 @@ setup_create_color_page (void) setup_create_other_color (_("New message:"), COL_NEW_MSG, 10, tab); setup_create_other_colorR (_("Away user:"), COL_AWAY, 10, tab); setup_create_other_color (_("Highlight:"), COL_HILIGHT, 11, tab); +#if defined(USE_GTKSPELL) || defined(USE_LIBSEXY) setup_create_other_colorR (_("Spell checker:"), COL_SPELL, 11, tab); +#endif return box; } -- cgit 1.4.1 From 95aace51cca7c7a87107a52a5618bba2135ce025 Mon Sep 17 00:00:00 2001 From: Berke Viktor Date: Sun, 10 Jun 2012 12:49:17 +0200 Subject: More solution fixes and add language interfaces --- plugins/lua/lua.c | 2 +- plugins/lua/lua.def | 3 ++ plugins/lua/lua.vcxproj | 73 +++++++++++++++++++++++++++++++++++ plugins/lua/lua.vcxproj.filters | 23 +++++++++++ plugins/perl/perl-512.vcxproj | 71 ++++++++++++++++++++++++++++++++++ plugins/perl/perl-512.vcxproj.filters | 23 +++++++++++ plugins/perl/perl-514.vcxproj | 71 ++++++++++++++++++++++++++++++++++ plugins/perl/perl-514.vcxproj.filters | 23 +++++++++++ plugins/perl/perl-516.vcxproj | 71 ++++++++++++++++++++++++++++++++++ plugins/perl/perl-516.vcxproj.filters | 23 +++++++++++ plugins/perl/perl.c | 2 +- plugins/python/python.c | 2 +- plugins/python/python.def | 4 ++ plugins/python/python.vcxproj | 65 +++++++++++++++++++++++++++++++ plugins/python/python.vcxproj.filters | 23 +++++++++++ plugins/tcl/tcl.def | 4 ++ plugins/tcl/tcl.vcxproj | 69 +++++++++++++++++++++++++++++++++ plugins/tcl/tcl.vcxproj.filters | 35 +++++++++++++++++ src/fe-gtk/fe-gtk.vcxproj | 4 +- src/pixmaps/pixmaps.vcxproj | 2 +- win32/xchat.props | 30 ++++++++++++-- win32/xchat.sln | 52 +++++++++++++++++++++++++ 22 files changed, 666 insertions(+), 9 deletions(-) create mode 100644 plugins/lua/lua.def create mode 100644 plugins/lua/lua.vcxproj create mode 100644 plugins/lua/lua.vcxproj.filters create mode 100644 plugins/perl/perl-512.vcxproj create mode 100644 plugins/perl/perl-512.vcxproj.filters create mode 100644 plugins/perl/perl-514.vcxproj create mode 100644 plugins/perl/perl-514.vcxproj.filters create mode 100644 plugins/perl/perl-516.vcxproj create mode 100644 plugins/perl/perl-516.vcxproj.filters create mode 100644 plugins/python/python.def create mode 100644 plugins/python/python.vcxproj create mode 100644 plugins/python/python.vcxproj.filters create mode 100644 plugins/tcl/tcl.def create mode 100644 plugins/tcl/tcl.vcxproj create mode 100644 plugins/tcl/tcl.vcxproj.filters (limited to 'plugins/lua') diff --git a/plugins/lua/lua.c b/plugins/lua/lua.c index 9f29bf08..6ccddf2c 100644 --- a/plugins/lua/lua.c +++ b/plugins/lua/lua.c @@ -48,7 +48,7 @@ #ifdef _WIN32 #include /* for getcwd */ -#include "../../src/common/dirent-win32.h" +#include "../../src/dirent/dirent-win32.h" #endif #if !( defined(_WIN32) || defined(LXC_XCHAT_GETTEXT) ) diff --git a/plugins/lua/lua.def b/plugins/lua/lua.def new file mode 100644 index 00000000..77670bf2 --- /dev/null +++ b/plugins/lua/lua.def @@ -0,0 +1,3 @@ +EXPORTS +xchat_plugin_init +xchat_plugin_deinit diff --git a/plugins/lua/lua.vcxproj b/plugins/lua/lua.vcxproj new file mode 100644 index 00000000..d78a1e35 --- /dev/null +++ b/plugins/lua/lua.vcxproj @@ -0,0 +1,73 @@ + + + + + Release + Win32 + + + + {646B4316-C8B8-4DB6-B6AE-E586929E5729} + Win32Proj + lua + + + + DynamicLibrary + false + true + MultiByte + WDK7 + + + + + + + + + + + false + $(LuaOutput) + + + + Level3 + + + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;LUA_EXPORTS;$(OwnFlags);%(PreprocessorDefinitions) + $(DepsRoot)\include;..;%(AdditionalIncludeDirectories) + + + Windows + true + true + true + $(DepsRoot)\lib;$(OutDir);%(AdditionalLibraryDirectories) + "$(LuaLib).lib";;dirent-win32.lib;%(AdditionalDependencies) + + + + + "$(LuaLib).lib";$(DepLibs);dirent-win32.lib;%(AdditionalDependencies) + + + + + WIN32;NDEBUG;_WINDOWS;_USRDLL;$(OwnFlags);snprintf=g_snprintf;%(PreprocessorDefinitions) + + + + + + + + + + + + \ No newline at end of file diff --git a/plugins/lua/lua.vcxproj.filters b/plugins/lua/lua.vcxproj.filters new file mode 100644 index 00000000..9c7e3d89 --- /dev/null +++ b/plugins/lua/lua.vcxproj.filters @@ -0,0 +1,23 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Resource Files + + + + + Source Files + + + \ No newline at end of file diff --git a/plugins/perl/perl-512.vcxproj b/plugins/perl/perl-512.vcxproj new file mode 100644 index 00000000..440496f3 --- /dev/null +++ b/plugins/perl/perl-512.vcxproj @@ -0,0 +1,71 @@ + + + + + Release + Win32 + + + + {987E9374-98A1-44BA-946F-D3472D7A7055} + Win32Proj + perl512 + + + + DynamicLibrary + false + true + MultiByte + WDK7 + + + + + + + + + + + false + $(Perl512Output) + + + + Level1 + + + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;PERL512_EXPORTS;$(OwnFlags);%(PreprocessorDefinitions) + true + $(Perl512Path)\perl\lib\CORE;..;%(AdditionalIncludeDirectories) + + + Windows + true + true + true + $(OutDir);%(AdditionalLibraryDirectories) + $(Perl512Lib).lib;dirent-win32.lib;%(AdditionalDependencies) + perl.def + $(Perl512Lib).dll;%(DelayLoadDLLs) + + + "$(GendefPath)\gendef" "$(Perl512Path)\perl\bin\$(Perl512Lib).dll" +lib /nologo /machine:x86 "/def:$(Perl512Lib).def" "/out:$(OutputPath)\$(Perl512Lib).lib" +"$(Perl512Path)\perl\bin\perl.exe" generate_header + + + + + + + + + + + + \ No newline at end of file diff --git a/plugins/perl/perl-512.vcxproj.filters b/plugins/perl/perl-512.vcxproj.filters new file mode 100644 index 00000000..c6c78a57 --- /dev/null +++ b/plugins/perl/perl-512.vcxproj.filters @@ -0,0 +1,23 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Source Files + + + + + Resource Files + + + \ No newline at end of file diff --git a/plugins/perl/perl-514.vcxproj b/plugins/perl/perl-514.vcxproj new file mode 100644 index 00000000..04865562 --- /dev/null +++ b/plugins/perl/perl-514.vcxproj @@ -0,0 +1,71 @@ + + + + + Release + Win32 + + + + {C4C9FA6F-F990-4C7B-85F6-CD8F4F5728F0} + Win32Proj + perl514 + + + + DynamicLibrary + false + true + MultiByte + WDK7 + + + + + + + + + + + false + $(Perl514Output) + + + + Level1 + + + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;PERL514_EXPORTS;$(OwnFlags);%(PreprocessorDefinitions) + $(Perl514Path)\perl\lib\CORE;..;%(AdditionalIncludeDirectories) + true + + + Windows + true + true + true + $(OutDir);%(AdditionalLibraryDirectories) + $(Perl514Lib).lib;dirent-win32.lib;%(AdditionalDependencies) + perl.def + $(Perl514Lib).dll;%(DelayLoadDLLs) + + + "$(GendefPath)\gendef" "$(Perl514Path)\perl\bin\$(Perl514Lib).dll" +lib /nologo /machine:x86 "/def:$(Perl514Lib).def" "/out:$(OutputPath)\$(Perl514Lib).lib" +"$(Perl514Path)\perl\bin\perl.exe" generate_header + + + + + + + + + + + + \ No newline at end of file diff --git a/plugins/perl/perl-514.vcxproj.filters b/plugins/perl/perl-514.vcxproj.filters new file mode 100644 index 00000000..c6c78a57 --- /dev/null +++ b/plugins/perl/perl-514.vcxproj.filters @@ -0,0 +1,23 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Source Files + + + + + Resource Files + + + \ No newline at end of file diff --git a/plugins/perl/perl-516.vcxproj b/plugins/perl/perl-516.vcxproj new file mode 100644 index 00000000..5a3c620d --- /dev/null +++ b/plugins/perl/perl-516.vcxproj @@ -0,0 +1,71 @@ + + + + + Release + Win32 + + + + {58654438-F674-42F7-88FA-73EF90AD80B1} + Win32Proj + perl516 + + + + DynamicLibrary + false + true + MultiByte + WDK7 + + + + + + + + + + + false + $(Perl516Output) + + + + Level1 + + + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;PERL516_EXPORTS;$(OwnFlags);%(PreprocessorDefinitions) + $(Perl516Path)\perl\lib\CORE;..;%(AdditionalIncludeDirectories) + true + + + Windows + true + true + true + $(OutDir);%(AdditionalLibraryDirectories) + $(Perl516Lib).lib;dirent-win32.lib;%(AdditionalDependencies) + perl.def + $(Perl516Lib).dll;%(DelayLoadDLLs) + + + "$(GendefPath)\gendef" "$(Perl516Path)\perl\bin\$(Perl516Lib).dll" +lib /nologo /machine:x86 "/def:$(Perl516Lib).def" "/out:$(OutputPath)\$(Perl516Lib).lib" +"$(Perl516Path)\perl\bin\perl.exe" generate_header + + + + + + + + + + + + \ No newline at end of file diff --git a/plugins/perl/perl-516.vcxproj.filters b/plugins/perl/perl-516.vcxproj.filters new file mode 100644 index 00000000..f6d00b5c --- /dev/null +++ b/plugins/perl/perl-516.vcxproj.filters @@ -0,0 +1,23 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Resource Files + + + + + Source Files + + + \ No newline at end of file diff --git a/plugins/perl/perl.c b/plugins/perl/perl.c index 719ef292..b07aa651 100644 --- a/plugins/perl/perl.c +++ b/plugins/perl/perl.c @@ -28,7 +28,7 @@ #ifdef WIN32 #include #define _INC_DIRENT /* disable inclusion of perl's dirent.h, we use an own version for win32 */ -#include "../../src/common/dirent-win32.h" +#include "../../src/dirent/dirent-win32.h" #else #include #endif diff --git a/plugins/python/python.c b/plugins/python/python.c index dcf4fc8f..74d07224 100644 --- a/plugins/python/python.c +++ b/plugins/python/python.c @@ -57,7 +57,7 @@ #include #ifdef WIN32 -#include "../../src/common/dirent-win32.h" +#include "../../src/dirent/dirent-win32.h" #include "../../config.h" #else #include diff --git a/plugins/python/python.def b/plugins/python/python.def new file mode 100644 index 00000000..5797636b --- /dev/null +++ b/plugins/python/python.def @@ -0,0 +1,4 @@ +EXPORTS +xchat_plugin_init +xchat_plugin_deinit +xchat_plugin_get_info diff --git a/plugins/python/python.vcxproj b/plugins/python/python.vcxproj new file mode 100644 index 00000000..de0fadea --- /dev/null +++ b/plugins/python/python.vcxproj @@ -0,0 +1,65 @@ + + + + + Release + Win32 + + + + {19C52A0A-A790-409E-A28A-9745FF990F5C} + Win32Proj + python + + + + DynamicLibrary + false + true + MultiByte + WDK7 + + + + + + + + + + + false + $(PythonOutput) + + + + Level1 + + + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;PYTHON_EXPORTS;$(OwnFlags);%(PreprocessorDefinitions) + $(Glib);$(PythonPath)\include;..;%(AdditionalIncludeDirectories) + true + + + Windows + true + true + true + python.def + "$(PythonLib).lib";$(DepLibs);dirent-win32.lib;%(AdditionalDependencies) + $(DepsRoot)\lib;$(OutDir);$(PythonPath)\libs;%(AdditionalLibraryDirectories) + + + + + + + + + + + + \ No newline at end of file diff --git a/plugins/python/python.vcxproj.filters b/plugins/python/python.vcxproj.filters new file mode 100644 index 00000000..d56e53b6 --- /dev/null +++ b/plugins/python/python.vcxproj.filters @@ -0,0 +1,23 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Resource Files + + + + + Source Files + + + \ No newline at end of file diff --git a/plugins/tcl/tcl.def b/plugins/tcl/tcl.def new file mode 100644 index 00000000..5797636b --- /dev/null +++ b/plugins/tcl/tcl.def @@ -0,0 +1,4 @@ +EXPORTS +xchat_plugin_init +xchat_plugin_deinit +xchat_plugin_get_info diff --git a/plugins/tcl/tcl.vcxproj b/plugins/tcl/tcl.vcxproj new file mode 100644 index 00000000..fa69aa33 --- /dev/null +++ b/plugins/tcl/tcl.vcxproj @@ -0,0 +1,69 @@ + + + + + Release + Win32 + + + + + + + + + + + + + + {2773666A-8CFC-4533-A043-EAD59F16A1C7} + Win32Proj + tcl + + + + DynamicLibrary + false + true + MultiByte + WDK7 + + + + + + + + + + + false + $(TclOutput) + + + + Level1 + NotUsing + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;TCL_EXPORTS;TCL_DLL="$(TclLib).dll";$(OwnFlags);%(PreprocessorDefinitions) + $(TclPath)\include;..;%(AdditionalIncludeDirectories) + true + + + Windows + true + true + true + $(TclPath)\lib;%(AdditionalLibraryDirectories) + "$(TclLib).lib";%(AdditionalDependencies) + tcl.def + $(TclLib).dll;%(DelayLoadDLLs) + + + + + + \ No newline at end of file diff --git a/plugins/tcl/tcl.vcxproj.filters b/plugins/tcl/tcl.vcxproj.filters new file mode 100644 index 00000000..43f63d84 --- /dev/null +++ b/plugins/tcl/tcl.vcxproj.filters @@ -0,0 +1,35 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hpp;hxx;hm;inl;inc;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Header Files + + + Header Files + + + + + Source Files + + + + + Resource Files + + + \ No newline at end of file diff --git a/src/fe-gtk/fe-gtk.vcxproj b/src/fe-gtk/fe-gtk.vcxproj index deb76c27..68390d03 100644 --- a/src/fe-gtk/fe-gtk.vcxproj +++ b/src/fe-gtk/fe-gtk.vcxproj @@ -48,8 +48,8 @@ true true true - $(DepsRoot)\lib;%(AdditionalLibraryDirectories) - $(DepLibs);"$(OutDir)\common.lib";"$(OutDir)\dirent-win32.lib";%(AdditionalDependencies) + $(DepsRoot)\lib;$(OutDir);%(AdditionalLibraryDirectories) + $(DepLibs);common.lib;dirent-win32.lib;%(AdditionalDependencies) mainCRTStartup diff --git a/src/pixmaps/pixmaps.vcxproj b/src/pixmaps/pixmaps.vcxproj index 39151d5a..ba88104d 100644 --- a/src/pixmaps/pixmaps.vcxproj +++ b/src/pixmaps/pixmaps.vcxproj @@ -47,7 +47,7 @@ true - "$(DepsRoot)\bin\gdk-pixbuf-csource" --build-list $(Pixmaps) > "$(SolutionDir)\..\src\pixmaps\inline_pngs.h" + "$(DepsRoot)\bin\gdk-pixbuf-csource" --build-list $(Pixmaps) > "$(SolutionDir)\..\src\pixmaps\inline_pngs.h" diff --git a/win32/xchat.props b/win32/xchat.props index 09f26df0..32ed807d 100644 --- a/win32/xchat.props +++ b/win32/xchat.props @@ -3,10 +3,34 @@ - c:\mozilla-build\deps root + c:\mozilla-build\xchat deps + c:\mozilla-build\gendef path + c:\mozilla-build\tcl path + c:\mozilla-build\perl512 path + c:\mozilla-build\perl514 path + c:\mozilla-build\perl516 path + c:\mozilla-build\python path - _CRT_SECURE_NO_WARNINGS;G_DISABLE_CAST_CHECKS;G_DISABLE_DEPRECATED;GDK_PIXBUF_DISABLE_DEPRECATED;GDK_DISABLE_DEPRECATED;HAVE_STRTOULL;strtoull=_strtoui64;strcasecmp=stricmp;strncasecmp=strnicmp - $(YourDepsFolder)\$(PlatformName) + G_DISABLE_CAST_CHECKS;G_DISABLE_DEPRECATED;GDK_PIXBUF_DISABLE_DEPRECATED;GDK_DISABLE_DEPRECATED;HAVE_STRTOULL;strtoull=_strtoui64;strcasecmp=stricmp;strncasecmp=strnicmp;__inline__=__inline; + $(YourDepsPath)\$(PlatformName) + $(YourGendefPath) + lua51 + xclua + $(YourTclPath)\$(PlatformName) + tcl85 + xctcl + $(YourPerl512Path)\$(PlatformName) + perl512 + xcperl-512 + $(YourPerl514Path)\$(PlatformName) + perl514 + xcperl-514 + $(YourPerl516Path)\$(PlatformName) + perl516 + xcperl-516 + $(YourPythonPath)\$(PlatformName) + python27 + xcpython $(DepsRoot)\include\glib-2.0;$(DepsRoot)\lib\glib-2.0\include;$(DepsRoot)\include\libxml2 $(DepsRoot)\include\gtk-2.0;$(DepsRoot)\lib\gtk-2.0\include;$(DepsRoot)\include\atk-1.0;$(DepsRoot)\include\cairo;$(DepsRoot)\include\pango-1.0;$(DepsRoot)\include\gdk-pixbuf-2.0 bookpng "$(SolutionDir)\..\src\pixmaps\book.png" hoppng "$(SolutionDir)\..\src\pixmaps\hop.png" oppng "$(SolutionDir)\..\src\pixmaps\op.png" purplepng "$(SolutionDir)\..\src\pixmaps\purple.png" redpng "$(SolutionDir)\..\src\pixmaps\red.png" trayfilepng "$(SolutionDir)\..\src\pixmaps\fileoffer.png" trayhilightpng "$(SolutionDir)\..\src\pixmaps\highlight.png" traymsgpng "$(SolutionDir)\..\src\pixmaps\message.png" voicepng "$(SolutionDir)\..\src\pixmaps\voice.png" xchatpng "$(SolutionDir)\..\xchat.png" diff --git a/win32/xchat.sln b/win32/xchat.sln index 430e3d60..7aa6b029 100644 --- a/win32/xchat.sln +++ b/win32/xchat.sln @@ -23,6 +23,32 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fe-text", "..\src\fe-text\f {98B56DF9-E4F1-4696-A565-5F7823CF214D} = {98B56DF9-E4F1-4696-A565-5F7823CF214D} EndProjectSection EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "xchat", "xchat", "{AAACEB12-9475-410E-AF5A-FDFF907E9043}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "plugins", "plugins", "{561126F4-FA18-45FC-A2BF-8F858F161D6D}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "scripting", "scripting", "{D237DA6B-BD5F-46C0-8BEA-50E9A1340240}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "common", "common", "{BB051F0F-A841-4A9A-BAF6-51DD9866D65A}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tcl", "..\plugins\tcl\tcl.vcxproj", "{2773666A-8CFC-4533-A043-EAD59F16A1C7}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "perl-512", "..\plugins\perl\perl-512.vcxproj", "{987E9374-98A1-44BA-946F-D3472D7A7055}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "perl-514", "..\plugins\perl\perl-514.vcxproj", "{C4C9FA6F-F990-4C7B-85F6-CD8F4F5728F0}" + ProjectSection(ProjectDependencies) = postProject + {987E9374-98A1-44BA-946F-D3472D7A7055} = {987E9374-98A1-44BA-946F-D3472D7A7055} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "perl-516", "..\plugins\perl\perl-516.vcxproj", "{58654438-F674-42F7-88FA-73EF90AD80B1}" + ProjectSection(ProjectDependencies) = postProject + {C4C9FA6F-F990-4C7B-85F6-CD8F4F5728F0} = {C4C9FA6F-F990-4C7B-85F6-CD8F4F5728F0} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "python", "..\plugins\python\python.vcxproj", "{19C52A0A-A790-409E-A28A-9745FF990F5C}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lua", "..\plugins\lua\lua.vcxproj", "{646B4316-C8B8-4DB6-B6AE-E586929E5729}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Release|Win32 = Release|Win32 @@ -40,8 +66,34 @@ Global {E4BDB4C8-2335-415A-ACEE-BA88B19BFE82}.Release|Win32.Build.0 = Release|Win32 {E93E1255-95D1-4B08-8FDF-B53CC6A21280}.Release|Win32.ActiveCfg = Release|Win32 {E93E1255-95D1-4B08-8FDF-B53CC6A21280}.Release|Win32.Build.0 = Release|Win32 + {2773666A-8CFC-4533-A043-EAD59F16A1C7}.Release|Win32.ActiveCfg = Release|Win32 + {2773666A-8CFC-4533-A043-EAD59F16A1C7}.Release|Win32.Build.0 = Release|Win32 + {987E9374-98A1-44BA-946F-D3472D7A7055}.Release|Win32.ActiveCfg = Release|Win32 + {987E9374-98A1-44BA-946F-D3472D7A7055}.Release|Win32.Build.0 = Release|Win32 + {C4C9FA6F-F990-4C7B-85F6-CD8F4F5728F0}.Release|Win32.ActiveCfg = Release|Win32 + {C4C9FA6F-F990-4C7B-85F6-CD8F4F5728F0}.Release|Win32.Build.0 = Release|Win32 + {58654438-F674-42F7-88FA-73EF90AD80B1}.Release|Win32.ActiveCfg = Release|Win32 + {58654438-F674-42F7-88FA-73EF90AD80B1}.Release|Win32.Build.0 = Release|Win32 + {19C52A0A-A790-409E-A28A-9745FF990F5C}.Release|Win32.ActiveCfg = Release|Win32 + {19C52A0A-A790-409E-A28A-9745FF990F5C}.Release|Win32.Build.0 = Release|Win32 + {646B4316-C8B8-4DB6-B6AE-E586929E5729}.Release|Win32.ActiveCfg = Release|Win32 + {646B4316-C8B8-4DB6-B6AE-E586929E5729}.Release|Win32.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {626DA61C-FA8B-474C-B2F5-72AD9DFEE642} = {AAACEB12-9475-410E-AF5A-FDFF907E9043} + {E4BDB4C8-2335-415A-ACEE-BA88B19BFE82} = {AAACEB12-9475-410E-AF5A-FDFF907E9043} + {E93E1255-95D1-4B08-8FDF-B53CC6A21280} = {AAACEB12-9475-410E-AF5A-FDFF907E9043} + {87554B59-006C-4D94-9714-897B27067BA3} = {AAACEB12-9475-410E-AF5A-FDFF907E9043} + {6CD3647E-4541-4849-9DD7-C8816665AE42} = {BB051F0F-A841-4A9A-BAF6-51DD9866D65A} + {98B56DF9-E4F1-4696-A565-5F7823CF214D} = {BB051F0F-A841-4A9A-BAF6-51DD9866D65A} + {2773666A-8CFC-4533-A043-EAD59F16A1C7} = {D237DA6B-BD5F-46C0-8BEA-50E9A1340240} + {987E9374-98A1-44BA-946F-D3472D7A7055} = {D237DA6B-BD5F-46C0-8BEA-50E9A1340240} + {C4C9FA6F-F990-4C7B-85F6-CD8F4F5728F0} = {D237DA6B-BD5F-46C0-8BEA-50E9A1340240} + {58654438-F674-42F7-88FA-73EF90AD80B1} = {D237DA6B-BD5F-46C0-8BEA-50E9A1340240} + {19C52A0A-A790-409E-A28A-9745FF990F5C} = {D237DA6B-BD5F-46C0-8BEA-50E9A1340240} + {646B4316-C8B8-4DB6-B6AE-E586929E5729} = {D237DA6B-BD5F-46C0-8BEA-50E9A1340240} + EndGlobalSection EndGlobal -- cgit 1.4.1 From a673109c495916f4198b216a0e52aa9d6b986a8f Mon Sep 17 00:00:00 2001 From: Berke Viktor Date: Sun, 10 Jun 2012 14:19:40 +0200 Subject: Add all plugins to solution except WMPA --- plugins/checksum/checksum.def | 3 + plugins/checksum/checksum.vcxproj | 65 ++++++++++++++++++ plugins/checksum/checksum.vcxproj.filters | 23 +++++++ plugins/dns/dns.def | 3 + plugins/dns/dns.vcxproj | 69 +++++++++++++++++++ plugins/dns/dns.vcxproj.filters | 35 ++++++++++ plugins/doat/doat.def | 3 + plugins/doat/doat.vcxproj | 63 +++++++++++++++++ plugins/doat/doat.vcxproj.filters | 23 +++++++ plugins/exec/exec.def | 3 + plugins/exec/exec.vcxproj | 63 +++++++++++++++++ plugins/exec/exec.vcxproj.filters | 23 +++++++ plugins/fishlim/fishlim.def | 4 ++ plugins/fishlim/fishlim.vcxproj | 77 +++++++++++++++++++++ plugins/fishlim/fishlim.vcxproj.filters | 59 ++++++++++++++++ plugins/lua/lua.vcxproj | 6 +- plugins/mpcinfo/mpcinfo.def | 3 + plugins/mpcinfo/mpcinfo.vcxproj | 63 +++++++++++++++++ plugins/mpcinfo/mpcinfo.vcxproj.filters | 23 +++++++ plugins/upd/upd.def | 3 + plugins/upd/upd.vcxproj | 65 ++++++++++++++++++ plugins/upd/upd.vcxproj.filters | 23 +++++++ plugins/winamp/winamp.def | 3 + plugins/winamp/winamp.vcxproj | 63 +++++++++++++++++ plugins/winamp/winamp.vcxproj.filters | 23 +++++++ plugins/winsys/winsys.def | 3 + plugins/winsys/winsys.vcxproj | 66 ++++++++++++++++++ plugins/winsys/winsys.vcxproj.filters | 23 +++++++ plugins/xsasl/xsasl.def | 3 + plugins/xsasl/xsasl.vcxproj | 65 ++++++++++++++++++ plugins/xsasl/xsasl.vcxproj.filters | 23 +++++++ plugins/xtray/xtray.def | 3 + plugins/xtray/xtray.vcxproj | 91 +++++++++++++++++++++++++ plugins/xtray/xtray.vcxproj.filters | 109 ++++++++++++++++++++++++++++++ src/version/version.vcxproj | 3 +- win32/xchat.sln | 66 ++++++++++++++++++ 36 files changed, 1244 insertions(+), 2 deletions(-) create mode 100644 plugins/checksum/checksum.def create mode 100644 plugins/checksum/checksum.vcxproj create mode 100644 plugins/checksum/checksum.vcxproj.filters create mode 100644 plugins/dns/dns.def create mode 100644 plugins/dns/dns.vcxproj create mode 100644 plugins/dns/dns.vcxproj.filters create mode 100644 plugins/doat/doat.def create mode 100644 plugins/doat/doat.vcxproj create mode 100644 plugins/doat/doat.vcxproj.filters create mode 100644 plugins/exec/exec.def create mode 100644 plugins/exec/exec.vcxproj create mode 100644 plugins/exec/exec.vcxproj.filters create mode 100644 plugins/fishlim/fishlim.def create mode 100644 plugins/fishlim/fishlim.vcxproj create mode 100644 plugins/fishlim/fishlim.vcxproj.filters create mode 100644 plugins/mpcinfo/mpcinfo.def create mode 100644 plugins/mpcinfo/mpcinfo.vcxproj create mode 100644 plugins/mpcinfo/mpcinfo.vcxproj.filters create mode 100644 plugins/upd/upd.def create mode 100644 plugins/upd/upd.vcxproj create mode 100644 plugins/upd/upd.vcxproj.filters create mode 100644 plugins/winamp/winamp.def create mode 100644 plugins/winamp/winamp.vcxproj create mode 100644 plugins/winamp/winamp.vcxproj.filters create mode 100644 plugins/winsys/winsys.def create mode 100644 plugins/winsys/winsys.vcxproj create mode 100644 plugins/winsys/winsys.vcxproj.filters create mode 100644 plugins/xsasl/xsasl.def create mode 100644 plugins/xsasl/xsasl.vcxproj create mode 100644 plugins/xsasl/xsasl.vcxproj.filters create mode 100644 plugins/xtray/xtray.def create mode 100644 plugins/xtray/xtray.vcxproj create mode 100644 plugins/xtray/xtray.vcxproj.filters (limited to 'plugins/lua') diff --git a/plugins/checksum/checksum.def b/plugins/checksum/checksum.def new file mode 100644 index 00000000..77670bf2 --- /dev/null +++ b/plugins/checksum/checksum.def @@ -0,0 +1,3 @@ +EXPORTS +xchat_plugin_init +xchat_plugin_deinit diff --git a/plugins/checksum/checksum.vcxproj b/plugins/checksum/checksum.vcxproj new file mode 100644 index 00000000..cbfa2a2d --- /dev/null +++ b/plugins/checksum/checksum.vcxproj @@ -0,0 +1,65 @@ + + + + + Release + Win32 + + + + {5EF7F47D-D09C-43C4-BF64-B28B11A0FF91} + Win32Proj + checksum + + + + DynamicLibrary + false + true + MultiByte + WDK7 + + + + + + + + + + + false + xcchecksum + + + + Level1 + + + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;CHECKSUM_EXPORTS;%(PreprocessorDefinitions) + $(DepsRoot)\include;..;%(AdditionalIncludeDirectories) + true + + + Windows + true + true + true + checksum.def + $(DepsRoot)\lib;%(AdditionalLibraryDirectories) + $(DepLibs);%(AdditionalDependencies) + + + + + + + + + + + + \ No newline at end of file diff --git a/plugins/checksum/checksum.vcxproj.filters b/plugins/checksum/checksum.vcxproj.filters new file mode 100644 index 00000000..e6ef5e81 --- /dev/null +++ b/plugins/checksum/checksum.vcxproj.filters @@ -0,0 +1,23 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Source Files + + + + + Resource Files + + + \ No newline at end of file diff --git a/plugins/dns/dns.def b/plugins/dns/dns.def new file mode 100644 index 00000000..77670bf2 --- /dev/null +++ b/plugins/dns/dns.def @@ -0,0 +1,3 @@ +EXPORTS +xchat_plugin_init +xchat_plugin_deinit diff --git a/plugins/dns/dns.vcxproj b/plugins/dns/dns.vcxproj new file mode 100644 index 00000000..b98c778f --- /dev/null +++ b/plugins/dns/dns.vcxproj @@ -0,0 +1,69 @@ + + + + + Release + Win32 + + + + {3786FA8C-3E76-45E3-984E-FCCFF44729C9} + Win32Proj + dns + + + + DynamicLibrary + false + true + MultiByte + WDK7 + + + + + + + + + + + false + xcdns + + + + Level1 + + + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;DNS_EXPORTS;%(PreprocessorDefinitions) + ..;%(AdditionalIncludeDirectories) + true + + + Windows + true + true + true + $(DepsRoot)\lib;%(AdditionalLibraryDirectories) + $(DepLibs);%(AdditionalDependencies) + dns.def + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/plugins/dns/dns.vcxproj.filters b/plugins/dns/dns.vcxproj.filters new file mode 100644 index 00000000..a49dc1e2 --- /dev/null +++ b/plugins/dns/dns.vcxproj.filters @@ -0,0 +1,35 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hpp;hxx;hm;inl;inc;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Resource Files + + + + + Source Files + + + Source Files + + + + + Header Files + + + \ No newline at end of file diff --git a/plugins/doat/doat.def b/plugins/doat/doat.def new file mode 100644 index 00000000..77670bf2 --- /dev/null +++ b/plugins/doat/doat.def @@ -0,0 +1,3 @@ +EXPORTS +xchat_plugin_init +xchat_plugin_deinit diff --git a/plugins/doat/doat.vcxproj b/plugins/doat/doat.vcxproj new file mode 100644 index 00000000..f0168a6b --- /dev/null +++ b/plugins/doat/doat.vcxproj @@ -0,0 +1,63 @@ + + + + + Release + Win32 + + + + {4980AF24-9D42-427D-A8E6-0DF3B97C455D} + Win32Proj + doat + + + + DynamicLibrary + false + true + MultiByte + WDK7 + + + + + + + + + + + false + xcdoat + + + + Level1 + + + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;DOAT_EXPORTS;%(PreprocessorDefinitions) + ..;%(AdditionalIncludeDirectories) + true + + + Windows + true + true + true + doat.def + + + + + + + + + + + + \ No newline at end of file diff --git a/plugins/doat/doat.vcxproj.filters b/plugins/doat/doat.vcxproj.filters new file mode 100644 index 00000000..43ea8307 --- /dev/null +++ b/plugins/doat/doat.vcxproj.filters @@ -0,0 +1,23 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Source Files + + + + + Resource Files + + + \ No newline at end of file diff --git a/plugins/exec/exec.def b/plugins/exec/exec.def new file mode 100644 index 00000000..77670bf2 --- /dev/null +++ b/plugins/exec/exec.def @@ -0,0 +1,3 @@ +EXPORTS +xchat_plugin_init +xchat_plugin_deinit diff --git a/plugins/exec/exec.vcxproj b/plugins/exec/exec.vcxproj new file mode 100644 index 00000000..cef4049c --- /dev/null +++ b/plugins/exec/exec.vcxproj @@ -0,0 +1,63 @@ + + + + + Release + Win32 + + + + {17E4BE39-76F7-4A06-AD21-EFD0C5091F76} + Win32Proj + exec + + + + DynamicLibrary + false + true + MultiByte + WDK7 + + + + + + + + + + + false + xcexec + + + + Level1 + + + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;EXEC_EXPORTS;%(PreprocessorDefinitions) + true + ..;%(AdditionalIncludeDirectories) + + + Windows + true + true + true + exec.def + + + + + + + + + + + + \ No newline at end of file diff --git a/plugins/exec/exec.vcxproj.filters b/plugins/exec/exec.vcxproj.filters new file mode 100644 index 00000000..f800df93 --- /dev/null +++ b/plugins/exec/exec.vcxproj.filters @@ -0,0 +1,23 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Resource Files + + + + + Source Files + + + \ No newline at end of file diff --git a/plugins/fishlim/fishlim.def b/plugins/fishlim/fishlim.def new file mode 100644 index 00000000..5797636b --- /dev/null +++ b/plugins/fishlim/fishlim.def @@ -0,0 +1,4 @@ +EXPORTS +xchat_plugin_init +xchat_plugin_deinit +xchat_plugin_get_info diff --git a/plugins/fishlim/fishlim.vcxproj b/plugins/fishlim/fishlim.vcxproj new file mode 100644 index 00000000..1cf5293f --- /dev/null +++ b/plugins/fishlim/fishlim.vcxproj @@ -0,0 +1,77 @@ + + + + + Release + Win32 + + + + {3C4F42FC-292A-420B-B63D-C03DFBDD8E4E} + Win32Proj + fishlim + + + + DynamicLibrary + false + true + MultiByte + WDK7 + + + + + + + + + + + false + xcfishlim + + + + Level1 + + + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;FISHLIM_EXPORTS;%(PreprocessorDefinitions) + true + $(DepsRoot)\include;$(Glib);..;%(AdditionalIncludeDirectories) + + + Windows + true + true + true + fishlim.def + $(DepsRoot)\lib;%(AdditionalLibraryDirectories) + $(DepLibs);%(AdditionalDependencies) + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/plugins/fishlim/fishlim.vcxproj.filters b/plugins/fishlim/fishlim.vcxproj.filters new file mode 100644 index 00000000..72e9f017 --- /dev/null +++ b/plugins/fishlim/fishlim.vcxproj.filters @@ -0,0 +1,59 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hpp;hxx;hm;inl;inc;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Resource Files + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + \ No newline at end of file diff --git a/plugins/lua/lua.vcxproj b/plugins/lua/lua.vcxproj index d78a1e35..69a8e4ea 100644 --- a/plugins/lua/lua.vcxproj +++ b/plugins/lua/lua.vcxproj @@ -33,7 +33,7 @@ - Level3 + Level1 MaxSpeed @@ -59,7 +59,11 @@ WIN32;NDEBUG;_WINDOWS;_USRDLL;$(OwnFlags);snprintf=g_snprintf;%(PreprocessorDefinitions) + true + + lua.def + diff --git a/plugins/mpcinfo/mpcinfo.def b/plugins/mpcinfo/mpcinfo.def new file mode 100644 index 00000000..77670bf2 --- /dev/null +++ b/plugins/mpcinfo/mpcinfo.def @@ -0,0 +1,3 @@ +EXPORTS +xchat_plugin_init +xchat_plugin_deinit diff --git a/plugins/mpcinfo/mpcinfo.vcxproj b/plugins/mpcinfo/mpcinfo.vcxproj new file mode 100644 index 00000000..04182d50 --- /dev/null +++ b/plugins/mpcinfo/mpcinfo.vcxproj @@ -0,0 +1,63 @@ + + + + + Release + Win32 + + + + {B0E36D93-CA2A-49FE-9EB9-9C96C6016EEC} + Win32Proj + mpcinfo + + + + DynamicLibrary + false + true + MultiByte + WDK7 + + + + + + + + + + + false + xcmpcinfo + + + + Level1 + + + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;MPCINFO_EXPORTS;%(PreprocessorDefinitions) + true + ..;%(AdditionalIncludeDirectories) + + + Windows + true + true + true + mpcinfo.def + + + + + + + + + + + + \ No newline at end of file diff --git a/plugins/mpcinfo/mpcinfo.vcxproj.filters b/plugins/mpcinfo/mpcinfo.vcxproj.filters new file mode 100644 index 00000000..7e22eb30 --- /dev/null +++ b/plugins/mpcinfo/mpcinfo.vcxproj.filters @@ -0,0 +1,23 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Resource Files + + + + + Source Files + + + \ No newline at end of file diff --git a/plugins/upd/upd.def b/plugins/upd/upd.def new file mode 100644 index 00000000..77670bf2 --- /dev/null +++ b/plugins/upd/upd.def @@ -0,0 +1,3 @@ +EXPORTS +xchat_plugin_init +xchat_plugin_deinit diff --git a/plugins/upd/upd.vcxproj b/plugins/upd/upd.vcxproj new file mode 100644 index 00000000..ee00dc1a --- /dev/null +++ b/plugins/upd/upd.vcxproj @@ -0,0 +1,65 @@ + + + + + Release + Win32 + + + + {461DC24A-A410-4171-8C02-CCDBF3702C2A} + Win32Proj + upd + + + + DynamicLibrary + false + true + MultiByte + WDK7 + + + + + + + + + + + false + xcupd + + + + Level1 + + + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;UPD_EXPORTS;%(PreprocessorDefinitions) + true + ..;%(AdditionalIncludeDirectories) + + + Windows + true + true + true + upd.def + $(DepLibs);%(AdditionalDependencies) + $(DepsRoot)\lib;%(AdditionalLibraryDirectories) + + + + + + + + + + + + \ No newline at end of file diff --git a/plugins/upd/upd.vcxproj.filters b/plugins/upd/upd.vcxproj.filters new file mode 100644 index 00000000..e3d7397e --- /dev/null +++ b/plugins/upd/upd.vcxproj.filters @@ -0,0 +1,23 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Resource Files + + + + + Source Files + + + \ No newline at end of file diff --git a/plugins/winamp/winamp.def b/plugins/winamp/winamp.def new file mode 100644 index 00000000..77670bf2 --- /dev/null +++ b/plugins/winamp/winamp.def @@ -0,0 +1,3 @@ +EXPORTS +xchat_plugin_init +xchat_plugin_deinit diff --git a/plugins/winamp/winamp.vcxproj b/plugins/winamp/winamp.vcxproj new file mode 100644 index 00000000..3924b8b2 --- /dev/null +++ b/plugins/winamp/winamp.vcxproj @@ -0,0 +1,63 @@ + + + + + Release + Win32 + + + + {E78C0D9A-798E-4BF6-B0CC-6FECB8CA2FCE} + Win32Proj + winamp + + + + DynamicLibrary + false + true + MultiByte + WDK7 + + + + + + + + + + + false + xcwinamp + + + + Level1 + + + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;WINAMP_EXPORTS;%(PreprocessorDefinitions) + true + ..;%(AdditionalIncludeDirectories) + + + Windows + true + true + true + winamp.def + + + + + + + + + + + + \ No newline at end of file diff --git a/plugins/winamp/winamp.vcxproj.filters b/plugins/winamp/winamp.vcxproj.filters new file mode 100644 index 00000000..1a800a33 --- /dev/null +++ b/plugins/winamp/winamp.vcxproj.filters @@ -0,0 +1,23 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Resource Files + + + + + Source Files + + + \ No newline at end of file diff --git a/plugins/winsys/winsys.def b/plugins/winsys/winsys.def new file mode 100644 index 00000000..77670bf2 --- /dev/null +++ b/plugins/winsys/winsys.def @@ -0,0 +1,3 @@ +EXPORTS +xchat_plugin_init +xchat_plugin_deinit diff --git a/plugins/winsys/winsys.vcxproj b/plugins/winsys/winsys.vcxproj new file mode 100644 index 00000000..1466e8e7 --- /dev/null +++ b/plugins/winsys/winsys.vcxproj @@ -0,0 +1,66 @@ + + + + + Release + Win32 + + + + {6C0CA980-97C5-427A-BE61-5BCECAFABBDA} + Win32Proj + winsys + + + + DynamicLibrary + false + true + Unicode + WDK7 + + + + + + + + + + + false + xcwinsys + + + + Level1 + + + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;WINSYS_EXPORTS;%(PreprocessorDefinitions) + ..;%(AdditionalIncludeDirectories) + true + false + + + Windows + true + true + true + winsys.def + wbemuuid.lib;vccomsup.lib;%(AdditionalDependencies) + comsupp.lib + + + + + + + + + + + + \ No newline at end of file diff --git a/plugins/winsys/winsys.vcxproj.filters b/plugins/winsys/winsys.vcxproj.filters new file mode 100644 index 00000000..6e5b445c --- /dev/null +++ b/plugins/winsys/winsys.vcxproj.filters @@ -0,0 +1,23 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Resource Files + + + + + Source Files + + + \ No newline at end of file diff --git a/plugins/xsasl/xsasl.def b/plugins/xsasl/xsasl.def new file mode 100644 index 00000000..77670bf2 --- /dev/null +++ b/plugins/xsasl/xsasl.def @@ -0,0 +1,3 @@ +EXPORTS +xchat_plugin_init +xchat_plugin_deinit diff --git a/plugins/xsasl/xsasl.vcxproj b/plugins/xsasl/xsasl.vcxproj new file mode 100644 index 00000000..9bb8fb24 --- /dev/null +++ b/plugins/xsasl/xsasl.vcxproj @@ -0,0 +1,65 @@ + + + + + Release + Win32 + + + + {18871EBA-AC85-4652-8919-EB8064B9A714} + Win32Proj + xsasl + + + + DynamicLibrary + false + true + MultiByte + WDK7 + + + + + + + + + + + false + xcxsasl + + + + Level1 + + + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;XSASL_EXPORTS;%(PreprocessorDefinitions) + $(Glib);..;%(AdditionalIncludeDirectories) + true + + + Windows + true + true + true + xsasl.def + $(DepsRoot)\lib;%(AdditionalLibraryDirectories) + $(DepLibs);%(AdditionalDependencies) + + + + + + + + + + + + \ No newline at end of file diff --git a/plugins/xsasl/xsasl.vcxproj.filters b/plugins/xsasl/xsasl.vcxproj.filters new file mode 100644 index 00000000..b01aa8eb --- /dev/null +++ b/plugins/xsasl/xsasl.vcxproj.filters @@ -0,0 +1,23 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Resource Files + + + + + Source Files + + + \ No newline at end of file diff --git a/plugins/xtray/xtray.def b/plugins/xtray/xtray.def new file mode 100644 index 00000000..77670bf2 --- /dev/null +++ b/plugins/xtray/xtray.def @@ -0,0 +1,3 @@ +EXPORTS +xchat_plugin_init +xchat_plugin_deinit diff --git a/plugins/xtray/xtray.vcxproj b/plugins/xtray/xtray.vcxproj new file mode 100644 index 00000000..1dc97f30 --- /dev/null +++ b/plugins/xtray/xtray.vcxproj @@ -0,0 +1,91 @@ + + + + + Release + Win32 + + + + {3024CF36-85E5-4E00-9608-7002E2C7EF14} + Win32Proj + xtray + + + + DynamicLibrary + false + true + Unicode + WDK7 + + + + + + + + + + + false + + + + Level1 + + + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;XTRAY_EXPORTS;_STL70_;_STATIC_CPPLIB;%(PreprocessorDefinitions) + true + ..;%(AdditionalIncludeDirectories) + + + Windows + true + true + true + xtray.def + ntstc_msvcrt.lib;%(AdditionalDependencies) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/plugins/xtray/xtray.vcxproj.filters b/plugins/xtray/xtray.vcxproj.filters new file mode 100644 index 00000000..3b909983 --- /dev/null +++ b/plugins/xtray/xtray.vcxproj.filters @@ -0,0 +1,109 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hpp;hxx;hm;inl;inc;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + {448b49a5-e68b-451e-bfbc-0855da024b2e} + + + {8345128a-0635-43d6-9115-a85ad9c77ee2} + + + + + Resource Files + + + Resource Files\bitmaps + + + Resource Files\icons + + + Resource Files\icons + + + Resource Files\icons + + + Resource Files\icons + + + Resource Files\icons + + + Resource Files\icons + + + Resource Files\icons + + + Resource Files\icons + + + Resource Files\icons + + + Resource Files\icons + + + + + Resource Files + + + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + \ No newline at end of file diff --git a/src/version/version.vcxproj b/src/version/version.vcxproj index e6d510f8..26c13458 100644 --- a/src/version/version.vcxproj +++ b/src/version/version.vcxproj @@ -32,13 +32,14 @@ - Level3 + Level1 MaxSpeed true true WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true Console diff --git a/win32/xchat.sln b/win32/xchat.sln index 7aa6b029..ecb1f859 100644 --- a/win32/xchat.sln +++ b/win32/xchat.sln @@ -34,20 +34,53 @@ EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tcl", "..\plugins\tcl\tcl.vcxproj", "{2773666A-8CFC-4533-A043-EAD59F16A1C7}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "perl-512", "..\plugins\perl\perl-512.vcxproj", "{987E9374-98A1-44BA-946F-D3472D7A7055}" + ProjectSection(ProjectDependencies) = postProject + {98B56DF9-E4F1-4696-A565-5F7823CF214D} = {98B56DF9-E4F1-4696-A565-5F7823CF214D} + EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "perl-514", "..\plugins\perl\perl-514.vcxproj", "{C4C9FA6F-F990-4C7B-85F6-CD8F4F5728F0}" ProjectSection(ProjectDependencies) = postProject {987E9374-98A1-44BA-946F-D3472D7A7055} = {987E9374-98A1-44BA-946F-D3472D7A7055} + {98B56DF9-E4F1-4696-A565-5F7823CF214D} = {98B56DF9-E4F1-4696-A565-5F7823CF214D} EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "perl-516", "..\plugins\perl\perl-516.vcxproj", "{58654438-F674-42F7-88FA-73EF90AD80B1}" ProjectSection(ProjectDependencies) = postProject {C4C9FA6F-F990-4C7B-85F6-CD8F4F5728F0} = {C4C9FA6F-F990-4C7B-85F6-CD8F4F5728F0} + {98B56DF9-E4F1-4696-A565-5F7823CF214D} = {98B56DF9-E4F1-4696-A565-5F7823CF214D} EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "python", "..\plugins\python\python.vcxproj", "{19C52A0A-A790-409E-A28A-9745FF990F5C}" + ProjectSection(ProjectDependencies) = postProject + {98B56DF9-E4F1-4696-A565-5F7823CF214D} = {98B56DF9-E4F1-4696-A565-5F7823CF214D} + EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lua", "..\plugins\lua\lua.vcxproj", "{646B4316-C8B8-4DB6-B6AE-E586929E5729}" + ProjectSection(ProjectDependencies) = postProject + {98B56DF9-E4F1-4696-A565-5F7823CF214D} = {98B56DF9-E4F1-4696-A565-5F7823CF214D} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "doat", "..\plugins\doat\doat.vcxproj", "{4980AF24-9D42-427D-A8E6-0DF3B97C455D}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "checksum", "..\plugins\checksum\checksum.vcxproj", "{5EF7F47D-D09C-43C4-BF64-B28B11A0FF91}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dns", "..\plugins\dns\dns.vcxproj", "{3786FA8C-3E76-45E3-984E-FCCFF44729C9}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "exec", "..\plugins\exec\exec.vcxproj", "{17E4BE39-76F7-4A06-AD21-EFD0C5091F76}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fishlim", "..\plugins\fishlim\fishlim.vcxproj", "{3C4F42FC-292A-420B-B63D-C03DFBDD8E4E}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mpcinfo", "..\plugins\mpcinfo\mpcinfo.vcxproj", "{B0E36D93-CA2A-49FE-9EB9-9C96C6016EEC}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "upd", "..\plugins\upd\upd.vcxproj", "{461DC24A-A410-4171-8C02-CCDBF3702C2A}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "winamp", "..\plugins\winamp\winamp.vcxproj", "{E78C0D9A-798E-4BF6-B0CC-6FECB8CA2FCE}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "winsys", "..\plugins\winsys\winsys.vcxproj", "{6C0CA980-97C5-427A-BE61-5BCECAFABBDA}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xsasl", "..\plugins\xsasl\xsasl.vcxproj", "{18871EBA-AC85-4652-8919-EB8064B9A714}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xtray", "..\plugins\xtray\xtray.vcxproj", "{3024CF36-85E5-4E00-9608-7002E2C7EF14}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -78,6 +111,28 @@ Global {19C52A0A-A790-409E-A28A-9745FF990F5C}.Release|Win32.Build.0 = Release|Win32 {646B4316-C8B8-4DB6-B6AE-E586929E5729}.Release|Win32.ActiveCfg = Release|Win32 {646B4316-C8B8-4DB6-B6AE-E586929E5729}.Release|Win32.Build.0 = Release|Win32 + {4980AF24-9D42-427D-A8E6-0DF3B97C455D}.Release|Win32.ActiveCfg = Release|Win32 + {4980AF24-9D42-427D-A8E6-0DF3B97C455D}.Release|Win32.Build.0 = Release|Win32 + {5EF7F47D-D09C-43C4-BF64-B28B11A0FF91}.Release|Win32.ActiveCfg = Release|Win32 + {5EF7F47D-D09C-43C4-BF64-B28B11A0FF91}.Release|Win32.Build.0 = Release|Win32 + {3786FA8C-3E76-45E3-984E-FCCFF44729C9}.Release|Win32.ActiveCfg = Release|Win32 + {3786FA8C-3E76-45E3-984E-FCCFF44729C9}.Release|Win32.Build.0 = Release|Win32 + {17E4BE39-76F7-4A06-AD21-EFD0C5091F76}.Release|Win32.ActiveCfg = Release|Win32 + {17E4BE39-76F7-4A06-AD21-EFD0C5091F76}.Release|Win32.Build.0 = Release|Win32 + {3C4F42FC-292A-420B-B63D-C03DFBDD8E4E}.Release|Win32.ActiveCfg = Release|Win32 + {3C4F42FC-292A-420B-B63D-C03DFBDD8E4E}.Release|Win32.Build.0 = Release|Win32 + {B0E36D93-CA2A-49FE-9EB9-9C96C6016EEC}.Release|Win32.ActiveCfg = Release|Win32 + {B0E36D93-CA2A-49FE-9EB9-9C96C6016EEC}.Release|Win32.Build.0 = Release|Win32 + {461DC24A-A410-4171-8C02-CCDBF3702C2A}.Release|Win32.ActiveCfg = Release|Win32 + {461DC24A-A410-4171-8C02-CCDBF3702C2A}.Release|Win32.Build.0 = Release|Win32 + {E78C0D9A-798E-4BF6-B0CC-6FECB8CA2FCE}.Release|Win32.ActiveCfg = Release|Win32 + {E78C0D9A-798E-4BF6-B0CC-6FECB8CA2FCE}.Release|Win32.Build.0 = Release|Win32 + {6C0CA980-97C5-427A-BE61-5BCECAFABBDA}.Release|Win32.ActiveCfg = Release|Win32 + {6C0CA980-97C5-427A-BE61-5BCECAFABBDA}.Release|Win32.Build.0 = Release|Win32 + {18871EBA-AC85-4652-8919-EB8064B9A714}.Release|Win32.ActiveCfg = Release|Win32 + {18871EBA-AC85-4652-8919-EB8064B9A714}.Release|Win32.Build.0 = Release|Win32 + {3024CF36-85E5-4E00-9608-7002E2C7EF14}.Release|Win32.ActiveCfg = Release|Win32 + {3024CF36-85E5-4E00-9608-7002E2C7EF14}.Release|Win32.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -89,6 +144,17 @@ Global {87554B59-006C-4D94-9714-897B27067BA3} = {AAACEB12-9475-410E-AF5A-FDFF907E9043} {6CD3647E-4541-4849-9DD7-C8816665AE42} = {BB051F0F-A841-4A9A-BAF6-51DD9866D65A} {98B56DF9-E4F1-4696-A565-5F7823CF214D} = {BB051F0F-A841-4A9A-BAF6-51DD9866D65A} + {4980AF24-9D42-427D-A8E6-0DF3B97C455D} = {561126F4-FA18-45FC-A2BF-8F858F161D6D} + {5EF7F47D-D09C-43C4-BF64-B28B11A0FF91} = {561126F4-FA18-45FC-A2BF-8F858F161D6D} + {3786FA8C-3E76-45E3-984E-FCCFF44729C9} = {561126F4-FA18-45FC-A2BF-8F858F161D6D} + {17E4BE39-76F7-4A06-AD21-EFD0C5091F76} = {561126F4-FA18-45FC-A2BF-8F858F161D6D} + {3C4F42FC-292A-420B-B63D-C03DFBDD8E4E} = {561126F4-FA18-45FC-A2BF-8F858F161D6D} + {B0E36D93-CA2A-49FE-9EB9-9C96C6016EEC} = {561126F4-FA18-45FC-A2BF-8F858F161D6D} + {461DC24A-A410-4171-8C02-CCDBF3702C2A} = {561126F4-FA18-45FC-A2BF-8F858F161D6D} + {E78C0D9A-798E-4BF6-B0CC-6FECB8CA2FCE} = {561126F4-FA18-45FC-A2BF-8F858F161D6D} + {6C0CA980-97C5-427A-BE61-5BCECAFABBDA} = {561126F4-FA18-45FC-A2BF-8F858F161D6D} + {18871EBA-AC85-4652-8919-EB8064B9A714} = {561126F4-FA18-45FC-A2BF-8F858F161D6D} + {3024CF36-85E5-4E00-9608-7002E2C7EF14} = {561126F4-FA18-45FC-A2BF-8F858F161D6D} {2773666A-8CFC-4533-A043-EAD59F16A1C7} = {D237DA6B-BD5F-46C0-8BEA-50E9A1340240} {987E9374-98A1-44BA-946F-D3472D7A7055} = {D237DA6B-BD5F-46C0-8BEA-50E9A1340240} {C4C9FA6F-F990-4C7B-85F6-CD8F4F5728F0} = {D237DA6B-BD5F-46C0-8BEA-50E9A1340240} -- cgit 1.4.1 From 593efa703b6914f963533da513576a26e744ead9 Mon Sep 17 00:00:00 2001 From: Berke Viktor Date: Fri, 15 Jun 2012 21:37:48 +0200 Subject: LOTS of fixes to the VS solution --- plugins/checksum/checksum.vcxproj | 2 + plugins/dns/dns.vcxproj | 2 + plugins/doat/doat.vcxproj | 2 + plugins/exec/exec.vcxproj | 2 + plugins/fishlim/fishlim.vcxproj | 2 + plugins/lua/lua.vcxproj | 2 + plugins/mpcinfo/mpcinfo.vcxproj | 2 + plugins/perl/perl-512.vcxproj | 11 +- plugins/perl/perl-514.vcxproj | 11 +- plugins/perl/perl-516.vcxproj | 11 +- plugins/python/python.vcxproj | 2 + plugins/tcl/tcl.vcxproj | 2 + plugins/upd/upd.vcxproj | 2 + plugins/winamp/winamp.vcxproj | 2 + plugins/winsys/winsys.vcxproj | 2 + plugins/wmpa/wmpa.vcxproj | 2 + plugins/xsasl/xsasl.vcxproj | 2 + plugins/xtray/xtray.vcxproj | 2 + src/common/common.vcxproj | 5 +- src/dirent/dirent.vcxproj | 2 + src/fe-gtk/fe-gtk.vcxproj | 2 + src/fe-text/fe-text.vcxproj | 2 + src/pixmaps/pixmaps.vcxproj | 4 +- src/version/version.c | 20 +- src/version/version.vcxproj | 4 +- win32/bitmaps/wizardimage.bmp | Bin 52062 -> 0 bytes win32/bitmaps/wizardsmallimage.bmp | Bin 9798 -> 0 bytes win32/copy/copy.vcxproj | 21 +- win32/copy/copy.vcxproj.filters | 46 +- win32/copy/etc/download.png | Bin 0 -> 703 bytes win32/copy/etc/gtk-2.0/gtkrc | 71 + win32/copy/etc/gtkpref.png | Bin 0 -> 323 bytes win32/copy/etc/music.png | Bin 0 -> 3577 bytes win32/copy/etc/system.png | Bin 0 -> 3578 bytes win32/copy/share/xml/iso-codes/iso_3166.xml | 1703 +++++++++++++++++++ win32/copy/share/xml/iso-codes/iso_639.xml | 2169 +++++++++++++++++++++++++ win32/etc/download.png | Bin 703 -> 0 bytes win32/etc/gtk-2.0/gtkrc | 71 - win32/etc/gtkpref.png | Bin 323 -> 0 bytes win32/etc/music.png | Bin 3577 -> 0 bytes win32/etc/system.png | Bin 3578 -> 0 bytes win32/installer/installer.vcxproj | 32 +- win32/installer/installer.vcxproj.filters | 28 +- win32/installer/watercolorlite-blue.cjstyles | Bin 0 -> 308224 bytes win32/installer/watercolorlite-green.cjstyles | Bin 0 -> 308224 bytes win32/installer/wizardimage.bmp | Bin 0 -> 52062 bytes win32/installer/wizardsmallimage.bmp | Bin 0 -> 9798 bytes win32/installer/xchat-wdk-x64.skel.iss | 279 ++++ win32/installer/xchat-wdk-x86.skel.iss | 282 ++++ win32/isskin/watercolorlite-blue.cjstyles | Bin 308224 -> 0 bytes win32/isskin/watercolorlite-green.cjstyles | Bin 308224 -> 0 bytes win32/nls/nls.vcxproj | 13 +- win32/share/themes/Murrine/gtk-2.0/gtkrc | 7 - win32/share/xml/iso-codes/iso_3166.xml | 1703 ------------------- win32/share/xml/iso-codes/iso_639.xml | 2169 ------------------------- win32/xchat-wdk-x64.skel.iss | 279 ---- win32/xchat-wdk-x86.skel.iss | 282 ---- win32/xchat.props | 2 +- win32/xchat.sln | 24 +- 59 files changed, 4718 insertions(+), 4565 deletions(-) delete mode 100644 win32/bitmaps/wizardimage.bmp delete mode 100644 win32/bitmaps/wizardsmallimage.bmp create mode 100644 win32/copy/etc/download.png create mode 100644 win32/copy/etc/gtk-2.0/gtkrc create mode 100644 win32/copy/etc/gtkpref.png create mode 100644 win32/copy/etc/music.png create mode 100644 win32/copy/etc/system.png create mode 100644 win32/copy/share/xml/iso-codes/iso_3166.xml create mode 100644 win32/copy/share/xml/iso-codes/iso_639.xml delete mode 100644 win32/etc/download.png delete mode 100644 win32/etc/gtk-2.0/gtkrc delete mode 100644 win32/etc/gtkpref.png delete mode 100644 win32/etc/music.png delete mode 100644 win32/etc/system.png create mode 100644 win32/installer/watercolorlite-blue.cjstyles create mode 100644 win32/installer/watercolorlite-green.cjstyles create mode 100644 win32/installer/wizardimage.bmp create mode 100644 win32/installer/wizardsmallimage.bmp create mode 100644 win32/installer/xchat-wdk-x64.skel.iss create mode 100644 win32/installer/xchat-wdk-x86.skel.iss delete mode 100644 win32/isskin/watercolorlite-blue.cjstyles delete mode 100644 win32/isskin/watercolorlite-green.cjstyles delete mode 100644 win32/share/themes/Murrine/gtk-2.0/gtkrc delete mode 100644 win32/share/xml/iso-codes/iso_3166.xml delete mode 100644 win32/share/xml/iso-codes/iso_639.xml delete mode 100644 win32/xchat-wdk-x64.skel.iss delete mode 100644 win32/xchat-wdk-x86.skel.iss (limited to 'plugins/lua') diff --git a/plugins/checksum/checksum.vcxproj b/plugins/checksum/checksum.vcxproj index cbfa2a2d..c4090cd1 100644 --- a/plugins/checksum/checksum.vcxproj +++ b/plugins/checksum/checksum.vcxproj @@ -30,6 +30,8 @@ false xcchecksum + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) diff --git a/plugins/dns/dns.vcxproj b/plugins/dns/dns.vcxproj index b98c778f..38f1634b 100644 --- a/plugins/dns/dns.vcxproj +++ b/plugins/dns/dns.vcxproj @@ -30,6 +30,8 @@ false xcdns + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) diff --git a/plugins/doat/doat.vcxproj b/plugins/doat/doat.vcxproj index f0168a6b..c6901fe1 100644 --- a/plugins/doat/doat.vcxproj +++ b/plugins/doat/doat.vcxproj @@ -30,6 +30,8 @@ false xcdoat + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) diff --git a/plugins/exec/exec.vcxproj b/plugins/exec/exec.vcxproj index cef4049c..15bf5ec5 100644 --- a/plugins/exec/exec.vcxproj +++ b/plugins/exec/exec.vcxproj @@ -30,6 +30,8 @@ false xcexec + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) diff --git a/plugins/fishlim/fishlim.vcxproj b/plugins/fishlim/fishlim.vcxproj index 1cf5293f..0f6e1c38 100644 --- a/plugins/fishlim/fishlim.vcxproj +++ b/plugins/fishlim/fishlim.vcxproj @@ -30,6 +30,8 @@ false xcfishlim + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) diff --git a/plugins/lua/lua.vcxproj b/plugins/lua/lua.vcxproj index 69a8e4ea..26d21856 100644 --- a/plugins/lua/lua.vcxproj +++ b/plugins/lua/lua.vcxproj @@ -30,6 +30,8 @@ false $(LuaOutput) + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) diff --git a/plugins/mpcinfo/mpcinfo.vcxproj b/plugins/mpcinfo/mpcinfo.vcxproj index 04182d50..7f12822e 100644 --- a/plugins/mpcinfo/mpcinfo.vcxproj +++ b/plugins/mpcinfo/mpcinfo.vcxproj @@ -30,6 +30,8 @@ false xcmpcinfo + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) diff --git a/plugins/perl/perl-512.vcxproj b/plugins/perl/perl-512.vcxproj index 440496f3..d924af48 100644 --- a/plugins/perl/perl-512.vcxproj +++ b/plugins/perl/perl-512.vcxproj @@ -30,6 +30,8 @@ false $(Perl512Output) + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) @@ -41,7 +43,7 @@ true WIN32;NDEBUG;_WINDOWS;_USRDLL;PERL512_EXPORTS;$(OwnFlags);%(PreprocessorDefinitions) true - $(Perl512Path)\perl\lib\CORE;..;%(AdditionalIncludeDirectories) + $(Perl512Path)\perl\lib\CORE;$(IntDir);..;%(AdditionalIncludeDirectories) Windows @@ -55,8 +57,11 @@ "$(GendefPath)\gendef" "$(Perl512Path)\perl\bin\$(Perl512Lib).dll" -lib /nologo /machine:x86 "/def:$(Perl512Lib).def" "/out:$(OutputPath)\$(Perl512Lib).lib" -"$(Perl512Path)\perl\bin\perl.exe" generate_header +move $(Perl512Lib).def "$(IntDir)" +lib /nologo /machine:x86 "/def:$(IntDir)$(Perl512Lib).def" "/out:$(OutDir)\$(Perl512Lib).lib" +"$(Perl512Path)\perl\bin\perl.exe" generate_header +move irc.pm.h "$(IntDir)" +move xchat.pm.h "$(IntDir)" diff --git a/plugins/perl/perl-514.vcxproj b/plugins/perl/perl-514.vcxproj index 04865562..58cc4f04 100644 --- a/plugins/perl/perl-514.vcxproj +++ b/plugins/perl/perl-514.vcxproj @@ -30,6 +30,8 @@ false $(Perl514Output) + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) @@ -40,7 +42,7 @@ true true WIN32;NDEBUG;_WINDOWS;_USRDLL;PERL514_EXPORTS;$(OwnFlags);%(PreprocessorDefinitions) - $(Perl514Path)\perl\lib\CORE;..;%(AdditionalIncludeDirectories) + $(Perl514Path)\perl\lib\CORE;$(IntDir);..;%(AdditionalIncludeDirectories) true @@ -55,8 +57,11 @@ "$(GendefPath)\gendef" "$(Perl514Path)\perl\bin\$(Perl514Lib).dll" -lib /nologo /machine:x86 "/def:$(Perl514Lib).def" "/out:$(OutputPath)\$(Perl514Lib).lib" -"$(Perl514Path)\perl\bin\perl.exe" generate_header +move $(Perl514Lib).def "$(IntDir)" +lib /nologo /machine:x86 "/def:$(IntDir)$(Perl514Lib).def" "/out:$(OutDir)\$(Perl514Lib).lib" +"$(Perl514Path)\perl\bin\perl.exe" generate_header +move irc.pm.h "$(IntDir)" +move xchat.pm.h "$(IntDir)" diff --git a/plugins/perl/perl-516.vcxproj b/plugins/perl/perl-516.vcxproj index 5a3c620d..516c1b80 100644 --- a/plugins/perl/perl-516.vcxproj +++ b/plugins/perl/perl-516.vcxproj @@ -30,6 +30,8 @@ false $(Perl516Output) + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) @@ -40,7 +42,7 @@ true true WIN32;NDEBUG;_WINDOWS;_USRDLL;PERL516_EXPORTS;$(OwnFlags);%(PreprocessorDefinitions) - $(Perl516Path)\perl\lib\CORE;..;%(AdditionalIncludeDirectories) + $(Perl516Path)\perl\lib\CORE;$(IntDir);..;%(AdditionalIncludeDirectories) true @@ -55,8 +57,11 @@ "$(GendefPath)\gendef" "$(Perl516Path)\perl\bin\$(Perl516Lib).dll" -lib /nologo /machine:x86 "/def:$(Perl516Lib).def" "/out:$(OutputPath)\$(Perl516Lib).lib" -"$(Perl516Path)\perl\bin\perl.exe" generate_header +move $(Perl516Lib).def "$(IntDir)" +lib /nologo /machine:x86 "/def:$(IntDir)$(Perl516Lib).def" "/out:$(OutDir)\$(Perl516Lib).lib" +"$(Perl516Path)\perl\bin\perl.exe" generate_header +move irc.pm.h "$(IntDir)" +move xchat.pm.h "$(IntDir)" diff --git a/plugins/python/python.vcxproj b/plugins/python/python.vcxproj index de0fadea..923eeb92 100644 --- a/plugins/python/python.vcxproj +++ b/plugins/python/python.vcxproj @@ -30,6 +30,8 @@ false $(PythonOutput) + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) diff --git a/plugins/tcl/tcl.vcxproj b/plugins/tcl/tcl.vcxproj index fa69aa33..baa188f6 100644 --- a/plugins/tcl/tcl.vcxproj +++ b/plugins/tcl/tcl.vcxproj @@ -40,6 +40,8 @@ false $(TclOutput) + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) diff --git a/plugins/upd/upd.vcxproj b/plugins/upd/upd.vcxproj index ee00dc1a..9cf7c017 100644 --- a/plugins/upd/upd.vcxproj +++ b/plugins/upd/upd.vcxproj @@ -30,6 +30,8 @@ false xcupd + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) diff --git a/plugins/winamp/winamp.vcxproj b/plugins/winamp/winamp.vcxproj index 3924b8b2..0a1eb419 100644 --- a/plugins/winamp/winamp.vcxproj +++ b/plugins/winamp/winamp.vcxproj @@ -30,6 +30,8 @@ false xcwinamp + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) diff --git a/plugins/winsys/winsys.vcxproj b/plugins/winsys/winsys.vcxproj index 1466e8e7..656f6ee9 100644 --- a/plugins/winsys/winsys.vcxproj +++ b/plugins/winsys/winsys.vcxproj @@ -30,6 +30,8 @@ false xcwinsys + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) diff --git a/plugins/wmpa/wmpa.vcxproj b/plugins/wmpa/wmpa.vcxproj index b231d0b0..630cef4d 100644 --- a/plugins/wmpa/wmpa.vcxproj +++ b/plugins/wmpa/wmpa.vcxproj @@ -31,6 +31,8 @@ false xcwmpa + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) diff --git a/plugins/xsasl/xsasl.vcxproj b/plugins/xsasl/xsasl.vcxproj index 9bb8fb24..7e0c41d7 100644 --- a/plugins/xsasl/xsasl.vcxproj +++ b/plugins/xsasl/xsasl.vcxproj @@ -30,6 +30,8 @@ false xcxsasl + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) diff --git a/plugins/xtray/xtray.vcxproj b/plugins/xtray/xtray.vcxproj index 1dc97f30..1f7aa5cf 100644 --- a/plugins/xtray/xtray.vcxproj +++ b/plugins/xtray/xtray.vcxproj @@ -29,6 +29,8 @@ false + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) diff --git a/src/common/common.vcxproj b/src/common/common.vcxproj index f0a730b7..b57b2ccf 100644 --- a/src/common/common.vcxproj +++ b/src/common/common.vcxproj @@ -90,7 +90,10 @@ - + + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level1 diff --git a/src/dirent/dirent.vcxproj b/src/dirent/dirent.vcxproj index 65fa2fb0..8ac38f92 100644 --- a/src/dirent/dirent.vcxproj +++ b/src/dirent/dirent.vcxproj @@ -35,6 +35,8 @@ $(ProjectName)-win32 + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) diff --git a/src/fe-gtk/fe-gtk.vcxproj b/src/fe-gtk/fe-gtk.vcxproj index 68390d03..fce8d3e6 100644 --- a/src/fe-gtk/fe-gtk.vcxproj +++ b/src/fe-gtk/fe-gtk.vcxproj @@ -30,6 +30,8 @@ false xchat + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) diff --git a/src/fe-text/fe-text.vcxproj b/src/fe-text/fe-text.vcxproj index 389c7b5e..ac7068ec 100644 --- a/src/fe-text/fe-text.vcxproj +++ b/src/fe-text/fe-text.vcxproj @@ -30,6 +30,8 @@ false xchat-text + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) diff --git a/src/pixmaps/pixmaps.vcxproj b/src/pixmaps/pixmaps.vcxproj index ba88104d..3fda0fef 100644 --- a/src/pixmaps/pixmaps.vcxproj +++ b/src/pixmaps/pixmaps.vcxproj @@ -29,6 +29,8 @@ false + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) @@ -47,7 +49,7 @@ true - "$(DepsRoot)\bin\gdk-pixbuf-csource" --build-list $(Pixmaps) > "$(SolutionDir)\..\src\pixmaps\inline_pngs.h" + "$(DepsRoot)\bin\gdk-pixbuf-csource" --build-list $(Pixmaps) > "$(SolutionDir)\..\src\pixmaps\inline_pngs.h" diff --git a/src/version/version.c b/src/version/version.c index 14312a43..53af5675 100644 --- a/src/version/version.c +++ b/src/version/version.c @@ -76,13 +76,13 @@ main (int argc, char *argv[]) { printf ("#define COMMA_VERSION %s\n", comma ()); } - else if (!strcmp (argv[1], "-a32")) /* xchat-wdk.iss/AppVerName */ - { - printf ("AppVerName=XChat-WDK %s (x86)\n", PACKAGE_VERSION); - } - else if (!strcmp (argv[1], "-a64")) /* xchat-wdk.iss/AppVerName */ + else if (!strcmp (argv[1], "-a")) /* xchat-wdk.iss/AppVerName */ { +#ifdef _WIN64 printf ("AppVerName=XChat-WDK %s (x64)\n", PACKAGE_VERSION); +#else + printf ("AppVerName=XChat-WDK %s (x86)\n", PACKAGE_VERSION); +#endif } else if (!strcmp (argv[1], "-v")) /* xchat-wdk.iss/AppVersion */ { @@ -92,13 +92,13 @@ main (int argc, char *argv[]) { printf ("VersionInfoVersion=%s\n", point ()); } - else if (!strcmp (argv[1], "-o32")) /* xchat-wdk.iss/OutputBaseFilename */ - { - printf ("OutputBaseFilename=XChat-WDK %s x86\n", PACKAGE_VERSION); - } - else if (!strcmp (argv[1], "-o64")) /* xchat-wdk.iss/OutputBaseFilename */ + else if (!strcmp (argv[1], "-o")) /* xchat-wdk.iss/OutputBaseFilename */ { +#ifdef _WIN64 printf ("OutputBaseFilename=XChat-WDK %s x64\n", PACKAGE_VERSION); +#else + printf ("OutputBaseFilename=XChat-WDK %s x86\n", PACKAGE_VERSION); +#endif } else if (!strcmp (argv[1], "-v")) /* version.txt */ { diff --git a/src/version/version.vcxproj b/src/version/version.vcxproj index 26c13458..b07b8e2a 100644 --- a/src/version/version.vcxproj +++ b/src/version/version.vcxproj @@ -29,6 +29,8 @@ false + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) @@ -48,7 +50,7 @@ true - "$(OutputPath)\$(TargetName)$(TargetExt)" -r > "$(SolutionDir)\..\resource.h" + "$(OutDir)\$(TargetName)$(TargetExt)" -r > "$(SolutionDir)\..\resource.h" diff --git a/win32/bitmaps/wizardimage.bmp b/win32/bitmaps/wizardimage.bmp deleted file mode 100644 index 9f5a4c90..00000000 Binary files a/win32/bitmaps/wizardimage.bmp and /dev/null differ diff --git a/win32/bitmaps/wizardsmallimage.bmp b/win32/bitmaps/wizardsmallimage.bmp deleted file mode 100644 index 1bb8b790..00000000 Binary files a/win32/bitmaps/wizardsmallimage.bmp and /dev/null differ diff --git a/win32/copy/copy.vcxproj b/win32/copy/copy.vcxproj index d7c6fda7..5b64ddc6 100644 --- a/win32/copy/copy.vcxproj +++ b/win32/copy/copy.vcxproj @@ -16,6 +16,7 @@ false true MultiByte + WDK7 @@ -25,7 +26,10 @@ - + + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level3 @@ -67,8 +71,8 @@ copy "$(DepsRoot)\bin\libpng14-14.dll" "$(XChatDest)" copy "$(DepsRoot)\bin\libxml2.dll" "$(XChatDest)" xcopy /q /s /i "$(DepsRoot)\lib\gtk-2.0\2.10.0\engines" "$(XChatDest)\lib\gtk-2.0\2.10.0\engines" xcopy /q /s /i "$(DepsRoot)\lib\gtk-2.0\modules\libgail.dll" "$(XChatDest)\lib\gtk-2.0\modules\" -xcopy /q /s /i "..\etc" "$(XChatDest)\etc" -xcopy /q /s /i "..\share" "$(XChatDest)\share" +xcopy /q /s /i etc "$(XChatDest)\etc" +xcopy /q /s /i share "$(XChatDest)\share" copy "..\..\COPYING" "$(XChatDest)" copy "$(DepsRoot)\LICENSE.OPENSSL" "$(XChatDest)" copy "$(DepsRoot)\LICENSE.ZLIB" "$(XChatDest)" @@ -102,13 +106,20 @@ copy "$(OutDir)\xcwinamp.dll" "$(XChatDest)\plugins" copy "$(OutDir)\xcwinsys.dll" "$(XChatDest)\plugins" copy "$(OutDir)\xcwmpa.dll" "$(XChatDest)\plugins" copy "$(DepsRoot)\bin\lua51.dll" "$(XChatDest)" -xcopy /q /s /i "..\..\po\locale" "$(XChatDest)\locale" +xcopy /q /s /i "$(OutDir)\locale" "$(XChatDest)\locale" xcopy /q /s /i "$(DepsRoot)\share\locale" "$(XChatDest)\share\locale" copy "$(ProgramFiles)\Codejock Software\ISSkin\ISSkinU.dll" "$(XChatDest)" -copy "..\isskin\watercolorlite-green.cjstyles" "$(XChatDest)" +copy "..\installer\watercolorlite-green.cjstyles" "$(XChatDest)" + + + + + + + diff --git a/win32/copy/copy.vcxproj.filters b/win32/copy/copy.vcxproj.filters index ef1ebf58..f832474d 100644 --- a/win32/copy/copy.vcxproj.filters +++ b/win32/copy/copy.vcxproj.filters @@ -1,2 +1,46 @@  - \ No newline at end of file + + + + {e02a8c67-767c-4c6e-a854-81fae08cf4da} + + + {503881c0-011d-443b-a373-4bfe125dcfa6} + + + {4316433a-2a8e-48f7-9020-e1f4de0d23d1} + + + {832ebebc-ab71-4bf6-9f3a-02ec748f7c14} + + + {9a881586-aed2-4f80-ba84-e521e6785566} + + + {c825f724-0618-4160-97b7-12d6e0f2bc7b} + + + + + Resource Files\etc + + + Resource Files\etc + + + Resource Files\etc + + + Resource Files\etc + + + Resource Files\etc\gtk-2.0 + + + Resource Files\share\xml\iso-codes + + + Resource Files\share\xml\iso-codes + + + \ No newline at end of file diff --git a/win32/copy/etc/download.png b/win32/copy/etc/download.png new file mode 100644 index 00000000..43253432 Binary files /dev/null and b/win32/copy/etc/download.png differ diff --git a/win32/copy/etc/gtk-2.0/gtkrc b/win32/copy/etc/gtk-2.0/gtkrc new file mode 100644 index 00000000..6ac7b76c --- /dev/null +++ b/win32/copy/etc/gtk-2.0/gtkrc @@ -0,0 +1,71 @@ +gtk-font-name = "sans 8" + +gtk-icon-sizes = "gtk-menu=13,13:gtk-small-toolbar=16,16:gtk-large-toolbar=24,24:gtk-dnd=32,32" +gtk-toolbar-icon-size = small-toolbar + +# disable images in buttons. i've only seen ugly delphi apps use this feature. +gtk-button-images = 0 + +# enable/disable images in menus. most "stock" microsoft apps don't use these, except sparingly. +# the office apps use them heavily, though. +gtk-menu-images = 1 + +# use the win32 button ordering instead of the GNOME HIG one, where applicable +gtk-alternative-button-order = 1 + +# use the win32 sort indicators direction, as in Explorer +gtk-alternative-sort-arrows = 1 + +# Windows users don't expect the PC Speaker beeping at them when they backspace in an empty textview and stuff like that +gtk-error-bell = 0 + +# hide mnemonic underlines until the Alt key is pressed (requires gtk 2.18+) +# gtk-auto-mnemonics = 1 + +style "msw-default" +{ + GtkWidget::interior-focus = 1 + GtkOptionMenu::indicator-size = { 9, 5 } + GtkOptionMenu::indicator-spacing = { 7, 5, 2, 2 } + GtkSpinButton::shadow-type = in + + # Owen and I disagree that these should be themable + #GtkUIManager::add-tearoffs = 0 + #GtkComboBox::add-tearoffs = 0 + + GtkComboBox::appears-as-list = 1 + GtkComboBox::focus-on-click = 0 + + GOComboBox::add_tearoffs = 0 + + GtkTreeView::allow-rules = 0 + GtkTreeView::expander-size = 12 + + GtkExpander::expander-size = 12 + + GtkScrolledWindow::scrollbar_spacing = 1 + + GtkSeparatorMenuItem::horizontal-padding = 2 + + engine "wimp" + { + } +} +class "*" style "msw-default" + +binding "ms-windows-tree-view" +{ + bind "Right" { "expand-collapse-cursor-row" (1,1,0) } + bind "Left" { "expand-collapse-cursor-row" (1,0,0) } +} + +class "GtkTreeView" binding "ms-windows-tree-view" + +style "msw-combobox-thickness" = "msw-default" +{ + xthickness = 0 + ythickness = 0 +} + +widget_class "*TreeView*ComboBox*" style "msw-combobox-thickness" +widget_class "*ComboBox*GtkFrame*" style "msw-combobox-thickness" diff --git a/win32/copy/etc/gtkpref.png b/win32/copy/etc/gtkpref.png new file mode 100644 index 00000000..9a6c9cf9 Binary files /dev/null and b/win32/copy/etc/gtkpref.png differ diff --git a/win32/copy/etc/music.png b/win32/copy/etc/music.png new file mode 100644 index 00000000..3a72f118 Binary files /dev/null and b/win32/copy/etc/music.png differ diff --git a/win32/copy/etc/system.png b/win32/copy/etc/system.png new file mode 100644 index 00000000..fc4282c7 Binary files /dev/null and b/win32/copy/etc/system.png differ diff --git a/win32/copy/share/xml/iso-codes/iso_3166.xml b/win32/copy/share/xml/iso-codes/iso_3166.xml new file mode 100644 index 00000000..77c72eb2 --- /dev/null +++ b/win32/copy/share/xml/iso-codes/iso_3166.xml @@ -0,0 +1,1703 @@ + + + + + + + + + +]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/win32/copy/share/xml/iso-codes/iso_639.xml b/win32/copy/share/xml/iso-codes/iso_639.xml new file mode 100644 index 00000000..02fa01fb --- /dev/null +++ b/win32/copy/share/xml/iso-codes/iso_639.xml @@ -0,0 +1,2169 @@ + + + + + + + +]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/win32/etc/download.png b/win32/etc/download.png deleted file mode 100644 index 43253432..00000000 Binary files a/win32/etc/download.png and /dev/null differ diff --git a/win32/etc/gtk-2.0/gtkrc b/win32/etc/gtk-2.0/gtkrc deleted file mode 100644 index 6ac7b76c..00000000 --- a/win32/etc/gtk-2.0/gtkrc +++ /dev/null @@ -1,71 +0,0 @@ -gtk-font-name = "sans 8" - -gtk-icon-sizes = "gtk-menu=13,13:gtk-small-toolbar=16,16:gtk-large-toolbar=24,24:gtk-dnd=32,32" -gtk-toolbar-icon-size = small-toolbar - -# disable images in buttons. i've only seen ugly delphi apps use this feature. -gtk-button-images = 0 - -# enable/disable images in menus. most "stock" microsoft apps don't use these, except sparingly. -# the office apps use them heavily, though. -gtk-menu-images = 1 - -# use the win32 button ordering instead of the GNOME HIG one, where applicable -gtk-alternative-button-order = 1 - -# use the win32 sort indicators direction, as in Explorer -gtk-alternative-sort-arrows = 1 - -# Windows users don't expect the PC Speaker beeping at them when they backspace in an empty textview and stuff like that -gtk-error-bell = 0 - -# hide mnemonic underlines until the Alt key is pressed (requires gtk 2.18+) -# gtk-auto-mnemonics = 1 - -style "msw-default" -{ - GtkWidget::interior-focus = 1 - GtkOptionMenu::indicator-size = { 9, 5 } - GtkOptionMenu::indicator-spacing = { 7, 5, 2, 2 } - GtkSpinButton::shadow-type = in - - # Owen and I disagree that these should be themable - #GtkUIManager::add-tearoffs = 0 - #GtkComboBox::add-tearoffs = 0 - - GtkComboBox::appears-as-list = 1 - GtkComboBox::focus-on-click = 0 - - GOComboBox::add_tearoffs = 0 - - GtkTreeView::allow-rules = 0 - GtkTreeView::expander-size = 12 - - GtkExpander::expander-size = 12 - - GtkScrolledWindow::scrollbar_spacing = 1 - - GtkSeparatorMenuItem::horizontal-padding = 2 - - engine "wimp" - { - } -} -class "*" style "msw-default" - -binding "ms-windows-tree-view" -{ - bind "Right" { "expand-collapse-cursor-row" (1,1,0) } - bind "Left" { "expand-collapse-cursor-row" (1,0,0) } -} - -class "GtkTreeView" binding "ms-windows-tree-view" - -style "msw-combobox-thickness" = "msw-default" -{ - xthickness = 0 - ythickness = 0 -} - -widget_class "*TreeView*ComboBox*" style "msw-combobox-thickness" -widget_class "*ComboBox*GtkFrame*" style "msw-combobox-thickness" diff --git a/win32/etc/gtkpref.png b/win32/etc/gtkpref.png deleted file mode 100644 index 9a6c9cf9..00000000 Binary files a/win32/etc/gtkpref.png and /dev/null differ diff --git a/win32/etc/music.png b/win32/etc/music.png deleted file mode 100644 index 3a72f118..00000000 Binary files a/win32/etc/music.png and /dev/null differ diff --git a/win32/etc/system.png b/win32/etc/system.png deleted file mode 100644 index fc4282c7..00000000 Binary files a/win32/etc/system.png and /dev/null differ diff --git a/win32/installer/installer.vcxproj b/win32/installer/installer.vcxproj index a8ca84fa..3cb84d56 100644 --- a/win32/installer/installer.vcxproj +++ b/win32/installer/installer.vcxproj @@ -16,6 +16,7 @@ false true MultiByte + WDK7 @@ -25,7 +26,10 @@ - + + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level3 @@ -39,19 +43,25 @@ true - echo [Setup] > "$(SolutionDir)\xchat-wdk-x86.iss" -echo WizardImageFile="$(SolutionDir)\bitmaps\wizardimage.bmp" >> "$(SolutionDir)\xchat-wdk-x86.iss" -echo WizardSmallImageFile="$(SolutionDir)\bitmaps\wizardsmallimage.bmp" >> "$(SolutionDir)\xchat-wdk-x86.iss" -"$(OutDir)\version" -a32 >> "$(SolutionDir)\xchat-wdk-x86.iss" -"$(OutDir)\version" -v >> "$(SolutionDir)\xchat-wdk-x86.iss" -"$(OutDir)\version" -i >> "$(SolutionDir)\xchat-wdk-x86.iss" -"$(OutDir)\version" -o32 >> "$(SolutionDir)\xchat-wdk-x86.iss" -echo SetupIconFile="$(SolutionDir)\..\xchat.ico" >> "$(SolutionDir)\xchat-wdk-x86.iss" -type "$(SolutionDir)\xchat-wdk-x86.skel.iss" >> "$(SolutionDir)\xchat-wdk-x86.iss" -"$(ProgramFiles)\Inno Setup 5\compil32" /cc "$(SolutionDir)\xchat-wdk-x86.iss" + echo [Setup] > "$(OutDir)\xchat-wdk-x86.iss" +echo WizardImageFile="$(ProjectDir)\wizardimage.bmp" >> "$(OutDir)\xchat-wdk-x86.iss" +echo WizardSmallImageFile="$(ProjectDir)\wizardsmallimage.bmp" >> "$(OutDir)\xchat-wdk-x86.iss" +"$(OutDir)\version" -a >> "$(OutDir)\xchat-wdk-x86.iss" +"$(OutDir)\version" -v >> "$(OutDir)\xchat-wdk-x86.iss" +"$(OutDir)\version" -i >> "$(OutDir)\xchat-wdk-x86.iss" +"$(OutDir)\version" -o >> "$(OutDir)\xchat-wdk-x86.iss" +echo SetupIconFile="$(SolutionDir)\..\xchat.ico" >> "$(OutDir)\xchat-wdk-x86.iss" +type xchat-wdk-x86.skel.iss >> "$(OutDir)\xchat-wdk-x86.iss" +"$(ProgramFiles)\Inno Setup 5\compil32" /cc "$(OutDir)\xchat-wdk-x86.iss" + + + + + + diff --git a/win32/installer/installer.vcxproj.filters b/win32/installer/installer.vcxproj.filters index 47cfb34e..b18a6411 100644 --- a/win32/installer/installer.vcxproj.filters +++ b/win32/installer/installer.vcxproj.filters @@ -1,17 +1,29 @@  - - {4FC737F1-C7A5-4376-A066-2A32D752A2FF} - cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx - - - {93995380-89BD-4b04-88EB-625FBE52EBFB} - h;hpp;hxx;hm;inl;inc;xsd - {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + Resource Files + + + Resource Files + + + Resource Files + + + Resource Files + + + Resource Files + + + Resource Files + + \ No newline at end of file diff --git a/win32/installer/watercolorlite-blue.cjstyles b/win32/installer/watercolorlite-blue.cjstyles new file mode 100644 index 00000000..a457029b Binary files /dev/null and b/win32/installer/watercolorlite-blue.cjstyles differ diff --git a/win32/installer/watercolorlite-green.cjstyles b/win32/installer/watercolorlite-green.cjstyles new file mode 100644 index 00000000..2b77026d Binary files /dev/null and b/win32/installer/watercolorlite-green.cjstyles differ diff --git a/win32/installer/wizardimage.bmp b/win32/installer/wizardimage.bmp new file mode 100644 index 00000000..9f5a4c90 Binary files /dev/null and b/win32/installer/wizardimage.bmp differ diff --git a/win32/installer/wizardsmallimage.bmp b/win32/installer/wizardsmallimage.bmp new file mode 100644 index 00000000..1bb8b790 Binary files /dev/null and b/win32/installer/wizardsmallimage.bmp differ diff --git a/win32/installer/xchat-wdk-x64.skel.iss b/win32/installer/xchat-wdk-x64.skel.iss new file mode 100644 index 00000000..e0a804db --- /dev/null +++ b/win32/installer/xchat-wdk-x64.skel.iss @@ -0,0 +1,279 @@ +AppName=XChat-WDK (x64) +AppPublisher=XChat-WDK +AppPublisherURL=http://www.xchat-wdk.org/ +AppCopyright=Copyright (C) 1998-2010 Peter Zelezny +AppSupportURL=http://code.google.com/p/xchat-wdk/issues/list +AppUpdatesURL=http://www.xchat-wdk.org/home/downloads +LicenseFile=COPYING +UninstallDisplayIcon={app}\xchat.exe +UninstallDisplayName=XChat-WDK (x64) +DefaultDirName={pf}\XChat-WDK +DefaultGroupName=XChat-WDK +DisableProgramGroupPage=yes +SolidCompression=yes +SourceDir=..\..\rel +OutputDir=..\.. +FlatComponentsList=no +PrivilegesRequired=none +ShowComponentSizes=no +CreateUninstallRegKey=not IsTaskSelected('portable') +Uninstallable=not IsTaskSelected('portable') +ArchitecturesAllowed=x64 +ArchitecturesInstallIn64BitMode=x64 + +[Types] +Name: "normal"; Description: "Normal Installation" +Name: "full"; Description: "Full Installation" +Name: "minimal"; Description: "Minimal Installation" +Name: "custom"; Description: "Custom Installation"; Flags: iscustom + +[Components] +Name: "libs"; Description: "XChat-WDK"; Types: normal full minimal custom; Flags: fixed +Name: "xctext"; Description: "XChat-Text"; Types: full custom; Flags: disablenouninstallwarning +Name: "translations"; Description: "Translations"; Types: normal full custom; Flags: disablenouninstallwarning +;obs Name: "gtkengines"; Description: "GTK+ Engines"; Types: full custom; Flags: disablenouninstallwarning +;Name: "spelling"; Description: "Spelling Dictionaries"; Types: full custom; Flags: disablenouninstallwarning +Name: "plugins"; Description: "Plugins"; Types: full custom; Flags: disablenouninstallwarning +Name: "plugins\checksum"; Description: "Checksum"; Types: full custom; Flags: disablenouninstallwarning +Name: "plugins\dns"; Description: "DNS"; Types: full custom; Flags: disablenouninstallwarning +Name: "plugins\doat"; Description: "Do At"; Types: full custom; Flags: disablenouninstallwarning +Name: "plugins\exec"; Description: "Exec"; Types: full custom; Flags: disablenouninstallwarning +Name: "plugins\fishlim"; Description: "FiSHLiM"; Types: full custom; Flags: disablenouninstallwarning +Name: "plugins\mpcinfo"; Description: "mpcInfo"; Types: full custom; Flags: disablenouninstallwarning +;Name: "plugins\nonbmp"; Description: "Non-BMP"; Types: normal full custom; Flags: disablenouninstallwarning +Name: "plugins\upd"; Description: "Update Checker"; Types: normal full custom; Flags: disablenouninstallwarning +Name: "plugins\winamp"; Description: "Winamp"; Types: full custom; Flags: disablenouninstallwarning +Name: "plugins\winsys"; Description: "WinSys"; Types: full custom; Flags: disablenouninstallwarning +Name: "plugins\wmpa"; Description: "Windows Media Player Announcer"; Types: full custom; Flags: disablenouninstallwarning +Name: "plugins\xsasl"; Description: "X-SASL"; Types: full custom; Flags: disablenouninstallwarning +Name: "plugins\xtray"; Description: "X-Tray"; Types: full custom; Flags: disablenouninstallwarning +Name: "langs"; Description: "Language Interfaces"; Types: full custom; Flags: disablenouninstallwarning +Name: "langs\lua"; Description: "Lua"; Types: full custom; Flags: disablenouninstallwarning +Name: "langs\lua\luawdk"; Description: "Lua-WDK"; Types: full custom; Flags: disablenouninstallwarning +Name: "langs\perl"; Description: "Perl"; Types: full custom; Flags: disablenouninstallwarning +Name: "langs\python"; Description: "Python"; Types: full custom; Flags: disablenouninstallwarning +Name: "langs\tcl"; Description: "Tcl"; Types: full custom; Flags: disablenouninstallwarning + +[Tasks] +Name: portable; Description: "Yes"; GroupDescription: "Portable Install (no Registry entries, no Start Menu icons, no uninstaller):"; Flags: unchecked + +Name: perl512; Description: "5.12"; GroupDescription: "Perl version:"; Flags: exclusive; Components: langs\perl +Name: perl514; Description: "5.14"; GroupDescription: "Perl version:"; Flags: exclusive unchecked; Components: langs\perl + +[Registry] +Root: HKCR; Subkey: "irc"; ValueType: none; ValueName: ""; ValueData: ""; Flags: deletekey uninsdeletekey; Tasks: not portable +Root: HKCR; Subkey: "irc"; ValueType: string; ValueName: ""; ValueData: "URL:IRC Protocol"; Flags: uninsdeletevalue; Tasks: not portable +Root: HKCR; Subkey: "irc"; ValueType: string; ValueName: "URL Protocol"; ValueData: ""; Flags: uninsdeletevalue; Tasks: not portable +Root: HKCR; Subkey: "irc\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "{app}\xchat.exe,0"; Flags: uninsdeletevalue; Tasks: not portable +Root: HKCR; Subkey: "irc\shell"; ValueType: string; ValueName: ""; ValueData: "open"; Flags: uninsdeletevalue; Tasks: not portable +Root: HKCR; Subkey: "irc\shell\open\command"; ValueType: string; ValueName: ""; ValueData: "{app}\xchat.exe --url=""%1"""; Flags: uninsdeletevalue; Tasks: not portable + +[Run] +Filename: "{app}\xchat.exe"; Description: "Run XChat-WDK after closing the Wizard"; Flags: nowait postinstall skipifsilent + +[Files] +; Add the ISSkin DLL used for skinning Inno Setup installations. +Source: ISSkinU.dll; DestDir: {app}; Flags: dontcopy + +; Add the Visual Style resource contains resources used for skinning, +; you can also use Microsoft Visual Styles (*.msstyles) resources. +Source: watercolorlite-blue.cjstyles; DestDir: {tmp}; Flags: dontcopy + +Source: "portable-mode"; DestDir: "{app}"; Tasks: portable + +Source: "cert.pem"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "COPYING"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "LICENSE.OPENSSL"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "LICENSE.ZLIB"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "LICENSE.GTK"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "LICENSE.CAIRO"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "LICENSE.LUA"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "LICENSE.ENCHANT"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "LICENSE.LIBXML"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "etc\gtk-2.0\gtkrc"; DestDir: "{app}\etc\gtk-2.0"; Flags: ignoreversion; Components: libs +;Source: "etc\gtk-2.0\gtkrc"; DestDir: "{app}\etc\gtk-2.0"; Flags: ignoreversion; Components: libs and not gtkengines +Source: "share\xml\*"; DestDir: "{app}\share\xml"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: libs +Source: "locale\*"; DestDir: "{app}\locale"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: translations +Source: "share\locale\*"; DestDir: "{app}\share\locale"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: translations +;Source: "share\myspell\*"; DestDir: "{app}\share\myspell"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: spelling + +Source: "libatk-1.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libcairo-2.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libeay32.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libexpat-1.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +;obs Source: "libffi-5.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libfreetype-6.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libfontconfig-1.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libgdk_pixbuf-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libgdk-win32-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libgio-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libglib-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libgmodule-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libgobject-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libgthread-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libgtk-win32-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libintl-8.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +;obs Source: "libjasper-1.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +;obs Source: "libjpeg-8.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libpango-1.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libpangocairo-1.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libpangoft2-1.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libpangowin32-1.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +;obs Source: "libpixman-1-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +;obs Source: "libtiff-3.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libpng14-14.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +;obs Source: "libpng15-15.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "lua51.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "ssleay32.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "zlib1.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libxml2.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +;obs Source: "libxml2-2.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libenchant.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs + +Source: "lib\enchant\libenchant_myspell.dll"; DestDir: "{app}\lib\enchant"; Flags: ignoreversion; Components: libs + +Source: "lib\gtk-2.0\2.10.0\engines\libpixmap.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: libs +Source: "lib\gtk-2.0\2.10.0\engines\libwimp.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: libs +Source: "lib\gtk-2.0\modules\libgail.dll"; DestDir: "{app}\lib\gtk-2.0\modules"; Flags: ignoreversion; Components: libs + +;obs Source: "etc\gtkpref.png"; DestDir: "{app}\etc"; Flags: ignoreversion; Components: gtkengines +;obs Source: "lib\gtk-2.0\2.10.0\engines\libclearlooks.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines +;obs Source: "lib\gtk-2.0\2.10.0\engines\libcrux-engine.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines +;obs Source: "lib\gtk-2.0\2.10.0\engines\libglide.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines +;obs Source: "lib\gtk-2.0\2.10.0\engines\libhcengine.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines +;obs Source: "lib\gtk-2.0\2.10.0\engines\libindustrial.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines +;obs Source: "lib\gtk-2.0\2.10.0\engines\libmist.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines +;obs Source: "lib\gtk-2.0\2.10.0\engines\libmurrine.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines +;obs Source: "lib\gtk-2.0\2.10.0\engines\libredmond95.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines +;obs Source: "lib\gtk-2.0\2.10.0\engines\libthinice.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines +;obs Source: "plugins\xcgtkpref.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: gtkengines +;obs Source: "share\themes\*"; DestDir: "{app}\share\themes"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: gtkengines +;obs Source: "gtk2-prefs.exe"; DestDir: "{app}"; Flags: ignoreversion; Components: gtkengines + +Source: "plugins\xcchecksum.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\checksum +Source: "plugins\xcdns.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\dns +Source: "plugins\xcdoat.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\doat +Source: "plugins\xcexec.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\exec +Source: "plugins\xcfishlim.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\fishlim +Source: "etc\music.png"; DestDir: "{app}\etc"; Flags: ignoreversion; Components: plugins\winamp or plugins\mpcinfo +Source: "plugins\xcmpcinfo.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\mpcinfo +;Source: "plugins\xcnonbmp.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\nonbmp +Source: "etc\download.png"; DestDir: "{app}\etc"; Flags: ignoreversion; Components: plugins\upd +Source: "plugins\xcupd.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\upd +Source: "plugins\xcwinamp.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\winamp +Source: "etc\system.png"; DestDir: "{app}\etc"; Flags: ignoreversion; Components: plugins\winsys +Source: "plugins\xcwinsys.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\winsys +Source: "plugins\xcxsasl.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\xsasl +Source: "plugins\xtray.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\xtray +Source: "plugins\xcwmpa.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\wmpa + +Source: "plugins\xclua.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: langs\lua +Source: "plugins\xcpython.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: langs\python +Source: "plugins\xctcl.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: langs\tcl + +Source: "plugins\xcperl-512.dll"; DestDir: "{app}\plugins"; DestName: "xcperl.dll"; Flags: ignoreversion; Components: langs\perl; Tasks: perl512 +Source: "plugins\xcperl-514.dll"; DestDir: "{app}\plugins"; DestName: "xcperl.dll"; Flags: ignoreversion; Components: langs\perl; Tasks: perl514 + +Source: "xchat.exe"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "xchat-text.exe"; DestDir: "{app}"; Flags: ignoreversion; Components: xctext + +[Icons] +Name: "{group}\XChat-WDK (x64)"; Filename: "{app}\xchat.exe"; Tasks: not portable +Name: "{group}\XChat-Text (x64)"; Filename: "{app}\xchat-text.exe"; Components: xctext; Tasks: not portable +Name: "{group}\Uninstall XChat-WDK (x64)"; Filename: "{uninstallexe}"; Tasks: not portable + +[Messages] +BeveledLabel= XChat-WDK + +[Code] +///////////////////////////////////////////////////////////////////// +// these are required for x86->x64 or reverse upgrades +///////////////////////////////////////////////////////////////////// +function GetUninstallString(): String; +var + sUnInstPath: String; + sUnInstallString: String; +begin + sUnInstPath := ExpandConstant('Software\Microsoft\Windows\CurrentVersion\Uninstall\XChat-WDK (x64)_is1'); + sUnInstallString := ''; + if not RegQueryStringValue(HKLM, sUnInstPath, 'UninstallString', sUnInstallString) then + RegQueryStringValue(HKCU, sUnInstPath, 'UninstallString', sUnInstallString); + Result := sUnInstallString; +end; + + +///////////////////////////////////////////////////////////////////// +function IsUpgrade(): Boolean; +begin + Result := (GetUninstallString() <> ''); +end; + + +///////////////////////////////////////////////////////////////////// +function UnInstallOldVersion(): Integer; +var + sUnInstallString: String; + iResultCode: Integer; +begin +// Return Values: +// 1 - uninstall string is empty +// 2 - error executing the UnInstallString +// 3 - successfully executed the UnInstallString + + // default return value + Result := 0; + + // get the uninstall string of the old app + sUnInstallString := GetUninstallString(); + if sUnInstallString <> '' then begin + sUnInstallString := RemoveQuotes(sUnInstallString); + if Exec(sUnInstallString, '/SILENT /NORESTART /SUPPRESSMSGBOXES','', SW_HIDE, ewWaitUntilTerminated, iResultCode) then + Result := 3 + else + Result := 2; + end else + Result := 1; +end; + +///////////////////////////////////////////////////////////////////// +procedure CurStepChanged(CurStep: TSetupStep); +begin + if not (IsTaskSelected('portable')) then + begin + if (CurStep=ssInstall) then + begin + if (IsUpgrade()) then + begin + UnInstallOldVersion(); + end; + end; + end; +end; + +///////////////////////////////////////////////////////////////////// +// Importing LoadSkin API from ISSkin.DLL +procedure LoadSkin(lpszPath: String; lpszIniFileName: String); +external 'LoadSkin@files:isskinu.dll stdcall'; + +// Importing UnloadSkin API from ISSkin.DLL +procedure UnloadSkin(); +external 'UnloadSkin@files:isskinu.dll stdcall'; + +// Importing ShowWindow Windows API from User32.DLL +function ShowWindow(hWnd: Integer; uType: Integer): Integer; +external 'ShowWindow@user32.dll stdcall'; + +function InitializeSetup(): Boolean; +begin + ExtractTemporaryFile('watercolorlite-blue.cjstyles'); + LoadSkin(ExpandConstant('{tmp}\watercolorlite-blue.cjstyles'), ''); + Result := True; +end; + +procedure DeinitializeSetup(); +begin + // Hide Window before unloading skin so user does not get + // a glimpse of an unskinned window before it is closed. + ShowWindow(StrToInt(ExpandConstant('{wizardhwnd}')), 0); + UnloadSkin(); +end; diff --git a/win32/installer/xchat-wdk-x86.skel.iss b/win32/installer/xchat-wdk-x86.skel.iss new file mode 100644 index 00000000..748c2b19 --- /dev/null +++ b/win32/installer/xchat-wdk-x86.skel.iss @@ -0,0 +1,282 @@ +AppName=XChat-WDK (x86) +AppPublisher=XChat-WDK +AppPublisherURL=http://www.xchat-wdk.org/ +AppCopyright=Copyright (C) 1998-2010 Peter Zelezny +AppSupportURL=http://code.google.com/p/xchat-wdk/issues/list +AppUpdatesURL=http://www.xchat-wdk.org/home/downloads +LicenseFile=COPYING +UninstallDisplayIcon={app}\xchat.exe +UninstallDisplayName=XChat-WDK (x86) +DefaultDirName={pf}\XChat-WDK +DefaultGroupName=XChat-WDK +DisableProgramGroupPage=yes +SolidCompression=yes +SourceDir=..\rel +OutputDir=.. +FlatComponentsList=no +PrivilegesRequired=none +ShowComponentSizes=no +CreateUninstallRegKey=not IsTaskSelected('portable') +Uninstallable=not IsTaskSelected('portable') +ArchitecturesAllowed=x86 x64 + +[Types] +Name: "normal"; Description: "Normal Installation" +Name: "full"; Description: "Full Installation" +Name: "minimal"; Description: "Minimal Installation" +Name: "custom"; Description: "Custom Installation"; Flags: iscustom + +[Components] +Name: "libs"; Description: "XChat-WDK"; Types: normal full minimal custom; Flags: fixed +Name: "xctext"; Description: "XChat-Text"; Types: full custom; Flags: disablenouninstallwarning +Name: "translations"; Description: "Translations"; Types: normal full custom; Flags: disablenouninstallwarning +;obs Name: "gtkengines"; Description: "GTK+ Engines"; Types: full custom; Flags: disablenouninstallwarning +;Name: "spelling"; Description: "Spelling Dictionaries"; Types: full custom; Flags: disablenouninstallwarning +Name: "plugins"; Description: "Plugins"; Types: full custom; Flags: disablenouninstallwarning +Name: "plugins\checksum"; Description: "Checksum"; Types: full custom; Flags: disablenouninstallwarning +Name: "plugins\dns"; Description: "DNS"; Types: full custom; Flags: disablenouninstallwarning +Name: "plugins\doat"; Description: "Do At"; Types: full custom; Flags: disablenouninstallwarning +Name: "plugins\exec"; Description: "Exec"; Types: full custom; Flags: disablenouninstallwarning +Name: "plugins\fishlim"; Description: "FiSHLiM"; Types: full custom; Flags: disablenouninstallwarning +Name: "plugins\mpcinfo"; Description: "mpcInfo"; Types: full custom; Flags: disablenouninstallwarning +;Name: "plugins\nonbmp"; Description: "Non-BMP"; Types: normal full custom; Flags: disablenouninstallwarning +Name: "plugins\upd"; Description: "Update Checker"; Types: normal full custom; Flags: disablenouninstallwarning +Name: "plugins\winamp"; Description: "Winamp"; Types: full custom; Flags: disablenouninstallwarning +Name: "plugins\winsys"; Description: "WinSys"; Types: full custom; Flags: disablenouninstallwarning +Name: "plugins\wmpa"; Description: "Windows Media Player Announcer"; Types: full custom; Flags: disablenouninstallwarning +Name: "plugins\xsasl"; Description: "X-SASL"; Types: full custom; Flags: disablenouninstallwarning +Name: "plugins\xtray"; Description: "X-Tray"; Types: full custom; Flags: disablenouninstallwarning +Name: "langs"; Description: "Language Interfaces"; Types: full custom; Flags: disablenouninstallwarning +Name: "langs\lua"; Description: "Lua"; Types: full custom; Flags: disablenouninstallwarning +Name: "langs\lua\luawdk"; Description: "Lua-WDK"; Types: full custom; Flags: disablenouninstallwarning +Name: "langs\perl"; Description: "Perl"; Types: full custom; Flags: disablenouninstallwarning +Name: "langs\python"; Description: "Python"; Types: full custom; Flags: disablenouninstallwarning +Name: "langs\tcl"; Description: "Tcl"; Types: full custom; Flags: disablenouninstallwarning + +[Tasks] +Name: portable; Description: "Yes"; GroupDescription: "Portable Install (no Registry entries, no Start Menu icons, no uninstaller):"; Flags: unchecked + +Name: perl512; Description: "5.12"; GroupDescription: "Perl version:"; Flags: exclusive; Components: langs\perl +Name: perl514; Description: "5.14"; GroupDescription: "Perl version:"; Flags: exclusive unchecked; Components: langs\perl +Name: perl516; Description: "5.16"; GroupDescription: "Perl version:"; Flags: exclusive unchecked; Components: langs\perl + +[Registry] +Root: HKCR; Subkey: "irc"; ValueType: none; ValueName: ""; ValueData: ""; Flags: deletekey uninsdeletekey; Tasks: not portable +Root: HKCR; Subkey: "irc"; ValueType: string; ValueName: ""; ValueData: "URL:IRC Protocol"; Flags: uninsdeletevalue; Tasks: not portable +Root: HKCR; Subkey: "irc"; ValueType: string; ValueName: "URL Protocol"; ValueData: ""; Flags: uninsdeletevalue; Tasks: not portable +Root: HKCR; Subkey: "irc\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "{app}\xchat.exe,0"; Flags: uninsdeletevalue; Tasks: not portable +Root: HKCR; Subkey: "irc\shell"; ValueType: string; ValueName: ""; ValueData: "open"; Flags: uninsdeletevalue; Tasks: not portable +Root: HKCR; Subkey: "irc\shell\open\command"; ValueType: string; ValueName: ""; ValueData: "{app}\xchat.exe --url=""%1"""; Flags: uninsdeletevalue; Tasks: not portable + +[Run] +Filename: "{app}\xchat.exe"; Description: "Run XChat-WDK after closing the Wizard"; Flags: nowait postinstall skipifsilent + +[Files] +; Add the ISSkin DLL used for skinning Inno Setup installations. +Source: ISSkinU.dll; DestDir: {app}; Flags: dontcopy + +; Add the Visual Style resource contains resources used for skinning, +; you can also use Microsoft Visual Styles (*.msstyles) resources. +Source: watercolorlite-green.cjstyles; DestDir: {tmp}; Flags: dontcopy + +Source: "portable-mode"; DestDir: "{app}"; Tasks: portable + +Source: "cert.pem"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "COPYING"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "LICENSE.OPENSSL"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "LICENSE.ZLIB"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "LICENSE.GTK"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "LICENSE.CAIRO"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "LICENSE.LUA"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "LICENSE.ENCHANT"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "LICENSE.LIBXML"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "etc\gtk-2.0\gtkrc"; DestDir: "{app}\etc\gtk-2.0"; Flags: ignoreversion; Components: libs +;Source: "etc\gtk-2.0\gtkrc"; DestDir: "{app}\etc\gtk-2.0"; Flags: ignoreversion; Components: libs and not gtkengines +Source: "share\xml\*"; DestDir: "{app}\share\xml"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: libs +Source: "locale\*"; DestDir: "{app}\locale"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: translations +Source: "share\locale\*"; DestDir: "{app}\share\locale"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: translations +;Source: "share\myspell\*"; DestDir: "{app}\share\myspell"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: spelling + +Source: "libatk-1.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libcairo-2.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libeay32.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libexpat-1.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +;obs Source: "libffi-5.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "freetype6.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +;obs Source: "libfreetype-6.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libfontconfig-1.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libgdk_pixbuf-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libgdk-win32-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libgio-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libglib-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libgmodule-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libgobject-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libgthread-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libgtk-win32-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "intl.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +;obs Source: "libintl-8.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +;obs Source: "libjasper-1.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +;obs Source: "libjpeg-8.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libpango-1.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libpangocairo-1.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libpangoft2-1.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libpangowin32-1.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +;obs Source: "libpixman-1-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +;obs Source: "libtiff-3.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libpng14-14.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +;obs Source: "libpng15-15.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "lua51.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "ssleay32.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "zlib1.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libxml2.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +;obs Source: "libxml2-2.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "libenchant.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs + +Source: "lib\enchant\libenchant_myspell.dll"; DestDir: "{app}\lib\enchant"; Flags: ignoreversion; Components: libs + +Source: "lib\gtk-2.0\2.10.0\engines\libpixmap.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: libs +Source: "lib\gtk-2.0\2.10.0\engines\libwimp.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: libs +Source: "lib\gtk-2.0\modules\libgail.dll"; DestDir: "{app}\lib\gtk-2.0\modules"; Flags: ignoreversion; Components: libs + +;obs Source: "etc\gtkpref.png"; DestDir: "{app}\etc"; Flags: ignoreversion; Components: gtkengines +;obs Source: "lib\gtk-2.0\2.10.0\engines\libclearlooks.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines +;obs Source: "lib\gtk-2.0\2.10.0\engines\libcrux-engine.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines +;obs Source: "lib\gtk-2.0\2.10.0\engines\libglide.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines +;obs Source: "lib\gtk-2.0\2.10.0\engines\libhcengine.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines +;obs Source: "lib\gtk-2.0\2.10.0\engines\libindustrial.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines +;obs Source: "lib\gtk-2.0\2.10.0\engines\libmist.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines +;obs Source: "lib\gtk-2.0\2.10.0\engines\libmurrine.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines +;obs Source: "lib\gtk-2.0\2.10.0\engines\libredmond95.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines +;obs Source: "lib\gtk-2.0\2.10.0\engines\libthinice.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines +;obs Source: "plugins\xcgtkpref.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: gtkengines +;obs Source: "share\themes\*"; DestDir: "{app}\share\themes"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: gtkengines +;obs Source: "gtk2-prefs.exe"; DestDir: "{app}"; Flags: ignoreversion; Components: gtkengines + +Source: "plugins\xcchecksum.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\checksum +Source: "plugins\xcdns.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\dns +Source: "plugins\xcdoat.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\doat +Source: "plugins\xcexec.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\exec +Source: "plugins\xcfishlim.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\fishlim +Source: "etc\music.png"; DestDir: "{app}\etc"; Flags: ignoreversion; Components: plugins\winamp or plugins\mpcinfo +Source: "plugins\xcmpcinfo.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\mpcinfo +;Source: "plugins\xcnonbmp.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\nonbmp +Source: "etc\download.png"; DestDir: "{app}\etc"; Flags: ignoreversion; Components: plugins\upd +Source: "plugins\xcupd.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\upd +Source: "plugins\xcwinamp.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\winamp +Source: "etc\system.png"; DestDir: "{app}\etc"; Flags: ignoreversion; Components: plugins\winsys +Source: "plugins\xcwinsys.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\winsys +Source: "plugins\xcxsasl.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\xsasl +Source: "plugins\xtray.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\xtray +Source: "plugins\xcwmpa.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\wmpa + +Source: "plugins\xclua.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: langs\lua +Source: "plugins\xcpython.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: langs\python +Source: "plugins\xctcl.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: langs\tcl + +Source: "plugins\xcperl-512.dll"; DestDir: "{app}\plugins"; DestName: "xcperl.dll"; Flags: ignoreversion; Components: langs\perl; Tasks: perl512 +Source: "plugins\xcperl-514.dll"; DestDir: "{app}\plugins"; DestName: "xcperl.dll"; Flags: ignoreversion; Components: langs\perl; Tasks: perl514 +Source: "plugins\xcperl-516.dll"; DestDir: "{app}\plugins"; DestName: "xcperl.dll"; Flags: ignoreversion; Components: langs\perl; Tasks: perl516 + +Source: "xchat.exe"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "xchat-text.exe"; DestDir: "{app}"; Flags: ignoreversion; Components: xctext + +[Icons] +Name: "{group}\XChat-WDK (x86)"; Filename: "{app}\xchat.exe"; Tasks: not portable +Name: "{group}\XChat-Text (x86)"; Filename: "{app}\xchat-text.exe"; Components: xctext; Tasks: not portable +Name: "{group}\Uninstall XChat-WDK (x86)"; Filename: "{uninstallexe}"; Tasks: not portable + +[Messages] +BeveledLabel= XChat-WDK + +[Code] +///////////////////////////////////////////////////////////////////// +// these are required for x86->x64 or reverse upgrades +///////////////////////////////////////////////////////////////////// +function GetUninstallString(): String; +var + sUnInstPath: String; + sUnInstallString: String; +begin + sUnInstPath := ExpandConstant('Software\Microsoft\Windows\CurrentVersion\Uninstall\XChat-WDK (x86)_is1'); + sUnInstallString := ''; + if not RegQueryStringValue(HKLM, sUnInstPath, 'UninstallString', sUnInstallString) then + RegQueryStringValue(HKCU, sUnInstPath, 'UninstallString', sUnInstallString); + Result := sUnInstallString; +end; + + +///////////////////////////////////////////////////////////////////// +function IsUpgrade(): Boolean; +begin + Result := (GetUninstallString() <> ''); +end; + + +///////////////////////////////////////////////////////////////////// +function UnInstallOldVersion(): Integer; +var + sUnInstallString: String; + iResultCode: Integer; +begin +// Return Values: +// 1 - uninstall string is empty +// 2 - error executing the UnInstallString +// 3 - successfully executed the UnInstallString + + // default return value + Result := 0; + + // get the uninstall string of the old app + sUnInstallString := GetUninstallString(); + if sUnInstallString <> '' then begin + sUnInstallString := RemoveQuotes(sUnInstallString); + if Exec(sUnInstallString, '/SILENT /NORESTART /SUPPRESSMSGBOXES','', SW_HIDE, ewWaitUntilTerminated, iResultCode) then + Result := 3 + else + Result := 2; + end else + Result := 1; +end; + +///////////////////////////////////////////////////////////////////// +procedure CurStepChanged(CurStep: TSetupStep); +begin + if not (IsTaskSelected('portable')) then + begin + if (CurStep=ssInstall) then + begin + if (IsUpgrade()) then + begin + UnInstallOldVersion(); + end; + end; + end; +end; + +///////////////////////////////////////////////////////////////////// +// Importing LoadSkin API from ISSkin.DLL +procedure LoadSkin(lpszPath: String; lpszIniFileName: String); +external 'LoadSkin@files:isskinu.dll stdcall'; + +// Importing UnloadSkin API from ISSkin.DLL +procedure UnloadSkin(); +external 'UnloadSkin@files:isskinu.dll stdcall'; + +// Importing ShowWindow Windows API from User32.DLL +function ShowWindow(hWnd: Integer; uType: Integer): Integer; +external 'ShowWindow@user32.dll stdcall'; + +function InitializeSetup(): Boolean; +begin + ExtractTemporaryFile('watercolorlite-green.cjstyles'); + LoadSkin(ExpandConstant('{tmp}\watercolorlite-green.cjstyles'), ''); + Result := True; +end; + +procedure DeinitializeSetup(); +begin + // Hide Window before unloading skin so user does not get + // a glimpse of an unskinned window before it is closed. + ShowWindow(StrToInt(ExpandConstant('{wizardhwnd}')), 0); + UnloadSkin(); +end; diff --git a/win32/isskin/watercolorlite-blue.cjstyles b/win32/isskin/watercolorlite-blue.cjstyles deleted file mode 100644 index a457029b..00000000 Binary files a/win32/isskin/watercolorlite-blue.cjstyles and /dev/null differ diff --git a/win32/isskin/watercolorlite-green.cjstyles b/win32/isskin/watercolorlite-green.cjstyles deleted file mode 100644 index 2b77026d..00000000 Binary files a/win32/isskin/watercolorlite-green.cjstyles and /dev/null differ diff --git a/win32/nls/nls.vcxproj b/win32/nls/nls.vcxproj index a9fa71bf..10e53bd8 100644 --- a/win32/nls/nls.vcxproj +++ b/win32/nls/nls.vcxproj @@ -26,7 +26,10 @@ - + + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level3 @@ -45,11 +48,11 @@ cd ..\..\po -rmdir /q /s locale -mkdir locale +rmdir /q /s "$(OutDir)\locale" +mkdir "$(OutDir)\locale" for %%A in (*.po) do ( -mkdir locale\%%~nA\LC_MESSAGES -"$(DepsRoot)\bin\msgfmt" -co locale\%%~nA\LC_MESSAGES\xchat.mo %%A +mkdir "$(OutDir)\locale\%%~nA\LC_MESSAGES" +"$(DepsRoot)\bin\msgfmt" -co "$(OutDir)\locale\%%~nA\LC_MESSAGES\xchat.mo" %%A ) diff --git a/win32/share/themes/Murrine/gtk-2.0/gtkrc b/win32/share/themes/Murrine/gtk-2.0/gtkrc deleted file mode 100644 index b9d95848..00000000 --- a/win32/share/themes/Murrine/gtk-2.0/gtkrc +++ /dev/null @@ -1,7 +0,0 @@ -style "default" -{ - engine "murrine" - { - } -} -class "*" style "default" diff --git a/win32/share/xml/iso-codes/iso_3166.xml b/win32/share/xml/iso-codes/iso_3166.xml deleted file mode 100644 index 77c72eb2..00000000 --- a/win32/share/xml/iso-codes/iso_3166.xml +++ /dev/null @@ -1,1703 +0,0 @@ - - - - - - - - - -]> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/win32/share/xml/iso-codes/iso_639.xml b/win32/share/xml/iso-codes/iso_639.xml deleted file mode 100644 index 02fa01fb..00000000 --- a/win32/share/xml/iso-codes/iso_639.xml +++ /dev/null @@ -1,2169 +0,0 @@ - - - - - - - -]> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/win32/xchat-wdk-x64.skel.iss b/win32/xchat-wdk-x64.skel.iss deleted file mode 100644 index 1caf8198..00000000 --- a/win32/xchat-wdk-x64.skel.iss +++ /dev/null @@ -1,279 +0,0 @@ -AppName=XChat-WDK (x64) -AppPublisher=XChat-WDK -AppPublisherURL=http://www.xchat-wdk.org/ -AppCopyright=Copyright (C) 1998-2010 Peter Zelezny -AppSupportURL=http://code.google.com/p/xchat-wdk/issues/list -AppUpdatesURL=http://www.xchat-wdk.org/home/downloads -LicenseFile=COPYING -UninstallDisplayIcon={app}\xchat.exe -UninstallDisplayName=XChat-WDK (x64) -DefaultDirName={pf}\XChat-WDK -DefaultGroupName=XChat-WDK -DisableProgramGroupPage=yes -SolidCompression=yes -SourceDir=dist-x64 -OutputDir=..\ -FlatComponentsList=no -PrivilegesRequired=none -ShowComponentSizes=no -CreateUninstallRegKey=not IsTaskSelected('portable') -Uninstallable=not IsTaskSelected('portable') -ArchitecturesAllowed=x64 -ArchitecturesInstallIn64BitMode=x64 - -[Types] -Name: "normal"; Description: "Normal Installation" -Name: "full"; Description: "Full Installation" -Name: "minimal"; Description: "Minimal Installation" -Name: "custom"; Description: "Custom Installation"; Flags: iscustom - -[Components] -Name: "libs"; Description: "XChat-WDK"; Types: normal full minimal custom; Flags: fixed -Name: "xctext"; Description: "XChat-Text"; Types: full custom; Flags: disablenouninstallwarning -Name: "translations"; Description: "Translations"; Types: normal full custom; Flags: disablenouninstallwarning -;obs Name: "gtkengines"; Description: "GTK+ Engines"; Types: full custom; Flags: disablenouninstallwarning -;Name: "spelling"; Description: "Spelling Dictionaries"; Types: full custom; Flags: disablenouninstallwarning -Name: "plugins"; Description: "Plugins"; Types: full custom; Flags: disablenouninstallwarning -Name: "plugins\checksum"; Description: "Checksum"; Types: full custom; Flags: disablenouninstallwarning -Name: "plugins\dns"; Description: "DNS"; Types: full custom; Flags: disablenouninstallwarning -Name: "plugins\doat"; Description: "Do At"; Types: full custom; Flags: disablenouninstallwarning -Name: "plugins\exec"; Description: "Exec"; Types: full custom; Flags: disablenouninstallwarning -Name: "plugins\fishlim"; Description: "FiSHLiM"; Types: full custom; Flags: disablenouninstallwarning -Name: "plugins\mpcinfo"; Description: "mpcInfo"; Types: full custom; Flags: disablenouninstallwarning -;Name: "plugins\nonbmp"; Description: "Non-BMP"; Types: normal full custom; Flags: disablenouninstallwarning -Name: "plugins\upd"; Description: "Update Checker"; Types: normal full custom; Flags: disablenouninstallwarning -Name: "plugins\winamp"; Description: "Winamp"; Types: full custom; Flags: disablenouninstallwarning -Name: "plugins\winsys"; Description: "WinSys"; Types: full custom; Flags: disablenouninstallwarning -Name: "plugins\wmpa"; Description: "Windows Media Player Announcer"; Types: full custom; Flags: disablenouninstallwarning -Name: "plugins\xsasl"; Description: "X-SASL"; Types: full custom; Flags: disablenouninstallwarning -Name: "plugins\xtray"; Description: "X-Tray"; Types: full custom; Flags: disablenouninstallwarning -Name: "langs"; Description: "Language Interfaces"; Types: full custom; Flags: disablenouninstallwarning -Name: "langs\lua"; Description: "Lua"; Types: full custom; Flags: disablenouninstallwarning -Name: "langs\lua\luawdk"; Description: "Lua-WDK"; Types: full custom; Flags: disablenouninstallwarning -Name: "langs\perl"; Description: "Perl"; Types: full custom; Flags: disablenouninstallwarning -Name: "langs\python"; Description: "Python"; Types: full custom; Flags: disablenouninstallwarning -Name: "langs\tcl"; Description: "Tcl"; Types: full custom; Flags: disablenouninstallwarning - -[Tasks] -Name: portable; Description: "Yes"; GroupDescription: "Portable Install (no Registry entries, no Start Menu icons, no uninstaller):"; Flags: unchecked - -Name: perl512; Description: "5.12"; GroupDescription: "Perl version:"; Flags: exclusive; Components: langs\perl -Name: perl514; Description: "5.14"; GroupDescription: "Perl version:"; Flags: exclusive unchecked; Components: langs\perl - -[Registry] -Root: HKCR; Subkey: "irc"; ValueType: none; ValueName: ""; ValueData: ""; Flags: deletekey uninsdeletekey; Tasks: not portable -Root: HKCR; Subkey: "irc"; ValueType: string; ValueName: ""; ValueData: "URL:IRC Protocol"; Flags: uninsdeletevalue; Tasks: not portable -Root: HKCR; Subkey: "irc"; ValueType: string; ValueName: "URL Protocol"; ValueData: ""; Flags: uninsdeletevalue; Tasks: not portable -Root: HKCR; Subkey: "irc\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "{app}\xchat.exe,0"; Flags: uninsdeletevalue; Tasks: not portable -Root: HKCR; Subkey: "irc\shell"; ValueType: string; ValueName: ""; ValueData: "open"; Flags: uninsdeletevalue; Tasks: not portable -Root: HKCR; Subkey: "irc\shell\open\command"; ValueType: string; ValueName: ""; ValueData: "{app}\xchat.exe --url=""%1"""; Flags: uninsdeletevalue; Tasks: not portable - -[Run] -Filename: "{app}\xchat.exe"; Description: "Run XChat-WDK after closing the Wizard"; Flags: nowait postinstall skipifsilent - -[Files] -; Add the ISSkin DLL used for skinning Inno Setup installations. -Source: ISSkinU.dll; DestDir: {app}; Flags: dontcopy - -; Add the Visual Style resource contains resources used for skinning, -; you can also use Microsoft Visual Styles (*.msstyles) resources. -Source: watercolorlite-blue.cjstyles; DestDir: {tmp}; Flags: dontcopy - -Source: "portable-mode"; DestDir: "{app}"; Tasks: portable - -Source: "cert.pem"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "COPYING"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "LICENSE.OPENSSL"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "LICENSE.ZLIB"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "LICENSE.GTK"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "LICENSE.CAIRO"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "LICENSE.LUA"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "LICENSE.ENCHANT"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "LICENSE.LIBXML"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "etc\gtk-2.0\gtkrc"; DestDir: "{app}\etc\gtk-2.0"; Flags: ignoreversion; Components: libs -;Source: "etc\gtk-2.0\gtkrc"; DestDir: "{app}\etc\gtk-2.0"; Flags: ignoreversion; Components: libs and not gtkengines -Source: "share\xml\*"; DestDir: "{app}\share\xml"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: libs -Source: "locale\*"; DestDir: "{app}\locale"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: translations -Source: "share\locale\*"; DestDir: "{app}\share\locale"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: translations -;Source: "share\myspell\*"; DestDir: "{app}\share\myspell"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: spelling - -Source: "libatk-1.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libcairo-2.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libeay32.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libexpat-1.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -;obs Source: "libffi-5.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libfreetype-6.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libfontconfig-1.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libgdk_pixbuf-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libgdk-win32-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libgio-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libglib-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libgmodule-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libgobject-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libgthread-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libgtk-win32-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libintl-8.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -;obs Source: "libjasper-1.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -;obs Source: "libjpeg-8.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libpango-1.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libpangocairo-1.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libpangoft2-1.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libpangowin32-1.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -;obs Source: "libpixman-1-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -;obs Source: "libtiff-3.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libpng14-14.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -;obs Source: "libpng15-15.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "lua51.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "ssleay32.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "zlib1.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libxml2.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -;obs Source: "libxml2-2.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libenchant.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs - -Source: "lib\enchant\libenchant_myspell.dll"; DestDir: "{app}\lib\enchant"; Flags: ignoreversion; Components: libs - -Source: "lib\gtk-2.0\2.10.0\engines\libpixmap.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: libs -Source: "lib\gtk-2.0\2.10.0\engines\libwimp.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: libs -Source: "lib\gtk-2.0\modules\libgail.dll"; DestDir: "{app}\lib\gtk-2.0\modules"; Flags: ignoreversion; Components: libs - -;obs Source: "etc\gtkpref.png"; DestDir: "{app}\etc"; Flags: ignoreversion; Components: gtkengines -;obs Source: "lib\gtk-2.0\2.10.0\engines\libclearlooks.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines -;obs Source: "lib\gtk-2.0\2.10.0\engines\libcrux-engine.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines -;obs Source: "lib\gtk-2.0\2.10.0\engines\libglide.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines -;obs Source: "lib\gtk-2.0\2.10.0\engines\libhcengine.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines -;obs Source: "lib\gtk-2.0\2.10.0\engines\libindustrial.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines -;obs Source: "lib\gtk-2.0\2.10.0\engines\libmist.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines -;obs Source: "lib\gtk-2.0\2.10.0\engines\libmurrine.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines -;obs Source: "lib\gtk-2.0\2.10.0\engines\libredmond95.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines -;obs Source: "lib\gtk-2.0\2.10.0\engines\libthinice.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines -;obs Source: "plugins\xcgtkpref.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: gtkengines -;obs Source: "share\themes\*"; DestDir: "{app}\share\themes"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: gtkengines -;obs Source: "gtk2-prefs.exe"; DestDir: "{app}"; Flags: ignoreversion; Components: gtkengines - -Source: "plugins\xcchecksum.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\checksum -Source: "plugins\xcdns.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\dns -Source: "plugins\xcdoat.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\doat -Source: "plugins\xcexec.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\exec -Source: "plugins\xcfishlim.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\fishlim -Source: "etc\music.png"; DestDir: "{app}\etc"; Flags: ignoreversion; Components: plugins\winamp or plugins\mpcinfo -Source: "plugins\xcmpcinfo.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\mpcinfo -;Source: "plugins\xcnonbmp.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\nonbmp -Source: "etc\download.png"; DestDir: "{app}\etc"; Flags: ignoreversion; Components: plugins\upd -Source: "plugins\xcupd.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\upd -Source: "plugins\xcwinamp.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\winamp -Source: "etc\system.png"; DestDir: "{app}\etc"; Flags: ignoreversion; Components: plugins\winsys -Source: "plugins\xcwinsys.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\winsys -Source: "plugins\xcxsasl.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\xsasl -Source: "plugins\xtray.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\xtray -Source: "plugins\xcwmpa.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\wmpa - -Source: "plugins\xclua.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: langs\lua -Source: "plugins\xcpython.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: langs\python -Source: "plugins\xctcl.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: langs\tcl - -Source: "plugins\xcperl-512.dll"; DestDir: "{app}\plugins"; DestName: "xcperl.dll"; Flags: ignoreversion; Components: langs\perl; Tasks: perl512 -Source: "plugins\xcperl-514.dll"; DestDir: "{app}\plugins"; DestName: "xcperl.dll"; Flags: ignoreversion; Components: langs\perl; Tasks: perl514 - -Source: "xchat.exe"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "xchat-text.exe"; DestDir: "{app}"; Flags: ignoreversion; Components: xctext - -[Icons] -Name: "{group}\XChat-WDK (x64)"; Filename: "{app}\xchat.exe"; Tasks: not portable -Name: "{group}\XChat-Text (x64)"; Filename: "{app}\xchat-text.exe"; Components: xctext; Tasks: not portable -Name: "{group}\Uninstall XChat-WDK (x64)"; Filename: "{uninstallexe}"; Tasks: not portable - -[Messages] -BeveledLabel= XChat-WDK - -[Code] -///////////////////////////////////////////////////////////////////// -// these are required for x86->x64 or reverse upgrades -///////////////////////////////////////////////////////////////////// -function GetUninstallString(): String; -var - sUnInstPath: String; - sUnInstallString: String; -begin - sUnInstPath := ExpandConstant('Software\Microsoft\Windows\CurrentVersion\Uninstall\XChat-WDK (x64)_is1'); - sUnInstallString := ''; - if not RegQueryStringValue(HKLM, sUnInstPath, 'UninstallString', sUnInstallString) then - RegQueryStringValue(HKCU, sUnInstPath, 'UninstallString', sUnInstallString); - Result := sUnInstallString; -end; - - -///////////////////////////////////////////////////////////////////// -function IsUpgrade(): Boolean; -begin - Result := (GetUninstallString() <> ''); -end; - - -///////////////////////////////////////////////////////////////////// -function UnInstallOldVersion(): Integer; -var - sUnInstallString: String; - iResultCode: Integer; -begin -// Return Values: -// 1 - uninstall string is empty -// 2 - error executing the UnInstallString -// 3 - successfully executed the UnInstallString - - // default return value - Result := 0; - - // get the uninstall string of the old app - sUnInstallString := GetUninstallString(); - if sUnInstallString <> '' then begin - sUnInstallString := RemoveQuotes(sUnInstallString); - if Exec(sUnInstallString, '/SILENT /NORESTART /SUPPRESSMSGBOXES','', SW_HIDE, ewWaitUntilTerminated, iResultCode) then - Result := 3 - else - Result := 2; - end else - Result := 1; -end; - -///////////////////////////////////////////////////////////////////// -procedure CurStepChanged(CurStep: TSetupStep); -begin - if not (IsTaskSelected('portable')) then - begin - if (CurStep=ssInstall) then - begin - if (IsUpgrade()) then - begin - UnInstallOldVersion(); - end; - end; - end; -end; - -///////////////////////////////////////////////////////////////////// -// Importing LoadSkin API from ISSkin.DLL -procedure LoadSkin(lpszPath: String; lpszIniFileName: String); -external 'LoadSkin@files:isskinu.dll stdcall'; - -// Importing UnloadSkin API from ISSkin.DLL -procedure UnloadSkin(); -external 'UnloadSkin@files:isskinu.dll stdcall'; - -// Importing ShowWindow Windows API from User32.DLL -function ShowWindow(hWnd: Integer; uType: Integer): Integer; -external 'ShowWindow@user32.dll stdcall'; - -function InitializeSetup(): Boolean; -begin - ExtractTemporaryFile('watercolorlite-blue.cjstyles'); - LoadSkin(ExpandConstant('{tmp}\watercolorlite-blue.cjstyles'), ''); - Result := True; -end; - -procedure DeinitializeSetup(); -begin - // Hide Window before unloading skin so user does not get - // a glimpse of an unskinned window before it is closed. - ShowWindow(StrToInt(ExpandConstant('{wizardhwnd}')), 0); - UnloadSkin(); -end; diff --git a/win32/xchat-wdk-x86.skel.iss b/win32/xchat-wdk-x86.skel.iss deleted file mode 100644 index 511a29f8..00000000 --- a/win32/xchat-wdk-x86.skel.iss +++ /dev/null @@ -1,282 +0,0 @@ -AppName=XChat-WDK (x86) -AppPublisher=XChat-WDK -AppPublisherURL=http://www.xchat-wdk.org/ -AppCopyright=Copyright (C) 1998-2010 Peter Zelezny -AppSupportURL=http://code.google.com/p/xchat-wdk/issues/list -AppUpdatesURL=http://www.xchat-wdk.org/home/downloads -LicenseFile=COPYING -UninstallDisplayIcon={app}\xchat.exe -UninstallDisplayName=XChat-WDK (x86) -DefaultDirName={pf}\XChat-WDK -DefaultGroupName=XChat-WDK -DisableProgramGroupPage=yes -SolidCompression=yes -SourceDir=dist\Win32 -OutputDir=..\ -FlatComponentsList=no -PrivilegesRequired=none -ShowComponentSizes=no -CreateUninstallRegKey=not IsTaskSelected('portable') -Uninstallable=not IsTaskSelected('portable') -ArchitecturesAllowed=x86 x64 - -[Types] -Name: "normal"; Description: "Normal Installation" -Name: "full"; Description: "Full Installation" -Name: "minimal"; Description: "Minimal Installation" -Name: "custom"; Description: "Custom Installation"; Flags: iscustom - -[Components] -Name: "libs"; Description: "XChat-WDK"; Types: normal full minimal custom; Flags: fixed -Name: "xctext"; Description: "XChat-Text"; Types: full custom; Flags: disablenouninstallwarning -Name: "translations"; Description: "Translations"; Types: normal full custom; Flags: disablenouninstallwarning -;obs Name: "gtkengines"; Description: "GTK+ Engines"; Types: full custom; Flags: disablenouninstallwarning -;Name: "spelling"; Description: "Spelling Dictionaries"; Types: full custom; Flags: disablenouninstallwarning -Name: "plugins"; Description: "Plugins"; Types: full custom; Flags: disablenouninstallwarning -Name: "plugins\checksum"; Description: "Checksum"; Types: full custom; Flags: disablenouninstallwarning -Name: "plugins\dns"; Description: "DNS"; Types: full custom; Flags: disablenouninstallwarning -Name: "plugins\doat"; Description: "Do At"; Types: full custom; Flags: disablenouninstallwarning -Name: "plugins\exec"; Description: "Exec"; Types: full custom; Flags: disablenouninstallwarning -Name: "plugins\fishlim"; Description: "FiSHLiM"; Types: full custom; Flags: disablenouninstallwarning -Name: "plugins\mpcinfo"; Description: "mpcInfo"; Types: full custom; Flags: disablenouninstallwarning -;Name: "plugins\nonbmp"; Description: "Non-BMP"; Types: normal full custom; Flags: disablenouninstallwarning -Name: "plugins\upd"; Description: "Update Checker"; Types: normal full custom; Flags: disablenouninstallwarning -Name: "plugins\winamp"; Description: "Winamp"; Types: full custom; Flags: disablenouninstallwarning -Name: "plugins\winsys"; Description: "WinSys"; Types: full custom; Flags: disablenouninstallwarning -Name: "plugins\wmpa"; Description: "Windows Media Player Announcer"; Types: full custom; Flags: disablenouninstallwarning -Name: "plugins\xsasl"; Description: "X-SASL"; Types: full custom; Flags: disablenouninstallwarning -Name: "plugins\xtray"; Description: "X-Tray"; Types: full custom; Flags: disablenouninstallwarning -Name: "langs"; Description: "Language Interfaces"; Types: full custom; Flags: disablenouninstallwarning -Name: "langs\lua"; Description: "Lua"; Types: full custom; Flags: disablenouninstallwarning -Name: "langs\lua\luawdk"; Description: "Lua-WDK"; Types: full custom; Flags: disablenouninstallwarning -Name: "langs\perl"; Description: "Perl"; Types: full custom; Flags: disablenouninstallwarning -Name: "langs\python"; Description: "Python"; Types: full custom; Flags: disablenouninstallwarning -Name: "langs\tcl"; Description: "Tcl"; Types: full custom; Flags: disablenouninstallwarning - -[Tasks] -Name: portable; Description: "Yes"; GroupDescription: "Portable Install (no Registry entries, no Start Menu icons, no uninstaller):"; Flags: unchecked - -Name: perl512; Description: "5.12"; GroupDescription: "Perl version:"; Flags: exclusive; Components: langs\perl -Name: perl514; Description: "5.14"; GroupDescription: "Perl version:"; Flags: exclusive unchecked; Components: langs\perl -Name: perl516; Description: "5.16"; GroupDescription: "Perl version:"; Flags: exclusive unchecked; Components: langs\perl - -[Registry] -Root: HKCR; Subkey: "irc"; ValueType: none; ValueName: ""; ValueData: ""; Flags: deletekey uninsdeletekey; Tasks: not portable -Root: HKCR; Subkey: "irc"; ValueType: string; ValueName: ""; ValueData: "URL:IRC Protocol"; Flags: uninsdeletevalue; Tasks: not portable -Root: HKCR; Subkey: "irc"; ValueType: string; ValueName: "URL Protocol"; ValueData: ""; Flags: uninsdeletevalue; Tasks: not portable -Root: HKCR; Subkey: "irc\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "{app}\xchat.exe,0"; Flags: uninsdeletevalue; Tasks: not portable -Root: HKCR; Subkey: "irc\shell"; ValueType: string; ValueName: ""; ValueData: "open"; Flags: uninsdeletevalue; Tasks: not portable -Root: HKCR; Subkey: "irc\shell\open\command"; ValueType: string; ValueName: ""; ValueData: "{app}\xchat.exe --url=""%1"""; Flags: uninsdeletevalue; Tasks: not portable - -[Run] -Filename: "{app}\xchat.exe"; Description: "Run XChat-WDK after closing the Wizard"; Flags: nowait postinstall skipifsilent - -[Files] -; Add the ISSkin DLL used for skinning Inno Setup installations. -Source: ISSkinU.dll; DestDir: {app}; Flags: dontcopy - -; Add the Visual Style resource contains resources used for skinning, -; you can also use Microsoft Visual Styles (*.msstyles) resources. -Source: watercolorlite-green.cjstyles; DestDir: {tmp}; Flags: dontcopy - -Source: "portable-mode"; DestDir: "{app}"; Tasks: portable - -Source: "cert.pem"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "COPYING"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "LICENSE.OPENSSL"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "LICENSE.ZLIB"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "LICENSE.GTK"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "LICENSE.CAIRO"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "LICENSE.LUA"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "LICENSE.ENCHANT"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "LICENSE.LIBXML"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "etc\gtk-2.0\gtkrc"; DestDir: "{app}\etc\gtk-2.0"; Flags: ignoreversion; Components: libs -;Source: "etc\gtk-2.0\gtkrc"; DestDir: "{app}\etc\gtk-2.0"; Flags: ignoreversion; Components: libs and not gtkengines -Source: "share\xml\*"; DestDir: "{app}\share\xml"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: libs -Source: "locale\*"; DestDir: "{app}\locale"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: translations -Source: "share\locale\*"; DestDir: "{app}\share\locale"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: translations -;Source: "share\myspell\*"; DestDir: "{app}\share\myspell"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: spelling - -Source: "libatk-1.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libcairo-2.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libeay32.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libexpat-1.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -;obs Source: "libffi-5.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "freetype6.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -;obs Source: "libfreetype-6.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libfontconfig-1.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libgdk_pixbuf-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libgdk-win32-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libgio-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libglib-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libgmodule-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libgobject-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libgthread-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libgtk-win32-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "intl.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -;obs Source: "libintl-8.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -;obs Source: "libjasper-1.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -;obs Source: "libjpeg-8.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libpango-1.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libpangocairo-1.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libpangoft2-1.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libpangowin32-1.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -;obs Source: "libpixman-1-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -;obs Source: "libtiff-3.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libpng14-14.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -;obs Source: "libpng15-15.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "lua51.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "ssleay32.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "zlib1.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libxml2.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -;obs Source: "libxml2-2.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "libenchant.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs - -Source: "lib\enchant\libenchant_myspell.dll"; DestDir: "{app}\lib\enchant"; Flags: ignoreversion; Components: libs - -Source: "lib\gtk-2.0\2.10.0\engines\libpixmap.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: libs -Source: "lib\gtk-2.0\2.10.0\engines\libwimp.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: libs -Source: "lib\gtk-2.0\modules\libgail.dll"; DestDir: "{app}\lib\gtk-2.0\modules"; Flags: ignoreversion; Components: libs - -;obs Source: "etc\gtkpref.png"; DestDir: "{app}\etc"; Flags: ignoreversion; Components: gtkengines -;obs Source: "lib\gtk-2.0\2.10.0\engines\libclearlooks.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines -;obs Source: "lib\gtk-2.0\2.10.0\engines\libcrux-engine.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines -;obs Source: "lib\gtk-2.0\2.10.0\engines\libglide.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines -;obs Source: "lib\gtk-2.0\2.10.0\engines\libhcengine.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines -;obs Source: "lib\gtk-2.0\2.10.0\engines\libindustrial.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines -;obs Source: "lib\gtk-2.0\2.10.0\engines\libmist.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines -;obs Source: "lib\gtk-2.0\2.10.0\engines\libmurrine.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines -;obs Source: "lib\gtk-2.0\2.10.0\engines\libredmond95.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines -;obs Source: "lib\gtk-2.0\2.10.0\engines\libthinice.dll"; DestDir: "{app}\lib\gtk-2.0\2.10.0\engines"; Flags: ignoreversion; Components: gtkengines -;obs Source: "plugins\xcgtkpref.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: gtkengines -;obs Source: "share\themes\*"; DestDir: "{app}\share\themes"; Flags: ignoreversion createallsubdirs recursesubdirs; Components: gtkengines -;obs Source: "gtk2-prefs.exe"; DestDir: "{app}"; Flags: ignoreversion; Components: gtkengines - -Source: "plugins\xcchecksum.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\checksum -Source: "plugins\xcdns.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\dns -Source: "plugins\xcdoat.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\doat -Source: "plugins\xcexec.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\exec -Source: "plugins\xcfishlim.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\fishlim -Source: "etc\music.png"; DestDir: "{app}\etc"; Flags: ignoreversion; Components: plugins\winamp or plugins\mpcinfo -Source: "plugins\xcmpcinfo.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\mpcinfo -;Source: "plugins\xcnonbmp.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\nonbmp -Source: "etc\download.png"; DestDir: "{app}\etc"; Flags: ignoreversion; Components: plugins\upd -Source: "plugins\xcupd.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\upd -Source: "plugins\xcwinamp.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\winamp -Source: "etc\system.png"; DestDir: "{app}\etc"; Flags: ignoreversion; Components: plugins\winsys -Source: "plugins\xcwinsys.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\winsys -Source: "plugins\xcxsasl.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\xsasl -Source: "plugins\xtray.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\xtray -Source: "plugins\xcwmpa.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: plugins\wmpa - -Source: "plugins\xclua.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: langs\lua -Source: "plugins\xcpython.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: langs\python -Source: "plugins\xctcl.dll"; DestDir: "{app}\plugins"; Flags: ignoreversion; Components: langs\tcl - -Source: "plugins\xcperl-512.dll"; DestDir: "{app}\plugins"; DestName: "xcperl.dll"; Flags: ignoreversion; Components: langs\perl; Tasks: perl512 -Source: "plugins\xcperl-514.dll"; DestDir: "{app}\plugins"; DestName: "xcperl.dll"; Flags: ignoreversion; Components: langs\perl; Tasks: perl514 -Source: "plugins\xcperl-516.dll"; DestDir: "{app}\plugins"; DestName: "xcperl.dll"; Flags: ignoreversion; Components: langs\perl; Tasks: perl516 - -Source: "xchat.exe"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "xchat-text.exe"; DestDir: "{app}"; Flags: ignoreversion; Components: xctext - -[Icons] -Name: "{group}\XChat-WDK (x86)"; Filename: "{app}\xchat.exe"; Tasks: not portable -Name: "{group}\XChat-Text (x86)"; Filename: "{app}\xchat-text.exe"; Components: xctext; Tasks: not portable -Name: "{group}\Uninstall XChat-WDK (x86)"; Filename: "{uninstallexe}"; Tasks: not portable - -[Messages] -BeveledLabel= XChat-WDK - -[Code] -///////////////////////////////////////////////////////////////////// -// these are required for x86->x64 or reverse upgrades -///////////////////////////////////////////////////////////////////// -function GetUninstallString(): String; -var - sUnInstPath: String; - sUnInstallString: String; -begin - sUnInstPath := ExpandConstant('Software\Microsoft\Windows\CurrentVersion\Uninstall\XChat-WDK (x86)_is1'); - sUnInstallString := ''; - if not RegQueryStringValue(HKLM, sUnInstPath, 'UninstallString', sUnInstallString) then - RegQueryStringValue(HKCU, sUnInstPath, 'UninstallString', sUnInstallString); - Result := sUnInstallString; -end; - - -///////////////////////////////////////////////////////////////////// -function IsUpgrade(): Boolean; -begin - Result := (GetUninstallString() <> ''); -end; - - -///////////////////////////////////////////////////////////////////// -function UnInstallOldVersion(): Integer; -var - sUnInstallString: String; - iResultCode: Integer; -begin -// Return Values: -// 1 - uninstall string is empty -// 2 - error executing the UnInstallString -// 3 - successfully executed the UnInstallString - - // default return value - Result := 0; - - // get the uninstall string of the old app - sUnInstallString := GetUninstallString(); - if sUnInstallString <> '' then begin - sUnInstallString := RemoveQuotes(sUnInstallString); - if Exec(sUnInstallString, '/SILENT /NORESTART /SUPPRESSMSGBOXES','', SW_HIDE, ewWaitUntilTerminated, iResultCode) then - Result := 3 - else - Result := 2; - end else - Result := 1; -end; - -///////////////////////////////////////////////////////////////////// -procedure CurStepChanged(CurStep: TSetupStep); -begin - if not (IsTaskSelected('portable')) then - begin - if (CurStep=ssInstall) then - begin - if (IsUpgrade()) then - begin - UnInstallOldVersion(); - end; - end; - end; -end; - -///////////////////////////////////////////////////////////////////// -// Importing LoadSkin API from ISSkin.DLL -procedure LoadSkin(lpszPath: String; lpszIniFileName: String); -external 'LoadSkin@files:isskinu.dll stdcall'; - -// Importing UnloadSkin API from ISSkin.DLL -procedure UnloadSkin(); -external 'UnloadSkin@files:isskinu.dll stdcall'; - -// Importing ShowWindow Windows API from User32.DLL -function ShowWindow(hWnd: Integer; uType: Integer): Integer; -external 'ShowWindow@user32.dll stdcall'; - -function InitializeSetup(): Boolean; -begin - ExtractTemporaryFile('watercolorlite-green.cjstyles'); - LoadSkin(ExpandConstant('{tmp}\watercolorlite-green.cjstyles'), ''); - Result := True; -end; - -procedure DeinitializeSetup(); -begin - // Hide Window before unloading skin so user does not get - // a glimpse of an unskinned window before it is closed. - ShowWindow(StrToInt(ExpandConstant('{wizardhwnd}')), 0); - UnloadSkin(); -end; diff --git a/win32/xchat.props b/win32/xchat.props index e0aa21c8..3038fb04 100644 --- a/win32/xchat.props +++ b/win32/xchat.props @@ -35,7 +35,7 @@ $(DepsRoot)\include\gtk-2.0;$(DepsRoot)\lib\gtk-2.0\include;$(DepsRoot)\include\atk-1.0;$(DepsRoot)\include\cairo;$(DepsRoot)\include\pango-1.0;$(DepsRoot)\include\gdk-pixbuf-2.0 bookpng "$(SolutionDir)\..\src\pixmaps\book.png" hoppng "$(SolutionDir)\..\src\pixmaps\hop.png" oppng "$(SolutionDir)\..\src\pixmaps\op.png" purplepng "$(SolutionDir)\..\src\pixmaps\purple.png" redpng "$(SolutionDir)\..\src\pixmaps\red.png" trayfilepng "$(SolutionDir)\..\src\pixmaps\fileoffer.png" trayhilightpng "$(SolutionDir)\..\src\pixmaps\highlight.png" traymsgpng "$(SolutionDir)\..\src\pixmaps\message.png" voicepng "$(SolutionDir)\..\src\pixmaps\voice.png" xchatpng "$(SolutionDir)\..\xchat.png" gtk-win32-2.0.lib;gdk-win32-2.0.lib;atk-1.0.lib;gio-2.0.lib;gdk_pixbuf-2.0.lib;pangowin32-1.0.lib;pangocairo-1.0.lib;pango-1.0.lib;cairo.lib;gobject-2.0.lib;gmodule-2.0.lib;glib-2.0.lib;intl.lib;libxml2.lib;libeay32.lib;ssleay32.lib;wininet.lib;winmm.lib;ws2_32.lib - $(SolutionDir)\dist\$(PlatformName) + $(SolutionDir)build\$(PlatformName)\rel diff --git a/win32/xchat.sln b/win32/xchat.sln index 050313eb..84e1190e 100644 --- a/win32/xchat.sln +++ b/win32/xchat.sln @@ -89,10 +89,32 @@ EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "nls", "nls\nls.vcxproj", "{B10A2C41-344C-43E0-A32D-B9587C198D8B}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "copy", "copy\copy.vcxproj", "{C9B735E4-75BC-45AC-A5E3-39A6D076F912}" + ProjectSection(ProjectDependencies) = postProject + {19C52A0A-A790-409E-A28A-9745FF990F5C} = {19C52A0A-A790-409E-A28A-9745FF990F5C} + {E7F4DB0A-510D-41EF-B284-6E1DE1CC450D} = {E7F4DB0A-510D-41EF-B284-6E1DE1CC450D} + {646B4316-C8B8-4DB6-B6AE-E586929E5729} = {646B4316-C8B8-4DB6-B6AE-E586929E5729} + {4980AF24-9D42-427D-A8E6-0DF3B97C455D} = {4980AF24-9D42-427D-A8E6-0DF3B97C455D} + {3024CF36-85E5-4E00-9608-7002E2C7EF14} = {3024CF36-85E5-4E00-9608-7002E2C7EF14} + {58654438-F674-42F7-88FA-73EF90AD80B1} = {58654438-F674-42F7-88FA-73EF90AD80B1} + {17E4BE39-76F7-4A06-AD21-EFD0C5091F76} = {17E4BE39-76F7-4A06-AD21-EFD0C5091F76} + {B10A2C41-344C-43E0-A32D-B9587C198D8B} = {B10A2C41-344C-43E0-A32D-B9587C198D8B} + {461DC24A-A410-4171-8C02-CCDBF3702C2A} = {461DC24A-A410-4171-8C02-CCDBF3702C2A} + {E93E1255-95D1-4B08-8FDF-B53CC6A21280} = {E93E1255-95D1-4B08-8FDF-B53CC6A21280} + {2773666A-8CFC-4533-A043-EAD59F16A1C7} = {2773666A-8CFC-4533-A043-EAD59F16A1C7} + {C4C9FA6F-F990-4C7B-85F6-CD8F4F5728F0} = {C4C9FA6F-F990-4C7B-85F6-CD8F4F5728F0} + {987E9374-98A1-44BA-946F-D3472D7A7055} = {987E9374-98A1-44BA-946F-D3472D7A7055} + {5EF7F47D-D09C-43C4-BF64-B28B11A0FF91} = {5EF7F47D-D09C-43C4-BF64-B28B11A0FF91} + {6C0CA980-97C5-427A-BE61-5BCECAFABBDA} = {6C0CA980-97C5-427A-BE61-5BCECAFABBDA} + {3786FA8C-3E76-45E3-984E-FCCFF44729C9} = {3786FA8C-3E76-45E3-984E-FCCFF44729C9} + {B0E36D93-CA2A-49FE-9EB9-9C96C6016EEC} = {B0E36D93-CA2A-49FE-9EB9-9C96C6016EEC} + {E78C0D9A-798E-4BF6-B0CC-6FECB8CA2FCE} = {E78C0D9A-798E-4BF6-B0CC-6FECB8CA2FCE} + {18871EBA-AC85-4652-8919-EB8064B9A714} = {18871EBA-AC85-4652-8919-EB8064B9A714} + {E4BDB4C8-2335-415A-ACEE-BA88B19BFE82} = {E4BDB4C8-2335-415A-ACEE-BA88B19BFE82} + {3C4F42FC-292A-420B-B63D-C03DFBDD8E4E} = {3C4F42FC-292A-420B-B63D-C03DFBDD8E4E} + EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "installer", "installer\installer.vcxproj", "{5A0F4962-E670-4DA2-9E45-52CC47F26E2F}" ProjectSection(ProjectDependencies) = postProject - {B10A2C41-344C-43E0-A32D-B9587C198D8B} = {B10A2C41-344C-43E0-A32D-B9587C198D8B} {C9B735E4-75BC-45AC-A5E3-39A6D076F912} = {C9B735E4-75BC-45AC-A5E3-39A6D076F912} EndProjectSection EndProject -- cgit 1.4.1 From ad59c4a586711f488b31f83072ebdc9ac595366e Mon Sep 17 00:00:00 2001 From: Berke Viktor Date: Fri, 15 Jun 2012 22:36:29 +0200 Subject: Add x64 support to the VS solution --- plugins/checksum/checksum.vcxproj | 43 ++++++++++++++++ plugins/dns/dns.vcxproj | 43 ++++++++++++++++ plugins/doat/doat.vcxproj | 41 ++++++++++++++++ plugins/exec/exec.vcxproj | 41 ++++++++++++++++ plugins/fishlim/fishlim.vcxproj | 43 ++++++++++++++++ plugins/lua/lua.vcxproj | 55 +++++++++++++++++++++ plugins/mpcinfo/mpcinfo.vcxproj | 41 ++++++++++++++++ plugins/perl/perl-512.vcxproj | 52 ++++++++++++++++++++ plugins/perl/perl-514.vcxproj | 52 ++++++++++++++++++++ plugins/perl/perl-516.vcxproj | 52 ++++++++++++++++++++ plugins/python/python.vcxproj | 43 ++++++++++++++++ plugins/tcl/tcl.vcxproj | 43 ++++++++++++++++ plugins/upd/upd.vcxproj | 43 ++++++++++++++++ plugins/winamp/winamp.vcxproj | 41 ++++++++++++++++ plugins/winsys/winsys.vcxproj | 44 +++++++++++++++++ plugins/wmpa/wmpa.vcxproj | 43 ++++++++++++++++ plugins/xsasl/xsasl.vcxproj | 43 ++++++++++++++++ plugins/xtray/xtray.vcxproj | 41 ++++++++++++++++ src/common/common.vcxproj | 38 ++++++++++++++ src/dirent/dirent.vcxproj | 38 ++++++++++++++ src/fe-gtk/fe-gtk.vcxproj | 43 ++++++++++++++++ src/fe-text/fe-text.vcxproj | 42 ++++++++++++++++ src/pixmaps/pixmaps.vcxproj | 40 +++++++++++++++ src/version/version.vcxproj | 41 ++++++++++++++++ win32/copy/copy.vcxproj | 101 ++++++++++++++++++++++++++++++++++++++ win32/installer/installer.vcxproj | 44 +++++++++++++++++ win32/nls/nls.vcxproj | 45 +++++++++++++++++ win32/xchat.sln | 55 +++++++++++++++++++++ 28 files changed, 1291 insertions(+) (limited to 'plugins/lua') diff --git a/plugins/checksum/checksum.vcxproj b/plugins/checksum/checksum.vcxproj index c4090cd1..753ca10e 100644 --- a/plugins/checksum/checksum.vcxproj +++ b/plugins/checksum/checksum.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + {5EF7F47D-D09C-43C4-BF64-B28B11A0FF91} @@ -19,6 +23,13 @@ MultiByte WDK7 + + DynamicLibrary + false + true + MultiByte + WDK7 + @@ -26,6 +37,10 @@ + + + + false @@ -33,6 +48,12 @@ $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + false + xcchecksum + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level1 @@ -55,6 +76,28 @@ $(DepLibs);%(AdditionalDependencies) + + + Level1 + + + MaxSpeed + true + true + WIN32;_WIN64;NDEBUG;_WINDOWS;_USRDLL;CHECKSUM_EXPORTS;%(PreprocessorDefinitions) + $(DepsRoot)\include;..;%(AdditionalIncludeDirectories) + true + + + Windows + true + true + true + checksum.def + $(DepsRoot)\lib;%(AdditionalLibraryDirectories) + $(DepLibs);%(AdditionalDependencies) + + diff --git a/plugins/dns/dns.vcxproj b/plugins/dns/dns.vcxproj index 38f1634b..64df391d 100644 --- a/plugins/dns/dns.vcxproj +++ b/plugins/dns/dns.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + {3786FA8C-3E76-45E3-984E-FCCFF44729C9} @@ -19,6 +23,13 @@ MultiByte WDK7 + + DynamicLibrary + false + true + MultiByte + WDK7 + @@ -26,6 +37,10 @@ + + + + false @@ -33,6 +48,12 @@ $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + false + xcdns + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level1 @@ -55,6 +76,28 @@ dns.def + + + Level1 + + + MaxSpeed + true + true + WIN32;_WIN64;NDEBUG;_WINDOWS;_USRDLL;DNS_EXPORTS;%(PreprocessorDefinitions) + ..;%(AdditionalIncludeDirectories) + true + + + Windows + true + true + true + $(DepsRoot)\lib;%(AdditionalLibraryDirectories) + $(DepLibs);%(AdditionalDependencies) + dns.def + + diff --git a/plugins/doat/doat.vcxproj b/plugins/doat/doat.vcxproj index c6901fe1..33969fc3 100644 --- a/plugins/doat/doat.vcxproj +++ b/plugins/doat/doat.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + {4980AF24-9D42-427D-A8E6-0DF3B97C455D} @@ -19,6 +23,13 @@ MultiByte WDK7 + + DynamicLibrary + false + true + MultiByte + WDK7 + @@ -26,6 +37,10 @@ + + + + false @@ -33,6 +48,12 @@ $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + false + xcdoat + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level1 @@ -53,6 +74,26 @@ doat.def + + + Level1 + + + MaxSpeed + true + true + WIN32;_WIN64;NDEBUG;_WINDOWS;_USRDLL;DOAT_EXPORTS;%(PreprocessorDefinitions) + ..;%(AdditionalIncludeDirectories) + true + + + Windows + true + true + true + doat.def + + diff --git a/plugins/exec/exec.vcxproj b/plugins/exec/exec.vcxproj index 15bf5ec5..22e6200a 100644 --- a/plugins/exec/exec.vcxproj +++ b/plugins/exec/exec.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + {17E4BE39-76F7-4A06-AD21-EFD0C5091F76} @@ -19,6 +23,13 @@ MultiByte WDK7 + + DynamicLibrary + false + true + MultiByte + WDK7 + @@ -26,6 +37,10 @@ + + + + false @@ -33,6 +48,12 @@ $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + false + xcexec + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level1 @@ -53,6 +74,26 @@ exec.def + + + Level1 + + + MaxSpeed + true + true + WIN32;_WIN64;NDEBUG;_WINDOWS;_USRDLL;EXEC_EXPORTS;%(PreprocessorDefinitions) + true + ..;%(AdditionalIncludeDirectories) + + + Windows + true + true + true + exec.def + + diff --git a/plugins/fishlim/fishlim.vcxproj b/plugins/fishlim/fishlim.vcxproj index 0f6e1c38..6b5dcc07 100644 --- a/plugins/fishlim/fishlim.vcxproj +++ b/plugins/fishlim/fishlim.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + {3C4F42FC-292A-420B-B63D-C03DFBDD8E4E} @@ -19,6 +23,13 @@ MultiByte WDK7 + + DynamicLibrary + false + true + MultiByte + WDK7 + @@ -26,6 +37,10 @@ + + + + false @@ -33,6 +48,12 @@ $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + false + xcfishlim + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level1 @@ -55,6 +76,28 @@ $(DepLibs);%(AdditionalDependencies) + + + Level1 + + + MaxSpeed + true + true + WIN32;_WIN64;NDEBUG;_WINDOWS;_USRDLL;FISHLIM_EXPORTS;%(PreprocessorDefinitions) + true + $(DepsRoot)\include;$(Glib);..;%(AdditionalIncludeDirectories) + + + Windows + true + true + true + fishlim.def + $(DepsRoot)\lib;%(AdditionalLibraryDirectories) + $(DepLibs);%(AdditionalDependencies) + + diff --git a/plugins/lua/lua.vcxproj b/plugins/lua/lua.vcxproj index 26d21856..cbb3c444 100644 --- a/plugins/lua/lua.vcxproj +++ b/plugins/lua/lua.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + {646B4316-C8B8-4DB6-B6AE-E586929E5729} @@ -19,6 +23,13 @@ MultiByte WDK7 + + DynamicLibrary + false + true + MultiByte + WDK7 + @@ -26,6 +37,10 @@ + + + + false @@ -33,6 +48,12 @@ $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + false + $(LuaOutput) + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level1 @@ -53,11 +74,36 @@ "$(LuaLib).lib";;dirent-win32.lib;%(AdditionalDependencies) + + + Level1 + + + MaxSpeed + true + true + WIN32;NDEBUG;_WINDOWS;_USRDLL;LUA_EXPORTS;$(OwnFlags);%(PreprocessorDefinitions) + $(DepsRoot)\include;..;%(AdditionalIncludeDirectories) + + + Windows + true + true + true + $(DepsRoot)\lib;$(OutDir);%(AdditionalLibraryDirectories) + "$(LuaLib).lib";;dirent-win32.lib;%(AdditionalDependencies) + + "$(LuaLib).lib";$(DepLibs);dirent-win32.lib;%(AdditionalDependencies) + + + "$(LuaLib).lib";$(DepLibs);dirent-win32.lib;%(AdditionalDependencies) + + WIN32;NDEBUG;_WINDOWS;_USRDLL;$(OwnFlags);snprintf=g_snprintf;%(PreprocessorDefinitions) @@ -67,6 +113,15 @@ lua.def + + + WIN32;_WIN64;NDEBUG;_WINDOWS;_USRDLL;$(OwnFlags);snprintf=g_snprintf;%(PreprocessorDefinitions) + true + + + lua.def + + diff --git a/plugins/mpcinfo/mpcinfo.vcxproj b/plugins/mpcinfo/mpcinfo.vcxproj index 7f12822e..6746ce15 100644 --- a/plugins/mpcinfo/mpcinfo.vcxproj +++ b/plugins/mpcinfo/mpcinfo.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + {B0E36D93-CA2A-49FE-9EB9-9C96C6016EEC} @@ -19,6 +23,13 @@ MultiByte WDK7 + + DynamicLibrary + false + true + MultiByte + WDK7 + @@ -26,6 +37,10 @@ + + + + false @@ -33,6 +48,12 @@ $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + false + xcmpcinfo + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level1 @@ -53,6 +74,26 @@ mpcinfo.def + + + Level1 + + + MaxSpeed + true + true + WIN32;_WIN64;NDEBUG;_WINDOWS;_USRDLL;MPCINFO_EXPORTS;%(PreprocessorDefinitions) + true + ..;%(AdditionalIncludeDirectories) + + + Windows + true + true + true + mpcinfo.def + + diff --git a/plugins/perl/perl-512.vcxproj b/plugins/perl/perl-512.vcxproj index d924af48..313014b9 100644 --- a/plugins/perl/perl-512.vcxproj +++ b/plugins/perl/perl-512.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + {987E9374-98A1-44BA-946F-D3472D7A7055} @@ -19,6 +23,13 @@ MultiByte WDK7 + + DynamicLibrary + false + true + MultiByte + WDK7 + @@ -26,6 +37,10 @@ + + + + false @@ -33,6 +48,12 @@ $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + false + $(Perl512Output) + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level1 @@ -61,6 +82,37 @@ move $(Perl512Lib).def "$(IntDir)" lib /nologo /machine:x86 "/def:$(IntDir)$(Perl512Lib).def" "/out:$(OutDir)\$(Perl512Lib).lib" "$(Perl512Path)\perl\bin\perl.exe" generate_header move irc.pm.h "$(IntDir)" +move xchat.pm.h "$(IntDir)" + + + + + Level1 + + + MaxSpeed + true + true + WIN32;_WIN64;NDEBUG;_WINDOWS;_USRDLL;PERL512_EXPORTS;$(OwnFlags);%(PreprocessorDefinitions) + true + $(Perl512Path)\perl\lib\CORE;$(IntDir);..;%(AdditionalIncludeDirectories) + + + Windows + true + true + true + $(OutDir);%(AdditionalLibraryDirectories) + $(Perl512Lib).lib;dirent-win32.lib;%(AdditionalDependencies) + perl.def + $(Perl512Lib).dll;%(DelayLoadDLLs) + + + "$(GendefPath)\gendef" "$(Perl512Path)\perl\bin\$(Perl512Lib).dll" +move $(Perl512Lib).def "$(IntDir)" +lib /nologo /machine:x64 "/def:$(IntDir)$(Perl512Lib).def" "/out:$(OutDir)\$(Perl512Lib).lib" +"$(Perl512Path)\perl\bin\perl.exe" generate_header +move irc.pm.h "$(IntDir)" move xchat.pm.h "$(IntDir)" diff --git a/plugins/perl/perl-514.vcxproj b/plugins/perl/perl-514.vcxproj index 58cc4f04..6e469944 100644 --- a/plugins/perl/perl-514.vcxproj +++ b/plugins/perl/perl-514.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + {C4C9FA6F-F990-4C7B-85F6-CD8F4F5728F0} @@ -19,6 +23,13 @@ MultiByte WDK7 + + DynamicLibrary + false + true + MultiByte + WDK7 + @@ -26,6 +37,10 @@ + + + + false @@ -33,6 +48,12 @@ $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + false + $(Perl514Output) + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level1 @@ -61,6 +82,37 @@ move $(Perl514Lib).def "$(IntDir)" lib /nologo /machine:x86 "/def:$(IntDir)$(Perl514Lib).def" "/out:$(OutDir)\$(Perl514Lib).lib" "$(Perl514Path)\perl\bin\perl.exe" generate_header move irc.pm.h "$(IntDir)" +move xchat.pm.h "$(IntDir)" + + + + + Level1 + + + MaxSpeed + true + true + WIN32;_WIN64;NDEBUG;_WINDOWS;_USRDLL;PERL514_EXPORTS;$(OwnFlags);%(PreprocessorDefinitions) + $(Perl514Path)\perl\lib\CORE;$(IntDir);..;%(AdditionalIncludeDirectories) + true + + + Windows + true + true + true + $(OutDir);%(AdditionalLibraryDirectories) + $(Perl514Lib).lib;dirent-win32.lib;%(AdditionalDependencies) + perl.def + $(Perl514Lib).dll;%(DelayLoadDLLs) + + + "$(GendefPath)\gendef" "$(Perl514Path)\perl\bin\$(Perl514Lib).dll" +move $(Perl514Lib).def "$(IntDir)" +lib /nologo /machine:x64 "/def:$(IntDir)$(Perl514Lib).def" "/out:$(OutDir)\$(Perl514Lib).lib" +"$(Perl514Path)\perl\bin\perl.exe" generate_header +move irc.pm.h "$(IntDir)" move xchat.pm.h "$(IntDir)" diff --git a/plugins/perl/perl-516.vcxproj b/plugins/perl/perl-516.vcxproj index 516c1b80..06bf2fbd 100644 --- a/plugins/perl/perl-516.vcxproj +++ b/plugins/perl/perl-516.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + {58654438-F674-42F7-88FA-73EF90AD80B1} @@ -19,6 +23,13 @@ MultiByte WDK7 + + DynamicLibrary + false + true + MultiByte + WDK7 + @@ -26,6 +37,10 @@ + + + + false @@ -33,6 +48,12 @@ $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + false + $(Perl516Output) + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level1 @@ -61,6 +82,37 @@ move $(Perl516Lib).def "$(IntDir)" lib /nologo /machine:x86 "/def:$(IntDir)$(Perl516Lib).def" "/out:$(OutDir)\$(Perl516Lib).lib" "$(Perl516Path)\perl\bin\perl.exe" generate_header move irc.pm.h "$(IntDir)" +move xchat.pm.h "$(IntDir)" + + + + + Level1 + + + MaxSpeed + true + true + WIN32;_WIN64;NDEBUG;_WINDOWS;_USRDLL;PERL516_EXPORTS;$(OwnFlags);%(PreprocessorDefinitions) + $(Perl516Path)\perl\lib\CORE;$(IntDir);..;%(AdditionalIncludeDirectories) + true + + + Windows + true + true + true + $(OutDir);%(AdditionalLibraryDirectories) + $(Perl516Lib).lib;dirent-win32.lib;%(AdditionalDependencies) + perl.def + $(Perl516Lib).dll;%(DelayLoadDLLs) + + + "$(GendefPath)\gendef" "$(Perl516Path)\perl\bin\$(Perl516Lib).dll" +move $(Perl516Lib).def "$(IntDir)" +lib /nologo /machine:x64 "/def:$(IntDir)$(Perl516Lib).def" "/out:$(OutDir)\$(Perl516Lib).lib" +"$(Perl516Path)\perl\bin\perl.exe" generate_header +move irc.pm.h "$(IntDir)" move xchat.pm.h "$(IntDir)" diff --git a/plugins/python/python.vcxproj b/plugins/python/python.vcxproj index 923eeb92..ef50ee42 100644 --- a/plugins/python/python.vcxproj +++ b/plugins/python/python.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + {19C52A0A-A790-409E-A28A-9745FF990F5C} @@ -19,6 +23,13 @@ MultiByte WDK7 + + DynamicLibrary + false + true + MultiByte + WDK7 + @@ -26,6 +37,10 @@ + + + + false @@ -33,6 +48,12 @@ $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + false + $(PythonOutput) + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level1 @@ -55,6 +76,28 @@ $(DepsRoot)\lib;$(OutDir);$(PythonPath)\libs;%(AdditionalLibraryDirectories) + + + Level1 + + + MaxSpeed + true + true + WIN32;_WIN64;NDEBUG;_WINDOWS;_USRDLL;PYTHON_EXPORTS;$(OwnFlags);%(PreprocessorDefinitions) + $(Glib);$(PythonPath)\include;..;%(AdditionalIncludeDirectories) + true + + + Windows + true + true + true + python.def + "$(PythonLib).lib";$(DepLibs);dirent-win32.lib;%(AdditionalDependencies) + $(DepsRoot)\lib;$(OutDir);$(PythonPath)\libs;%(AdditionalLibraryDirectories) + + diff --git a/plugins/tcl/tcl.vcxproj b/plugins/tcl/tcl.vcxproj index baa188f6..8820742d 100644 --- a/plugins/tcl/tcl.vcxproj +++ b/plugins/tcl/tcl.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + @@ -29,6 +33,13 @@ MultiByte WDK7 + + DynamicLibrary + false + true + MultiByte + WDK7 + @@ -36,6 +47,10 @@ + + + + false @@ -43,6 +58,12 @@ $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + false + $(TclOutput) + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level1 @@ -65,6 +86,28 @@ $(TclLib).dll;%(DelayLoadDLLs) + + + Level1 + NotUsing + MaxSpeed + true + true + WIN32;_WIN64;NDEBUG;_WINDOWS;_USRDLL;TCL_EXPORTS;TCL_DLL="$(TclLib).dll";$(OwnFlags);%(PreprocessorDefinitions) + $(TclPath)\include;..;%(AdditionalIncludeDirectories) + true + + + Windows + true + true + true + $(TclPath)\lib;%(AdditionalLibraryDirectories) + "$(TclLib).lib";%(AdditionalDependencies) + tcl.def + $(TclLib).dll;%(DelayLoadDLLs) + + diff --git a/plugins/upd/upd.vcxproj b/plugins/upd/upd.vcxproj index 9cf7c017..dc853ff8 100644 --- a/plugins/upd/upd.vcxproj +++ b/plugins/upd/upd.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + {461DC24A-A410-4171-8C02-CCDBF3702C2A} @@ -19,6 +23,13 @@ MultiByte WDK7 + + DynamicLibrary + false + true + MultiByte + WDK7 + @@ -26,6 +37,10 @@ + + + + false @@ -33,6 +48,12 @@ $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + false + xcupd + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level1 @@ -55,6 +76,28 @@ $(DepsRoot)\lib;%(AdditionalLibraryDirectories) + + + Level1 + + + MaxSpeed + true + true + WIN32;_WIN64;NDEBUG;_WINDOWS;_USRDLL;UPD_EXPORTS;%(PreprocessorDefinitions) + true + ..;%(AdditionalIncludeDirectories) + + + Windows + true + true + true + upd.def + $(DepLibs);%(AdditionalDependencies) + $(DepsRoot)\lib;%(AdditionalLibraryDirectories) + + diff --git a/plugins/winamp/winamp.vcxproj b/plugins/winamp/winamp.vcxproj index 0a1eb419..2b5f3633 100644 --- a/plugins/winamp/winamp.vcxproj +++ b/plugins/winamp/winamp.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + {E78C0D9A-798E-4BF6-B0CC-6FECB8CA2FCE} @@ -19,6 +23,13 @@ MultiByte WDK7 + + DynamicLibrary + false + true + MultiByte + WDK7 + @@ -26,6 +37,10 @@ + + + + false @@ -33,6 +48,12 @@ $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + false + xcwinamp + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level1 @@ -53,6 +74,26 @@ winamp.def + + + Level1 + + + MaxSpeed + true + true + WIN32;_WIN64;NDEBUG;_WINDOWS;_USRDLL;WINAMP_EXPORTS;%(PreprocessorDefinitions) + true + ..;%(AdditionalIncludeDirectories) + + + Windows + true + true + true + winamp.def + + diff --git a/plugins/winsys/winsys.vcxproj b/plugins/winsys/winsys.vcxproj index 656f6ee9..bacb5db4 100644 --- a/plugins/winsys/winsys.vcxproj +++ b/plugins/winsys/winsys.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + {6C0CA980-97C5-427A-BE61-5BCECAFABBDA} @@ -19,6 +23,13 @@ Unicode WDK7 + + DynamicLibrary + false + true + Unicode + WDK7 + @@ -26,6 +37,10 @@ + + + + false @@ -33,6 +48,12 @@ $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + false + xcwinsys + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level1 @@ -56,6 +77,29 @@ comsupp.lib + + + Level1 + + + MaxSpeed + true + true + WIN32;_WIN64;NDEBUG;_WINDOWS;_USRDLL;WINSYS_EXPORTS;%(PreprocessorDefinitions) + ..;%(AdditionalIncludeDirectories) + true + false + + + Windows + true + true + true + winsys.def + wbemuuid.lib;vccomsup.lib;%(AdditionalDependencies) + comsupp.lib + + diff --git a/plugins/wmpa/wmpa.vcxproj b/plugins/wmpa/wmpa.vcxproj index 630cef4d..92364dc4 100644 --- a/plugins/wmpa/wmpa.vcxproj +++ b/plugins/wmpa/wmpa.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + {E7F4DB0A-510D-41EF-B284-6E1DE1CC450D} @@ -20,6 +24,14 @@ WDK7 Dynamic + + DynamicLibrary + false + false + MultiByte + WDK7 + Dynamic + @@ -27,6 +39,10 @@ + + + + false @@ -34,6 +50,12 @@ $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + false + xcwmpa + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level1 @@ -55,6 +77,27 @@ true + + + Level1 + Create + MaxSpeed + true + true + WIN32;_WIN64;NDEBUG;_WINDOWS;_USRDLL;WMPA_EXPORTS;_AFXDLL;_AFX_NO_DAO_SUPPORT;%(PreprocessorDefinitions) + false + + + Windows + true + true + true + wmpa.def + + + true + + diff --git a/plugins/xsasl/xsasl.vcxproj b/plugins/xsasl/xsasl.vcxproj index 7e0c41d7..bec3da94 100644 --- a/plugins/xsasl/xsasl.vcxproj +++ b/plugins/xsasl/xsasl.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + {18871EBA-AC85-4652-8919-EB8064B9A714} @@ -19,6 +23,13 @@ MultiByte WDK7 + + DynamicLibrary + false + true + MultiByte + WDK7 + @@ -26,6 +37,10 @@ + + + + false @@ -33,6 +48,12 @@ $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + false + xcxsasl + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level1 @@ -55,6 +76,28 @@ $(DepLibs);%(AdditionalDependencies) + + + Level1 + + + MaxSpeed + true + true + WIN32;_WIN64;NDEBUG;_WINDOWS;_USRDLL;XSASL_EXPORTS;%(PreprocessorDefinitions) + $(Glib);..;%(AdditionalIncludeDirectories) + true + + + Windows + true + true + true + xsasl.def + $(DepsRoot)\lib;%(AdditionalLibraryDirectories) + $(DepLibs);%(AdditionalDependencies) + + diff --git a/plugins/xtray/xtray.vcxproj b/plugins/xtray/xtray.vcxproj index 1f7aa5cf..aa455a8f 100644 --- a/plugins/xtray/xtray.vcxproj +++ b/plugins/xtray/xtray.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + {3024CF36-85E5-4E00-9608-7002E2C7EF14} @@ -19,6 +23,13 @@ Unicode WDK7 + + DynamicLibrary + false + true + Unicode + WDK7 + @@ -26,12 +37,21 @@ + + + + false $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + false + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level1 @@ -53,6 +73,27 @@ ntstc_msvcrt.lib;%(AdditionalDependencies) + + + Level1 + + + MaxSpeed + true + true + WIN32;_WIN64;NDEBUG;_WINDOWS;_USRDLL;XTRAY_EXPORTS;_STL70_;_STATIC_CPPLIB;%(PreprocessorDefinitions) + true + ..;%(AdditionalIncludeDirectories) + + + Windows + true + true + true + xtray.def + ntstc_msvcrt.lib;%(AdditionalDependencies) + + diff --git a/src/common/common.vcxproj b/src/common/common.vcxproj index b57b2ccf..4e95c929 100644 --- a/src/common/common.vcxproj +++ b/src/common/common.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + @@ -82,6 +86,13 @@ MultiByte WDK7 + + StaticLibrary + false + true + MultiByte + WDK7 + @@ -89,11 +100,19 @@ + + + + $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level1 @@ -113,6 +132,25 @@ true + + + Level1 + + + MaxSpeed + true + true + WIN32;_WIN64;NDEBUG;_LIB;$(OwnFlags);%(PreprocessorDefinitions) + $(DepsRoot)\include;$(Glib);%(AdditionalIncludeDirectories) + true + + + Windows + true + true + true + + diff --git a/src/dirent/dirent.vcxproj b/src/dirent/dirent.vcxproj index 8ac38f92..5ae75f57 100644 --- a/src/dirent/dirent.vcxproj +++ b/src/dirent/dirent.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + @@ -25,6 +29,13 @@ MultiByte WDK7 + + StaticLibrary + false + true + MultiByte + WDK7 + @@ -32,12 +43,21 @@ + + + + $(ProjectName)-win32 $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + $(ProjectName)-win32 + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level1 @@ -56,6 +76,24 @@ true + + + Level1 + + + MaxSpeed + true + true + WIN32;_WIN64;NDEBUG;_LIB;%(PreprocessorDefinitions) + true + + + Windows + true + true + true + + diff --git a/src/fe-gtk/fe-gtk.vcxproj b/src/fe-gtk/fe-gtk.vcxproj index fce8d3e6..cb102012 100644 --- a/src/fe-gtk/fe-gtk.vcxproj +++ b/src/fe-gtk/fe-gtk.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + {E4BDB4C8-2335-415A-ACEE-BA88B19BFE82} @@ -19,6 +23,13 @@ MultiByte WDK7 + + Application + false + true + MultiByte + WDK7 + @@ -26,6 +37,10 @@ + + + + false @@ -33,6 +48,12 @@ $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + false + xchat + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level1 @@ -55,6 +76,28 @@ mainCRTStartup + + + Level1 + + + MaxSpeed + true + true + WIN32;_WIN64;NDEBUG;_WINDOWS;$(OwnFlags);%(PreprocessorDefinitions) + $(DepsRoot)\include;$(Glib);$(Gtk);%(AdditionalIncludeDirectories) + true + + + Windows + true + true + true + $(DepsRoot)\lib;$(OutDir);%(AdditionalLibraryDirectories) + $(DepLibs);common.lib;dirent-win32.lib;%(AdditionalDependencies) + mainCRTStartup + + diff --git a/src/fe-text/fe-text.vcxproj b/src/fe-text/fe-text.vcxproj index ac7068ec..e8ed04b0 100644 --- a/src/fe-text/fe-text.vcxproj +++ b/src/fe-text/fe-text.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + {E93E1255-95D1-4B08-8FDF-B53CC6A21280} @@ -19,6 +23,13 @@ MultiByte WDK7 + + Application + false + true + MultiByte + WDK7 + @@ -26,6 +37,10 @@ + + + + false @@ -33,6 +48,12 @@ $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + false + xchat-text + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level1 @@ -54,6 +75,27 @@ $(DepsRoot)\lib;%(AdditionalLibraryDirectories) + + + Level1 + + + MaxSpeed + true + true + WIN32;_WIN64;NDEBUG;_CONSOLE;$(OwnFlags);%(PreprocessorDefinitions) + $(DepsRoot)\include;$(Glib);%(AdditionalIncludeDirectories) + true + + + Console + true + true + true + $(DepLibs);"$(OutDir)\common.lib";"$(OutDir)\dirent-win32.lib";%(AdditionalDependencies) + $(DepsRoot)\lib;%(AdditionalLibraryDirectories) + + diff --git a/src/pixmaps/pixmaps.vcxproj b/src/pixmaps/pixmaps.vcxproj index 3fda0fef..ec33a49b 100644 --- a/src/pixmaps/pixmaps.vcxproj +++ b/src/pixmaps/pixmaps.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + {626DA61C-FA8B-474C-B2F5-72AD9DFEE642} @@ -19,6 +23,13 @@ MultiByte WDK7 + + Application + false + true + MultiByte + WDK7 + @@ -26,12 +37,21 @@ + + + + false $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + false + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level3 @@ -52,6 +72,26 @@ "$(DepsRoot)\bin\gdk-pixbuf-csource" --build-list $(Pixmaps) > "$(SolutionDir)\..\src\pixmaps\inline_pngs.h" + + + Level3 + + + MaxSpeed + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + + + Console + true + true + true + + + "$(DepsRoot)\bin\gdk-pixbuf-csource" --build-list $(Pixmaps) > "$(SolutionDir)\..\src\pixmaps\inline_pngs.h" + + diff --git a/src/version/version.vcxproj b/src/version/version.vcxproj index b07b8e2a..5a4fe5cc 100644 --- a/src/version/version.vcxproj +++ b/src/version/version.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + {6CD3647E-4541-4849-9DD7-C8816665AE42} @@ -19,6 +23,13 @@ MultiByte WDK7 + + Application + false + true + MultiByte + WDK7 + @@ -26,12 +37,21 @@ + + + + false $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + false + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level1 @@ -53,6 +73,27 @@ "$(OutDir)\$(TargetName)$(TargetExt)" -r > "$(SolutionDir)\..\resource.h" + + + Level1 + + + MaxSpeed + true + true + WIN32;_WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + true + true + + + "$(OutDir)\$(TargetName)$(TargetExt)" -r > "$(SolutionDir)\..\resource.h" + + diff --git a/win32/copy/copy.vcxproj b/win32/copy/copy.vcxproj index 5b64ddc6..a68df4a0 100644 --- a/win32/copy/copy.vcxproj +++ b/win32/copy/copy.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + {C9B735E4-75BC-45AC-A5E3-39A6D076F912} @@ -18,6 +22,13 @@ MultiByte WDK7 + + Application + false + true + MultiByte + WDK7 + @@ -25,11 +36,19 @@ + + + + $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level3 @@ -112,6 +131,88 @@ copy "$(ProgramFiles)\Codejock Software\ISSkin\ISSkinU.dll" "$(XChatDest)" copy "..\installer\watercolorlite-green.cjstyles" "$(XChatDest)" + + + Level3 + MaxSpeed + true + true + + + true + true + true + + + rmdir /q /s "$(XChatDest)" +mkdir "$(XChatDest)" +echo 2> portable-mode +move portable-mode "$(XChatDest)" +copy "$(OutDir)\xchat.exe" "$(XChatDest)" +copy "$(OutDir)\xchat-text.exe" "$(XChatDest)" +copy "$(DepsRoot)\bin\libatk-1.0-0.dll" "$(XChatDest)" +copy "$(DepsRoot)\bin\libcairo-2.dll" "$(XChatDest)" +copy "$(DepsRoot)\bin\libexpat-1.dll" "$(XChatDest)" +copy "$(DepsRoot)\bin\libfontconfig-1.dll" "$(XChatDest)" +copy "$(DepsRoot)\bin\libfreetype-6.dll" "$(XChatDest)" +copy "$(DepsRoot)\bin\libgdk_pixbuf-2.0-0.dll" "$(XChatDest)" +copy "$(DepsRoot)\bin\libgdk-win32-2.0-0.dll" "$(XChatDest)" +copy "$(DepsRoot)\bin\libgio-2.0-0.dll" "$(XChatDest)" +copy "$(DepsRoot)\bin\libglib-2.0-0.dll" "$(XChatDest)" +copy "$(DepsRoot)\bin\libgmodule-2.0-0.dll" "$(XChatDest)" +copy "$(DepsRoot)\bin\libgobject-2.0-0.dll" "$(XChatDest) +copy "$(DepsRoot)\bin\libgthread-2.0-0.dll" "$(XChatDest)" +copy "$(DepsRoot)\bin\libgtk-win32-2.0-0.dll" "$(XChatDest)" +copy "$(DepsRoot)\bin\libintl-8.dll" "$(XChatDest)" +copy "$(DepsRoot)\bin\libpango-1.0-0.dll" "$(XChatDest)" +copy "$(DepsRoot)\bin\libpangocairo-1.0-0.dll" "$(XChatDest)" +copy "$(DepsRoot)\bin\libpangoft2-1.0-0.dll" "$(XChatDest)" +copy "$(DepsRoot)\bin\libpangowin32-1.0-0.dll" "$(XChatDest)" +copy "$(DepsRoot)\bin\libpng14-14.dll" "$(XChatDest)" +copy "$(DepsRoot)\bin\libxml2.dll" "$(XChatDest)" +xcopy /q /s /i "$(DepsRoot)\lib\gtk-2.0\2.10.0\engines" "$(XChatDest)\lib\gtk-2.0\2.10.0\engines" +xcopy /q /s /i "$(DepsRoot)\lib\gtk-2.0\modules\libgail.dll" "$(XChatDest)\lib\gtk-2.0\modules\" +xcopy /q /s /i etc "$(XChatDest)\etc" +xcopy /q /s /i share "$(XChatDest)\share" +copy "..\..\COPYING" "$(XChatDest)" +copy "$(DepsRoot)\LICENSE.OPENSSL" "$(XChatDest)" +copy "$(DepsRoot)\LICENSE.ZLIB" "$(XChatDest)" +copy "$(DepsRoot)\share\gettext\intl\COPYING.LIB-2.0" "$(XChatDest)\LICENSE.GTK" +copy "$(DepsRoot)\share\gettext\intl\COPYING.LIB-2.1" "$(XChatDest)\LICENSE.CAIRO" +copy "$(DepsRoot)\LICENSE.LUA" "$(XChatDest)" +copy "$(DepsRoot)\LICENSE.ENCHANT" "$(XChatDest)" +copy "$(DepsRoot)\LICENSE.LIBXML" "$(XChatDest)" +copy "$(DepsRoot)\bin\libeay32.dll" "$(XChatDest)" +copy "$(DepsRoot)\bin\ssleay32.dll" "$(XChatDest)" +copy "$(DepsRoot)\bin\zlib1.dll" "$(XChatDest)" +copy "$(DepsRoot)\bin\cert.pem" "$(XChatDest)" +copy "$(DepsRoot)\bin\libenchant.dll" "$(XChatDest)" +xcopy /q /s /i "$(DepsRoot)\lib\enchant\libenchant_myspell.dll" "$(XChatDest)\lib\enchant\" +xcopy /q /s /i "$(OutDir)xcchecksum.dll" "$(XChatDest)\plugins\" +copy "$(OutDir)\xcdns.dll" "$(XChatDest)\plugins" +copy "$(OutDir)\xcdoat.dll" "$(XChatDest)\plugins" +copy "$(OutDir)\xcexec.dll" "$(XChatDest)\plugins" +copy "$(OutDir)\xcfishlim.dll" "$(XChatDest)\plugins" +copy "$(OutDir)\xclua.dll" "$(XChatDest)\plugins" +copy "$(OutDir)\xcmpcinfo.dll" "$(XChatDest)\plugins" +copy "$(OutDir)\xcperl-512.dll" "$(XChatDest)\plugins" +copy "$(OutDir)\xcperl-514.dll" "$(XChatDest)\plugins" +copy "$(OutDir)\xcperl-516.dll" "$(XChatDest)\plugins" +copy "$(OutDir)\xcpython.dll" "$(XChatDest)\plugins" +copy "$(OutDir)\xctcl.dll" "$(XChatDest)\plugins" +copy "$(OutDir)\xcupd.dll" "$(XChatDest)\plugins" +copy "$(OutDir)\xcxsasl.dll" "$(XChatDest)\plugins" +copy "$(OutDir)\xtray.dll" "$(XChatDest)\plugins" +copy "$(OutDir)\xcwinamp.dll" "$(XChatDest)\plugins" +copy "$(OutDir)\xcwinsys.dll" "$(XChatDest)\plugins" +copy "$(OutDir)\xcwmpa.dll" "$(XChatDest)\plugins" +copy "$(DepsRoot)\bin\lua51.dll" "$(XChatDest)" +xcopy /q /s /i "$(OutDir)\locale" "$(XChatDest)\locale" +xcopy /q /s /i "$(DepsRoot)\share\locale" "$(XChatDest)\share\locale" +copy "$(ProgramFiles)\Codejock Software\ISSkin\ISSkinU.dll" "$(XChatDest)" +copy "..\installer\watercolorlite-blue.cjstyles" "$(XChatDest)" + + diff --git a/win32/installer/installer.vcxproj b/win32/installer/installer.vcxproj index 3cb84d56..0fcba484 100644 --- a/win32/installer/installer.vcxproj +++ b/win32/installer/installer.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + {5A0F4962-E670-4DA2-9E45-52CC47F26E2F} @@ -18,6 +22,13 @@ MultiByte WDK7 + + Application + false + true + MultiByte + WDK7 + @@ -25,11 +36,19 @@ + + + + $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level3 @@ -55,6 +74,31 @@ type xchat-wdk-x86.skel.iss >> "$(OutDir)\xchat-wdk-x86.iss" "$(ProgramFiles)\Inno Setup 5\compil32" /cc "$(OutDir)\xchat-wdk-x86.iss" + + + Level3 + MaxSpeed + true + true + + + true + true + true + + + echo [Setup] > "$(OutDir)\xchat-wdk-x64.iss" +echo WizardImageFile="$(ProjectDir)\wizardimage.bmp" >> "$(OutDir)\xchat-wdk-x64.iss" +echo WizardSmallImageFile="$(ProjectDir)\wizardsmallimage.bmp" >> "$(OutDir)\xchat-wdk-x64.iss" +"$(OutDir)\version" -a >> "$(OutDir)\xchat-wdk-x64.iss" +"$(OutDir)\version" -v >> "$(OutDir)\xchat-wdk-x64.iss" +"$(OutDir)\version" -i >> "$(OutDir)\xchat-wdk-x64.iss" +"$(OutDir)\version" -o >> "$(OutDir)\xchat-wdk-x64.iss" +echo SetupIconFile="$(SolutionDir)\..\xchat.ico" >> "$(OutDir)\xchat-wdk-x64.iss" +type xchat-wdk-x64.skel.iss >> "$(OutDir)\xchat-wdk-x64.iss" +"$(ProgramFiles)\Inno Setup 5\compil32" /cc "$(OutDir)\xchat-wdk-x64.iss" + + diff --git a/win32/nls/nls.vcxproj b/win32/nls/nls.vcxproj index 10e53bd8..9c0ecff4 100644 --- a/win32/nls/nls.vcxproj +++ b/win32/nls/nls.vcxproj @@ -5,6 +5,10 @@ Release Win32 + + Release + x64 + {B10A2C41-344C-43E0-A32D-B9587C198D8B} @@ -18,6 +22,13 @@ MultiByte WDK7 + + Application + false + true + MultiByte + WDK7 + @@ -25,11 +36,19 @@ + + + + $(SolutionDir)build\$(PlatformName)\bin $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + + $(SolutionDir)build\$(PlatformName)\bin + $(SolutionDir)build\$(PlatformName)\obj\$(ProjectName) + Level3 @@ -53,6 +72,32 @@ mkdir "$(OutDir)\locale" for %%A in (*.po) do ( mkdir "$(OutDir)\locale\%%~nA\LC_MESSAGES" "$(DepsRoot)\bin\msgfmt" -co "$(OutDir)\locale\%%~nA\LC_MESSAGES\xchat.mo" %%A +) + + + + + Level3 + MaxSpeed + true + true + + + true + true + true + + + + + + + cd ..\..\po +rmdir /q /s "$(OutDir)\locale" +mkdir "$(OutDir)\locale" +for %%A in (*.po) do ( +mkdir "$(OutDir)\locale\%%~nA\LC_MESSAGES" +"$(DepsRoot)\bin\msgfmt" -co "$(OutDir)\locale\%%~nA\LC_MESSAGES\xchat.mo" %%A ) diff --git a/win32/xchat.sln b/win32/xchat.sln index 84e1190e..ef7a3000 100644 --- a/win32/xchat.sln +++ b/win32/xchat.sln @@ -121,62 +121,117 @@ EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Release|Win32 = Release|Win32 + Release|x64 = Release|x64 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {87554B59-006C-4D94-9714-897B27067BA3}.Release|Win32.ActiveCfg = Release|Win32 {87554B59-006C-4D94-9714-897B27067BA3}.Release|Win32.Build.0 = Release|Win32 + {87554B59-006C-4D94-9714-897B27067BA3}.Release|x64.ActiveCfg = Release|x64 + {87554B59-006C-4D94-9714-897B27067BA3}.Release|x64.Build.0 = Release|x64 {98B56DF9-E4F1-4696-A565-5F7823CF214D}.Release|Win32.ActiveCfg = Release|Win32 {98B56DF9-E4F1-4696-A565-5F7823CF214D}.Release|Win32.Build.0 = Release|Win32 + {98B56DF9-E4F1-4696-A565-5F7823CF214D}.Release|x64.ActiveCfg = Release|x64 + {98B56DF9-E4F1-4696-A565-5F7823CF214D}.Release|x64.Build.0 = Release|x64 {626DA61C-FA8B-474C-B2F5-72AD9DFEE642}.Release|Win32.ActiveCfg = Release|Win32 {626DA61C-FA8B-474C-B2F5-72AD9DFEE642}.Release|Win32.Build.0 = Release|Win32 + {626DA61C-FA8B-474C-B2F5-72AD9DFEE642}.Release|x64.ActiveCfg = Release|x64 + {626DA61C-FA8B-474C-B2F5-72AD9DFEE642}.Release|x64.Build.0 = Release|x64 {6CD3647E-4541-4849-9DD7-C8816665AE42}.Release|Win32.ActiveCfg = Release|Win32 {6CD3647E-4541-4849-9DD7-C8816665AE42}.Release|Win32.Build.0 = Release|Win32 + {6CD3647E-4541-4849-9DD7-C8816665AE42}.Release|x64.ActiveCfg = Release|x64 + {6CD3647E-4541-4849-9DD7-C8816665AE42}.Release|x64.Build.0 = Release|x64 {E4BDB4C8-2335-415A-ACEE-BA88B19BFE82}.Release|Win32.ActiveCfg = Release|Win32 {E4BDB4C8-2335-415A-ACEE-BA88B19BFE82}.Release|Win32.Build.0 = Release|Win32 + {E4BDB4C8-2335-415A-ACEE-BA88B19BFE82}.Release|x64.ActiveCfg = Release|x64 + {E4BDB4C8-2335-415A-ACEE-BA88B19BFE82}.Release|x64.Build.0 = Release|x64 {E93E1255-95D1-4B08-8FDF-B53CC6A21280}.Release|Win32.ActiveCfg = Release|Win32 {E93E1255-95D1-4B08-8FDF-B53CC6A21280}.Release|Win32.Build.0 = Release|Win32 + {E93E1255-95D1-4B08-8FDF-B53CC6A21280}.Release|x64.ActiveCfg = Release|x64 + {E93E1255-95D1-4B08-8FDF-B53CC6A21280}.Release|x64.Build.0 = Release|x64 {2773666A-8CFC-4533-A043-EAD59F16A1C7}.Release|Win32.ActiveCfg = Release|Win32 {2773666A-8CFC-4533-A043-EAD59F16A1C7}.Release|Win32.Build.0 = Release|Win32 + {2773666A-8CFC-4533-A043-EAD59F16A1C7}.Release|x64.ActiveCfg = Release|x64 + {2773666A-8CFC-4533-A043-EAD59F16A1C7}.Release|x64.Build.0 = Release|x64 {987E9374-98A1-44BA-946F-D3472D7A7055}.Release|Win32.ActiveCfg = Release|Win32 {987E9374-98A1-44BA-946F-D3472D7A7055}.Release|Win32.Build.0 = Release|Win32 + {987E9374-98A1-44BA-946F-D3472D7A7055}.Release|x64.ActiveCfg = Release|x64 + {987E9374-98A1-44BA-946F-D3472D7A7055}.Release|x64.Build.0 = Release|x64 {C4C9FA6F-F990-4C7B-85F6-CD8F4F5728F0}.Release|Win32.ActiveCfg = Release|Win32 {C4C9FA6F-F990-4C7B-85F6-CD8F4F5728F0}.Release|Win32.Build.0 = Release|Win32 + {C4C9FA6F-F990-4C7B-85F6-CD8F4F5728F0}.Release|x64.ActiveCfg = Release|x64 + {C4C9FA6F-F990-4C7B-85F6-CD8F4F5728F0}.Release|x64.Build.0 = Release|x64 {58654438-F674-42F7-88FA-73EF90AD80B1}.Release|Win32.ActiveCfg = Release|Win32 {58654438-F674-42F7-88FA-73EF90AD80B1}.Release|Win32.Build.0 = Release|Win32 + {58654438-F674-42F7-88FA-73EF90AD80B1}.Release|x64.ActiveCfg = Release|x64 + {58654438-F674-42F7-88FA-73EF90AD80B1}.Release|x64.Build.0 = Release|x64 {19C52A0A-A790-409E-A28A-9745FF990F5C}.Release|Win32.ActiveCfg = Release|Win32 {19C52A0A-A790-409E-A28A-9745FF990F5C}.Release|Win32.Build.0 = Release|Win32 + {19C52A0A-A790-409E-A28A-9745FF990F5C}.Release|x64.ActiveCfg = Release|x64 + {19C52A0A-A790-409E-A28A-9745FF990F5C}.Release|x64.Build.0 = Release|x64 {646B4316-C8B8-4DB6-B6AE-E586929E5729}.Release|Win32.ActiveCfg = Release|Win32 {646B4316-C8B8-4DB6-B6AE-E586929E5729}.Release|Win32.Build.0 = Release|Win32 + {646B4316-C8B8-4DB6-B6AE-E586929E5729}.Release|x64.ActiveCfg = Release|x64 + {646B4316-C8B8-4DB6-B6AE-E586929E5729}.Release|x64.Build.0 = Release|x64 {4980AF24-9D42-427D-A8E6-0DF3B97C455D}.Release|Win32.ActiveCfg = Release|Win32 {4980AF24-9D42-427D-A8E6-0DF3B97C455D}.Release|Win32.Build.0 = Release|Win32 + {4980AF24-9D42-427D-A8E6-0DF3B97C455D}.Release|x64.ActiveCfg = Release|x64 + {4980AF24-9D42-427D-A8E6-0DF3B97C455D}.Release|x64.Build.0 = Release|x64 {5EF7F47D-D09C-43C4-BF64-B28B11A0FF91}.Release|Win32.ActiveCfg = Release|Win32 {5EF7F47D-D09C-43C4-BF64-B28B11A0FF91}.Release|Win32.Build.0 = Release|Win32 + {5EF7F47D-D09C-43C4-BF64-B28B11A0FF91}.Release|x64.ActiveCfg = Release|x64 + {5EF7F47D-D09C-43C4-BF64-B28B11A0FF91}.Release|x64.Build.0 = Release|x64 {3786FA8C-3E76-45E3-984E-FCCFF44729C9}.Release|Win32.ActiveCfg = Release|Win32 {3786FA8C-3E76-45E3-984E-FCCFF44729C9}.Release|Win32.Build.0 = Release|Win32 + {3786FA8C-3E76-45E3-984E-FCCFF44729C9}.Release|x64.ActiveCfg = Release|x64 + {3786FA8C-3E76-45E3-984E-FCCFF44729C9}.Release|x64.Build.0 = Release|x64 {17E4BE39-76F7-4A06-AD21-EFD0C5091F76}.Release|Win32.ActiveCfg = Release|Win32 {17E4BE39-76F7-4A06-AD21-EFD0C5091F76}.Release|Win32.Build.0 = Release|Win32 + {17E4BE39-76F7-4A06-AD21-EFD0C5091F76}.Release|x64.ActiveCfg = Release|x64 + {17E4BE39-76F7-4A06-AD21-EFD0C5091F76}.Release|x64.Build.0 = Release|x64 {3C4F42FC-292A-420B-B63D-C03DFBDD8E4E}.Release|Win32.ActiveCfg = Release|Win32 {3C4F42FC-292A-420B-B63D-C03DFBDD8E4E}.Release|Win32.Build.0 = Release|Win32 + {3C4F42FC-292A-420B-B63D-C03DFBDD8E4E}.Release|x64.ActiveCfg = Release|x64 + {3C4F42FC-292A-420B-B63D-C03DFBDD8E4E}.Release|x64.Build.0 = Release|x64 {B0E36D93-CA2A-49FE-9EB9-9C96C6016EEC}.Release|Win32.ActiveCfg = Release|Win32 {B0E36D93-CA2A-49FE-9EB9-9C96C6016EEC}.Release|Win32.Build.0 = Release|Win32 + {B0E36D93-CA2A-49FE-9EB9-9C96C6016EEC}.Release|x64.ActiveCfg = Release|x64 + {B0E36D93-CA2A-49FE-9EB9-9C96C6016EEC}.Release|x64.Build.0 = Release|x64 {461DC24A-A410-4171-8C02-CCDBF3702C2A}.Release|Win32.ActiveCfg = Release|Win32 {461DC24A-A410-4171-8C02-CCDBF3702C2A}.Release|Win32.Build.0 = Release|Win32 + {461DC24A-A410-4171-8C02-CCDBF3702C2A}.Release|x64.ActiveCfg = Release|x64 + {461DC24A-A410-4171-8C02-CCDBF3702C2A}.Release|x64.Build.0 = Release|x64 {E78C0D9A-798E-4BF6-B0CC-6FECB8CA2FCE}.Release|Win32.ActiveCfg = Release|Win32 {E78C0D9A-798E-4BF6-B0CC-6FECB8CA2FCE}.Release|Win32.Build.0 = Release|Win32 + {E78C0D9A-798E-4BF6-B0CC-6FECB8CA2FCE}.Release|x64.ActiveCfg = Release|x64 + {E78C0D9A-798E-4BF6-B0CC-6FECB8CA2FCE}.Release|x64.Build.0 = Release|x64 {6C0CA980-97C5-427A-BE61-5BCECAFABBDA}.Release|Win32.ActiveCfg = Release|Win32 {6C0CA980-97C5-427A-BE61-5BCECAFABBDA}.Release|Win32.Build.0 = Release|Win32 + {6C0CA980-97C5-427A-BE61-5BCECAFABBDA}.Release|x64.ActiveCfg = Release|x64 + {6C0CA980-97C5-427A-BE61-5BCECAFABBDA}.Release|x64.Build.0 = Release|x64 {18871EBA-AC85-4652-8919-EB8064B9A714}.Release|Win32.ActiveCfg = Release|Win32 {18871EBA-AC85-4652-8919-EB8064B9A714}.Release|Win32.Build.0 = Release|Win32 + {18871EBA-AC85-4652-8919-EB8064B9A714}.Release|x64.ActiveCfg = Release|x64 + {18871EBA-AC85-4652-8919-EB8064B9A714}.Release|x64.Build.0 = Release|x64 {3024CF36-85E5-4E00-9608-7002E2C7EF14}.Release|Win32.ActiveCfg = Release|Win32 {3024CF36-85E5-4E00-9608-7002E2C7EF14}.Release|Win32.Build.0 = Release|Win32 + {3024CF36-85E5-4E00-9608-7002E2C7EF14}.Release|x64.ActiveCfg = Release|x64 + {3024CF36-85E5-4E00-9608-7002E2C7EF14}.Release|x64.Build.0 = Release|x64 {E7F4DB0A-510D-41EF-B284-6E1DE1CC450D}.Release|Win32.ActiveCfg = Release|Win32 {E7F4DB0A-510D-41EF-B284-6E1DE1CC450D}.Release|Win32.Build.0 = Release|Win32 + {E7F4DB0A-510D-41EF-B284-6E1DE1CC450D}.Release|x64.ActiveCfg = Release|x64 + {E7F4DB0A-510D-41EF-B284-6E1DE1CC450D}.Release|x64.Build.0 = Release|x64 {B10A2C41-344C-43E0-A32D-B9587C198D8B}.Release|Win32.ActiveCfg = Release|Win32 {B10A2C41-344C-43E0-A32D-B9587C198D8B}.Release|Win32.Build.0 = Release|Win32 + {B10A2C41-344C-43E0-A32D-B9587C198D8B}.Release|x64.ActiveCfg = Release|x64 + {B10A2C41-344C-43E0-A32D-B9587C198D8B}.Release|x64.Build.0 = Release|x64 {C9B735E4-75BC-45AC-A5E3-39A6D076F912}.Release|Win32.ActiveCfg = Release|Win32 {C9B735E4-75BC-45AC-A5E3-39A6D076F912}.Release|Win32.Build.0 = Release|Win32 + {C9B735E4-75BC-45AC-A5E3-39A6D076F912}.Release|x64.ActiveCfg = Release|x64 + {C9B735E4-75BC-45AC-A5E3-39A6D076F912}.Release|x64.Build.0 = Release|x64 {5A0F4962-E670-4DA2-9E45-52CC47F26E2F}.Release|Win32.ActiveCfg = Release|Win32 {5A0F4962-E670-4DA2-9E45-52CC47F26E2F}.Release|Win32.Build.0 = Release|Win32 + {5A0F4962-E670-4DA2-9E45-52CC47F26E2F}.Release|x64.ActiveCfg = Release|x64 + {5A0F4962-E670-4DA2-9E45-52CC47F26E2F}.Release|x64.Build.0 = Release|x64 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE -- cgit 1.4.1 From c1ed097b46d2679929edc5d35f848c30a6286992 Mon Sep 17 00:00:00 2001 From: Berke Viktor Date: Fri, 15 Jun 2012 22:48:18 +0200 Subject: Add .user files and .gitignore --- .gitignore | 5 +++++ plugins/checksum/checksum.vcxproj.user | 3 +++ plugins/dns/dns.vcxproj.user | 3 +++ plugins/doat/doat.vcxproj.user | 3 +++ plugins/exec/exec.vcxproj.user | 3 +++ plugins/fishlim/fishlim.vcxproj.user | 3 +++ plugins/lua/lua.vcxproj.user | 3 +++ plugins/mpcinfo/mpcinfo.vcxproj.user | 3 +++ plugins/perl/perl-512.vcxproj.user | 3 +++ plugins/perl/perl-514.vcxproj.user | 3 +++ plugins/perl/perl-516.vcxproj.user | 3 +++ plugins/python/python.vcxproj.user | 3 +++ plugins/tcl/tcl.vcxproj.user | 3 +++ plugins/upd/upd.vcxproj.user | 3 +++ plugins/winamp/winamp.vcxproj.user | 3 +++ plugins/winsys/winsys.vcxproj.user | 3 +++ plugins/wmpa/wmpa.vcxproj.user | 3 +++ plugins/xsasl/xsasl.vcxproj.user | 3 +++ plugins/xtray/xtray.vcxproj.user | 3 +++ src/common/common.vcxproj.user | 3 +++ src/dirent/dirent.vcxproj.user | 3 +++ src/fe-gtk/fe-gtk.vcxproj.user | 3 +++ src/fe-text/fe-text.vcxproj.user | 3 +++ src/pixmaps/pixmaps.vcxproj.user | 3 +++ src/version/version.vcxproj.user | 3 +++ win32/copy/copy.vcxproj.user | 3 +++ win32/installer/installer.vcxproj.user | 3 +++ win32/nls/nls.vcxproj.user | 3 +++ 28 files changed, 86 insertions(+) create mode 100644 .gitignore create mode 100644 plugins/checksum/checksum.vcxproj.user create mode 100644 plugins/dns/dns.vcxproj.user create mode 100644 plugins/doat/doat.vcxproj.user create mode 100644 plugins/exec/exec.vcxproj.user create mode 100644 plugins/fishlim/fishlim.vcxproj.user create mode 100644 plugins/lua/lua.vcxproj.user create mode 100644 plugins/mpcinfo/mpcinfo.vcxproj.user create mode 100644 plugins/perl/perl-512.vcxproj.user create mode 100644 plugins/perl/perl-514.vcxproj.user create mode 100644 plugins/perl/perl-516.vcxproj.user create mode 100644 plugins/python/python.vcxproj.user create mode 100644 plugins/tcl/tcl.vcxproj.user create mode 100644 plugins/upd/upd.vcxproj.user create mode 100644 plugins/winamp/winamp.vcxproj.user create mode 100644 plugins/winsys/winsys.vcxproj.user create mode 100644 plugins/wmpa/wmpa.vcxproj.user create mode 100644 plugins/xsasl/xsasl.vcxproj.user create mode 100644 plugins/xtray/xtray.vcxproj.user create mode 100644 src/common/common.vcxproj.user create mode 100644 src/dirent/dirent.vcxproj.user create mode 100644 src/fe-gtk/fe-gtk.vcxproj.user create mode 100644 src/fe-text/fe-text.vcxproj.user create mode 100644 src/pixmaps/pixmaps.vcxproj.user create mode 100644 src/version/version.vcxproj.user create mode 100644 win32/copy/copy.vcxproj.user create mode 100644 win32/installer/installer.vcxproj.user create mode 100644 win32/nls/nls.vcxproj.user (limited to 'plugins/lua') diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..83f00b41 --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +# git ignore file +win32/xchat.opensdf +win32/xchat.sdf +win32/xchat.suo +src/pixmaps/inline_pngs.h diff --git a/plugins/checksum/checksum.vcxproj.user b/plugins/checksum/checksum.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/plugins/checksum/checksum.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/plugins/dns/dns.vcxproj.user b/plugins/dns/dns.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/plugins/dns/dns.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/plugins/doat/doat.vcxproj.user b/plugins/doat/doat.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/plugins/doat/doat.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/plugins/exec/exec.vcxproj.user b/plugins/exec/exec.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/plugins/exec/exec.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/plugins/fishlim/fishlim.vcxproj.user b/plugins/fishlim/fishlim.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/plugins/fishlim/fishlim.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/plugins/lua/lua.vcxproj.user b/plugins/lua/lua.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/plugins/lua/lua.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/plugins/mpcinfo/mpcinfo.vcxproj.user b/plugins/mpcinfo/mpcinfo.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/plugins/mpcinfo/mpcinfo.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/plugins/perl/perl-512.vcxproj.user b/plugins/perl/perl-512.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/plugins/perl/perl-512.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/plugins/perl/perl-514.vcxproj.user b/plugins/perl/perl-514.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/plugins/perl/perl-514.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/plugins/perl/perl-516.vcxproj.user b/plugins/perl/perl-516.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/plugins/perl/perl-516.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/plugins/python/python.vcxproj.user b/plugins/python/python.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/plugins/python/python.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/plugins/tcl/tcl.vcxproj.user b/plugins/tcl/tcl.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/plugins/tcl/tcl.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/plugins/upd/upd.vcxproj.user b/plugins/upd/upd.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/plugins/upd/upd.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/plugins/winamp/winamp.vcxproj.user b/plugins/winamp/winamp.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/plugins/winamp/winamp.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/plugins/winsys/winsys.vcxproj.user b/plugins/winsys/winsys.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/plugins/winsys/winsys.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/plugins/wmpa/wmpa.vcxproj.user b/plugins/wmpa/wmpa.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/plugins/wmpa/wmpa.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/plugins/xsasl/xsasl.vcxproj.user b/plugins/xsasl/xsasl.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/plugins/xsasl/xsasl.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/plugins/xtray/xtray.vcxproj.user b/plugins/xtray/xtray.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/plugins/xtray/xtray.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/src/common/common.vcxproj.user b/src/common/common.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/src/common/common.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/src/dirent/dirent.vcxproj.user b/src/dirent/dirent.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/src/dirent/dirent.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/src/fe-gtk/fe-gtk.vcxproj.user b/src/fe-gtk/fe-gtk.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/src/fe-gtk/fe-gtk.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/src/fe-text/fe-text.vcxproj.user b/src/fe-text/fe-text.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/src/fe-text/fe-text.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/src/pixmaps/pixmaps.vcxproj.user b/src/pixmaps/pixmaps.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/src/pixmaps/pixmaps.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/src/version/version.vcxproj.user b/src/version/version.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/src/version/version.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/win32/copy/copy.vcxproj.user b/win32/copy/copy.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/win32/copy/copy.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/win32/installer/installer.vcxproj.user b/win32/installer/installer.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/win32/installer/installer.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/win32/nls/nls.vcxproj.user b/win32/nls/nls.vcxproj.user new file mode 100644 index 00000000..695b5c78 --- /dev/null +++ b/win32/nls/nls.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file -- cgit 1.4.1