Skip to content

Commit 1a1aebb

Browse files
authored
Cleaned Up setup.py includes (#30201)
1 parent 53b90d3 commit 1a1aebb

File tree

1 file changed

+26
-33
lines changed

1 file changed

+26
-33
lines changed

setup.py

+26-33
Original file line numberDiff line numberDiff line change
@@ -545,12 +545,10 @@ def srcpath(name=None, suffix=".pyx", subdir="src"):
545545
return pjoin("pandas", subdir, name + suffix)
546546

547547

548-
common_include = ["pandas/_libs/src/klib", "pandas/_libs/src"]
549-
ts_include = ["pandas/_libs/tslibs/src", "pandas/_libs/tslibs"]
550-
551-
552548
lib_depends = ["pandas/_libs/src/parse_helper.h"]
553549

550+
klib_include = ["pandas/_libs/src/klib"]
551+
554552
np_datetime_headers = [
555553
"pandas/_libs/tslibs/src/datetime/np_datetime.h",
556554
"pandas/_libs/tslibs/src/datetime/np_datetime_strings.h",
@@ -564,36 +562,42 @@ def srcpath(name=None, suffix=".pyx", subdir="src"):
564562

565563

566564
ext_data = {
567-
"_libs.algos": {"pyxfile": "_libs/algos", "depends": _pxi_dep["algos"]},
565+
"_libs.algos": {
566+
"pyxfile": "_libs/algos",
567+
"include": klib_include,
568+
"depends": _pxi_dep["algos"],
569+
},
568570
"_libs.groupby": {"pyxfile": "_libs/groupby"},
569-
"_libs.hashing": {"pyxfile": "_libs/hashing", "include": [], "depends": []},
571+
"_libs.hashing": {"pyxfile": "_libs/hashing", "depends": []},
570572
"_libs.hashtable": {
571573
"pyxfile": "_libs/hashtable",
574+
"include": klib_include,
572575
"depends": (["pandas/_libs/src/klib/khash_python.h"] + _pxi_dep["hashtable"]),
573576
},
574577
"_libs.index": {
575578
"pyxfile": "_libs/index",
576-
"include": common_include + ts_include,
579+
"include": klib_include,
577580
"depends": _pxi_dep["index"],
578581
"sources": np_datetime_sources,
579582
},
580583
"_libs.indexing": {"pyxfile": "_libs/indexing"},
581584
"_libs.internals": {"pyxfile": "_libs/internals"},
582-
"_libs.interval": {"pyxfile": "_libs/interval", "depends": _pxi_dep["interval"]},
583-
"_libs.join": {"pyxfile": "_libs/join"},
585+
"_libs.interval": {
586+
"pyxfile": "_libs/interval",
587+
"include": klib_include,
588+
"depends": _pxi_dep["interval"],
589+
},
590+
"_libs.join": {"pyxfile": "_libs/join", "include": klib_include},
584591
"_libs.lib": {
585592
"pyxfile": "_libs/lib",
586-
"include": common_include + ts_include,
587593
"depends": lib_depends + tseries_depends,
594+
"include": klib_include, # due to tokenizer import
588595
"sources": ["pandas/_libs/src/parser/tokenizer.c"],
589596
},
590-
"_libs.missing": {
591-
"pyxfile": "_libs/missing",
592-
"include": common_include + ts_include,
593-
"depends": tseries_depends,
594-
},
597+
"_libs.missing": {"pyxfile": "_libs/missing", "depends": tseries_depends},
595598
"_libs.parsers": {
596599
"pyxfile": "_libs/parsers",
600+
"include": klib_include + ["pandas/_libs/src"],
597601
"depends": [
598602
"pandas/_libs/src/parser/tokenizer.h",
599603
"pandas/_libs/src/parser/io.h",
@@ -605,87 +609,76 @@ def srcpath(name=None, suffix=".pyx", subdir="src"):
605609
},
606610
"_libs.reduction": {"pyxfile": "_libs/reduction"},
607611
"_libs.ops": {"pyxfile": "_libs/ops"},
608-
"_libs.properties": {"pyxfile": "_libs/properties", "include": []},
612+
"_libs.properties": {"pyxfile": "_libs/properties"},
609613
"_libs.reshape": {"pyxfile": "_libs/reshape", "depends": []},
610614
"_libs.sparse": {"pyxfile": "_libs/sparse", "depends": _pxi_dep["sparse"]},
611615
"_libs.tslib": {
612616
"pyxfile": "_libs/tslib",
613-
"include": ts_include,
614617
"depends": tseries_depends,
615618
"sources": np_datetime_sources,
616619
},
617620
"_libs.tslibs.c_timestamp": {
618621
"pyxfile": "_libs/tslibs/c_timestamp",
619-
"include": ts_include,
620622
"depends": tseries_depends,
621623
"sources": np_datetime_sources,
622624
},
623-
"_libs.tslibs.ccalendar": {"pyxfile": "_libs/tslibs/ccalendar", "include": []},
625+
"_libs.tslibs.ccalendar": {"pyxfile": "_libs/tslibs/ccalendar"},
624626
"_libs.tslibs.conversion": {
625627
"pyxfile": "_libs/tslibs/conversion",
626-
"include": ts_include,
627628
"depends": tseries_depends,
628629
"sources": np_datetime_sources,
629630
},
630631
"_libs.tslibs.fields": {
631632
"pyxfile": "_libs/tslibs/fields",
632-
"include": ts_include,
633633
"depends": tseries_depends,
634634
"sources": np_datetime_sources,
635635
},
636-
"_libs.tslibs.frequencies": {"pyxfile": "_libs/tslibs/frequencies", "include": []},
637-
"_libs.tslibs.nattype": {"pyxfile": "_libs/tslibs/nattype", "include": []},
636+
"_libs.tslibs.frequencies": {"pyxfile": "_libs/tslibs/frequencies"},
637+
"_libs.tslibs.nattype": {"pyxfile": "_libs/tslibs/nattype"},
638638
"_libs.tslibs.np_datetime": {
639639
"pyxfile": "_libs/tslibs/np_datetime",
640-
"include": ts_include,
641640
"depends": np_datetime_headers,
642641
"sources": np_datetime_sources,
643642
},
644643
"_libs.tslibs.offsets": {
645644
"pyxfile": "_libs/tslibs/offsets",
646-
"include": ts_include,
647645
"depends": tseries_depends,
648646
"sources": np_datetime_sources,
649647
},
650648
"_libs.tslibs.parsing": {
651649
"pyxfile": "_libs/tslibs/parsing",
650+
"include": klib_include,
652651
"depends": ["pandas/_libs/src/parser/tokenizer.h"],
653652
"sources": ["pandas/_libs/src/parser/tokenizer.c"],
654653
},
655654
"_libs.tslibs.period": {
656655
"pyxfile": "_libs/tslibs/period",
657-
"include": ts_include,
658656
"depends": tseries_depends,
659657
"sources": np_datetime_sources,
660658
},
661659
"_libs.tslibs.resolution": {
662660
"pyxfile": "_libs/tslibs/resolution",
663-
"include": ts_include,
664661
"depends": tseries_depends,
665662
"sources": np_datetime_sources,
666663
},
667664
"_libs.tslibs.strptime": {
668665
"pyxfile": "_libs/tslibs/strptime",
669-
"include": ts_include,
670666
"depends": tseries_depends,
671667
"sources": np_datetime_sources,
672668
},
673669
"_libs.tslibs.timedeltas": {
674670
"pyxfile": "_libs/tslibs/timedeltas",
675-
"include": ts_include,
676671
"depends": np_datetime_headers,
677672
"sources": np_datetime_sources,
678673
},
679674
"_libs.tslibs.timestamps": {
680675
"pyxfile": "_libs/tslibs/timestamps",
681-
"include": ts_include,
682676
"depends": tseries_depends,
683677
"sources": np_datetime_sources,
684678
},
685-
"_libs.tslibs.timezones": {"pyxfile": "_libs/tslibs/timezones", "include": []},
679+
"_libs.tslibs.timezones": {"pyxfile": "_libs/tslibs/timezones"},
686680
"_libs.tslibs.tzconversion": {
687681
"pyxfile": "_libs/tslibs/tzconversion",
688-
"include": ts_include,
689682
"depends": tseries_depends,
690683
"sources": np_datetime_sources,
691684
},
@@ -709,7 +702,7 @@ def srcpath(name=None, suffix=".pyx", subdir="src"):
709702

710703
sources.extend(data.get("sources", []))
711704

712-
include = data.get("include", common_include)
705+
include = data.get("include")
713706

714707
obj = Extension(
715708
"pandas.{name}".format(name=name),

0 commit comments

Comments
 (0)