Opened 3 years ago

Closed 3 years ago

Last modified 3 years ago

#19796 closed defect (fixed)

Simplify build of interpreters by skipping header files

Reported by: jdemeyer Owned by:
Priority: major Milestone: sage-7.0
Component: cython Keywords:
Cc: vbraun, fbissey Merged in:
Authors: Jeroen Demeyer Reviewers: Volker Braun
Report Upstream: N/A Work issues:
Branch: e468673 (Commits) Commit:
Dependencies: Stopgaps:

Description

When upgrading GSL, there are problems with sage/ext/interpreters due to missing dependency checking. I could have gone for a minimal fix, but I decided to fundamentally simplify the building of interpreters, at the expense of making this branch more complicated.

Those "interpreters" involve a lot of files (there are generated .pyx, .pxd, .c and .h files), so the dependencies are difficult for Cython to follow. With this patch, the .h files are completely gone.

This commit was cherry-picked from the positively-reviewed branch at #19756.

Change History (7)

comment:1 Changed 3 years ago by jdemeyer

  • Branch set to u/jdemeyer/simplify_build_of_interpreters_by_skipping_header_files

comment:2 Changed 3 years ago by jdemeyer

  • Commit set to e4686731d4d1acb1f75b223a0e855bff1c3b8561
  • Status changed from new to needs_review

New commits:

e468673Simplify build of interpreters by skipping header files

comment:3 Changed 3 years ago by jdemeyer

  • Status changed from needs_review to positive_review

comment:4 Changed 3 years ago by vbraun

  • Branch changed from u/jdemeyer/simplify_build_of_interpreters_by_skipping_header_files to e4686731d4d1acb1f75b223a0e855bff1c3b8561
  • Resolution set to fixed
  • Status changed from positive_review to closed

comment:5 Changed 3 years ago by gouezel

  • Commit e4686731d4d1acb1f75b223a0e855bff1c3b8561 deleted

Not sure it is directly related to this ticket, but interpreter compilation now fails on cygwin:

gcc -shared -Wl,--enable-auto-image-base -L/home/Sebastien/sage22/sage/local/lib -Wl,-rpath,/home/Sebastien/sage22/sage/local/lib -L/home/Sebastien/sage22/sage/local/lib -Wl,-rpath,/home/Sebastien/sage22/sage/local/lib build/temp.cygwin-2.3.1-x86_64-2.7/home/Sebastien/sage22/sage/src/build/cythonized/sage/ext/interpreters/wrapper_el.o build/temp.cygwin-2.3.1-x86_64-2.7/sage/ext/interpreters/interp_el.o -L/home/Sebastien/sage22/sage/local/lib -L/home/Sebastien/sage22/sage/local/lib/python2.7/config -L/home/Sebastien/sage22/sage/local/lib -lpython2.7 -o build/lib.cygwin-2.3.1-x86_64-2.7/sage/ext/interpreters/wrapper_el.dll
build/temp.cygwin-2.3.1-x86_64-2.7/home/Sebastien/sage22/sage/src/build/cythonized/sage/ext/interpreters/wrapper_py.o: dans la fonction « __pyx_pf_4sage_3ext_12interpreters_10wrapper_py_10Wrapper_py_4__call__ »:
/home/Sebastien/sage22/sage/src/build/cythonized/sage/ext/interpreters/wrapper_py.c:1456: référence indéfinie vers « __imp_interp_py »

comment:6 Changed 3 years ago by jdemeyer

It is very likely related to this ticket. If you want it fixed, please open a new ticket.

comment:7 Changed 3 years ago by gouezel

New ticket at #19868

Note: See TracTickets for help on using tickets.