Files
odfstudio/codemaker/Executable_pythonmaker.mk
T
Manish Bera 2bdf17ee6e Add initial scaffolding for pythonmaker
This commit introduces the 'pythonmaker' executable, a new tool in the
codemaker module.

pythonmaker generates Python type stub files (.pyi) from UNO IDL type
libraries (.rdb files). This enables static type checking and modern
IDE features like auto-completion for developers writing Python scripts for LibreOffice.

This commit includes the complete, feature-complete tool capable of handling all major IDL entity types (enums, constants, typedefs,
structs, exceptions, interfaces, services, and singletons).

Change-Id: I52f783aa982e1de04a207a9a884aee207f99d193
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/185498
Tested-by: Jenkins
Tested-by: Hossein   <hossein@libreoffice.org>
Reviewed-by: Hossein   <hossein@libreoffice.org>
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2025-08-28 15:21:01 +02:00

43 lines
1.3 KiB
Makefile

# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# This file is part of the LibreOffice project.
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
$(eval $(call gb_Executable_Executable,pythonmaker))
$(eval $(call gb_Executable_use_external,pythonmaker,frozen))
$(eval $(call gb_Executable_use_external,pythonmaker,boost_headers))
ifeq ($(DISABLE_DYNLOADING),TRUE)
$(eval $(call gb_Executable_use_externals,pythonmaker,\
dtoa \
))
endif
$(eval $(call gb_Executable_use_libraries,pythonmaker,\
unoidl \
$(if $(filter TRUE,$(DISABLE_DYNLOADING)),reg) \
$(if $(filter TRUE,$(DISABLE_DYNLOADING)),store) \
salhelper \
sal \
))
$(eval $(call gb_Executable_use_static_libraries,pythonmaker,\
codemaker \
))
# Source files are located in codemaker/source/pythonmaker/
# Paths are relative to the 'libreoffice' root directory
$(eval $(call gb_Executable_add_exception_objects,pythonmaker,\
codemaker/source/pythonmaker/pythonmaker \
codemaker/source/pythonmaker/pythonoptions \
codemaker/source/pythonmaker/pythontype \
))
# vim:set noet sw=4 ts=4: