Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add mips64el-linux support #359

Closed
wzssyqa opened this issue Jul 31, 2014 · 10 comments
Closed

Add mips64el-linux support #359

wzssyqa opened this issue Jul 31, 2014 · 10 comments

Comments

@wzssyqa
Copy link
Contributor

wzssyqa commented Jul 31, 2014

Put the attached file as

lib/ffi/platform/mips64el-linux/types.conf

it is generated by
debian/rules gen_arch_config
from Debian package

.

@wzssyqa
Copy link
Contributor Author

wzssyqa commented Jul 31, 2014

Attach file failed. the below is file contents.

rbx.platform.typedef.__u_char = uchar
rbx.platform.typedef.__u_short = ushort
rbx.platform.typedef.__u_int = uint
rbx.platform.typedef.__u_long = ulong
rbx.platform.typedef.__int8_t = char
rbx.platform.typedef.__uint8_t = uchar
rbx.platform.typedef.__int16_t = short
rbx.platform.typedef.__uint16_t = ushort
rbx.platform.typedef.__int32_t = int
rbx.platform.typedef.__uint32_t = uint
rbx.platform.typedef.__int64_t = long
rbx.platform.typedef.__uint64_t = ulong
rbx.platform.typedef.__quad_t = long
rbx.platform.typedef.__u_quad_t = ulong
rbx.platform.typedef.__dev_t = ulong
rbx.platform.typedef.__uid_t = uint
rbx.platform.typedef.__gid_t = uint
rbx.platform.typedef.__ino_t = ulong
rbx.platform.typedef.__ino64_t = ulong
rbx.platform.typedef.__mode_t = uint
rbx.platform.typedef.__nlink_t = ulong
rbx.platform.typedef.__off_t = long
rbx.platform.typedef.__off64_t = long
rbx.platform.typedef.__pid_t = int
rbx.platform.typedef.__clock_t = long
rbx.platform.typedef.__rlim_t = ulong
rbx.platform.typedef.__rlim64_t = ulong
rbx.platform.typedef.__id_t = uint
rbx.platform.typedef.__time_t = long
rbx.platform.typedef.__useconds_t = uint
rbx.platform.typedef.__suseconds_t = long
rbx.platform.typedef.__daddr_t = int
rbx.platform.typedef.__key_t = int
rbx.platform.typedef.__clockid_t = int
rbx.platform.typedef.__timer_t = pointer
rbx.platform.typedef.__blksize_t = long
rbx.platform.typedef.__blkcnt_t = long
rbx.platform.typedef.__blkcnt64_t = long
rbx.platform.typedef.__fsblkcnt_t = ulong
rbx.platform.typedef.__fsblkcnt64_t = ulong
rbx.platform.typedef.__fsfilcnt_t = ulong
rbx.platform.typedef.__fsfilcnt64_t = ulong
rbx.platform.typedef.__fsword_t = long
rbx.platform.typedef.__ssize_t = long
rbx.platform.typedef.__syscall_slong_t = long
rbx.platform.typedef.__syscall_ulong_t = ulong
rbx.platform.typedef.__loff_t = long
rbx.platform.typedef.___qaddr_t = long
rbx.platform.typedef.___caddr_t = char
rbx.platform.typedef.__intptr_t = long
rbx.platform.typedef.__socklen_t = uint
rbx.platform.typedef.u_char = uchar
rbx.platform.typedef.u_short = ushort
rbx.platform.typedef.u_int = uint
rbx.platform.typedef.u_long = ulong
rbx.platform.typedef.quad_t = long
rbx.platform.typedef.u_quad_t = ulong
rbx.platform.typedef.loff_t = long
rbx.platform.typedef.ino_t = ulong
rbx.platform.typedef.dev_t = ulong
rbx.platform.typedef.gid_t = uint
rbx.platform.typedef.mode_t = uint
rbx.platform.typedef.nlink_t = ulong
rbx.platform.typedef.uid_t = uint
rbx.platform.typedef.off_t = long
rbx.platform.typedef.pid_t = int
rbx.platform.typedef.id_t = uint
rbx.platform.typedef.ssize_t = long
rbx.platform.typedef.daddr_t = int
rbx.platform.typedef.key_t = int
rbx.platform.typedef.clock_t = long
rbx.platform.typedef.time_t = long
rbx.platform.typedef.clockid_t = int
rbx.platform.typedef.timer_t = pointer
rbx.platform.typedef.size_t = ulong
rbx.platform.typedef.ulong = ulong
rbx.platform.typedef.ushort = ushort
rbx.platform.typedef.uint = uint
rbx.platform.typedef.int8_t = char
rbx.platform.typedef.int16_t = short
rbx.platform.typedef.int32_t = int
rbx.platform.typedef.int64_t = long_long
rbx.platform.typedef.u_int8_t = uchar
rbx.platform.typedef.u_int16_t = ushort
rbx.platform.typedef.u_int32_t = uint
rbx.platform.typedef.u_int64_t = ulong_long
rbx.platform.typedef.register_t = long
rbx.platform.typedef.__sig_atomic_t = int
rbx.platform.typedef.suseconds_t = long
rbx.platform.typedef.__fd_mask = long
rbx.platform.typedef.fd_mask = long
rbx.platform.typedef.blksize_t = long
rbx.platform.typedef.blkcnt_t = long
rbx.platform.typedef.fsblkcnt_t = ulong
rbx.platform.typedef.fsfilcnt_t = ulong
rbx.platform.typedef.pthread_t = ulong
rbx.platform.typedef.pthread_key_t = uint
rbx.platform.typedef.pthread_once_t = int
rbx.platform.typedef.socklen_t = uint
rbx.platform.typedef.sa_family_t = ushort
rbx.platform.typedef.rlim_t = ulong
rbx.platform.typedef.__rlimit_resource_t = int
rbx.platform.typedef.__rusage_who_t = int
rbx.platform.typedef.__priority_which_t = int

@tduehr
Copy link
Member

tduehr commented Jul 31, 2014

I don't have access to a mips machine to test this. I'll try getting something together with qemu. I'm pretty sure more changes are necessary than just adding a types.conf. At least platform.rb will need updating as well.

It would be great if you could put this all into a pull request and add the other necessary changes.

@wzssyqa
Copy link
Contributor Author

wzssyqa commented Aug 5, 2014

It seems there is nothing about mips in platform.rb, so it may not needed.

My mips64el porter box was broken few days ago, when it is ok, I will let
you know.

On Fri, Aug 1, 2014 at 3:43 AM, tduehr notifications@github.com wrote:

I don't have access to a mips machine to test this. I'll try getting
something together with qemu. I'm pretty sure more changes are necessary
than just adding a types.conf. At least platform.rb will need updating as
well.

It would be great if you could put this all into a pull request and add
the other necessary changes.


Reply to this email directly or view it on GitHub
#359 (comment).

YunQiang Su

@tduehr
Copy link
Member

tduehr commented Aug 5, 2014

platform.rb contains the logic to select the right types and set the arch constants, changes will be needed.

@terceiro
Copy link
Contributor

as far as I can tell, platform.rb contains a few special cases, but it should 'just' work on most Linux architectures. The mips* variants that already exist are not special cased in platform.rb and work.

@tduehr
Copy link
Member

tduehr commented Aug 12, 2014

Okay, then I just need to get a working VM running for this to test in the future.

@wzssyqa
Copy link
Contributor Author

wzssyqa commented Aug 13, 2014

Can you give me your ssh key, I can provide you a porterbox with ssh.

On Wed, Aug 13, 2014 at 1:12 AM, tduehr notifications@github.com wrote:

Okay, then I just need to get a working VM running for this to test in the
future.


Reply to this email directly or view it on GitHub
#359 (comment).

YunQiang Su

@tduehr
Copy link
Member

tduehr commented Aug 13, 2014

I'd like to get a qemu VM running for testing each of the platforms we support so the rest of the team can easily perform testing as well. I'll send my ssh key for now.

@tduehr
Copy link
Member

tduehr commented Oct 15, 2014

fised with #379 and #365

@tduehr tduehr closed this as completed Oct 15, 2014
@tduehr
Copy link
Member

tduehr commented Dec 22, 2014

I'm building VMs for future testing currently. What hardware platform are you targeting? If you have time, what's the closest qemu or yocto machine I can use?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants