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

docs: add macos instruction, update blocks, misc changes #17642

Open
wants to merge 6 commits into
base: master
Choose a base branch
from

Conversation

xepozz
Copy link

@xepozz xepozz commented Jan 30, 2025

No description provided.

# ------------------------------------------------------------------------------
# Intellij IDEA configuration directory
# ------------------------------------------------------------------------------
/.idea
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This belongs in your personal gitignore.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like how people do various smart functions and then say it's not needed now.

I have a project with commited .idea folder, I cannot mark it globally ignored.
Otherwise one line is not a problem for any project.
Moreover there are about 300 lines with long comments.
And one more thing is gitignore already has definitions for some tools like this:

# Backup copies created by various editors or development tools
*~

vim? IDEA doesn't create such files

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's not a problem to remove it and keep .idea changes separately from current changes, but it's not convenient as for me

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have a project with commited .idea folder, I cannot mark it globally ignored.

You can use git add -f .idea if you want to add a file that's globally ignored.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also, you do have the option to ignore it locally, for only the current .git repo, by adding it to .git/info/exclude.

Copy link
Member

@bukka bukka Jan 30, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Although we have *.swp and mentioned *~ in the .gitignore. Personally I wouldn't really mind having various editors in .gitignore but don't really care that much as I have it in .git/info/exclude...

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't mind adding IDEs to the exclude file, but we should add all common ones then. At least .vscode, possibly Visual Studio (not sure what files it creates). Newer ones include .zed and .fleet, although they are more conservative about creating these directories (only on-demand).

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah I got

.idea/
.vscode/

so might make sense to add those. Should be probably a different PR as we shouldn't mix unrelated things together.


Build PHP. To speed up the build, specify the maximum number of jobs using `-j`:

make -j4
```shell
make -j$(nproc)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is unix(-like) specific. We should either specify other operating systems or keep the original 4.

Use `TESTS` variable to tests only specific directories:

```shell
make TESTS=Zend/tests/throw/ test
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can also use TEST_PHP_ARGS for that. TEST_PHP_ARGS is an env variable while TESTS is passed as a shell argument. I'm not sure why both of these exist. Maybe @petk knows.

On MacOS, you can install these using:

```shell
brew install autoconf bison re2c iconv
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this enough for a default build with no arguments? E.g. libxml2 might be needed for ext-xml.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just tried to install all of this for the first time and it failed. Tried to install only these and configure and make succeeded

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

Successfully merging this pull request may close these issues.

3 participants