17db96d56Sopenharmony_ci/*
27db96d56Sopenharmony_ci * C extensions module to test importing multiple modules from one compiled
37db96d56Sopenharmony_ci * file (issue16421). This file defines 3 modules (_testimportmodule,
47db96d56Sopenharmony_ci * foo, bar), only the first one is called the same as the compiled file.
57db96d56Sopenharmony_ci */
67db96d56Sopenharmony_ci#include<Python.h>
77db96d56Sopenharmony_ci
87db96d56Sopenharmony_cistatic struct PyModuleDef _testimportmultiple = {
97db96d56Sopenharmony_ci    PyModuleDef_HEAD_INIT,
107db96d56Sopenharmony_ci    "_testimportmultiple",
117db96d56Sopenharmony_ci    "_testimportmultiple doc",
127db96d56Sopenharmony_ci    -1,
137db96d56Sopenharmony_ci    NULL,
147db96d56Sopenharmony_ci    NULL,
157db96d56Sopenharmony_ci    NULL,
167db96d56Sopenharmony_ci    NULL,
177db96d56Sopenharmony_ci    NULL
187db96d56Sopenharmony_ci};
197db96d56Sopenharmony_ci
207db96d56Sopenharmony_ciPyMODINIT_FUNC PyInit__testimportmultiple(void)
217db96d56Sopenharmony_ci{
227db96d56Sopenharmony_ci    return PyModule_Create(&_testimportmultiple);
237db96d56Sopenharmony_ci}
247db96d56Sopenharmony_ci
257db96d56Sopenharmony_cistatic struct PyModuleDef _foomodule = {
267db96d56Sopenharmony_ci    PyModuleDef_HEAD_INIT,
277db96d56Sopenharmony_ci    "_testimportmultiple_foo",
287db96d56Sopenharmony_ci    "_testimportmultiple_foo doc",
297db96d56Sopenharmony_ci    -1,
307db96d56Sopenharmony_ci    NULL,
317db96d56Sopenharmony_ci    NULL,
327db96d56Sopenharmony_ci    NULL,
337db96d56Sopenharmony_ci    NULL,
347db96d56Sopenharmony_ci    NULL
357db96d56Sopenharmony_ci};
367db96d56Sopenharmony_ci
377db96d56Sopenharmony_ciPyMODINIT_FUNC PyInit__testimportmultiple_foo(void)
387db96d56Sopenharmony_ci{
397db96d56Sopenharmony_ci    return PyModule_Create(&_foomodule);
407db96d56Sopenharmony_ci}
417db96d56Sopenharmony_ci
427db96d56Sopenharmony_cistatic struct PyModuleDef _barmodule = {
437db96d56Sopenharmony_ci    PyModuleDef_HEAD_INIT,
447db96d56Sopenharmony_ci    "_testimportmultiple_bar",
457db96d56Sopenharmony_ci    "_testimportmultiple_bar doc",
467db96d56Sopenharmony_ci    -1,
477db96d56Sopenharmony_ci    NULL,
487db96d56Sopenharmony_ci    NULL,
497db96d56Sopenharmony_ci    NULL,
507db96d56Sopenharmony_ci    NULL,
517db96d56Sopenharmony_ci    NULL
527db96d56Sopenharmony_ci};
537db96d56Sopenharmony_ci
547db96d56Sopenharmony_ciPyMODINIT_FUNC PyInit__testimportmultiple_bar(void){
557db96d56Sopenharmony_ci    return PyModule_Create(&_barmodule);
567db96d56Sopenharmony_ci}
577db96d56Sopenharmony_ci
58