Commit Graph
100 Commits
Author SHA1 Message Date
François Revol 586d22c9ba Fix function prototype to be valid C 2014-01-11 17:53:00 +01:00
François Revol 5143323fb6 myupdate: Close and restart Deskbar on update
Close Deskbar before trying to update and restart it afterward.
This way the addons are restored as they were before.
2014-01-09 17:08:22 +01:00
François Revol d3ce2febd2 Little optimization 2013-12-30 19:48:59 +01:00
François Revol a82d922deb workspaces: switch current workspace on mouse wheel
Gnome does that on the panel widget, at first it was annoying
but after a while it feels quite handy.
2013-12-30 19:13:30 +01:00
François Revol e6eaad8615 A little script which takes care of updating system packages
It checks for updates, asks the user to reboot,
then moves old packages out and re-adds ProcessController
and NetworkStatus to the Deskbar.
2013-12-29 11:49:58 +01:00
François Revol 94c2eb2092 Revert "Add getconf(1) from FreeBSD r259958"
This reverts commit 5a39a9feac.
2013-12-28 09:58:27 +01:00
François Revol 5115f7c632 Revert "Mention getconf in FreeBSD sections in the credits."
This reverts commit d86dbc8a89.
2013-12-28 09:58:21 +01:00
François Revol 9307c47ea3 Revert "Add getconf to the image"
This reverts commit c229671d8e.
2013-12-28 09:58:16 +01:00
François Revol 2f6cbd4f43 Revert "Provide cmd:getconf in haiku package"
This reverts commit 5558efa4ce.

We now provide getconf as a separate package from Haikuports.
2013-12-28 09:57:16 +01:00
François Revol 5558efa4ce Provide cmd:getconf in haiku package 2013-12-27 19:57:45 +01:00
François Revol c229671d8e Add getconf to the image 2013-12-27 19:49:17 +01:00
François Revol d86dbc8a89 Mention getconf in FreeBSD sections in the credits. 2013-12-27 19:47:41 +01:00
François Revol 5a39a9feac Add getconf(1) from FreeBSD r259958
This one lacks -a but is simpler to port than the (e)glibc one,
and should be way enough for usage patterns like counting CPUs,
cf. https://gist.github.com/jj1bdx/5746298

TODO: Handle message files?
TODO: Install manpage?
2013-12-27 19:42:26 +01:00
François Revol 8ea42167a2 Add sysexits.h from FreeBSD r259958
I'd need this for getconf.
2013-12-27 19:16:15 +01:00
François Revol a99cee63cc Add icon for Oricutron
Derived from App_Clock
2013-12-16 00:40:54 +01:00
François Revol d43ede6002 Add an icon for Open Cubic Player (ocp)
The best I could do, feel free to fix.
2013-12-11 08:27:25 +01:00
François Revol e36ad522d6 Fix 24d0e21f51 correctly
CreateSubRequest() could still return an error and break out of the
while loop without exiting the outer for loop.

Instead we reset the error code before entering the for loop.
2013-12-08 11:34:07 +01:00
François Revol 664e3fba9b Partially revert 24d0e21f51
This reverts the extra for loop condition from
"do_iterative_fd_io_iterate(): Support sparse files".

When reading a file with more than 8 block_runs, get_vecs() would
return B_BUFFER_OVERFLOW which would never create any subrequest due
to the test on error == B_OK on the loop, but instead just fail.

Except for the get_vecs() return code, where it is not wanted,
the test made no sense as all other assignments are tested directly
or passed around with break.

Works for me but I don't guarantee it's completely correct.
2013-12-08 01:43:02 +01:00
François Revol 0e1c6462de Merge branch 'sam460ex' 2013-11-04 17:04:49 +01:00
François Revol 7cf311823a Fix comments 2013-10-26 21:02:11 +02:00
François Revol b3025a8642 bootloader: M68K: Fix mmu_free()
Same bug as in ARM code...
2013-10-26 20:54:12 +02:00
François Revol 585830a55e bootloader: M68K: s/KERNEL_BASE/KERNEL_LOAD_BASE/ 2013-10-26 20:54:11 +02:00
François Revol b086b8ad2d bootloader: ARM: Replace KERNEL_BASE with KERNEL_LOAD_BASE 2013-10-26 20:54:10 +02:00
François Revol 18041782fd bootloader: ARM: Fix mmu_free()
Allocation size was mixed up with page counts...
Allow freeing up to sNextVirtualAddress.
2013-10-26 20:54:00 +02:00
François Revol 9703c9cc30 bootloader: Add tracing to malloc_large() 2013-10-26 18:41:57 +02:00
François Revol 4c7a310ce1 OF: PPC: Check for bus-frequency on '/' first
As per PowerPC IEEE 1275-1994 binding v1.8 page 13.
2013-10-20 20:53:06 +02:00
François Revol b96e57e885 Fix typo 2013-10-19 16:06:41 +02:00
François Revol 3940abc9b8 ARM: add a TODO for KDL disasm module
Possible source is NetBSD, thanks pulko for mentionning.
2013-10-19 15:55:18 +02:00
François Revol 7cbc41ae32 U-Boot: Split fdt_support.cpp, move serial stuff to fdt_serial.cpp 2013-10-15 23:05:09 +02:00
François Revol 3f92e864a1 Style fixes 2013-10-15 22:17:55 +02:00
François Revol b55cb439e7 U-Boot: pass around argv and /chosen/bootargs
Not really handled correctly yet, but at least they are passed.
2013-10-15 22:15:04 +02:00
François Revol cf7f92c013 bootloader: Use stage2_args:arguments_count
The code probably doesn't work correctly yet though,
I believe only the last line will be taken into account.
2013-10-15 22:15:04 +02:00
François Revol 70b50f3865 bootloader: Set stage2_args:arguments_count when needed 2013-10-15 22:15:03 +02:00
François Revol bc1184c253 bootloader: Add an arguments_count field to stage2_args
Some boot platforms pass a non-NULL-terminated list of args
to the loader, so store the count here to avoid having to copy
the list itself.
2013-10-15 22:15:03 +02:00
François Revol 8fa75a8cca ARM: Add a fallback atomic_add() for bootloader
When ATOMIC_FUNCS_ARE_SYSCALLS atomic.S doesn't export it,
but it's used by packagefs.
2013-10-12 19:43:33 +02:00
François Revol 39d26e3cdb Set HAIKU_TARGET_IS_EXECUTABLE in KernelLd as well
The kernel also needs to be stripped for m68k.

Propagate it to the revisioned binary as well.
2013-10-12 18:42:57 +02:00
François Revol a427aa2f4a Preserve resources and attributes when copying stripped binaries
When asked to strip binaries when copying to containers we now
strip to a temporary file, copy over resources to it, copy it
to the container, then copy the attributes from the original
source.

This should allow stripping binaries while preserving attributes
and resources even when copying to images.
2013-10-12 02:37:20 +02:00
François Revol e2332987bc Rework stripping binaries when copying to containers
We now only attempt to strip binaries, by detecting the
LINKFLAGS variable on the targets.

CopySetHaikuRevision now also forwards LINKFLAGS
to revisioned binaries.

Introduce separate AppendToContainerCopyFilesScriptStripFile actions
which are used for copying and stripping, and avoids many useless
shell tests.

When asked to strip binaries, they are detected and handled
individually for simplicity.

Note we still don't keep resources and attributes when stripping.
2013-10-12 01:41:46 +02:00
François Revol e986f5fce9 Enable stripping binaries in m68k boot floppy
This makes it fit again.

We can't reference in BuildSetup a variable set with the other
ones in KernelArchitectureSetup since the rule is invoked later.
2013-10-11 23:30:57 +02:00
François Revol d6de84de66 Allow stripping binaries when copying to image containers
Currently only needed for boot floppy on some platforms.

Disabled for now.

Note we do not have a mean of knowing which file is a binary
or not so we just try to strip, and silently continue when
strip fails (like on the kernel settings file).

Also note strip actually replaces the file, which means it looses
both the resources and attributes, which shouldn't be a problem
for the boot floppy drivers archive, but is not wanted for other
images, so it's not usable elsewhere as such. Patch wanted.
2013-10-09 22:04:36 +02:00
François Revol c19c9e08ef libroot: Pass members to filter as on-target variable 2013-10-09 22:04:36 +02:00
François Revol 158604494b libroot: Style fix 2013-10-09 22:04:35 +02:00
François Revol 4d5508263e libroot: Properly fix linking with libgcc without cmdline overflow
Instead of listing all the objects we want from the libgcc archive
we just make a copy of it and remove those we don't want, and link
to it.

This should allow returning MAXLINE in jam to a sane value.
2013-10-08 23:34:57 +02:00
François Revol c09cf60cc2 U-Boot: Remove duplicate target for <build>makebootable
And comment the use of libbe, which isn't needed for now and
didn't build anyway.
2013-10-08 19:04:53 +02:00
François Revol 8bf87f9341 Actually fix the build
Looks like I was too quick on previous commit.

It seems -pthread is actually not that much needed on Linux though...
although the manpage says "compile and link with -pthread". Go figure.

Now dlopen() uses RTLD_LAZY | RTLD_LOCAL for Linux, which seems
to work here.
2013-10-01 03:57:24 +02:00
François Revol 4135f9cde3 Fix build
Declare a HOST_PTHREAD_LINKFLAGS variable to hold the flags
required to link with pthreads, and use it for the solver addon.

Works on GNU/Linux, please test and fix for other platforms.
2013-10-01 02:37:54 +02:00
François Revol 58c82e4fb7 Make sure the boot driver tgz doesn't overflow the boot floppy
At least on 68k it does. Seems to be ok on x86, for now...
2013-09-30 04:38:50 +02:00
François Revol 68bccdf6b4 M68K: More gcc options fixes 2013-09-30 04:21:41 +02:00
François Revol 4046c49f88 M68K: Account for extra parameter to create_area_etc()
Would have been nice to also fix 68k code... just sayin.
2013-09-30 04:15:27 +02:00
François Revol 835545cfd1 M68K: drop dupplicate strlen
Seems we have our own now.
2013-09-30 04:09:27 +02:00
François Revol f7d6c2f8e5 M68K: Switch to new gcc options for specifying cpu
Latest gcc converts the old ones to the new ones anyway...
including when passing to gas, which of course is not new enough,
so we have to also force gcc to pass the old one around in one case.
2013-09-30 04:02:21 +02:00
François Revol ddb1aa7353 revert 787843b
Restore the Clean action as "together".

Jam splits the args according to MAXLINE, which was too large.
2013-09-30 04:02:20 +02:00
François Revol b019bb2f4f Add definitions for M68K repositories and package infos 2013-09-30 02:35:28 +02:00
François Revol 787843b286 Drop the together keyword on the Clean action
Since the PM merge we now have way too many targets,
here jam clean just fails in execve() due to too long arguments.

jam clean is now very verbose but at least it works.

Another option could be to override the Clean rule itself
to clean in batch by splitting the list...
Patches welcome.
2013-09-30 02:26:12 +02:00
François Revol 55cc9f852a Add definitions for PPC repositories and package infos 2013-09-30 01:29:03 +02:00
François Revol 5e0e2739c9 ARM: work around too many libgcc objects when linking libroot
jam fails in execve() trying to run the command due to
a too large arguments list because of the many objects in libgcc.

We split them into two intermediate objects,
then we link them to libroot.
2013-09-30 00:37:06 +02:00
François Revol f9ab70a1d1 Guard the __sync_* atomic helper with __ARM__
I didn't notice I was adding to a generic file.
2013-09-29 22:43:34 +02:00
François Revol c436d67da4 ARM: Add note about updating libstdc++
The __sync_fetch_and_add_4() helper is deprecated in newer GCC,
and should be droped when we update libstdc++.
2013-09-29 21:02:11 +02:00
François Revol 624ba5482b Add missing architectures for packages
The list in packagefs wasn't in sync anyway.
2013-09-29 19:48:26 +02:00
François Revol 75453edc01 ARM: Add a C version of __sync_fetch_and_add_4()
It just calls atomic_add().

No need for the asm version, it doesn't need to depend on defines.
2013-09-29 19:46:41 +02:00
François Revol 735ec4c018 ARM: Add longjmp_return.c to the libroot built
Linking was failing with undefined reference to __longjmp_return.
2013-09-29 04:03:09 +02:00
François Revol 396fc0b0eb Add definitions for ARM repositories and package infos 2013-09-29 03:43:02 +02:00
François Revol 3d2c989bb5 disasm: Add stub for ARM 2013-09-29 03:33:19 +02:00
François Revol 4d65f429d0 Fix bashisms
Besides, at least one test was probably incorrect,
trying to match /* with a single = in [[.
2013-09-29 03:01:39 +02:00
François Revol 6a4f39545c configure: Fix bashism
Debian uses dash as /bin/sh which doesn't know about [[ ]].
2013-09-29 00:14:21 +02:00
François Revol c608fa61f8 Notes for an Efika MX port, for when I get the time 2013-09-29 00:14:21 +02:00
François Revol 4c1e32d222 Some pointers for whoever would want to port to BeBox 2013-09-29 00:14:21 +02:00
François Revol e004486647 Mention the ePAPR specification url 2013-09-29 00:14:20 +02:00
François Revol 1f4aeff06a Some places where to find OpenFirmware specs... 2013-09-23 20:21:53 +02:00
François Revol 09d213f3b3 PPC: OF: Make sure kernel args match the U-Boot one
Since both platforms can boot the same kernel we must accept either
arg, so we make sure they are identical for now.

TODO: use a union or KMessage maybe?
2013-09-17 15:49:49 +02:00
François Revol c55cff0acc Whitespace cleanup 2013-09-17 13:51:38 +02:00
François Revol 228524afb6 Merge branch 'master' into sam460ex 2013-09-17 13:22:26 +02:00
François Revol c14bca2958 Merge branch 'master' into sam460ex 2013-09-14 01:16:51 +02:00
François Revol a442699e34 PPC: Use asm_defs.h instead of hardcoded defines 2013-06-01 19:32:43 +02:00
François Revol d4659184b8 PPC: Add a 44x version of arch_exceptions.S
For now just a copy of the classic code.
2013-06-01 19:18:12 +02:00
François Revol b8ded2f897 Merge branch 'master' into sam460ex 2013-05-27 17:45:55 +02:00
François Revol 3060b78cfc PPC: Setup debug UART for kernel when booted from U-Boot
Welcome to kernel debugger output!
\o/
2013-04-21 03:29:48 +02:00
François Revol 2e27c020cb U-Boot: Factor-out debug UART setup from FDT for kernel use 2013-04-21 03:28:01 +02:00
François Revol 94b802f588 U-Boot: PPC: Tell the kernel we come in peace from U-Boot 2013-04-21 03:16:46 +02:00
François Revol 0f8e6ba440 Typo 2013-04-21 02:12:12 +02:00
François Revol 18ea985add U-Boot: PPC: set gFDT when passed to the kernel. 2013-04-21 02:08:24 +02:00
François Revol eecde8e37c Merge branch 'master' into sam460ex 2013-04-21 01:34:20 +02:00
François Revol 247db0d169 U-Boot: pass a copy of the FDT to the kernel 2013-04-21 01:15:43 +02:00
François Revol 048f079571 Merge branch 'master' into sam460ex 2013-04-02 03:29:47 +02:00
François Revol d4eea7d43c Merge branch 'master' into sam460ex 2013-03-28 09:47:50 +01:00
François Revol 3881911cce Add the !DOCTYPE element to the text/html sniff rule 2013-03-15 00:55:38 +01:00
François Revol 8b72ce2651 Merge branch 'master' into sam460ex 2013-03-12 03:24:15 +01:00
François Revol f106fe34d2 Merge branch 'master' into sam460ex 2013-03-09 03:50:12 +01:00
François Revol af63ede7a1 U-Boot: PPC: Implement Book-E MMU support in bootloader
Unlike Classic PPC, Book-E CPUs do not have hardware page-table walk,
rather only a limited set of software-managed TLBs. Also, translation
is never disabled even when page-faulting.

The Linux Book-E port pins part of the RAM in one or more TLBs, and
allocates kernel memory from it for the kernel itself and exception
vectors, as well as page tables.
cf. http://kernel.org/doc/ols/2003/ols2003-pages-340-350.pdf

We take a similar approach, but instead of using a tree-like page
directory we reserve a large part of this mapped range for an
hashed page table similar to the Classic one, to later allow
factoring code out. The kernel and boot modules will also be
allocated there, and the rest should be used as SLAB areas.

Note doing so will not allow implementing proper permissions for
the areas allocated there since they are all handled by a single TLB.

Also note Book-E does not standardize the MMU implementation itself.
For now only AMCC440 type MMU is supported. This will need to be
cleaned up later on.
2013-03-09 03:33:12 +01:00
François Revol 0acc7a44b6 PPC: Work-in-progress MMU definitions for AMCC440/460.
Unfinished. the TLB entries require setting 3 registers plus another
field for the PID.
Didn't yet decide how to store this in the page tables.
2013-03-09 03:26:53 +01:00
François Revol 6e809753b1 U-Boot: PPC: Include asm macros header
Use the macros from the header instead of hardcoding.
Add FUNCTION_END() call to help gdb.
2013-03-09 03:22:41 +01:00
François Revol 80859e45b4 PPC: Comment out cpu-specific compile flags for Sam460ex
Userland and even kernel shouldn't require this anyway,
cpu-specific code can still be compiled with those flags separately.
2013-03-09 03:20:12 +01:00
François Revol 2441f3ed90 PPC: add debug sections to the linked kernel
Seems to be needed for gdb.
2013-02-23 18:25:36 +01:00
François Revol 00661368a2 PPC: Document how to automate TFTP-boot Haiku on Sam460ex
* U-Boot seems to have a very small limit on serial or shell input buffer,
so we split the commands into several variables that we run in sequence.
2013-02-23 04:01:19 +01:00
François Revol c3052f0795 Merge branch 'master' into sam460ex 2013-02-22 16:58:43 +01:00
François Revol 32bd2dedd9 bootloader: Fix an overlooked condition in mmu_allocate()
The size variable at this point is actually a page count.
The test should never be true anyway though. Maybe we should use a
pages variable for clarity?
2013-02-21 16:35:37 +01:00
François Revol 8dc3f98eda RemoteDesktop: Fix build 2013-02-21 16:24:58 +01:00
François Revol 55e7521e36 ARM: Fix typo 2013-02-18 15:00:35 +01:00
François Revol 85e1bac215 U-Boot: Fix warning 2013-02-18 03:39:09 +01:00
François Revol 0255210b04 U-Boot: PPC: properly enumerate CPUs
* Code comes almost verbatim from OF platform.
* Only bus frequency needs to be read from the /plb node instead.
2013-02-18 02:47:34 +01:00