File: cygwin.py

package info (click to toggle)
pypy 7.0.0%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 107,216 kB
  • sloc: python: 1,201,787; ansic: 62,419; asm: 5,169; cpp: 3,017; sh: 2,534; makefile: 545; xml: 243; lisp: 45; awk: 4
file content (47 lines) | stat: -rw-r--r-- 1,440 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
"""Support for Cygwin."""

import os
import sys
from rpython.translator.platform.posix import BasePosix

class BaseCygwin(BasePosix):
    name = "cygwin"
    
#    link_flags = tuple(
#                 ['-pthread',]
#                 + os.environ.get('LDFLAGS', '').split())
    link_flags = tuple(
                 []
                 + os.environ.get('LDFLAGS', '').split())
    extra_libs = ('-lrt',)
#    cflags = tuple(
#             ['-O3', '-pthread', '-fomit-frame-pointer',
#              '-Wall', '-Wno-unused']
#             + os.environ.get('CFLAGS', '').split())
    cflags = tuple(
             ['-O3', '-fomit-frame-pointer',
              '-Wall', '-Wno-unused']
             + os.environ.get('CFLAGS', '').split())
    standalone_only = ()
    shared_only = ('-fPIC',)
    so_ext = 'dll'
    exe_ext = 'exe'
    
    def _args_for_shared(self, args, **kwds):
        return ['-shared'] + args

    def _include_dirs_for_libffi(self):
        return self._pkg_config("libffi", "--cflags-only-I",
                                ['/usr/include/libffi'])

    def _library_dirs_for_libffi(self):
        return self._pkg_config("libffi", "--libs-only-L",
                                ['/usr/lib/libffi'])


class Cygwin(BaseCygwin):
    shared_only = ()    # it seems that on 32-bit linux, compiling with -fPIC
                        # gives assembler that asmgcc is not happy about.

class Cygwin64(BaseCygwin):
    pass