Welcome to mirror list, hosted at ThFree Co, Russian Federation.

dev.gajim.org/gajim/gajim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/win
diff options
context:
space:
mode:
authorPhilipp Hörist <forenjunkie@chello.at>2017-08-19 02:04:53 +0300
committerPhilipp Hörist <forenjunkie@chello.at>2017-08-19 03:12:11 +0300
commit94324625fe4b40b36c96702c2462ff40f029c255 (patch)
tree9b7e6ead6d670b1e007fd48acb6449c8c931d55f /win
parent4ffc1cf8b6216a56954b868ec60c9fb6f5113d21 (diff)
WindowsBuild: Install Gajim as a python package
Diffstat (limited to 'win')
-rw-r--r--win/_base.sh6
-rw-r--r--win/misc/create-launcher.py32
-rw-r--r--win/misc/gajim-portable.nsi4
3 files changed, 22 insertions, 20 deletions
diff --git a/win/_base.sh b/win/_base.sh
index b2f8d662b..49f2826ad 100644
--- a/win/_base.sh
+++ b/win/_base.sh
@@ -29,6 +29,7 @@ function set_build_root {
BUILD_ROOT="$1"
REPO_CLONE="${BUILD_ROOT}/${MINGW}"/gajim
MINGW_ROOT="${BUILD_ROOT}/${MINGW}"
+ PACKAGE_DIR="${BUILD_ROOT}/${MINGW}/lib/python3.6/site-packages"
}
set_build_root "${DIR}/_build_root"
@@ -120,8 +121,10 @@ pillow
function install_gajim {
[ -z "$1" ] && (echo "Missing arg"; exit 1)
+ rm -Rf "${PACKAGE_DIR}/gajim"
rm -Rf "${REPO_CLONE}"
git clone "${DIR}"/.. "${REPO_CLONE}"
+ mv "${REPO_CLONE}/gajim" "${PACKAGE_DIR}"
(cd "${REPO_CLONE}" && git checkout "$1") || exit 1
@@ -186,6 +189,7 @@ function cleanup_install {
-exec rm -f {} \;
rm -Rf "${REPO_CLONE}"/.git
+ rm -Rf "${REPO_CLONE}"/.gitlab-ci.yml
rm -Rf "${REPO_CLONE}"/debian
rm -Rf "${REPO_CLONE}"/doc
rm -Rf "${REPO_CLONE}"/m4
@@ -313,7 +317,7 @@ function cleanup_install {
find "${MINGW_ROOT}"/bin -name "*.pyo" -exec rm -f {} \;
find "${MINGW_ROOT}"/bin -name "*.pyc" -exec rm -f {} \;
build_compileall -q "${MINGW_ROOT}"
- find "${MINGW_ROOT}" -name "*.py" ! -name "gajim.py" ! -name "history_manager.py" ! -name "*theme.py" -exec rm -f {} \;
+ find "${MINGW_ROOT}" -name "*.py" ! -name "*theme.py" -exec rm -f {} \;
find "${MINGW_ROOT}"/bin -name "*.pyc" -exec rm -f {} \;
find "${MINGW_ROOT}" -type d -name "__pycache__" -prune -exec rm -rf {} \;
diff --git a/win/misc/create-launcher.py b/win/misc/create-launcher.py
index 83f83c22f..73afc0c23 100644
--- a/win/misc/create-launcher.py
+++ b/win/misc/create-launcher.py
@@ -58,7 +58,7 @@ def build_exe(source_path, resource_path, is_gui, out_path):
subprocess.check_call(args)
-def get_launcher_code(entry_point):
+def get_launcher_code():
template = """\
#include "Python.h"
#define WIN32_LEAN_AND_MEAN
@@ -87,19 +87,17 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
Py_FrozenFlag = 1;
Py_Initialize();
PySys_SetArgvEx(__argc, szArglist, 0);
- FILE* file = fopen("../gajim/gajim/%(filename)s", "r");
- PyRun_SimpleString("import sys; import os;"
- "os.chdir('../gajim/gajim');"
- "sys.path.append(os.getcwd());"
- "sys.frozen=True;"
- );
- result = PyRun_SimpleFile(file, "../gajim/gajim/%(filename)s");
+ result = PyRun_SimpleString("import sys; import os;"
+ "sys.frozen=True;"
+ "os.chdir('../gajim');"
+ "import gajim.gajim as g;"
+ "g.GajimApplication().run(sys.argv);");
Py_Finalize();
return result;
}
"""
- return template % {"filename": entry_point}
+ return template
def get_resouce_code(filename, file_version, file_desc, icon_path,
@@ -150,7 +148,7 @@ END
def build_launcher(out_path, icon_path, file_desc, product_name, product_version,
- company_name, entry_point, is_gui):
+ company_name, is_gui):
src_ico = os.path.abspath(icon_path)
target = os.path.abspath(out_path)
@@ -162,7 +160,7 @@ def build_launcher(out_path, icon_path, file_desc, product_name, product_version
try:
os.chdir(temp)
with open("launcher.c", "w") as h:
- h.write(get_launcher_code(entry_point))
+ h.write(get_launcher_code())
shutil.copyfile(src_ico, "launcher.ico")
with open("launcher.rc", "w") as h:
h.write(get_resouce_code(
@@ -188,17 +186,17 @@ def main():
build_launcher(
os.path.join(target, "Gajim.exe"),
os.path.join(misc, "gajim.ico"), "Gajim", "Gajim",
- version, company_name, 'gajim.py', True)
+ version, company_name, True)
build_launcher(
os.path.join(target, "Gajim-Debug.exe"),
os.path.join(misc, "gajim.ico"), "Gajim", "Gajim",
- version, company_name, 'gajim.py', False)
+ version, company_name, False)
- build_launcher(
- os.path.join(target, "history_manager.exe"),
- os.path.join(misc, "gajim.ico"), "History Manager", "History Manager",
- version, company_name, 'history_manager.py', True)
+ # build_launcher(
+ # os.path.join(target, "history_manager.exe"),
+ # os.path.join(misc, "gajim.ico"), "History Manager", "History Manager",
+ # version, company_name, 'history_manager.py', True)
if __name__ == "__main__":
main()
diff --git a/win/misc/gajim-portable.nsi b/win/misc/gajim-portable.nsi
index dda15b794..528390653 100644
--- a/win/misc/gajim-portable.nsi
+++ b/win/misc/gajim-portable.nsi
@@ -105,9 +105,9 @@ Section "Gajim" SecGajim
SetOutPath "$INSTDIR\bin"
CreateShortCut "$INSTDIR\Gajim-Portable.lnk" "$INSTDIR\bin\Gajim.exe" \
- "-c ..\..\UserData" "" "" SW_SHOWNORMAL "" "Gajim Portable"
+ "-c ..\UserData" "" "" SW_SHOWNORMAL "" "Gajim Portable"
CreateShortCut "$INSTDIR\Gajim-Portable-Debug.lnk" "$INSTDIR\bin\Gajim-Debug.exe" \
- "-c ..\..\UserData" "" "" SW_SHOWNORMAL "" "Gajim Portable Debug"
+ "-c ..\UserData" "" "" SW_SHOWNORMAL "" "Gajim Portable Debug"
SectionEnd